1 |
# $Header: /magellan-cvs/smage/include/multilib.sminc,v 1.33 2007-11-13 15:49:09 niro Exp $ |
# $Id$ |
2 |
# multilib abis |
# multilib abis |
3 |
|
|
4 |
|
# tell the buildsystem that we are doing a multilib build |
5 |
|
export MULTILIB_BUILD="true" |
6 |
|
|
7 |
|
# be verbose or nor (true|false} |
8 |
|
: ${MULTILIB_VERBOSE="true"} |
9 |
|
|
10 |
|
# enter the abi srcdir as default setting |
11 |
|
: ${MULTILIB_ENTER_SRCDIR="true"} |
12 |
|
|
13 |
|
# multilib should call all dependant includes, which gets overridden |
14 |
|
sminclude mtools |
15 |
|
|
16 |
# do not define EMUL_LINUX_32 after inherit of multlib !! |
# do not define EMUL_LINUX_32 after inherit of multlib !! |
17 |
# it may break i*86 builds |
# it may break i*86 builds |
18 |
|
|
26 |
# add linux32 to the dependencies |
# add linux32 to the dependencies |
27 |
if [[ ${EMUL_LINUX_32} = true ]] |
if [[ ${EMUL_LINUX_32} = true ]] |
28 |
then |
then |
29 |
EMUL_LINUX_32_SDEPENDS_x86_64=">= dev-util/linux32-1" |
EMUL_LINUX_32_SDEPEND_x86_64=">= sys-apps/util-linux-2.19" |
30 |
SPECIAL_VARS="${SPECIAL_VARS} EMUL_LINUX_32_SDEPENDS_x86_64" |
SPECIAL_VARS="${SPECIAL_VARS} EMUL_LINUX_32_SDEPEND_x86_64" |
31 |
fi |
fi |
32 |
;; |
;; |
33 |
i*86) |
i*86) |
45 |
# the var ist decided with our common eval+echo magic |
# the var ist decided with our common eval+echo magic |
46 |
if [[ -z ${SDEPEND} ]] |
if [[ -z ${SDEPEND} ]] |
47 |
then |
then |
48 |
SDEPEND="\$(eval echo \\\$EMUL_LINUX_32_SDEPENDS_\${ARCH/i*86/x86} | tr ';' '\n')" |
SDEPEND="$(marchsdepend EMUL_LINUX_32_SDEPEND)" |
49 |
else |
else |
50 |
SDEPEND="${SDEPEND} |
SDEPEND="${SDEPEND} |
51 |
\$(eval echo \\\$EMUL_LINUX_32_SDEPENDS_\${ARCH/i*86/x86} | tr ';' '\n')" |
$(marchsdepend EMUL_LINUX_32_SDEPEND)" |
52 |
fi |
fi |
53 |
fi |
fi |
54 |
|
|
57 |
## |
## |
58 |
mlibdir() |
mlibdir() |
59 |
{ |
{ |
60 |
local libdir=lib |
local libdir="${ABI_DEFAULT_LIBDIR}" |
61 |
[[ ${ARCH} = x86_64 ]] && libdir=lib64 |
[[ ${ARCH} = i686 ]] && libdir="${ABI_X86_LIBDIR}" |
62 |
|
[[ ${ARCH} = x86_64 ]] && libdir="${ABI_X86_64_LIBDIR}" |
63 |
|
[[ ${MABI} = m32 ]] && libdir="${ABI_X86_LIBDIR}" |
64 |
|
[[ ${MABI} = m64 ]] && libdir="${ABI_X86_64_LIBDIR}" |
65 |
[[ -n ${ABI_LIBDIR} ]] && libdir="${ABI_LIBDIR}" |
[[ -n ${ABI_LIBDIR} ]] && libdir="${ABI_LIBDIR}" |
66 |
|
|
67 |
echo "${libdir}" |
echo "${libdir}" |
75 |
export ABI="m32" |
export ABI="m32" |
76 |
export CC="gcc -${ABI}" |
export CC="gcc -${ABI}" |
77 |
export CXX="g++ -${ABI}" |
export CXX="g++ -${ABI}" |
78 |
export ABI_LIBDIR="lib" |
export ABI_LIBDIR="${ABI_X86_LIBDIR}" |
79 |
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
80 |
then |
then |
81 |
export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}" |
local saved_ldflags="${LDFLAGS}" |
82 |
|
export LDFLAGS="${LDFLAGS} -L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}" |
83 |
fi |
fi |
84 |
export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig" |
# keep pkgconfig clean |
85 |
|
local orig_pkg_config_path="${PKG_CONFIG_PATH}" |
86 |
|
export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH}" |
87 |
|
|
88 |
|
# honor rust |
89 |
|
case ${ARCH} in |
90 |
|
# use native abi as RUST_TARGET |
91 |
|
i686) export RUST_TARGET="${ARCH}-unknown-linux-gnu" ;; |
92 |
|
# use i686 as RUST_TARGET for i{3,4,5}86 targets and on multilib-x86_64 target too |
93 |
|
i*86|x86_64) export RUST_TARGET="i686-unknown-linux-gnu" ;; |
94 |
|
*) die "unknown RUST_TARGET '${ARCH}'" ;; |
95 |
|
esac |
96 |
|
|
97 |
echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}" |
if [[ ${MULTILIB_VERBOSE} = true ]] |
|
echo -e "${COLBLUE}*** ${COLGREEN} ABI${COLDEFAULT}='${ABI}'" |
|
|
echo -e "${COLBLUE}*** ${COLGREEN} CC${COLDEFAULT}='${CC}'" |
|
|
echo -e "${COLBLUE}*** ${COLGREEN} CXX${COLDEFAULT}='${CXX}'" |
|
|
echo -e "${COLBLUE}*** ${COLGREEN} ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'" |
|
|
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
|
98 |
then |
then |
99 |
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${LDFLAGS}'" |
echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}" |
100 |
else |
echo -e "${COLBLUE}*** ${COLGREEN} ABI${COLDEFAULT}='${ABI}'" |
101 |
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'" |
echo -e "${COLBLUE}*** ${COLGREEN} CC${COLDEFAULT}='${CC}'" |
102 |
|
echo -e "${COLBLUE}*** ${COLGREEN} CXX${COLDEFAULT}='${CXX}'" |
103 |
|
echo -e "${COLBLUE}*** ${COLGREEN} ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'" |
104 |
|
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
105 |
|
then |
106 |
|
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${LDFLAGS}'" |
107 |
|
else |
108 |
|
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'" |
109 |
|
fi |
110 |
|
echo -e "${COLBLUE}*** ${COLGREEN} CHOST${COLDEFAULT}='${CHOST}'" |
111 |
|
echo -e "${COLBLUE}*** ${COLGREEN} RUST_TARGET${COLDEFAULT}='${RUST_TARGET}'" |
112 |
|
echo -e "${COLBLUE}*** ${COLGREEN} SRCDIR${COLDEFAULT}='${SRCDIR}/${SRCSUBDIR}'" |
113 |
|
echo -e "${COLBLUE}*** ${COLGREEN} PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'" |
114 |
fi |
fi |
|
echo -e "${COLBLUE}*** ${COLGREEN} PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'" |
|
115 |
|
|
116 |
# configure a linux32 emulated build |
# configure a linux32 emulated build |
117 |
if [[ ${EMUL_LINUX_32} = true ]] |
if [[ ${EMUL_LINUX_32} = true ]] |
118 |
then |
then |
119 |
echo -e "${COLBLUE}*** ${COLGREEN} EMUL_LINUX_32${COLDEFAULT}='${EMUL_LINUX_32}'" |
if [[ ${MULTILIB_VERBOSE} = true ]] |
120 |
|
then |
121 |
|
echo -e "${COLBLUE}*** ${COLGREEN} EMUL_LINUX_32${COLDEFAULT}='${EMUL_LINUX_32}'" |
122 |
|
fi |
123 |
uname(){ linux32 uname $@; } && export -f uname |
uname(){ linux32 uname $@; } && export -f uname |
124 |
ORIG_CHOST="${CHOST}" && export CHOST="i686-pc-linux-gnu" |
local orig_chost="${CHOST}" && export CHOST="${ABI_X86_CHOST}" |
125 |
|
fi |
126 |
|
if [[ ${MULTILIB_VERBOSE} = true ]] |
127 |
|
then |
128 |
|
echo -e "${COLBLUE}*** ${COLGREEN} CHOST${COLDEFAULT}='${CHOST}'" |
129 |
fi |
fi |
|
echo -e "${COLBLUE}*** ${COLGREEN} CHOST${COLDEFAULT}='${CHOST}'" |
|
130 |
|
|
131 |
# run any given command |
# run any given command |
132 |
|
if [[ ${MULTILIB_VERBOSE} = true ]] |
133 |
|
then |
134 |
|
echo -e "${COLGREEN}Executing:${COLDEFAULT} '$@'" |
135 |
|
fi |
136 |
eval $@ || die |
eval $@ || die |
137 |
|
|
138 |
unset ABI CC CXX ABI_LIBDIR LDFLAGS PKG_CONFIG_PATH |
unset ABI CC CXX ABI_LIBDIR RUST_TARGET |
139 |
|
# keep pkgconfig clean |
140 |
|
export PKG_CONFIG_PATH="${orig_pkg_config_path}" |
141 |
|
export LDFLAGS="${saved_ldflags}" |
142 |
|
|
143 |
# restore original settings |
# restore original settings |
144 |
if [[ ${EMUL_LINUX_32} = true ]] |
if [[ ${EMUL_LINUX_32} = true ]] |
145 |
then |
then |
146 |
unset uname |
unset uname |
147 |
export CHOST="${ORIG_CHOST}" && unset ORIG_CHOST |
export CHOST="${orig_chost}" && unset orig_chost |
148 |
fi |
fi |
149 |
} |
} |
150 |
|
|
153 |
export ABI="m64" |
export ABI="m64" |
154 |
export CC="gcc -${ABI}" |
export CC="gcc -${ABI}" |
155 |
export CXX="g++ -${ABI}" |
export CXX="g++ -${ABI}" |
156 |
export ABI_LIBDIR="lib64" |
export ABI_LIBDIR="${ABI_X86_64_LIBDIR}" |
157 |
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
158 |
then |
then |
159 |
|
local saved_ldflags="${LDFLAGS}" |
160 |
export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}" |
export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}" |
161 |
fi |
fi |
162 |
export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig" |
# keep pkgconfig clean |
163 |
|
local orig_pkg_config_path="${PKG_CONFIG_PATH}" |
164 |
|
export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH}" |
165 |
|
|
166 |
|
# honor rust |
167 |
|
case ${ARCH} in |
168 |
|
# use native abi as RUST_TARGET |
169 |
|
x86_64) export RUST_TARGET="${ARCH}-unknown-linux-gnu" ;; |
170 |
|
*) die "unknown RUST_TARGET '${ARCH}'" ;; |
171 |
|
esac |
172 |
|
|
173 |
echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}" |
if [[ ${MULTILIB_VERBOSE} = true ]] |
|
echo -e "${COLBLUE}*** ${COLGREEN} ABI${COLDEFAULT}='${ABI}'" |
|
|
echo -e "${COLBLUE}*** ${COLGREEN} CC${COLDEFAULT}='${CC}'" |
|
|
echo -e "${COLBLUE}*** ${COLGREEN} CXX${COLDEFAULT}='${CXX}'" |
|
|
echo -e "${COLBLUE}*** ${COLGREEN} ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'" |
|
|
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
|
174 |
then |
then |
175 |
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${LDFLAGS}'" |
echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}" |
176 |
else |
echo -e "${COLBLUE}*** ${COLGREEN} ABI${COLDEFAULT}='${ABI}'" |
177 |
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'" |
echo -e "${COLBLUE}*** ${COLGREEN} CC${COLDEFAULT}='${CC}'" |
178 |
|
echo -e "${COLBLUE}*** ${COLGREEN} CXX${COLDEFAULT}='${CXX}'" |
179 |
|
echo -e "${COLBLUE}*** ${COLGREEN} ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'" |
180 |
|
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
181 |
|
then |
182 |
|
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${LDFLAGS}'" |
183 |
|
else |
184 |
|
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'" |
185 |
|
fi |
186 |
|
echo -e "${COLBLUE}*** ${COLGREEN} CHOST${COLDEFAULT}='${CHOST}'" |
187 |
|
echo -e "${COLBLUE}*** ${COLGREEN} RUST_TARGET${COLDEFAULT}='${RUST_TARGET}'" |
188 |
|
echo -e "${COLBLUE}*** ${COLGREEN} SRCDIR${COLDEFAULT}='${SRCDIR}/${SRCSUBDIR}'" |
189 |
|
echo -e "${COLBLUE}*** ${COLGREEN} PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'" |
190 |
fi |
fi |
|
echo -e "${COLBLUE}*** ${COLGREEN} CHOST${COLDEFAULT}='${CHOST}'" |
|
|
echo -e "${COLBLUE}*** ${COLGREEN} PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'" |
|
191 |
|
|
192 |
# run any given command |
# run any given command |
193 |
|
if [[ ${MULTILIB_VERBOSE} = true ]] |
194 |
|
then |
195 |
|
echo -e "${COLGREEN}Executing:${COLDEFAULT} '$@'" |
196 |
|
fi |
197 |
eval $@ || die |
eval $@ || die |
198 |
|
|
199 |
unset ABI CC CXX ABI_LIBDIR LDFLAGS PKG_CONFIG_PATH |
unset ABI CC CXX ABI_LIBDIR RUST_TARGET |
200 |
|
# keep pkgconfig clean |
201 |
|
export PKG_CONFIG_PATH="${orig_pkg_config_path}" |
202 |
|
export LDFLAGS="${saved_ldflags}" |
203 |
} |
} |
204 |
|
|
205 |
only-m32() |
only-m32() |
214 |
# export this for mpatch etc (to repect only-${abi}) |
# export this for mpatch etc (to repect only-${abi}) |
215 |
export MULTILIB_ONLY_ABI=${abi} |
export MULTILIB_ONLY_ABI=${abi} |
216 |
|
|
217 |
cd ${SRCDIR}-${abi} |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
218 |
|
then |
219 |
|
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
220 |
|
fi |
221 |
abi-${abi} $@ || die |
abi-${abi} $@ || die |
222 |
|
|
223 |
# unset this is very important |
# unset this is very important |
238 |
# export this for mpatch etc (to repect only-${abi}) |
# export this for mpatch etc (to repect only-${abi}) |
239 |
export MULTILIB_ONLY_ABI=${abi} |
export MULTILIB_ONLY_ABI=${abi} |
240 |
|
|
241 |
cd ${SRCDIR}-${abi} |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
242 |
|
then |
243 |
|
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
244 |
|
fi |
245 |
abi-${abi} $@ || die |
abi-${abi} $@ || die |
246 |
|
|
247 |
# unset this is very important |
# unset this is very important |
255 |
local abi |
local abi |
256 |
for abi in ${MULTILIB_ABIS} |
for abi in ${MULTILIB_ABIS} |
257 |
do |
do |
258 |
cd ${SRCDIR}-${abi} |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
259 |
|
then |
260 |
|
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
261 |
|
fi |
262 |
abi-${abi} $@ || die |
abi-${abi} $@ || die |
263 |
done |
done |
264 |
} |
} |
265 |
|
|
266 |
|
mabi() |
267 |
|
{ |
268 |
|
echo \${ABI} |
269 |
|
} |
270 |
|
|
271 |
|
mabi-cc() |
272 |
|
{ |
273 |
|
echo "gcc -\${ABI}" |
274 |
|
} |
275 |
|
|
276 |
|
mabi-cxx() |
277 |
|
{ |
278 |
|
echo "g++ -\${ABI}" |
279 |
|
} |
280 |
|
|
281 |
|
mabi-cflags() |
282 |
|
{ |
283 |
|
echo "\${CFLAGS}" |
284 |
|
} |
285 |
|
|
286 |
|
mabi-cxxflags() |
287 |
|
{ |
288 |
|
echo "\${CXXFLAGS}" |
289 |
|
} |
290 |
|
|
291 |
|
mabi-ldflags() |
292 |
|
{ |
293 |
|
echo "\${LDFLAGS}" |
294 |
|
} |
295 |
|
|
296 |
## |
## |
297 |
# multilib compile functions |
# multilib compile functions |
298 |
## |
## |
302 |
# rename the old one |
# rename the old one |
303 |
old_mconfigure=old$(typeset -f mconfigure) |
old_mconfigure=old$(typeset -f mconfigure) |
304 |
eval "${old_mconfigure}" |
eval "${old_mconfigure}" |
305 |
fi |
|
306 |
mconfigure() |
mconfigure() |
307 |
{ |
{ |
308 |
local abi |
local abi |
313 |
|
|
314 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
315 |
do |
do |
316 |
cd ${SRCDIR}-${abi} |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
317 |
|
then |
318 |
|
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
319 |
|
fi |
320 |
abi-${abi} oldmconfigure $@ || die |
abi-${abi} oldmconfigure $@ || die |
321 |
done |
done |
322 |
} |
} |
|
|
|
|
if [[ ! -z $(typeset -f cmake_configure) ]] |
|
|
then |
|
|
# rename the old one |
|
|
old_cmake_configure=old$(typeset -f cmake_configure) |
|
|
eval "${old_cmake_configure}" |
|
323 |
fi |
fi |
|
cmake_configure() |
|
|
{ |
|
|
local abi |
|
|
local abis_to_run="${MULTILIB_ABIS}" |
|
|
|
|
|
# respect MULTILIB_ONLY_ABI variable |
|
|
[[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}" |
|
|
|
|
|
local saved_SRCDIR="${SRCDIR}" |
|
|
for abi in ${abis_to_run} |
|
|
do |
|
|
SRCDIR="${saved_SRCDIR}-${abi}" |
|
|
cd ${SRCDIR} |
|
|
abi-${abi} oldcmake_configure $@ || die |
|
|
done |
|
|
} |
|
324 |
|
|
325 |
if [[ ! -z $(typeset -f munpack) ]] |
if [[ ! -z $(typeset -f munpack) ]] |
326 |
then |
then |
327 |
# rename the old one |
# rename the old one |
328 |
old_munpack=old$(typeset -f munpack) |
old_munpack=old$(typeset -f munpack) |
329 |
eval "${old_munpack}" |
eval "${old_munpack}" |
330 |
fi |
|
331 |
munpack() |
munpack() |
332 |
{ |
{ |
333 |
local abi |
local abi |
339 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
340 |
do |
do |
341 |
echo -e "${COLBLUE}*** ${COLGREEN}unpacking for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}unpacking for ABI -${abi}${COLDEFAULT}" |
342 |
oldmunpack ${SRCFILE} || die |
oldmunpack $@ || die |
343 |
mv ${SRCDIR} ${SRCDIR}-${abi} || die |
mv ${SRCDIR} ${SRCDIR}-${abi} || die |
344 |
done |
done |
345 |
} |
} |
346 |
|
fi |
347 |
|
|
348 |
if [[ ! -z $(typeset -f mmake) ]] |
if [[ ! -z $(typeset -f mmake) ]] |
349 |
then |
then |
350 |
# rename the old one |
# rename the old one |
351 |
old_mmake=old$(typeset -f mmake) |
old_mmake=old$(typeset -f mmake) |
352 |
eval "${old_mmake}" |
eval "${old_mmake}" |
353 |
fi |
|
354 |
mmake() |
mmake() |
355 |
{ |
{ |
356 |
local abi |
local abi |
362 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
363 |
do |
do |
364 |
echo -e "${COLBLUE}*** ${COLGREEN}compiling for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}compiling for ABI -${abi}${COLDEFAULT}" |
365 |
cd ${SRCDIR}-${abi} |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
366 |
|
then |
367 |
|
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
368 |
|
fi |
369 |
abi-${abi} oldmmake $@ || die |
abi-${abi} oldmmake $@ || die |
370 |
done |
done |
371 |
} |
} |
372 |
|
fi |
373 |
|
|
374 |
if [[ ! -z $(typeset -f minstall) ]] |
if [[ ! -z $(typeset -f minstall) ]] |
375 |
then |
then |
376 |
# rename the old one |
# rename the old one |
377 |
old_minstall=old$(typeset -f minstall) |
old_minstall=old$(typeset -f minstall) |
378 |
eval "${old_minstall}" |
eval "${old_minstall}" |
379 |
fi |
|
380 |
minstall() |
minstall() |
381 |
{ |
{ |
382 |
local abi |
local abi |
388 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
389 |
do |
do |
390 |
echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}" |
391 |
cd ${SRCDIR}-${abi} |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
392 |
|
then |
393 |
|
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
394 |
|
fi |
395 |
abi-${abi} oldminstall $@ || die |
abi-${abi} oldminstall $@ || die |
396 |
done |
done |
397 |
} |
} |
398 |
|
fi |
399 |
|
|
400 |
minstall_destdir() |
minstall_destdir() |
401 |
{ |
{ |
408 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
409 |
do |
do |
410 |
echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}" |
411 |
cd ${SRCDIR}-${abi} |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
412 |
|
then |
413 |
|
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
414 |
|
fi |
415 |
make DESTDIR=${BINDIR} $@ install || die |
make DESTDIR=${BINDIR} $@ install || die |
416 |
done |
done |
417 |
} |
} |
421 |
# rename the old one |
# rename the old one |
422 |
old_mpatch=old$(typeset -f mpatch) |
old_mpatch=old$(typeset -f mpatch) |
423 |
eval "${old_mpatch}" |
eval "${old_mpatch}" |
424 |
fi |
|
425 |
mpatch() |
mpatch() |
426 |
{ |
{ |
427 |
local abi |
local abi |
433 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
434 |
do |
do |
435 |
echo -e "${COLBLUE}*** ${COLGREEN}appling patch for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}appling patch for ABI -${abi}${COLDEFAULT}" |
436 |
cd ${SRCDIR}-${abi} |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
437 |
|
then |
438 |
|
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
439 |
|
fi |
440 |
oldmpatch $@ || die |
oldmpatch $@ || die |
441 |
done |
done |
442 |
} |
} |
443 |
|
fi |
444 |
|
|
445 |
if [[ ! -z $(typeset -f mlibtoolize) ]] |
if [[ ! -z $(typeset -f mlibtoolize) ]] |
446 |
then |
then |
447 |
# rename the old one |
# rename the old one |
448 |
old_mlibtoolize=old$(typeset -f mlibtoolize) |
old_mlibtoolize=old$(typeset -f mlibtoolize) |
449 |
eval "${old_mlibtoolize}" |
eval "${old_mlibtoolize}" |
450 |
fi |
|
451 |
mlibtoolize() |
mlibtoolize() |
452 |
{ |
{ |
453 |
local abi |
local abi |
459 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
460 |
do |
do |
461 |
echo -e "${COLBLUE}*** ${COLGREEN}running mlibtoolize for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}running mlibtoolize for ABI -${abi}${COLDEFAULT}" |
462 |
cd ${SRCDIR}-${abi} |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
463 |
|
then |
464 |
|
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
465 |
|
fi |
466 |
oldmlibtoolize $@ || die |
oldmlibtoolize $@ || die |
467 |
done |
done |
468 |
} |
} |
469 |
|
fi |
470 |
|
|
471 |
minstalldocs() |
if [[ ! -z $(typeset -f mautoreconf) ]] |
472 |
|
then |
473 |
|
# rename the old one |
474 |
|
old_mautoreconf=old$(typeset -f mautoreconf) |
475 |
|
eval "${old_mautoreconf}" |
476 |
|
|
477 |
|
mautoreconf() |
478 |
{ |
{ |
479 |
local abi |
local abi |
|
local docfiles |
|
|
docfiles="$@" |
|
|
|
|
480 |
local abis_to_run="${MULTILIB_ABIS}" |
local abis_to_run="${MULTILIB_ABIS}" |
481 |
|
|
482 |
# respect MULTILIB_ONLY_ABI variable |
# respect MULTILIB_ONLY_ABI variable |
484 |
|
|
485 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
486 |
do |
do |
487 |
cd ${SRCDIR}-${abi} |
echo -e "${COLBLUE}*** ${COLGREEN}running mautoreconf for ABI -${abi}${COLDEFAULT}" |
488 |
if [ ! -d ${BINDIR}/usr/share/doc/${PNAME}-${PVER} ] |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
489 |
then |
then |
490 |
install -d ${BINDIR}/usr/share/doc/${PNAME}-${PVER} || die "creating doc dirs." |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
491 |
fi |
fi |
492 |
|
oldmautoreconf $@ || die |
|
for i in ${docfiles} |
|
|
do |
|
|
cat ${SRCDIR}-${abi}/${i} | gzip -9c > ${SRCDIR}-${abi}/${i}.gz || die "gzipping docs." |
|
|
install -m 0644 ${SRCDIR}-${abi}/${i}.gz \ |
|
|
${BINDIR}/usr/share/doc/${PNAME}-${PVER} || die "coping docs." |
|
|
done |
|
493 |
done |
done |
494 |
} |
} |
495 |
|
fi |
496 |
|
|
497 |
## |
if [[ ! -z $(typeset -f minstalldocs) ]] |
498 |
# multilib mbuild wrappers |
then |
499 |
## |
# rename the old one |
500 |
multilib_src_prepare() |
old_minstalldocs=old$(typeset -f minstalldocs) |
501 |
{ |
eval "${old_minstalldocs}" |
|
munpack |
|
|
} |
|
502 |
|
|
503 |
multilib_src_compile() |
minstalldocs() |
504 |
{ |
{ |
505 |
mconfigure |
local abi |
506 |
mmake |
local docfiles |
|
} |
|
507 |
|
|
508 |
multilib_src_install() |
local abis_to_run="${MULTILIB_ABIS}" |
|
{ |
|
|
minstall_destdir |
|
509 |
|
|
510 |
local i |
# respect MULTILIB_ONLY_ABI variable |
511 |
for abi in ${MULTILIB_ABIS} |
[[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}" |
512 |
|
|
513 |
|
for abi in ${abis_to_run} |
514 |
do |
do |
515 |
cd ${SRCDIR}-${abi} |
if [[ ${MULTILIB_ENTER_SRCDIR} = true ]] |
516 |
for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \ |
then |
517 |
FAQ LICENSE NEWS README TODO |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
518 |
do |
fi |
519 |
if [ -f ${SRCDIR}-${abi}/${i} ] |
oldminstalldocs $@ || die |
|
then |
|
|
minstalldocs ${i} || die |
|
|
fi |
|
|
done |
|
520 |
done |
done |
521 |
} |
} |
522 |
|
fi |
|
export_inherits multilib src_prepare src_compile src_install |
|