Magellan Linux

Diff of /branches/R11-unstable/include/multilib.sminc

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

trunk/core/include/multilib.sminc revision 2 by niro, Fri Oct 10 13:29:42 2008 UTC trunk/include/multilib.sminc revision 29786 by niro, Thu Oct 12 07:24:27 2017 UTC
# Line 1  Line 1 
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    # 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    
# Line 14  case ${ARCH} in Line 23  case ${ARCH} in
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_SDEPENDS_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_SDEPENDS_x86_64"   SPECIAL_VARS="${SPECIAL_VARS} EMUL_LINUX_32_SDEPEND_x86_64"
28   fi   fi
29   ;;   ;;
30   i*86)   i*86)
# Line 33  then Line 42  then
42   # the var ist decided with our common eval+echo magic   # the var ist decided with our common eval+echo magic
43   if [[ -z ${SDEPEND} ]]   if [[ -z ${SDEPEND} ]]
44   then   then
45   SDEPEND="\$(eval echo \\\$EMUL_LINUX_32_SDEPENDS_\${ARCH/i*86/x86} | tr ';' '\n')"   SDEPEND="$(marchsdepend EMUL_LINUX_32_SDEPEND)"
46   else   else
47   SDEPEND="${SDEPEND}   SDEPEND="${SDEPEND}
48   \$(eval echo \\\$EMUL_LINUX_32_SDEPENDS_\${ARCH/i*86/x86} | tr ';' '\n')"   $(marchsdepend EMUL_LINUX_32_SDEPEND)"
49   fi   fi
50  fi  fi
51    
# Line 61  abi-m32() Line 70  abi-m32()
70   export CC="gcc -${ABI}"   export CC="gcc -${ABI}"
71   export CXX="g++ -${ABI}"   export CXX="g++ -${ABI}"
72   export ABI_LIBDIR="lib"   export ABI_LIBDIR="lib"
73   export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}"   if [[ ${EXPORT_ABI_LDFLAGS} != false ]]
74   export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig"   then
75     local saved_ldflags="${LDFLAGS}"
76     export LDFLAGS="${LDFLAGS} -L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}"
77     fi
78     # keep pkgconfig clean
79     local orig_pkg_config_path="${PKG_CONFIG_PATH}"
80     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 ]]
83   echo -e "${COLBLUE}*** ${COLGREEN}  ABI${COLDEFAULT}='${ABI}'"   then
84   echo -e "${COLBLUE}*** ${COLGREEN}  CC${COLDEFAULT}='${CC}'"   echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}"
85   echo -e "${COLBLUE}*** ${COLGREEN}  CXX${COLDEFAULT}='${CXX}'"   echo -e "${COLBLUE}*** ${COLGREEN}  ABI${COLDEFAULT}='${ABI}'"
86   echo -e "${COLBLUE}*** ${COLGREEN}  ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'"   echo -e "${COLBLUE}*** ${COLGREEN}  CC${COLDEFAULT}='${CC}'"
87   echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${LDFLAGS}'"   echo -e "${COLBLUE}*** ${COLGREEN}  CXX${COLDEFAULT}='${CXX}'"
88   echo -e "${COLBLUE}*** ${COLGREEN}  PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'"   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
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 PKG_CONFIG_PATH   unset ABI CC CXX ABI_LIBDIR
119     # keep pkgconfig clean
120     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    
# Line 100  abi-m64() Line 134  abi-m64()
134   export CC="gcc -${ABI}"   export CC="gcc -${ABI}"
135   export CXX="g++ -${ABI}"   export CXX="g++ -${ABI}"
136   export ABI_LIBDIR="lib64"   export ABI_LIBDIR="lib64"
137   export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}"   if [[ ${EXPORT_ABI_LDFLAGS} != false ]]
138   export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig"   then
139     local saved_ldflags="${LDFLAGS}"
140     export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}"
141     fi
142     # keep pkgconfig clean
143     local orig_pkg_config_path="${PKG_CONFIG_PATH}"
144     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 ]]
147   echo -e "${COLBLUE}*** ${COLGREEN}  ABI${COLDEFAULT}='${ABI}'"   then
148   echo -e "${COLBLUE}*** ${COLGREEN}  CC${COLDEFAULT}='${CC}'"   echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}"
149   echo -e "${COLBLUE}*** ${COLGREEN}  CXX${COLDEFAULT}='${CXX}'"   echo -e "${COLBLUE}*** ${COLGREEN}  ABI${COLDEFAULT}='${ABI}'"
150   echo -e "${COLBLUE}*** ${COLGREEN}  ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'"   echo -e "${COLBLUE}*** ${COLGREEN}  CC${COLDEFAULT}='${CC}'"
151   echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${LDFLAGS}'"   echo -e "${COLBLUE}*** ${COLGREEN}  CXX${COLDEFAULT}='${CXX}'"
152   echo -e "${COLBLUE}*** ${COLGREEN}  CHOST${COLDEFAULT}='${CHOST}'"   echo -e "${COLBLUE}*** ${COLGREEN}  ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'"
153   echo -e "${COLBLUE}*** ${COLGREEN}  PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'"   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
163    
164   # run any given command   # run any given command
165   eval $@ || die   eval $@ || die
166    
167   unset ABI CC CXX ABI_LIBDIR LDFLAGS PKG_CONFIG_PATH   unset ABI CC CXX ABI_LIBDIR
168     # keep pkgconfig clean
169     export PKG_CONFIG_PATH="${orig_pkg_config_path}"
170     export LDFLAGS="${saved_ldflags}"
171  }  }
172    
173  only-m32()  only-m32()
# Line 130  only-m32() Line 182  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
# Line 151  only-m64() Line 203  only-m64()
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
# Line 165  all-abis() Line 217  all-abis()
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  }  }
224    
225    mabi()
226    {
227     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  ##  ##
258    
259  # rename the old one  if [[ ! -z $(typeset -f mconfigure) ]]
260  old_mconfigure=old$(typeset -f mconfigure)  then
261  eval ${old_mconfigure}   # rename the old one
262     old_mconfigure=old$(typeset -f mconfigure)
263     eval "${old_mconfigure}"
264    
265  mconfigure()  mconfigure()
266  {  {
267   local abi   local abi
# Line 187  mconfigure() Line 272  mconfigure()
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) ]]
282    then
283     # rename the old one
284     old_cmake_configure=old$(typeset -f cmake_configure)
285     eval "${old_cmake_configure}"
286    
287    cmake_configure()
288    {
289     local abi
290     local abis_to_run="${MULTILIB_ABIS}"
291    
292     # respect MULTILIB_ONLY_ABI variable
293     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
294    
295     local saved_SRCDIR="${SRCDIR}"
296     for abi in ${abis_to_run}
297     do
298     SRCDIR="${saved_SRCDIR}-${abi}"
299     # 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
307     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     # honor inside and outside build-dir builds
364     if [ -d ${BUILDDIR}/build-${abi} ]
365     then
366     cd ${BUILDDIR}/build-${abi}
367     else
368     cd ${SRCDIR}-${abi}
369     fi
370     mmake -j1 -k check || die
371     done
372    }
373    fi
374    
375    if [[ ! -z $(typeset -f cmake_src_install) ]]
376    then
377     # rename the old one
378     old_cmake_src_install=old$(typeset -f cmake_src_install)
379     eval "${old_cmake_install}"
380    
381    cmake_src_install()
382    {
383     local abi
384     local abis_to_run="${MULTILIB_ABIS}"
385    
386     # respect MULTILIB_ONLY_ABI variable
387     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
388    
389     for abi in ${abis_to_run}
390     do
391     # honor inside and outside build-dir builds
392     if [ -d ${BUILDDIR}/build-${abi} ]
393     then
394     cd ${BUILDDIR}/build-${abi}
395     else
396     cd ${SRCDIR}-${abi}
397     fi
398     abi-${abi} oldmmake DESTDIR=${BINDIR} $@ install || die
399     done
400    }
401    fi
402    
403    
404    if [[ ! -z $(typeset -f meson_configure) ]]
405    then
406     # rename the old one
407     old_meson_configure=old$(typeset -f meson_configure)
408     eval "${old_meson_configure}"
409    
410    meson_configure()
411    {
412     local abi
413     local abis_to_run="${MULTILIB_ABIS}"
414    
415     # respect MULTILIB_ONLY_ABI variable
416     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
417    
418     local saved_SRCDIR="${SRCDIR}"
419     for abi in ${abis_to_run}
420     do
421     SRCDIR="${saved_SRCDIR}-${abi}"
422     # honor inside and outside build-dir builds
423     if [ -d ${BUILDDIR}/build-${abi} ]
424     then
425     cd ${BUILDDIR}/build-${abi}
426     else
427     cd ${SRCDIR}
428     fi
429     abi-${abi} oldmeson_configure $@ || die
430     done
431     # restore SRCDIR
432     SRCDIR="${saved_SRCDIR}"
433    }
434    fi
435    
436    if [[ ! -z $(typeset -f meson_src_compile) ]]
437    then
438     # rename the old one
439     old_meson_src_compile=old$(typeset -f meson_src_compile)
440     eval "${old_meson_src_compile}"
441    
442    meson_src_compile()
443    {
444     local abi
445     local abis_to_run="${MULTILIB_ABIS}"
446    
447     # respect MULTILIB_ONLY_ABI variable
448     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
449    
450     for abi in ${abis_to_run}
451     do
452     # remove build dir if exist
453     [[ -d ${BUILDDIR}/build-${abi} ]] && rm -rf ${BUILDDIR}/build-${abi}
454    
455     # build outside of the source dir
456     install -d ${BUILDDIR}/build-${abi} || die
457     cd ${BUILDDIR}/build-${abi}
458     done
459    
460     meson_configure || die
461    
462     for abi in ${abis_to_run}
463     do
464     cd ${BUILDDIR}/build-${abi}
465     abi-${abi} ninja $@ || die
466     done
467    }
468    fi
469    
470    if [[ ! -z $(typeset -f meson_src_check) ]]
471    then
472     # rename the old one
473     old_meson_src_check=old$(typeset -f meson_src_check)
474     eval "${old_meson_check}"
475    
476    meson_src_check()
477    {
478     local abi
479     local abis_to_run="${MULTILIB_ABIS}"
480    
481     # respect MULTILIB_ONLY_ABI variable
482     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
483    
484     for abi in ${abis_to_run}
485     do
486     # honor inside and outside build-dir builds
487     if [ -d ${BUILDDIR}/build-${abi} ]
488     then
489     cd ${BUILDDIR}/build-${abi}
490     else
491     cd ${SRCDIR}-${abi}
492     fi
493     meson test || die
494     done
495    }
496    fi
497    
498    if [[ ! -z $(typeset -f meson_src_install) ]]
499    then
500     # rename the old one
501     old_meson_src_install=old$(typeset -f meson_src_install)
502     eval "${old_meson_install}"
503    
504    meson_src_install()
505    {
506     local abi
507     local abis_to_run="${MULTILIB_ABIS}"
508    
509     # respect MULTILIB_ONLY_ABI variable
510     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
511    
512     for abi in ${abis_to_run}
513     do
514     # honor inside and outside build-dir builds
515     if [ -d ${BUILDDIR}/build-${abi} ]
516     then
517     cd ${BUILDDIR}/build-${abi}
518     else
519     cd ${SRCDIR}-${abi}
520     fi
521     abi-${abi} DESTDIR=${BINDIR} ninja $@ install || die
522     done
523    }
524    fi
525    
526    
527    if [[ ! -z $(typeset -f munpack) ]]
528    then
529     # rename the old one
530     old_munpack=old$(typeset -f munpack)
531     eval "${old_munpack}"
532    
 # rename the old one  
 old_munpack=old$(typeset -f munpack)  
 eval "${old_munpack}"  
