/[gentoo-x86]/eclass/base.eclass
Gentoo

Diff of /eclass/base.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.4 Revision 1.37
1# Copyright 1999-2000 Gentoo Technologies, Inc. 1# Copyright 1999-2008 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License, v2 or later 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/eclass/base.eclass,v 1.37 2009/01/18 18:21:08 loki_val Exp $
4
5# @ECLASS: base.eclass
6# @MAINTAINER:
7# Peter Alfredsen <loki_val@gentoo.org>
8#
3# Author Dan Armak <danarmak@gentoo.org> 9# Original author Dan Armak <danarmak@gentoo.org>
4# $Header: /var/cvsroot/gentoo-x86/eclass/base.eclass,v 1.4 2001/09/29 12:35:38 danarmak Exp $ 10# @BLURB: The base eclass defines some default functions and variables.
11# @DESCRIPTION:
5# The base eclass defines some default functions and variables. Nearly everything 12# The base eclass defines some default functions and variables. Nearly
6# else inherits from here. 13# everything else inherits from here.
7. /usr/portage/eclass/inherit.eclass || die 14#
8inherit virtual || die 15# NOTE: You must define EAPI before inheriting from base, or the wrong functions
9ECLASS=base 16# may be exported.
10 17
11S=${WORKDIR}/${P} 18
19inherit eutils
20
21case "${EAPI:-0}" in
22 2)
23 EXPORT_FUNCTIONS src_unpack src_prepare src_configure src_compile src_install
24 ;;
25 *)
26 EXPORT_FUNCTIONS src_unpack src_compile src_install
27 ;;
28esac
29
12DESCRIPTION="Based on the $ECLASS eclass" 30DESCRIPTION="Based on the $ECLASS eclass"
13 31
32# @FUNCTION: base_src_unpack
33# @USAGE: [ unpack ] [ patch ] [ autopatch ] [ all ]
34# @DESCRIPTION:
35# The base src_unpack function, which is exported. If no argument is given,
36# "all" is assumed if EAPI!=2, "unpack" if EAPI=2.
14base_src_unpack() { 37base_src_unpack() {
15 38
16 echo "in base_src_unpack, 1st parameter is $1" 39 debug-print-function $FUNCNAME "$@"
17 [ -z "$1" ] && base_src_unpack all 40
18 41 if [ -z "$1" ] ; then
42 case "${EAPI:-0}" in
43 2)
44 base_src_util unpack
45 ;;
46 *)
47 base_src_util all
48 ;;
49 esac
50 else
51 base_src_util $@
52 fi
53}
54
55# @FUNCTION: base_src_prepare
56# @DESCRIPTION:
57# The base src_prepare function, which is exported when EAPI=2. Performs
58# "base_src_util autopatch".
59base_src_prepare() {
60
61 debug-print-function $FUNCNAME "$@"
62
63 base_src_util autopatch
64}
65
66# @FUNCTION: base_src_util
67# @USAGE: [ unpack ] [ patch ] [ autopatch ] [ all ]
68# @DESCRIPTION:
69# The base_src_util function is the grunt function for base src_unpack
70# and base src_prepare.
71base_src_util() {
72
73 debug-print-function $FUNCNAME "$@"
74
75 cd "${WORKDIR}"
76
19 while [ "$1" ]; do 77 while [ "$1" ]; do
20 78
21 case $1 in 79 case $1 in
22 unpack) 80 unpack)
23 echo "in base_src_unpack, action unpack" 81 debug-print-section unpack
82 if [ ! -z "$A" ] ; then
24 unpack ${A} 83 unpack ${A}
84 fi
25 ;; 85 ;;
26 all) 86 patch)
27 echo "in base_src_unpack, action all" 87 debug-print-section patch
28 base_src_unpack unpack 88 cd "${S}"
89 epatch "${FILESDIR}/${P}-gentoo.diff"
29 ;; 90 ;;
30 esac 91 autopatch)
31 92 debug-print-section autopatch
32 shift 93 debug-print "$FUNCNAME: autopatch: PATCHES=$PATCHES, PATCHES1=$PATCHES1"
33 done 94 cd "${S}"
34 95 if [[ ${#PATCHES[@]} -gt 1 ]] ; then
35} 96 for x in "${PATCHES[@]}"; do
97 debug-print "$FUNCNAME: autopatch: patching from ${x}"
98 epatch "${x}"
99 done
100 else
101 for x in ${PATCHES} ${PATCHES1}; do
102 debug-print "$FUNCNAME: autopatch: patching from ${x}"
103 epatch "${x}"
104 done
105 fi
106 ;;
107 all)
108 debug-print-section all
109 base_src_util unpack autopatch
110 ;;
111 esac
36 112
113 shift
114 done
115
116}
117
118# @FUNCTION: base_src_configure
119# @DESCRIPTION:
120# The base src_prepare function, which is exported when EAPI=2. Performs
121# "base_src_work configure".
122base_src_configure() {
123
124 debug-print-function $FUNCNAME "$@"
125
126 base_src_work configure
127}
128
129# @FUNCTION: base_src_compile
130# @USAGE: [ configure ] [ make ] [ all ]
131# @DESCRIPTION:
132# The base src_compile function, which is exported. If no argument is given,
133# "all" is assumed if EAPI!=2, "make" if EAPI=2.
37base_src_compile() { 134base_src_compile() {
38 135
39 echo "in base_src_compile, 1st parameter is $1" 136 debug-print-function $FUNCNAME "$@"
40 [ -z "$1" ] && base_src_compile all 137
41 138 if [ -z "$1" ]
139 then
140 case "${EAPI:-0}" in
141 2)
142 base_src_work make
143 ;;
144 *)
145 base_src_work all
146 ;;
147 esac
148 else
149 base_src_work $@
150 fi
151}
152
153# @FUNCTION: base_src_work
154# @USAGE: [ configure ] [ make ] [ all ]
155# @DESCRIPTION:
156# The base_src_work function is the grunt function for base src_configure
157# and base src_compile.
158base_src_work() {
159
160 debug-print-function $FUNCNAME "$@"
161
162 cd "${S}"
163
42 while [ "$1" ]; do 164 while [ "$1" ]; do
43 165
44 case $1 in 166 case $1 in
45 configure) 167 configure)
46 echo "in base_src_compile, action configure" 168 debug-print-section configure
47 ./configure || die 169 if [[ -x ${ECONF_SOURCE:-.}/configure ]]
170 then
171 econf || die "died running econf, $FUNCNAME:configure"
172 fi
48 ;; 173 ;;
49 make) 174 make)
50 echo "in base_src_compile, action make" 175 debug-print-section make
51 make || die 176 if [ -f Makefile ] || [ -f GNUmakefile ] || [ -f makefile ]
177 then
178 emake || die "died running emake, $FUNCNAME:make"
179 fi
52 ;; 180 ;;
53 all) 181 all)
54 echo "in base_src_compile, action all" 182 debug-print-section all
55 base_src_compile configure make 183 base_src_work configure make
56 ;; 184 ;;
57 esac 185 esac
58
59 shift
60 done
61
62}
63 186
187 shift
188 done
189
190}
191
192# @FUNCTION: base_src_install
193# @USAGE: [ make ] [ all ]
194# @DESCRIPTION:
195# The base src_install function, which is exported. If no argument is given,
196# "all" is assumed.
64base_src_install() { 197base_src_install() {
65 198
66 echo "in base_src_install, 1st parameter is $1" 199 debug-print-function $FUNCNAME "$@"
67 [ -z "$1" ] && base_src_install all 200 [ -z "$1" ] && base_src_install all
68 201
202 cd "${S}"
203
69 while [ "$1" ]; do 204 while [ "$1" ]; do
70 205
71 case $1 in 206 case $1 in
72 make) 207 make)
73 echo "in base_src_install, action make" 208 debug-print-section make
74 make DESTDIR=${D} install || die 209 make DESTDIR="${D}" install || die "died running make install, $FUNCNAME:make"
75 ;; 210 ;;
76 all) 211 all)
77 echo "in base_src_install, action all" 212 debug-print-section all
78 base_src_install make 213 base_src_install make
79 ;; 214 ;;
80 esac 215 esac
81
82 shift
83 done
84
85}
86 216
87EXPORT_FUNCTIONS src_unpack src_compile src_install 217 shift
218 done
88 219
220}

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.37

  ViewVC Help
Powered by ViewVC 1.1.20