1 |
# $Id$ |
# $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 |
|
# multilib should call all dependant includes, which gets overridden |
11 |
|
sminclude mtools |
12 |
|
|
13 |
# do not define EMUL_LINUX_32 after inherit of multlib !! |
# do not define EMUL_LINUX_32 after inherit of multlib !! |
14 |
# it may break i*86 builds |
# it may break i*86 builds |
15 |
|
|
23 |
# add linux32 to the dependencies |
# add linux32 to the dependencies |
24 |
if [[ ${EMUL_LINUX_32} = true ]] |
if [[ ${EMUL_LINUX_32} = true ]] |
25 |
then |
then |
26 |
EMUL_LINUX_32_SDEPEND_x86_64=">= dev-util/linux32-1" |
EMUL_LINUX_32_SDEPEND_x86_64=">= sys-apps/util-linux-2.19" |
27 |
SPECIAL_VARS="${SPECIAL_VARS} EMUL_LINUX_32_SDEPEND_x86_64" |
SPECIAL_VARS="${SPECIAL_VARS} EMUL_LINUX_32_SDEPEND_x86_64" |
28 |
fi |
fi |
29 |
;; |
;; |
72 |
export ABI_LIBDIR="lib" |
export ABI_LIBDIR="lib" |
73 |
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
74 |
then |
then |
75 |
export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}" |
local saved_ldflags="${LDFLAGS}" |
76 |
|
export LDFLAGS="${LDFLAGS} -L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}" |
77 |
fi |
fi |
78 |
# keep pkgconfig clean |
# keep pkgconfig clean |
79 |
local orig_pkg_config_path="${PKG_CONFIG_PATH}" |
local orig_pkg_config_path="${PKG_CONFIG_PATH}" |
80 |
export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH}" |
export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH}" |
81 |
|
|
82 |
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 ]] |
|
83 |
then |
then |
84 |
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${LDFLAGS}'" |
echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}" |
85 |
else |
echo -e "${COLBLUE}*** ${COLGREEN} ABI${COLDEFAULT}='${ABI}'" |
86 |
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'" |
echo -e "${COLBLUE}*** ${COLGREEN} CC${COLDEFAULT}='${CC}'" |
87 |
|
echo -e "${COLBLUE}*** ${COLGREEN} CXX${COLDEFAULT}='${CXX}'" |
88 |
|
echo -e "${COLBLUE}*** ${COLGREEN} ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'" |
89 |
|
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
90 |
|
then |
91 |
|
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${LDFLAGS}'" |
92 |
|
else |
93 |
|
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'" |
94 |
|
fi |
95 |
|
echo -e "${COLBLUE}*** ${COLGREEN} CHOST${COLDEFAULT}='${CHOST}'" |
96 |
|
echo -e "${COLBLUE}*** ${COLGREEN} SRCDIR${COLDEFAULT}='${SRCDIR}/${SRCSUBDIR}'" |
97 |
|
echo -e "${COLBLUE}*** ${COLGREEN} PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'" |
98 |
fi |
fi |
|
echo -e "${COLBLUE}*** ${COLGREEN} PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'" |
|
99 |
|
|
100 |
# configure a linux32 emulated build |
# configure a linux32 emulated build |
101 |
if [[ ${EMUL_LINUX_32} = true ]] |
if [[ ${EMUL_LINUX_32} = true ]] |
102 |
then |
then |
103 |
echo -e "${COLBLUE}*** ${COLGREEN} EMUL_LINUX_32${COLDEFAULT}='${EMUL_LINUX_32}'" |
if [[ ${MULTILIB_VERBOSE} = true ]] |
104 |
|
then |
105 |
|
echo -e "${COLBLUE}*** ${COLGREEN} EMUL_LINUX_32${COLDEFAULT}='${EMUL_LINUX_32}'" |
106 |
|
fi |
107 |
uname(){ linux32 uname $@; } && export -f uname |
uname(){ linux32 uname $@; } && export -f uname |
108 |
ORIG_CHOST="${CHOST}" && export CHOST="i686-pc-linux-gnu" |
local orig_chost="${CHOST}" && export CHOST="i686-pc-linux-gnu" |
109 |
|
fi |
110 |
|
if [[ ${MULTILIB_VERBOSE} = true ]] |
111 |
|
then |
112 |
|
echo -e "${COLBLUE}*** ${COLGREEN} CHOST${COLDEFAULT}='${CHOST}'" |
113 |
fi |
fi |
|
echo -e "${COLBLUE}*** ${COLGREEN} CHOST${COLDEFAULT}='${CHOST}'" |
|
114 |
|
|
115 |
# run any given command |
# run any given command |
116 |
eval $@ || die |
eval $@ || die |
117 |
|
|
118 |
unset ABI CC CXX ABI_LIBDIR LDFLAGS |
unset ABI CC CXX ABI_LIBDIR |
119 |
# keep pkgconfig clean |
# keep pkgconfig clean |
120 |
export PKG_CONFIG_PATH="${orig_pkg_config_path}" |
export PKG_CONFIG_PATH="${orig_pkg_config_path}" |
121 |
|
export LDFLAGS="${saved_ldflags}" |
122 |
|
|
123 |
# restore original settings |
# restore original settings |
124 |
if [[ ${EMUL_LINUX_32} = true ]] |
if [[ ${EMUL_LINUX_32} = true ]] |
125 |
then |
then |
126 |
unset uname |
unset uname |
127 |
export CHOST="${ORIG_CHOST}" && unset ORIG_CHOST |
export CHOST="${orig_chost}" && unset orig_chost |
128 |
fi |
fi |
129 |
} |
} |
130 |
|
|
136 |
export ABI_LIBDIR="lib64" |
export ABI_LIBDIR="lib64" |
137 |
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
138 |
then |
then |
139 |
|
local saved_ldflags="${LDFLAGS}" |
140 |
export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}" |
export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}" |
141 |
fi |
fi |
142 |
# keep pkgconfig clean |
# keep pkgconfig clean |
143 |
local orig_pkg_config_path="${PKG_CONFIG_PATH}" |
local orig_pkg_config_path="${PKG_CONFIG_PATH}" |
144 |
export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH}" |
export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH}" |
145 |
|
|
146 |
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 ]] |
|
147 |
then |
then |
148 |
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${LDFLAGS}'" |
echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}" |
149 |
else |
echo -e "${COLBLUE}*** ${COLGREEN} ABI${COLDEFAULT}='${ABI}'" |
150 |
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'" |
echo -e "${COLBLUE}*** ${COLGREEN} CC${COLDEFAULT}='${CC}'" |
151 |
|
echo -e "${COLBLUE}*** ${COLGREEN} CXX${COLDEFAULT}='${CXX}'" |
152 |
|
echo -e "${COLBLUE}*** ${COLGREEN} ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'" |
153 |
|
if [[ ${EXPORT_ABI_LDFLAGS} != false ]] |
154 |
|
then |
155 |
|
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${LDFLAGS}'" |
156 |
|
else |
157 |
|
echo -e "${COLBLUE}*** ${COLGREEN} LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'" |
158 |
|
fi |
159 |
|
echo -e "${COLBLUE}*** ${COLGREEN} CHOST${COLDEFAULT}='${CHOST}'" |
160 |
|
echo -e "${COLBLUE}*** ${COLGREEN} SRCDIR${COLDEFAULT}='${SRCDIR}/${SRCSUBDIR}'" |
161 |
|
echo -e "${COLBLUE}*** ${COLGREEN} PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'" |
162 |
fi |
fi |
|
echo -e "${COLBLUE}*** ${COLGREEN} CHOST${COLDEFAULT}='${CHOST}'" |
|
|
echo -e "${COLBLUE}*** ${COLGREEN} PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'" |
|
163 |
|
|
164 |
# run any given command |
# run any given command |
165 |
eval $@ || die |
eval $@ || die |
166 |
|
|
167 |
unset ABI CC CXX ABI_LIBDIR LDFLAGS |
unset ABI CC CXX ABI_LIBDIR |
168 |
# keep pkgconfig clean |
# keep pkgconfig clean |
169 |
export PKG_CONFIG_PATH="${orig_pkg_config_path}" |
export PKG_CONFIG_PATH="${orig_pkg_config_path}" |
170 |
|
export LDFLAGS="${saved_ldflags}" |
171 |
} |
} |
172 |
|
|
173 |
only-m32() |
only-m32() |
182 |
# export this for mpatch etc (to repect only-${abi}) |
# export this for mpatch etc (to repect only-${abi}) |
183 |
export MULTILIB_ONLY_ABI=${abi} |
export MULTILIB_ONLY_ABI=${abi} |
184 |
|
|
185 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
186 |
abi-${abi} $@ || die |
abi-${abi} $@ || die |
187 |
|
|
188 |
# unset this is very important |
# unset this is very important |
203 |
# export this for mpatch etc (to repect only-${abi}) |
# export this for mpatch etc (to repect only-${abi}) |
204 |
export MULTILIB_ONLY_ABI=${abi} |
export MULTILIB_ONLY_ABI=${abi} |
205 |
|
|
206 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
207 |
abi-${abi} $@ || die |
abi-${abi} $@ || die |
208 |
|
|
209 |
# unset this is very important |
# unset this is very important |
217 |
local abi |
local abi |
218 |
for abi in ${MULTILIB_ABIS} |
for abi in ${MULTILIB_ABIS} |
219 |
do |
do |
220 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
221 |
abi-${abi} $@ || die |
abi-${abi} $@ || die |
222 |
done |
done |
223 |
} |
} |
227 |
echo \${ABI} |
echo \${ABI} |
228 |
} |
} |
229 |
|
|
230 |
|
mabi-cc() |
231 |
|
{ |
232 |
|
echo "gcc -\${ABI}" |
233 |
|
} |
234 |
|
|
235 |
|
mabi-cxx() |
236 |
|
{ |
237 |
|
echo "g++ -\${ABI}" |
238 |
|
} |
239 |
|
|
240 |
|
mabi-cflags() |
241 |
|
{ |
242 |
|
echo "\${CFLAGS}" |
243 |
|
} |
244 |
|
|
245 |
|
mabi-cxxflags() |
246 |
|
{ |
247 |
|
echo "\${CXXFLAGS}" |
248 |
|
} |
249 |
|
|
250 |
|
mabi-ldflags() |
251 |
|
{ |
252 |
|
echo "\${LDFLAGS}" |
253 |
|
} |
254 |
|
|
255 |
## |
## |
256 |
# multilib compile functions |
# multilib compile functions |
257 |
## |
## |
261 |
# rename the old one |
# rename the old one |
262 |
old_mconfigure=old$(typeset -f mconfigure) |
old_mconfigure=old$(typeset -f mconfigure) |
263 |
eval "${old_mconfigure}" |
eval "${old_mconfigure}" |
264 |
fi |
|
265 |
mconfigure() |
mconfigure() |
266 |
{ |
{ |
267 |
local abi |
local abi |
272 |
|
|
273 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
274 |
do |
do |
275 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
276 |
abi-${abi} oldmconfigure $@ || die |
abi-${abi} oldmconfigure $@ || die |
277 |
done |
done |
278 |
} |
} |
279 |
|
fi |
280 |
|
|
281 |
if [[ ! -z $(typeset -f cmake_configure) ]] |
if [[ ! -z $(typeset -f cmake_configure) ]] |
282 |
then |
then |
283 |
# rename the old one |
# rename the old one |
284 |
old_cmake_configure=old$(typeset -f cmake_configure) |
old_cmake_configure=old$(typeset -f cmake_configure) |
285 |
eval "${old_cmake_configure}" |
eval "${old_cmake_configure}" |
286 |
fi |
|
287 |
cmake_configure() |
cmake_configure() |
288 |
{ |
{ |
289 |
local abi |
local abi |
296 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
297 |
do |
do |
298 |
SRCDIR="${saved_SRCDIR}-${abi}" |
SRCDIR="${saved_SRCDIR}-${abi}" |
299 |
cd ${SRCDIR} |
# honor inside and outside build-dir builds |
300 |
|
if [ -d ${BUILDDIR}/build-${abi} ] |
301 |
|
then |
302 |
|
cd ${BUILDDIR}/build-${abi} |
303 |
|
else |
304 |
|
cd ${SRCDIR} |
305 |
|
fi |
306 |
abi-${abi} oldcmake_configure $@ || die |
abi-${abi} oldcmake_configure $@ || die |
307 |
done |
done |
308 |
|
# restore SRCDIR |
309 |
|
SRCDIR="${saved_SRCDIR}" |
310 |
|
} |
311 |
|
fi |
312 |
|
|
313 |
|
if [[ ! -z $(typeset -f cmake_src_compile) ]] |
314 |
|
then |
315 |
|
# rename the old one |
316 |
|
old_cmake_src_compile=old$(typeset -f cmake_src_compile) |
317 |
|
eval "${old_cmake_src_compile}" |
318 |
|
|
319 |
|
cmake_src_compile() |
320 |
|
{ |
321 |
|
local abi |
322 |
|
local abis_to_run="${MULTILIB_ABIS}" |
323 |
|
|
324 |
|
# respect MULTILIB_ONLY_ABI variable |
325 |
|
[[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}" |
326 |
|
|
327 |
|
for abi in ${abis_to_run} |
328 |
|
do |
329 |
|
# remove build dir if exist |
330 |
|
[[ -d ${BUILDDIR}/build-${abi} ]] && rm -rf ${BUILDDIR}/build-${abi} |
331 |
|
|
332 |
|
# build outside of the source dir |
333 |
|
install -d ${BUILDDIR}/build-${abi} || die |
334 |
|
cd ${BUILDDIR}/build-${abi} |
335 |
|
done |
336 |
|
|
337 |
|
cmake_configure || die |
338 |
|
|
339 |
|
for abi in ${abis_to_run} |
340 |
|
do |
341 |
|
cd ${BUILDDIR}/build-${abi} |
342 |
|
abi-${abi} oldmmake $@ || die |
343 |
|
done |
344 |
|
} |
345 |
|
fi |
346 |
|
|
347 |
|
if [[ ! -z $(typeset -f cmake_src_check) ]] |
348 |
|
then |
349 |
|
# rename the old one |
350 |
|
old_cmake_src_check=old$(typeset -f cmake_src_check) |
351 |
|
eval "${old_cmake_check}" |
352 |
|
|
353 |
|
cmake_src_check() |
354 |
|
{ |
355 |
|
local abi |
356 |
|
local abis_to_run="${MULTILIB_ABIS}" |
357 |
|
|
358 |
|
# respect MULTILIB_ONLY_ABI variable |
359 |
|
[[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}" |
360 |
|
|
361 |
|
for abi in ${abis_to_run} |
362 |
|
do |
363 |
|
cd ${BUILDDIR}/build-${abi} |
364 |
|
mmake -j1 -k check || die |
365 |
|
done |
366 |
} |
} |
367 |
|
fi |
368 |
|
|
369 |
|
if [[ ! -z $(typeset -f cmake_src_install) ]] |
370 |
|
then |
371 |
|
# rename the old one |
372 |
|
old_cmake_src_install=old$(typeset -f cmake_src_install) |
373 |
|
eval "${old_cmake_install}" |
374 |
|
|
375 |
|
cmake_src_install() |
376 |
|
{ |
377 |
|
local abi |
378 |
|
local abis_to_run="${MULTILIB_ABIS}" |
379 |
|
|
380 |
|
# respect MULTILIB_ONLY_ABI variable |
381 |
|
[[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}" |
382 |
|
|
383 |
|
for abi in ${abis_to_run} |
384 |
|
do |
385 |
|
# install build outside of the source dir |
386 |
|
cd ${BUILDDIR}/build-${abi} |
387 |
|
abi-${abi} oldmmake DESTDIR=${BINDIR} $@ install || die |
388 |
|
done |
389 |
|
} |
390 |
|
fi |
391 |
|
|
392 |
if [[ ! -z $(typeset -f munpack) ]] |
if [[ ! -z $(typeset -f munpack) ]] |
393 |
then |
then |
394 |
# rename the old one |
# rename the old one |
395 |
old_munpack=old$(typeset -f munpack) |
old_munpack=old$(typeset -f munpack) |
396 |
eval "${old_munpack}" |
eval "${old_munpack}" |
397 |
fi |
|
398 |
munpack() |
munpack() |
399 |
{ |
{ |
400 |
local abi |
local abi |
406 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
407 |
do |
do |
408 |
echo -e "${COLBLUE}*** ${COLGREEN}unpacking for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}unpacking for ABI -${abi}${COLDEFAULT}" |
409 |
oldmunpack ${SRCFILE} || die |
oldmunpack $@ || die |
410 |
mv ${SRCDIR} ${SRCDIR}-${abi} || die |
mv ${SRCDIR} ${SRCDIR}-${abi} || die |
411 |
done |
done |
412 |
} |
} |
413 |
|
fi |
414 |
|
|
415 |
if [[ ! -z $(typeset -f mmake) ]] |
if [[ ! -z $(typeset -f mmake) ]] |
416 |
then |
then |
417 |
# rename the old one |
# rename the old one |
418 |
old_mmake=old$(typeset -f mmake) |
old_mmake=old$(typeset -f mmake) |
419 |
eval "${old_mmake}" |
eval "${old_mmake}" |
420 |
fi |
|
421 |
mmake() |
mmake() |
422 |
{ |
{ |
423 |
local abi |
local abi |
429 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
430 |
do |
do |
431 |
echo -e "${COLBLUE}*** ${COLGREEN}compiling for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}compiling for ABI -${abi}${COLDEFAULT}" |
432 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
433 |
abi-${abi} oldmmake $@ || die |
abi-${abi} oldmmake $@ || die |
434 |
done |
done |
435 |
} |
} |
436 |
|
fi |
437 |
|
|
438 |
if [[ ! -z $(typeset -f minstall) ]] |
if [[ ! -z $(typeset -f minstall) ]] |
439 |
then |
then |
440 |
# rename the old one |
# rename the old one |
441 |
old_minstall=old$(typeset -f minstall) |
old_minstall=old$(typeset -f minstall) |
442 |
eval "${old_minstall}" |
eval "${old_minstall}" |
443 |
fi |
|
444 |
minstall() |
minstall() |
445 |
{ |
{ |
446 |
local abi |
local abi |
452 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
453 |
do |
do |
454 |
echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}" |
455 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
456 |
abi-${abi} oldminstall $@ || die |
abi-${abi} oldminstall $@ || die |
457 |
done |
done |
458 |
} |
} |
459 |
|
fi |
460 |
|
|
461 |
minstall_destdir() |
minstall_destdir() |
462 |
{ |
{ |
469 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
470 |
do |
do |
471 |
echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}" |
472 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
473 |
make DESTDIR=${BINDIR} $@ install || die |
make DESTDIR=${BINDIR} $@ install || die |
474 |
done |
done |
475 |
} |
} |
479 |
# rename the old one |
# rename the old one |
480 |
old_mpatch=old$(typeset -f mpatch) |
old_mpatch=old$(typeset -f mpatch) |
481 |
eval "${old_mpatch}" |
eval "${old_mpatch}" |
482 |
fi |
|
483 |
mpatch() |
mpatch() |
484 |
{ |
{ |
485 |
local abi |
local abi |
491 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
492 |
do |
do |
493 |
echo -e "${COLBLUE}*** ${COLGREEN}appling patch for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}appling patch for ABI -${abi}${COLDEFAULT}" |
494 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
495 |
oldmpatch $@ || die |
oldmpatch $@ || die |
496 |
done |
done |
497 |
} |
} |
498 |
|
fi |
499 |
|
|
500 |
if [[ ! -z $(typeset -f mlibtoolize) ]] |
if [[ ! -z $(typeset -f mlibtoolize) ]] |
501 |
then |
then |
502 |
# rename the old one |
# rename the old one |
503 |
old_mlibtoolize=old$(typeset -f mlibtoolize) |
old_mlibtoolize=old$(typeset -f mlibtoolize) |
504 |
eval "${old_mlibtoolize}" |
eval "${old_mlibtoolize}" |
505 |
fi |
|
506 |
mlibtoolize() |
mlibtoolize() |
507 |
{ |
{ |
508 |
local abi |
local abi |
514 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
515 |
do |
do |
516 |
echo -e "${COLBLUE}*** ${COLGREEN}running mlibtoolize for ABI -${abi}${COLDEFAULT}" |
echo -e "${COLBLUE}*** ${COLGREEN}running mlibtoolize for ABI -${abi}${COLDEFAULT}" |
517 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
518 |
oldmlibtoolize $@ || die |
oldmlibtoolize $@ || die |
519 |
done |
done |
520 |
} |
} |
521 |
|
fi |
522 |
|
|
523 |
|
if [[ ! -z $(typeset -f mautoreconf) ]] |
524 |
|
then |
525 |
|
# rename the old one |
526 |
|
old_mautoreconf=old$(typeset -f mautoreconf) |
527 |
|
eval "${old_mautoreconf}" |
528 |
|
|
529 |
|
mautoreconf() |
530 |
|
{ |
531 |
|
local abi |
532 |
|
local abis_to_run="${MULTILIB_ABIS}" |
533 |
|
|
534 |
|
# respect MULTILIB_ONLY_ABI variable |
535 |
|
[[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}" |
536 |
|
|
537 |
|
for abi in ${abis_to_run} |
538 |
|
do |
539 |
|
echo -e "${COLBLUE}*** ${COLGREEN}running mautoreconf for ABI -${abi}${COLDEFAULT}" |
540 |
|
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
541 |
|
oldmautoreconf $@ || die |
542 |
|
done |
543 |
|
} |
544 |
|
fi |
545 |
|
|
546 |
|
if [[ ! -z $(typeset -f minstalldocs) ]] |
547 |
|
then |
548 |
|
# rename the old one |
549 |
|
old_minstalldocs=old$(typeset -f minstalldocs) |
550 |
|
eval "${old_minstalldocs}" |
551 |
|
|
552 |
minstalldocs() |
minstalldocs() |
553 |
{ |
{ |
554 |
local abi |
local abi |
555 |
local docfiles |
local docfiles |
|
docfiles="$@" |
|
556 |
|
|
557 |
local abis_to_run="${MULTILIB_ABIS}" |
local abis_to_run="${MULTILIB_ABIS}" |
558 |
|
|
561 |
|
|
562 |
for abi in ${abis_to_run} |
for abi in ${abis_to_run} |
563 |
do |
do |
564 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
565 |
if [ ! -d ${BINDIR}/usr/share/doc/${PNAME}-${PVER} ] |
oldminstalldocs $@ || die |
|
then |
|
|
install -d ${BINDIR}/usr/share/doc/${PNAME}-${PVER} || die "creating doc dirs." |
|
|
fi |
|
|
|
|
|
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 |
|
566 |
done |
done |
567 |
} |
} |
568 |
|
fi |
569 |
|
|
570 |
## |
## |
571 |
# multilib mbuild wrappers |
# multilib mbuild wrappers |
572 |
## |
## |
573 |
multilib_src_prepare() |
multilib_src_prepare() |
574 |
{ |
{ |
575 |
munpack |
munpack ${SRCFILE} || die |
576 |
} |
} |
577 |
|
|
578 |
multilib_src_compile() |
multilib_src_compile() |
579 |
{ |
{ |
580 |
mconfigure |
if [[ ! -z $(typeset -f cmake_src_compile) ]] |
581 |
mmake |
then |
582 |
|
cmake_src_compile || die |
583 |
|
else |
584 |
|
mconfigure || die |
585 |
|
mmake || die |
586 |
|
fi |
587 |
|
} |
588 |
|
|
589 |
|
multilib_src_check() |
590 |
|
{ |
591 |
|
if [[ ! -z $(typeset -f cmake_src_check) ]] |
592 |
|
then |
593 |
|
cmake_src_check || die |
594 |
|
else |
595 |
|
mmake -j1 -k check || die |
596 |
|
fi |
597 |
} |
} |
598 |
|
|
599 |
multilib_src_install() |
multilib_src_install() |
600 |
{ |
{ |
601 |
minstall_destdir |
if [[ ! -z $(typeset -f cmake_src_install) ]] |
602 |
|
then |
603 |
|
cmake_src_install || die |
604 |
|
else |
605 |
|
mmake DESTDIR=${BINDIR} install || die |
606 |
|
fi |
607 |
|
|
608 |
local i |
local i |
609 |
for abi in ${MULTILIB_ABIS} |
for abi in ${MULTILIB_ABIS} |
610 |
do |
do |
611 |
cd ${SRCDIR}-${abi} |
cd ${SRCDIR}-${abi}/${SRCSUBDIR} |
612 |
for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \ |
for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \ |
613 |
FAQ LICENSE NEWS README TODO |
FAQ LICENSE NEWS README TODO |
614 |
do |
do |
620 |
done |
done |
621 |
} |
} |
622 |
|
|
623 |
export_inherits multilib src_prepare src_compile src_install |
export_inherits multilib src_prepare src_compile src_check src_install |