533  munpack()  munpack()
534  {  {
535   local abi   local abi
# Line 206  munpack() Line 541  munpack()
541   for abi in ${abis_to_run}   for abi in ${abis_to_run}
542   do   do
543   echo -e "${COLBLUE}*** ${COLGREEN}unpacking for ABI -${abi}${COLDEFAULT}"   echo -e "${COLBLUE}*** ${COLGREEN}unpacking for ABI -${abi}${COLDEFAULT}"
544   oldmunpack ${SRCFILE} || die   oldmunpack $@ || die
545   mv ${SRCDIR} ${SRCDIR}-${abi} || die   mv ${SRCDIR} ${SRCDIR}-${abi} || die
546   done   done
547  }  }
548    fi
549    
550    if [[ ! -z $(typeset -f mmake) ]]
551    then
552     # rename the old one
553     old_mmake=old$(typeset -f mmake)
554     eval "${old_mmake}"
555    
 # rename the old one  
 old_mmake=old$(typeset -f mmake)  
 eval "${old_mmake}"  
556  mmake()  mmake()
557  {  {
558   local abi   local abi
# Line 225  mmake() Line 564  mmake()
564   for abi in ${abis_to_run}   for abi in ${abis_to_run}
565   do   do
566   echo -e "${COLBLUE}*** ${COLGREEN}compiling for ABI -${abi}${COLDEFAULT}"   echo -e "${COLBLUE}*** ${COLGREEN}compiling for ABI -${abi}${COLDEFAULT}"
567   cd ${SRCDIR}-${abi}   cd ${SRCDIR}-${abi}/${SRCSUBDIR}
568   abi-${abi} oldmmake $@ || die   abi-${abi} oldmmake $@ || die
569   done   done
570  }  }
571    fi
572    
573    if [[ ! -z $(typeset -f minstall) ]]
574    then
575     # rename the old one
576     old_minstall=old$(typeset -f minstall)
577     eval "${old_minstall}"
578    
 # rename the old one  
 old_minstall=old$(typeset -f minstall)  
 eval "${old_minstall}"  
