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 307 by niro, Mon Dec 22 11:33:39 2008 UTC branches/magellan-next/include/multilib.sminc revision 9333 by niro, Sat Nov 26 13:31:10 2011 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    # be verbose or nor (true|false}
5    : ${MULTILIB_VERBOSE="true"}
6    
7  # do not define EMUL_LINUX_32 after inherit of multlib !!  # do not define EMUL_LINUX_32 after inherit of multlib !!
8  # it may break i*86 builds  # it may break i*86 builds
9    
# Line 14  case ${ARCH} in Line 17  case ${ARCH} in
17   # add linux32 to the dependencies   # add linux32 to the dependencies
18   if [[ ${EMUL_LINUX_32} = true ]]   if [[ ${EMUL_LINUX_32} = true ]]
19   then   then
20   EMUL_LINUX_32_SDEPENDS_x86_64=">= dev-util/linux32-1"   EMUL_LINUX_32_SDEPEND_x86_64=">= sys-apps/util-linux-2.19"
21   SPECIAL_VARS="${SPECIAL_VARS} EMUL_LINUX_32_SDEPENDS_x86_64"   SPECIAL_VARS="${SPECIAL_VARS} EMUL_LINUX_32_SDEPEND_x86_64"
22   fi   fi
23   ;;   ;;
24   i*86)   i*86)
# Line 33  then Line 36  then
36   # the var ist decided with our common eval+echo magic   # the var ist decided with our common eval+echo magic
37   if [[ -z ${SDEPEND} ]]   if [[ -z ${SDEPEND} ]]
38   then   then
39   SDEPEND="\$(eval echo \\\$EMUL_LINUX_32_SDEPENDS_\${ARCH/i*86/x86} | tr ';' '\n')"   SDEPEND="\$(eval echo \\\$EMUL_LINUX_32_SDEPEND_\${ARCH/i*86/x86} | tr ';' '\n')"
40   else   else
41   SDEPEND="${SDEPEND}   SDEPEND="${SDEPEND}
42   \$(eval echo \\\$EMUL_LINUX_32_SDEPENDS_\${ARCH/i*86/x86} | tr ';' '\n')"   \$(eval echo \\\$EMUL_LINUX_32_SDEPEND_\${ARCH/i*86/x86} | tr ';' '\n')"
43   fi   fi
44  fi  fi
45    
# Line 65  abi-m32() Line 68  abi-m32()
68   then   then
69   export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}"   export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}"
70   fi   fi
71   export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig"   # keep pkgconfig clean
72     local orig_pkg_config_path="${PKG_CONFIG_PATH}"
73     export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH}"
74    
75   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 ]]  
76   then   then
77   echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${LDFLAGS}'"   echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}"
78   else   echo -e "${COLBLUE}*** ${COLGREEN}  ABI${COLDEFAULT}='${ABI}'"
79   echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'"   echo -e "${COLBLUE}*** ${COLGREEN}  CC${COLDEFAULT}='${CC}'"
80     echo -e "${COLBLUE}*** ${COLGREEN}  CXX${COLDEFAULT}='${CXX}'"
81     echo -e "${COLBLUE}*** ${COLGREEN}  ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'"
82     if [[ ${EXPORT_ABI_LDFLAGS} != false ]]
83     then
84     echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${LDFLAGS}'"
85     else
86     echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'"
87     fi
88     echo -e "${COLBLUE}*** ${COLGREEN}  PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'"
89   fi   fi
  echo -e "${COLBLUE}*** ${COLGREEN}  PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'"  
