Magellan Linux

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

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

revision 11522 by niro, Mon Mar 12 15:02:20 2012 UTC revision 20980 by niro, Wed Feb 19 12:23:44 2014 UTC
# Line 1  Line 1 
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}  # be verbose or nor (true|false}
8  : ${MULTILIB_VERBOSE="true"}  : ${MULTILIB_VERBOSE="true"}
9    
# Line 89  abi-m32() Line 92  abi-m32()
92   else   else
93   echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'"   echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'"
94   fi   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}'"   echo -e "${COLBLUE}*** ${COLGREEN}  PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'"
98   fi   fi
99    
# Line 100  abi-m32() Line 105  abi-m32()
105   echo -e "${COLBLUE}*** ${COLGREEN}  EMUL_LINUX_32${COLDEFAULT}='${EMUL_LINUX_32}'"   echo -e "${COLBLUE}*** ${COLGREEN}  EMUL_LINUX_32${COLDEFAULT}='${EMUL_LINUX_32}'"
106   fi   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   fi
110   if [[ ${MULTILIB_VERBOSE} = true ]]   if [[ ${MULTILIB_VERBOSE} = true ]]
111   then   then
# Line 119  abi-m32() Line 124  abi-m32()
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 152  abi-m64() Line 157  abi-m64()
157   echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'"   echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'"
158   fi   fi
159   echo -e "${COLBLUE}*** ${COLGREEN}  CHOST${COLDEFAULT}='${CHOST}'"   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}'"   echo -e "${COLBLUE}*** ${COLGREEN}  PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'"
162   fi   fi
163    
# Line 221  mabi() Line 227  mabi()
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  ##  ##
# Line 263  cmake_configure() Line 294  cmake_configure()
294   local saved_SRCDIR="${SRCDIR}"   local saved_SRCDIR="${SRCDIR}"
295   for abi in ${abis_to_run}   for abi in ${abis_to_run}
296   do   do
297     cd ${BUILDDIR}/build-${abi}
298   SRCDIR="${saved_SRCDIR}-${abi}"   SRCDIR="${saved_SRCDIR}-${abi}"
  cd ${SRCDIR}-${abi}/${SRCSUBDIR}  
299   abi-${abi} oldcmake_configure $@ || die   abi-${abi} oldcmake_configure $@ || die
300   done   done
301   # restore SRCDIR   # restore SRCDIR
302   SRCDIR="${saved_SRCDIR}"   SRCDIR="${saved_SRCDIR}"
303  }  }
304    
305    if [[ ! -z $(typeset -f cmake_src_compile) ]]
306    then
307     # rename the old one
308     old_cmake_src_compile=old$(typeset -f cmake_src_compile)
309     eval "${old_cmake_src_compile}"
310    fi
311    cmake_src_compile()
312    {
313     local abi
314     local abis_to_run="${MULTILIB_ABIS}"
315    
316     # respect MULTILIB_ONLY_ABI variable
317     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
318    
319     for abi in ${abis_to_run}
320     do
321     # remove build dir if exist
322     [[ -d ${BUILDDIR}/build-${abi} ]] && rm -rf ${BUILDDIR}/build-${abi}
323    
324     # build outside of the source dir
325     install -d ${BUILDDIR}/build-${abi} || die
326     cd ${BUILDDIR}/build-${abi}
327     done
328    
329     cmake_configure || die
330    
331     for abi in ${abis_to_run}
332     do
333     cd ${BUILDDIR}/build-${abi}
334     abi-${abi} oldmmake $@ || die
335     done
336    }
337    
338    if [[ ! -z $(typeset -f cmake_src_check) ]]
339    then
340     # rename the old one
341     old_cmake_src_check=old$(typeset -f cmake_src_check)
342     eval "${old_cmake_check}"
343    fi
344    cmake_src_check()
345    {
346     local abi
347     local abis_to_run="${MULTILIB_ABIS}"
348    
349     # respect MULTILIB_ONLY_ABI variable
350     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
351    
352     for abi in ${abis_to_run}
353     do
354     cd ${BUILDDIR}/build-${abi}
355     mmake -j1 -k check || die
356     done
357    }
358    
359    if [[ ! -z $(typeset -f cmake_src_install) ]]
360    then
361     # rename the old one
362     old_cmake_src_install=old$(typeset -f cmake_src_install)
363     eval "${old_cmake_install}"
364    fi
365    cmake_src_install()
366    {
367     local abi
368     local abis_to_run="${MULTILIB_ABIS}"
369    
370     # respect MULTILIB_ONLY_ABI variable
371     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
372    
373     for abi in ${abis_to_run}
374     do
375     # install build outside of the source dir
376     cd ${BUILDDIR}/build-${abi}
377     abi-${abi} oldmmake DESTDIR=${BINDIR} $@ install || die
378     done
379    }
380    
381  if [[ ! -z $(typeset -f munpack) ]]  if [[ ! -z $(typeset -f munpack) ]]
382  then  then
383   # rename the old one   # rename the old one
# Line 288  munpack() Line 395  munpack()
395   for abi in ${abis_to_run}   for abi in ${abis_to_run}
396   do   do
397   echo -e "${COLBLUE}*** ${COLGREEN}unpacking for ABI -${abi}${COLDEFAULT}"   echo -e "${COLBLUE}*** ${COLGREEN}unpacking for ABI -${abi}${COLDEFAULT}"
398   oldmunpack ${SRCFILE} || die   oldmunpack $@ || die
399   mv ${SRCDIR} ${SRCDIR}-${abi} || die   mv ${SRCDIR} ${SRCDIR}-${abi} || die
400   done   done
401  }  }
# Line 447  minstalldocs() Line 554  minstalldocs()
554  ##  ##
555  multilib_src_prepare()  multilib_src_prepare()
556  {  {
557   munpack   munpack ${SRCFILE} || die
558  }  }
559    
560  multilib_src_compile()  multilib_src_compile()
561  {  {
562   mconfigure   if [[ ! -z $(typeset -f cmake_src_compile) ]]
563   mmake   then
564     cmake_src_compile || die
565     else
566     mconfigure || die
567     mmake || die
568     fi
569  }  }
570    
571  multilib_src_check()  multilib_src_check()
572  {  {
573   mmake -j1 -k check || die   if [[ ! -z $(typeset -f cmake_src_check) ]]
574     then
575     cmake_src_check || die
576     else
577     mmake -j1 -k check || die
578     fi
579  }  }
580    
581  multilib_src_install()  multilib_src_install()
582  {  {
583   minstall_destdir   if [[ ! -z $(typeset -f cmake_src_install) ]]
584     then
585     cmake_src_install || die
586     else
587     mmake DESTDIR=${BINDIR} install || die
588     fi
589    
590   local i   local i
591   for abi in ${MULTILIB_ABIS}   for abi in ${MULTILIB_ABIS}

Legend:
Removed from v.11522  
changed lines
  Added in v.20980