579  minstall()  minstall()
580  {  {
581   local abi   local abi
# Line 244  minstall() Line 587  minstall()
587   for abi in ${abis_to_run}   for abi in ${abis_to_run}
588   do   do
589   echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}"   echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}"
590   cd ${SRCDIR}-${abi}   cd ${SRCDIR}-${abi}/${SRCSUBDIR}
591   abi-${abi} oldminstall $@ || die   abi-${abi} oldminstall $@ || die
592   done   done
593  }  }
594    fi
595    
596  minstall_destdir()  minstall_destdir()
597  {  {
# Line 260  minstall_destdir() Line 604  minstall_destdir()
604   for abi in ${abis_to_run}   for abi in ${abis_to_run}
605   do   do
606   echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}"   echo -e "${COLBLUE}*** ${COLGREEN}installing for ABI -${abi}${COLDEFAULT}"
607   cd ${SRCDIR}-${abi}   cd ${SRCDIR}-${abi}/${SRCSUBDIR}
608   make DESTDIR=${BINDIR} $@ install || die   make DESTDIR=${BINDIR} $@ install || die
609   done   done
610  }  }
611    
612  # rename the old one  if [[ ! -z $(typeset -f mpatch) ]]
613  old_mpatch=old$(typeset -f mpatch)  then
614  eval "${old_mpatch}"   # rename the old one
615     old_mpatch=old$(typeset -f mpatch)
616     eval "${old_mpatch}"
617    
618  mpatch()  mpatch()
619  {  {
620   local abi   local abi
# Line 279  mpatch() Line 626  mpatch()
626   for abi in ${abis_to_run}   for abi in ${abis_to_run}
627   do   do
628   echo -e "${COLBLUE}*** ${COLGREEN}appling patch for ABI -${abi}${COLDEFAULT}"   echo -e "${COLBLUE}*** ${COLGREEN}appling patch for ABI -${abi}${COLDEFAULT}"
629   cd ${SRCDIR}-${abi}   cd ${SRCDIR}-${abi}/${SRCSUBDIR}
630   oldmpatch $@ || die   oldmpatch $@ || die
631   done   done
632  }  }
633    fi
634    
635    if [[ ! -z $(typeset -f mlibtoolize) ]]
636    then
637     # rename the old one
638     old_mlibtoolize=old$(typeset -f mlibtoolize)
639     eval "${old_mlibtoolize}"
640    
 # rename the old one  
 old_mlibtoolize=old$(typeset -f mlibtoolize)  
 eval "${old_mlibtoolize}"  