90    
91   # configure a linux32 emulated build   # configure a linux32 emulated build
92   if [[ ${EMUL_LINUX_32} = true ]]   if [[ ${EMUL_LINUX_32} = true ]]
93   then   then
94   echo -e "${COLBLUE}*** ${COLGREEN}  EMUL_LINUX_32${COLDEFAULT}='${EMUL_LINUX_32}'"   if [[ ${MULTILIB_VERBOSE} = true ]]
95     then
96     echo -e "${COLBLUE}*** ${COLGREEN}  EMUL_LINUX_32${COLDEFAULT}='${EMUL_LINUX_32}'"
97     fi
98   uname(){ linux32 uname $@; } && export -f uname   uname(){ linux32 uname $@; } && export -f uname
99   ORIG_CHOST="${CHOST}" && export CHOST="i686-pc-linux-gnu"   ORIG_CHOST="${CHOST}" && export CHOST="i686-pc-linux-gnu"
100   fi   fi
101   echo -e "${COLBLUE}*** ${COLGREEN}  CHOST${COLDEFAULT}='${CHOST}'"   if [[ ${MULTILIB_VERBOSE} = true ]]
102     then
103     echo -e "${COLBLUE}*** ${COLGREEN}  CHOST${COLDEFAULT}='${CHOST}'"
104     fi
105    
106   # run any given command   # run any given command
107   eval $@ || die   eval $@ || die
108    
109   unset ABI CC CXX ABI_LIBDIR LDFLAGS PKG_CONFIG_PATH   unset ABI CC CXX ABI_LIBDIR LDFLAGS
110     # keep pkgconfig clean
111     export PKG_CONFIG_PATH="${orig_pkg_config_path}"
112    
113   # restore original settings   # restore original settings
114   if [[ ${EMUL_LINUX_32} = true ]]   if [[ ${EMUL_LINUX_32} = true ]]
# Line 112  abi-m64() Line 128  abi-m64()
128   then   then
129   export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}"   export LDFLAGS="-L/${ABI_LIBDIR} -L/usr/${ABI_LIBDIR}"
130   fi   fi
131   export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig"   # keep pkgconfig clean
132     local orig_pkg_config_path="${PKG_CONFIG_PATH}"
133     export PKG_CONFIG_PATH="/usr/${ABI_LIBDIR}/pkgconfig:${PKG_CONFIG_PATH}"
134    
135   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 ]]  
136   then   then
137   echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${LDFLAGS}'"   echo -e "${COLBLUE}*** ${COLGREEN}running with -${ABI} ABI${COLDEFAULT}"
138   else   echo -e "${COLBLUE}*** ${COLGREEN}  ABI${COLDEFAULT}='${ABI}'"
139   echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'"   echo -e "${COLBLUE}*** ${COLGREEN}  CC${COLDEFAULT}='${CC}'"
140     echo -e "${COLBLUE}*** ${COLGREEN}  CXX${COLDEFAULT}='${CXX}'"
141     echo -e "${COLBLUE}*** ${COLGREEN}  ABI_LIBDIR${COLDEFAULT}='${ABI_LIBDIR}'"
142     if [[ ${EXPORT_ABI_LDFLAGS} != false ]]
143     then
144     echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${LDFLAGS}'"
145     else
146     echo -e "${COLBLUE}*** ${COLGREEN}  LDFLAGS${COLDEFAULT}='${COLYELLOW}not exported${COLDEFAULT}'"
147     fi
148     echo -e "${COLBLUE}*** ${COLGREEN}  CHOST${COLDEFAULT}='${CHOST}'"
149     echo -e "${COLBLUE}*** ${COLGREEN}  PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'"
150   fi   fi
  echo -e "${COLBLUE}*** ${COLGREEN}  CHOST${COLDEFAULT}='${CHOST}'"  
  echo -e "${COLBLUE}*** ${COLGREEN}  PKG_CONFIG_PATH${COLDEFAULT}='${PKG_CONFIG_PATH}'"  
