summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorDan Armak <danarmak@gentoo.org>2002-02-06 20:38:10 +0000
committerDan Armak <danarmak@gentoo.org>2002-02-06 20:38:10 +0000
commit15e77ca8e373323bcd0f5da044a7bec387e898be (patch)
tree35f5b939058cd01e9239fdadb8a99e343581c5e2 /eclass
parentportage-1.8.9_pre5 fixes a few bugs (diff)
downloadhistorical-15e77ca8e373323bcd0f5da044a7bec387e898be.tar.gz
historical-15e77ca8e373323bcd0f5da044a7bec387e898be.tar.bz2
historical-15e77ca8e373323bcd0f5da044a7bec387e898be.zip
major eclass cleanup/restructuring. no change ni inheriting ebuilds necessary. more details shortly in updated docs
and in coming up gentoo-dev post.
Diffstat (limited to 'eclass')
-rw-r--r--eclass/autoconf.eclass10
-rw-r--r--eclass/base.eclass24
-rw-r--r--eclass/c.eclass11
-rw-r--r--eclass/debug.eclass26
-rw-r--r--eclass/doc/eclass-howto.lyx11
-rw-r--r--eclass/doc/eclass-howto.sgml12
-rw-r--r--eclass/doc/eclass-howto.txt51
-rw-r--r--eclass/functions.eclass (renamed from eclass/kde-dirs.eclass)51
-rw-r--r--eclass/inherit.eclass18
-rw-r--r--eclass/kde-base.eclass5
-rw-r--r--eclass/kde.eclass5
-rw-r--r--eclass/virtual.eclass56
12 files changed, 126 insertions, 154 deletions
diff --git a/eclass/autoconf.eclass b/eclass/autoconf.eclass
deleted file mode 100644
index dccf58c42011..000000000000
--- a/eclass/autoconf.eclass
+++ /dev/null
@@ -1,10 +0,0 @@
-# Copyright 1999-2000 Gentoo Technologies, Inc.
-# Distributed under the terms of the GNU General Public License, v2 or later
-# Author Dan Armak <danarmak@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/eclass/autoconf.eclass,v 1.7 2001/10/13 22:02:12 danarmak Exp $
-# The autoconf eclass merely adds autconf/automake deps.
-ECLASS=autoconf
-
-DESCRIPTION="Based on the $ECLASS eclass"
-DEPEND="${DEPEND} sys-devel/autoconf sys-devel/automake sys-devel/make"
-
diff --git a/eclass/base.eclass b/eclass/base.eclass
index 0c630bfe2dce..0550268744b5 100644
--- a/eclass/base.eclass
+++ b/eclass/base.eclass
@@ -1,9 +1,10 @@
# Copyright 1999-2000 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# Author Dan Armak <danarmak@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/eclass/base.eclass,v 1.9 2002/01/04 12:06:28 danarmak Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/base.eclass,v 1.10 2002/02/06 20:38:10 danarmak Exp $
# The base eclass defines some default functions and variables. Nearly everything
# else inherits from here.
+inherit functions
ECLASS=base
S=${WORKDIR}/${P}
@@ -17,7 +18,7 @@ base_src_unpack() {
while [ "$1" ]; do
case $1 in
- unpack)
+ unpack)
debug-print-section unpack
unpack ${A}
;;
@@ -30,7 +31,7 @@ base_src_unpack() {
debug-print-section all
base_src_unpack unpack
;;
- esac
+ esac
shift
done
@@ -72,7 +73,7 @@ base_src_install() {
while [ "$1" ]; do
case $1 in
- make)
+ make)
debug-print-section make
make DESTDIR=${D} install || die
;;
@@ -89,18 +90,3 @@ base_src_install() {
EXPORT_FUNCTIONS src_unpack src_compile src_install
-# misc helper functions
-# adds all parameters to DEPEND and RDEPEND
-newdepend() {
-
- debug-print-function newdepend $*
- debug-print "newdepend: DEPEND=$DEPEND RDEPEND=$RDEPEND"
-
- while [ -n "$1" ]; do
- DEPEND="$DEPEND $1"
- RDEPEND="$RDEPEND $1"
- shift
- done
-
-}
-
diff --git a/eclass/c.eclass b/eclass/c.eclass
deleted file mode 100644
index bde4866d8e8b..000000000000
--- a/eclass/c.eclass
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright 1999-2000 Gentoo Technologies, Inc.
-# Distributed under the terms of the GNU General Public License, v2 or later
-# Author Dan Armak <danarmak@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/eclass/c.eclass,v 1.7 2001/10/13 22:02:12 danarmak Exp $
-# The "c" eclass merely adds gcc, glibc and ld.so to DEPEND/RDEPEND for comfort.
-ECLASS=c
-
-DESCRIPTION="Based on the $ECLASS eclass"
-DEPEND="${DEPEND} sys-devel/gcc virtual/glibc sys-devel/ld.so"
-RDEPEND="${RDEPEND} virtual/glibc sys-devel/ld.so"
-
diff --git a/eclass/debug.eclass b/eclass/debug.eclass
index 8c70b3ee776b..4823180a48f5 100644
--- a/eclass/debug.eclass
+++ b/eclass/debug.eclass
@@ -1,28 +1,32 @@
# Copyright 1999-2000 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# Author Dan Armak <danarmak@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/eclass/debug.eclass,v 1.7 2001/12/23 14:25:28 danarmak Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/debug.eclass,v 1.8 2002/02/06 20:38:10 danarmak Exp $
# This provides functions for verbose output for debugging
-# Note: we check whether these settings are set by "if [ "$FOO" ]; then".
-# Therefore set them to true/false only - not yes/no or whatever.
-
-# redirect output, unset to disable
-# use e.g. /dev/stdout.
-# todo: add support for logging into a file.
+# redirect output, unset to disable. use e.g. /dev/stdout to write into a file/device.
+# use special setting "on" to echo the output - unlike above, doesn't violate sandbox.
# the test here is to enable people to export DEBUG_OUTPUT before running ebuild/emerge
# so that they won't have to edit debug.eclass anymore
-[ -n "$ECLASS_DEBUG_OUTPUT" ] || ECLASS_DEBUG_OUTPUT=""
+#[ -n "$ECLASS_DEBUG_OUTPUT" ] || ECLASS_DEBUG_OUTPUT="on"
# used internally for output
# redirects output wherever's needed
# in the future might use e* from /etc/init.d/functions.sh if i feel like it
debug-print() {
- [ -n "$ECLASS_DEBUG_OUTPUT" ] || return 0
-
while [ "$1" ]; do
- echo "debug: $1" > $ECLASS_DEBUG_OUTPUT
+
+ # extra user-configurable targets
+ if [ "$ECLASS_DEBUG_OUTPUT" == "on" ]; then
+ echo "debug: $1"
+ elif [ -n "$ECLASS_DEBUG_OUTPUT" ]; then
+ echo "debug: $1" >> $ECLASS_DEBUG_OUTPUT
+ fi
+
+ # default target
+ echo $1 >> ${BUILD_PREFIX}/${P}/temp/eclass-debug.log
+
shift
done
diff --git a/eclass/doc/eclass-howto.lyx b/eclass/doc/eclass-howto.lyx
index ad52b1478922..a00a041731eb 100644
--- a/eclass/doc/eclass-howto.lyx
+++ b/eclass/doc/eclass-howto.lyx
@@ -30,7 +30,14 @@ eclass howto
Dan Armak
\layout Date
-Updated for 20020125
+Updated for 20020206
+\layout Section
+
+Warning
+\layout Standard
+
+The eclasses have been modified and the documentation isn't up to date,
+ to be fixed shortly.
\layout Section
Introduction
@@ -53,7 +60,7 @@ This inheritance is implemented via simple bash sourcing.
set (more on this later).
\layout Standard
-The most similar group of ebuilds is the kde apps.
+The most uniform group of ebuilds is the kde apps.
These were accordingly selected to be the test case for eclasses, and I
believe I can now say the test has been successful.
Eclasses for non-kde ebuilds may follow, but there are no concrete plans
diff --git a/eclass/doc/eclass-howto.sgml b/eclass/doc/eclass-howto.sgml
index bce30285b43e..86a428ba6d1c 100644
--- a/eclass/doc/eclass-howto.sgml
+++ b/eclass/doc/eclass-howto.sgml
@@ -10,10 +10,18 @@
Dan Armak
</author>
<date>
- Updated for 20020125
+ Updated for 20020206
</date>
<sect1>
<title>
+ Warning
+ </title>
+ <para>
+ The eclasses have been modified and the documentation isn't up to date, to be fixed shortly.
+ </para>
+ </sect1>
+ <sect1>
+ <title>
Introduction
</title>
<para>
@@ -23,7 +31,7 @@
This inheritance is implemented via simple bash sourcing. So, when you 'inherit&rdquo; something its functions and variables override your own. For this reason, variables and functions are usually extended and not just set (more on this later).
</para>
<para>
- The most similar group of ebuilds is the kde apps. These were accordingly selected to be the test case for eclasses, and I believe I can now say the test has been successful. Eclasses for non-kde ebuilds may follow, but there are no concrete plans as of this time.
+ The most uniform group of ebuilds is the kde apps. These were accordingly selected to be the test case for eclasses, and I believe I can now say the test has been successful. Eclasses for non-kde ebuilds may follow, but there are no concrete plans as of this time.
</para>
<para>
Because of the current customisable KDEDIR (KDE?DIR, KDE?LIBSDIR) scheme, all kde ebuilds (including ebuilds for apps with optional kde support) <emphasis>must </emphasis>use the eclasses. As a minimum, inherit kde-dirs to get the set-qtdir(), set-kdedir() functions.
diff --git a/eclass/doc/eclass-howto.txt b/eclass/doc/eclass-howto.txt
index bcca20274ccd..bb092ad54e8c 100644
--- a/eclass/doc/eclass-howto.txt
+++ b/eclass/doc/eclass-howto.txt
@@ -4,9 +4,14 @@ eclass howto
Dan Armak
-Updated for 20020125
+Updated for 20020206
-1 Introduction
+1 Warning
+
+The eclasses have been modified and the documentation isn't
+up to date, to be fixed shortly.
+
+2 Introduction
eclasses are parts of ebuilds; that is, they have the same
syntax ebuilds do, but do not define all the required variables
@@ -20,7 +25,7 @@ functions and variables override your own. For this reason,
variables and functions are usually extended and not just
set (more on this later).
-The most similar group of ebuilds is the kde apps. These
+The most uniform group of ebuilds is the kde apps. These
were accordingly selected to be the test case for eclasses,
and I believe I can now say the test has been successful.
Eclasses for non-kde ebuilds may follow, but there are no
@@ -35,12 +40,12 @@ Section two explains how eclasses work; section three gives
an example of a typical inheriting ebuild, and another of
an ebuild for an app with optional kde functionality.
-2 The eclasses
+3 The eclasses
The best way of becoming familiar with the current eclass
structure is an explanation of what each eclass does.
-2.1 inherit.eclass
+3.1 inherit.eclass
This is the basic eclass. It should always be present (i.e.
inherited). No other eclass inherits from it, however: an
@@ -78,7 +83,7 @@ If, in the future, we will decide to move eclasses to a
different location, any name-to-file resolution code will
go in here.
-2.2 virtual.eclass
+3.2 virtual.eclass
This is sourced from inherit.eclass, and thus should always
be present before all other eclasses. It defines EXPORT_FUNCTIONS().
@@ -133,7 +138,7 @@ src_compile, src_install, src_preinst, src_postinst, src_prerm,
src_postrm) as empty functions that do nothing (except call
debug_print_function, see debug.eclass).
-2.3 Function sections
+3.3 Function sections
Although this is not an integral part of eclasses, this is
a good place to introduce function sections.
@@ -241,7 +246,7 @@ when called with all or without parameters. Some sections
may be non-standard and must be called explicitly. The only
such section right now is base_src_compile patch.
-2.4 debug.eclass
+3.4 debug.eclass
Adds verbose output debugging functions. Is inherited by
virtual.eclass. All eclasses call these functions a lot,
@@ -304,7 +309,7 @@ there is no $RESULT in this sample function
}
-2.5 base.eclass
+3.5 base.eclass
This eclass defines some default variables and functions,
similar to those you'd get by default in a non-inheriting
@@ -326,15 +331,15 @@ called newdepend(). It simply adds all parameters to both
DEPEND and RDEPEND, saving you the trouble of writing and
maintaining two lists of dependencies.
-2.6 c.eclass
+3.6 c.eclass
Adds gcc and glibc to DEPEND and RDEPEND.
-2.7 autoconf.eclass
+3.7 autoconf.eclass
Adds make/automake/autoconf to DEPEND.
-2.8 autotools.eclass
+3.8 autotools.eclass
This is made and maintained by Azarah. To quote his comments:
@@ -350,7 +355,7 @@ Read the eclass for more info. AFAIK it has no relationship
whatsoever to an of the other eclasses. Contact Azarah for
any further info. (Azarah, you're welcome to feel in here).
-2.9 kde.eclass
+3.9 kde.eclass
Used by all kde apps, whether directly or indirectly. (Not
by apps with optional kde functionality though.) This is
@@ -376,7 +381,7 @@ not inherit c. These packages can then inherit straight
from here. All other packages, which need to compile c code,
should inherit from kde-base.eclass.
-2.10 kde-dirs.eclass
+3.10 kde-dirs.eclass
A short explanation about the current multi-kdedir scheme:
@@ -426,12 +431,12 @@ need-* and set-* yourself.
kde-dirs.eclass also contains several helper functions you
shouldn't need to use directly.
-2.11 kde-base.eclass
+3.11 kde-base.eclass
Meant for standard kde apps; nearly all ebuilds use it. Inherits
c, kde. Sets HOMEPAGE=apps.kde.com.
-2.12 kde-i18n.eclass
+3.12 kde-i18n.eclass
Meant for the kde-i18n-* packages. Niche use.
@@ -442,7 +447,7 @@ ${P} does the rest.
Inherits kde, kde.org. Makes a few differences, such as PROVIDE
virtual/kde-i18n, correct $S, HOMEPAGE and DESCRIPTION.
-2.13 koffice-i18n.eclass
+3.13 koffice-i18n.eclass
Meant for the koffice-i18n-* packages. Niche use. Very similar
to kde-i18n.eclass.
@@ -450,7 +455,7 @@ to kde-i18n.eclass.
All kde-i18n ebuilds are completely identical and so all
they have to do is inherit from this eclass.
-2.14 kde-dist.eclass
+3.14 kde-dist.eclass
Meant for the base kde distribution packages in kde-base/*.
Inherits kde-base, kde.org. Adds the correct DESCRIPTION
@@ -458,7 +463,7 @@ and HOMEPAGE and kdelibs-${PV} deps. The simpler/smaller
kde-base/ packages (e.g. kdetoys) make no changes at all;
most of those that do only add deps.
-2.15 kde-cvs
+3.15 kde-cvs
This is only included with the kde3-pre ebuilds, and doesn't
live in portage. See [http://www.gentoo.org/~danarmak/kde3-pre.html||http://www.gentoo.org/~danarmak/kde3-pre.html].
@@ -467,7 +472,7 @@ It provides a new src_unpack which sets SRC_URI=""
and copies the sources from a location hardcoded in the
eclass. Useful if you have a local copy of the kde cvs modules.
-2.16 kde-pre
+3.16 kde-pre
This is only included with the kde3-pre ebuilds, and doesn't
live in portage. See [http://www.gentoo.org/~danarmak/kde3-pre.html||http://www.gentoo.org/~danarmak/kde3-pre.html].
@@ -480,11 +485,11 @@ and $S.
I'll probably add this to portage if there'll be a reason
to do it (i.e. a pre-release kde ebuild in portage).
-3 The inheriting ebuilds
+4 The inheriting ebuilds
When in doubt, look at other inheriting ebuilds, or ask.
-3.1 A typical kde app ebuild
+4.1 A typical kde app ebuild
<header lines>
@@ -523,7 +528,7 @@ src_unpack() {
}
-3.2 A typical optional-kde-functionality app ebuild
+4.2 A typical optional-kde-functionality app ebuild
To your normal ebuild, add the following lines. Prefix each
line with "use kde &&", or
diff --git a/eclass/kde-dirs.eclass b/eclass/functions.eclass
index 1889fbb5e588..3cbec888240a 100644
--- a/eclass/kde-dirs.eclass
+++ b/eclass/functions.eclass
@@ -1,9 +1,42 @@
# Copyright 1999-2000 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# Author Dan Armak <danarmak@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde-dirs.eclass,v 1.4 2002/02/01 11:47:16 danarmak Exp $
-# The kde eclass is inherited by all kde-* eclasses. Few ebuilds inherit straight from here.
-ECLASS=kde-dirs
+# $Header: /var/cvsroot/gentoo-x86/eclass/functions.eclass,v 1.1 2002/02/06 20:38:10 danarmak Exp $
+# This contains everything except things that modify ebuild variables and functions (e.g. $P, src_compile() etc.)
+ECLASS=functions
+
+# ---------------------
+# misc helper functions
+# ---------------------
+
+# adds all parameters to DEPEND and RDEPEND
+newdepend() {
+
+ debug-print-function newdepend $*
+ debug-print "newdepend: DEPEND=$DEPEND RDEPEND=$RDEPEND"
+
+ while [ -n "$1" ]; do
+ case $1 in
+ "/autotools")
+ DEPEND="${DEPEND} sys-devel/autoconf sys-devel/automake sys-devel/make"
+ ;;
+ "/c")
+ DEPEND="${DEPEND} sys-devel/gcc virtual/glibc sys-devel/ld.so"
+ RDEPEND="${RDEPEND} virtual/glibc sys-devel/ld.so"
+ ;;
+ *)
+ DEPEND="$DEPEND $1"
+ RDEPEND="$RDEPEND $1"
+ ;;
+ esac
+ shift
+ done
+
+}
+
+# ---------------------------------------------------------------
+# kde/qt directory management etc. functions, was kde-dirs.ebuild
+# ---------------------------------------------------------------
need-kde() {
@@ -93,7 +126,7 @@ qtver-from-kdever() {
case $1 in
2*) ver=2.3.1;;
3*) ver=3.0.1;;
- *) echo "!!! error: $FUNCNAME() (kde.eclass) called with invalid parameter: \"$1\", please report bug" && exit 1;;
+ *) echo "!!! error: $FUNCNAME() called with invalid parameter: \"$1\", please report bug" && exit 1;;
esac
selected_version="$ver"
@@ -115,7 +148,7 @@ min-kde-ver() {
case $1 in
2*) selected_version="2.2.2-r2";;
3*) selected_version="3.0";;
- *) echo "!!! error: $FUNCNAME() (kde.eclass) called with invalid parameter: \"$1\", please report bug" && exit 1;;
+ *) echo "!!! error: $FUNCNAME() called with invalid parameter: \"$1\", please report bug" && exit 1;;
esac
}
@@ -127,14 +160,8 @@ min-qt-ver() {
case $1 in
2*) selected_version="2.3";;
3*) selected_version="3";;
- *) echo "!!! error: $FUNCNAME() (kde.eclass) called with invalid parameter: \"$1\", please report bug" && exit 1;;
+ *) echo "!!! error: $FUNCNAME() called with invalid parameter: \"$1\", please report bug" && exit 1;;
esac
}
-
-
-
-
-
-
diff --git a/eclass/inherit.eclass b/eclass/inherit.eclass
index 60871987d54f..b2f934501da7 100644
--- a/eclass/inherit.eclass
+++ b/eclass/inherit.eclass
@@ -1,7 +1,7 @@
# Copyright 1999-2000 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# Author Dan Armak <danarmak@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/eclass/inherit.eclass,v 1.11 2002/01/25 19:00:31 danarmak Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/inherit.eclass,v 1.12 2002/02/06 20:38:10 danarmak Exp $
# This eclass provides the inherit() function. In the future it will be placed in ebuild.sh, but for now drobbins
# doesn't want to make a new portage just for my testing, so every eclass/ebuild will source this file manually and
# then inherit(). This way when the time comes for this to move into ebuild.sh, we can just delete the source lines.
@@ -14,13 +14,23 @@ inherit() {
while [ "$1" ]; do
location="${ECLASSDIR}/${1}.eclass"
# for now, disable by deafult because it creates a lot extra sourcing. (get debug lvels there already!)
- # . ${ECLASSDIR}/debug.eclass
- # debug-print "inherit: $1 -> $location"
+ #. ${ECLASSDIR}/debug.eclass
+ #debug-print "inherit: $1 -> $location"
source "$location" || die
shift
done
}
-inherit virtual
+inherit debug
+
+EXPORT_FUNCTIONS() {
+
+ while [ "$1" ]; do
+ debug-print "EXPORT_FUNCTIONS: ${1} -> ${ECLASS}_${1}"
+ eval "$1() { ${ECLASS}_$1 ; }" > /dev/null
+ shift
+ done
+
+}
diff --git a/eclass/kde-base.eclass b/eclass/kde-base.eclass
index 022bb0350d2e..3826048f6427 100644
--- a/eclass/kde-base.eclass
+++ b/eclass/kde-base.eclass
@@ -1,11 +1,12 @@
# Copyright 1999-2000 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# Author Dan Armak <danarmak@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde-base.eclass,v 1.13 2002/01/04 12:06:28 danarmak Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde-base.eclass,v 1.14 2002/02/06 20:38:10 danarmak Exp $
# This is the kde ebuild for std. kde-dependant apps which follow configure/make/make install
# procedures and have std. configure options.
-inherit c kde
+inherit kde
ECLASS=kde-base
+newdepend /c
DESCRIPTION="Based on the $ECLASS eclass"
HOMEPAGE="http://apps.kde.com/"
diff --git a/eclass/kde.eclass b/eclass/kde.eclass
index 9f680e700505..adeda69a96ff 100644
--- a/eclass/kde.eclass
+++ b/eclass/kde.eclass
@@ -1,10 +1,11 @@
# Copyright 1999-2000 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# Author Dan Armak <danarmak@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/eclass/kde.eclass,v 1.37 2002/01/23 13:45:35 danarmak Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/kde.eclass,v 1.38 2002/02/06 20:38:10 danarmak Exp $
# The kde eclass is inherited by all kde-* eclasses. Few ebuilds inherit straight from here.
-inherit autoconf base kde-dirs
+inherit base
ECLASS=kde
+newdepend /autotools
DESCRIPTION="Based on the $ECLASS eclass"
diff --git a/eclass/virtual.eclass b/eclass/virtual.eclass
deleted file mode 100644
index 41728830952b..000000000000
--- a/eclass/virtual.eclass
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2000 Gentoo Technologies, Inc.
-# Distributed under the terms of the GNU General Public License, v2 or later
-# Author Dan Armak <danarmak@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/eclass/virtual.eclass,v 1.4 2001/10/01 13:54:38 danarmak Exp $
-# All other eclasses, and thus ebuilds, inherit from this. It defines the EXPORT_FUNCTIONS
-# string, which (should) be eval'd by all other eclasses.
-inherit debug || die
-
-# Used by the EXPORT_FUNCTIONS code, and placed at the beginning of the eclass
-# for elegancy's sake.
-# Someday the code that processes an ebuild's name and extracts $PN from it
-# can be adapted to automatically calculate $ECLASS from the filename.
-# Note that this must come after any inherit lines.
-ECLASS=virtual
-
-DESCRIPTION="Based on the $ECLASS eclass."
-
-virtual_src_unpack() {
-debug-print-function virtual_src_unpack $*
-}
-virtual_src_compile() {
-debug-print-function virtual_src_compile $*
-}
-virtual_src_install() {
-debug-print-function virtual_src_install $*
-}
-virtual_pkg_preinst() {
-debug-print-function virtual_pkg_preinst $*
-}
-virtual_pkg_postinst() {
-debug-print-function virtual_pkg_postinst $*
-}
-virtual_pkg_prerm() {
-debug-print-function virtual_pkg_prerm $*
-}
-virtual_pkg_postrm() {
-debug-print-function virtual_pkg_postrm $*
-}
-
-# EXPORT_FUNCTIONS trick
-# This is the global part, defined here only.
-
-EXPORT_FUNCTIONS() {
-
- while [ "$1" ]; do
- debug-print "EXPORT_FUNCTIONS: ${1} -> ${ECLASS}_${1}"
- eval "$1() { ${ECLASS}_$1 ; }" > /dev/null
- shift
- done
-
-}
-
-
-# This part should be repeated for every eclass inheriting from here.
-EXPORT_FUNCTIONS src_unpack src_compile src_install pkg_preinst pkg_postinst pkg_prerm pkg_postrm
-