641  mlibtoolize()  mlibtoolize()
642  {  {
643   local abi   local abi
# Line 298  mlibtoolize() Line 649  mlibtoolize()
649   for abi in ${abis_to_run}   for abi in ${abis_to_run}
650   do   do
651   echo -e "${COLBLUE}*** ${COLGREEN}running mlibtoolize for ABI -${abi}${COLDEFAULT}"   echo -e "${COLBLUE}*** ${COLGREEN}running mlibtoolize for ABI -${abi}${COLDEFAULT}"
652   cd ${SRCDIR}-${abi}   cd ${SRCDIR}-${abi}/${SRCSUBDIR}
653   oldmlibtoolize $@ || die   oldmlibtoolize $@ || die
654   done   done
655  }  }
656    fi
657    
658    if [[ ! -z $(typeset -f mautoreconf) ]]
659    then
660     # rename the old one
661     old_mautoreconf=old$(typeset -f mautoreconf)
662     eval "${old_mautoreconf}"
663    
664    mautoreconf()
665    {
666     local abi
667     local abis_to_run="${MULTILIB_ABIS}"
668    
669     # respect MULTILIB_ONLY_ABI variable
670     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
671    
672     for abi in ${abis_to_run}
673     do
674     echo -e "${COLBLUE}*** ${COLGREEN}running mautoreconf for ABI -${abi}${COLDEFAULT}"
675     cd ${SRCDIR}-${abi}/${SRCSUBDIR}
676     oldmautoreconf $@ || die
677     done
678    }
679    fi
680    
681    if [[ ! -z $(typeset -f minstalldocs) ]]
682    then
683     # rename the old one
684     old_minstalldocs=old$(typeset -f minstalldocs)
685     eval "${old_minstalldocs}"
686    
687  minstalldocs()  minstalldocs()
688  {  {
689   local abi   local abi
690   local docfiles   local docfiles
  docfiles="$@"  
691    
692   local abis_to_run="${MULTILIB_ABIS}"   local abis_to_run="${MULTILIB_ABIS}"
693    
# Line 316  minstalldocs() Line 696  minstalldocs()
696    
697   for abi in ${abis_to_run}   for abi in ${abis_to_run}
698   do   do
699   cd ${SRCDIR}-${abi}   cd ${SRCDIR}-${abi}/${SRCSUBDIR}
700   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  
701   done   done
702  }  }
703    fi
704    
705  ##  ##
706  # multilib mbuild wrappers  # multilib mbuild wrappers
707  ##  ##
708  multilib_src_prepare()  multilib_src_prepare()
709  {  {
710   munpack   munpack ${SRCFILE} || die
711  }  }
712    
713  multilib_src_compile()  multilib_src_compile()
714  {  {
715   mconfigure   if [[ ! -z $(typeset -f cmake_src_compile) ]]
716   mmake   then
717     cmake_src_compile || die
718     else
719     mconfigure || die
720     mmake || die
721     fi
722    }
723    
724    multilib_src_check()
725    {
726     if [[ ! -z $(typeset -f cmake_src_check) ]]
727     then
728     cmake_src_check || die
729     else
730     mmake -j1 -k check || die
731     fi
732  }  }
733    
734  multilib_src_install()  multilib_src_install()
735  {  {
736   minstall_destdir   if [[ ! -z $(typeset -f cmake_src_install) ]]
737     then
738     cmake_src_install || die
739     else
740     mmake DESTDIR=${BINDIR} install || die
741     fi
742    
743   local i   local i
744   for abi in ${MULTILIB_ABIS}   for abi in ${MULTILIB_ABIS}
745   do   do
746   cd ${SRCDIR}-${abi}   cd ${SRCDIR}-${abi}/${SRCSUBDIR}
747   for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \   for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \
748   FAQ LICENSE NEWS README TODO   FAQ LICENSE NEWS README TODO
749   do   do
# Line 364  multilib_src_install() Line 755  multilib_src_install()
755   done   done
756  }  }
757    
758  export_inherits multilib src_prepare src_compile src_install  export_inherits multilib src_prepare src_compile src_check src_install

Legend:
Removed from v.2  
changed lines
  Added in v.29786