151    
152   # run any given command   # run any given command
153   eval $@ || die   eval $@ || die
154    
155   unset ABI CC CXX ABI_LIBDIR LDFLAGS PKG_CONFIG_PATH   unset ABI CC CXX ABI_LIBDIR LDFLAGS
156     # keep pkgconfig clean
157     export PKG_CONFIG_PATH="${orig_pkg_config_path}"
158  }  }
159    
160  only-m32()  only-m32()
# Line 186  all-abis() Line 209  all-abis()
209   done   done
210  }  }
211    
212    mabi()
213    {
214     echo \${ABI}
215    }
216    
217  ##  ##
218  # multilib compile functions  # multilib compile functions
219  ##  ##
220    
221  # rename the old one  if [[ ! -z $(typeset -f mconfigure) ]]
222  old_mconfigure=old$(typeset -f mconfigure)  then
223  eval ${old_mconfigure}   # rename the old one
224     old_mconfigure=old$(typeset -f mconfigure)
225     eval "${old_mconfigure}"
226    fi
227  mconfigure()  mconfigure()
228  {  {
229   local abi   local abi
# Line 208  mconfigure() Line 239  mconfigure()
239   done   done
240  }  }
241    
242  # rename the old one  if [[ ! -z $(typeset -f cmake_configure) ]]
243  old_munpack=old$(typeset -f munpack)  then
244  eval "${old_munpack}"   # rename the old one
245     old_cmake_configure=old$(typeset -f cmake_configure)
246     eval "${old_cmake_configure}"
247    fi
248    cmake_configure()
249    {
250     local abi
251     local abis_to_run="${MULTILIB_ABIS}"
252    
253     # respect MULTILIB_ONLY_ABI variable
254     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
255    
256     local saved_SRCDIR="${SRCDIR}"
257     for abi in ${abis_to_run}
258     do
259     SRCDIR="${saved_SRCDIR}-${abi}"
260     cd ${SRCDIR}
261     abi-${abi} oldcmake_configure $@ || die
262     done
263    }
264    
265    if [[ ! -z $(typeset -f munpack) ]]
266    then
267     # rename the old one
268     old_munpack=old$(typeset -f munpack)
269     eval "${old_munpack}"
270    fi
271  munpack()  munpack()
272  {  {
273   local abi   local abi
# Line 227  munpack() Line 284  munpack()
284   done   done
285  }  }
286    
287  # rename the old one  if [[ ! -z $(typeset -f mmake) ]]
288  old_mmake=old$(typeset -f mmake)  then
289  eval "${old_mmake}"   # rename the old one
290     old_mmake=old$(typeset -f mmake)
291     eval "${old_mmake}"
292    fi
293  mmake()  mmake()
294  {  {
295   local abi   local abi
# Line 246  mmake() Line 306  mmake()
306   done   done
307  }  }
308    
309  # rename the old one  if [[ ! -z $(typeset -f minstall) ]]
310  old_minstall=old$(typeset -f minstall)  then
311  eval "${old_minstall}"   # rename the old one
312     old_minstall=old$(typeset -f minstall)
313     eval "${old_minstall}"
314    fi
315  minstall()  minstall()
316  {  {
317   local abi   local abi
# Line 281  minstall_destdir() Line 344  minstall_destdir()
344   done   done
345  }  }
346    
347  # rename the old one  if [[ ! -z $(typeset -f mpatch) ]]
348  old_mpatch=old$(typeset -f mpatch)  then
349  eval "${old_mpatch}"   # rename the old one
350     old_mpatch=old$(typeset -f mpatch)
351     eval "${old_mpatch}"
352    fi
353  mpatch()  mpatch()
354  {  {
355   local abi   local abi
# Line 300  mpatch() Line 366  mpatch()
366   done   done
367  }  }
368    
369  # rename the old one  if [[ ! -z $(typeset -f mlibtoolize) ]]
370  old_mlibtoolize=old$(typeset -f mlibtoolize)  then
371  eval "${old_mlibtoolize}"   # rename the old one
372     old_mlibtoolize=old$(typeset -f mlibtoolize)
373     eval "${old_mlibtoolize}"
374    fi
375  mlibtoolize()  mlibtoolize()
376  {  {
377   local abi   local abi
# Line 319  mlibtoolize() Line 388  mlibtoolize()
388   done   done
389  }  }
390    
391    if [[ ! -z $(typeset -f minstalldocs) ]]
392    then
393     # rename the old one
394     old_minstalldocs=old$(typeset -f minstalldocs)
395     eval "${old_minstalldocs}"
396    fi
397  minstalldocs()  minstalldocs()
398  {  {
399   local abi   local abi

Legend:
Removed from v.307  
changed lines
  Added in v.9333