summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
Diffstat (limited to 'eclass')
-rw-r--r--eclass/mate-desktop.org.eclass32
-rw-r--r--eclass/mate.eclass58
2 files changed, 90 insertions, 0 deletions
diff --git a/eclass/mate-desktop.org.eclass b/eclass/mate-desktop.org.eclass
new file mode 100644
index 00000000..cc305b82
--- /dev/null
+++ b/eclass/mate-desktop.org.eclass
@@ -0,0 +1,32 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+# @ECLASS: mate-desktop.org.eclass
+# @MAINTAINER:
+# micia@sabayon.org
+# @AUTHOR:
+# Authors: Spidler <spidler@gentoo.org> with help of carparski.
+# eclass variable additions and documentation: Gilles Dartiguelongue <eva@gentoo.org>
+# @BLURB: Helper eclass for gnome.org hosted archives
+# @DESCRIPTION:
+# Provide a default SRC_URI for tarball hosted on mate-desktop.org mirrors.
+
+inherit versionator
+
+DEPEND="${DEPEND} app-arch/xz-utils"
+
+# @ECLASS-VARIABLE: MATE_DESKTOP_ORG_MODULE
+# @DESCRIPTION:
+# Name of the module as hosted on mate-desktop.org mirrors.
+# Leave unset if package name matches module name.
+: ${MATE_DESKTOP_ORG_MODULE:=$PN}
+
+# @ECLASS-VARIABLE: GNOME_ORG_PVP
+# @INTERNAL
+# @DESCRIPTION:
+# Major and minor numbers of the version number.
+: ${GNOME_ORG_PVP:=$(get_version_component_range 1-2)}
+
+SRC_URI="http://pub.mate-desktop.org/releases/${GNOME_ORG_PVP}/${MATE_DESKTOP_ORG_MODULE}-${PV}.tar.xz"
+S="${WORKDIR}/${MATE_DESKTOP_ORG_MODULE}-${PV}"
diff --git a/eclass/mate.eclass b/eclass/mate.eclass
new file mode 100644
index 00000000..1f4584b8
--- /dev/null
+++ b/eclass/mate.eclass
@@ -0,0 +1,58 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit autotools eutils libtool gnome2 mate-desktop.org
+
+# FIXME Not all package have proper build system/docs
+# Once this is fixed upstream remove DEPEND and move to ebuild.
+DEPEND="dev-util/gtk-doc
+ dev-util/gtk-doc-am"
+
+# @FUNCTION: mate_gen_build_system
+# @DESCRIPTION:
+# Generate autotools build system for releases that don't have one.
+# We need this as early releases did not have a proper build system.
+mate_gen_build_system() {
+ einfo "Generating mate build system"
+ # Retrieve configure script
+ local mate_conf_in
+ if [[ -f "${S}/configure.in" ]]; then
+ mate_conf_in="${S}/configure.in"
+ elif [[ -f "${S}/configure.ac" ]]; then
+ mate_conf_in="${S}/configure.ac"
+ else
+ einfo "no configure.in or configure.ac file were found"
+ return 0
+ fi
+ # Mate preparation, doing similar to autotools eclass stuff. (Do we need die here?)
+ if grep -q "^AM_GLIB_GNU_GETTEXT" "${mate_conf_in}"; then
+ autotools_run_tool glib-gettextize --copy --force || die
+ elif grep -q "^AM_GNU_GETTEXT" "${mate_conf_in}"; then
+ eautopoint --force
+ fi
+
+ if grep -q "^A[CM]_PROG_LIBTOOL" "${mate_conf_in}" || grep -q "^LT_INIT" "${mate_conf_in}"; then
+ _elibtoolize --copy --force --install
+ fi
+
+
+ if grep -q "^AC_PROG_INTLTOOL" "${mate_conf_in}" || grep -q "^IT_PROG_INTLTOOL" "${mate_conf_in}"; then
+ mkdir -p "${S}/m4"
+ autotools_run_tool intltoolize --automake --copy --force || die
+ fi
+
+ if grep -q "^GTK_DOC_CHECK" "${mate_conf_in}"; then
+ autotools_run_tool gtkdocize --copy || die
+ fi
+
+ if grep -q "^MATE_DOC_INIT" "${mate_conf_in}"; then
+ autotools_run_tool mate-doc-prepare --force --copy || die
+ autotools_run_tool mate-doc-common --copy || die
+ fi
+
+ eaclocal
+ eautoconf
+ eautoheader
+ eautomake
+}