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

Contents of /eclass/base.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.36 - (show annotations) (download)
Sat Jan 17 16:56:55 2009 UTC (5 years, 9 months ago) by mr_bones_
Branch: MAIN
Changes since 1.35: +6 -5 lines
don't pass empty $A to unpack

1 # Copyright 1999-2008 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/eclass/base.eclass,v 1.35 2008/11/09 15:47:47 loki_val Exp $
4
5 # @ECLASS: base.eclass
6 # @MAINTAINER:
7 # Peter Alfredsen <loki_val@gentoo.org>
8 #
9 # Original author Dan Armak <danarmak@gentoo.org>
10 # @BLURB: The base eclass defines some default functions and variables.
11 # @DESCRIPTION:
12 # The base eclass defines some default functions and variables. Nearly
13 # everything else inherits from here.
14 #
15 # NOTE: You must define EAPI before inheriting from base, or the wrong functions
16 # may be exported.
17
18
19 inherit eutils
20
21 case "${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 ;;
28 esac
29
30 DESCRIPTION="Based on the $ECLASS eclass"
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.
37 base_src_unpack() {
38
39 debug-print-function $FUNCNAME "$@"
40
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".
59 base_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.
71 base_src_util() {
72
73 debug-print-function $FUNCNAME "$@"
74
75 cd "${WORKDIR}"
76
77 while [ "$1" ]; do
78
79 case $1 in
80 unpack)
81 debug-print-section unpack
82 if [ ! -z "$A" ] ; then
83 unpack ${A}
84 fi
85 ;;
86 patch)
87 debug-print-section patch
88 cd "${S}"
89 epatch "${FILESDIR}/${P}-gentoo.diff"
90 ;;
91 autopatch)
92 debug-print-section autopatch
93 debug-print "$FUNCNAME: autopatch: PATCHES=$PATCHES, PATCHES1=$PATCHES1"
94 cd "${S}"
95 if [[ ${#PATCHES[@]} -gt 1 ]] ; then
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
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".
122 base_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.
134 base_src_compile() {
135
136 debug-print-function $FUNCNAME "$@"
137
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.
158 base_src_work() {
159
160 debug-print-function $FUNCNAME "$@"
161
162 cd "${S}"
163
164 while [ "$1" ]; do
165
166 case $1 in
167 configure)
168 debug-print-section configure
169 econf || die "died running econf, $FUNCNAME:configure"
170 ;;
171 make)
172 debug-print-section make
173 emake || die "died running emake, $FUNCNAME:make"
174 ;;
175 all)
176 debug-print-section all
177 base_src_work configure make
178 ;;
179 esac
180
181 shift
182 done
183
184 }
185
186 # @FUNCTION: base_src_install
187 # @USAGE: [ make ] [ all ]
188 # @DESCRIPTION:
189 # The base src_install function, which is exported. If no argument is given,
190 # "all" is assumed.
191 base_src_install() {
192
193 debug-print-function $FUNCNAME "$@"
194 [ -z "$1" ] && base_src_install all
195
196 cd "${S}"
197
198 while [ "$1" ]; do
199
200 case $1 in
201 make)
202 debug-print-section make
203 make DESTDIR="${D}" install || die "died running make install, $FUNCNAME:make"
204 ;;
205 all)
206 debug-print-section all
207 base_src_install make
208 ;;
209 esac
210
211 shift
212 done
213
214 }

  ViewVC Help
Powered by ViewVC 1.1.20