Browse Source

Improved glibc to handle multilib in combination with the new multlib parse-config

user/chris/test/multilib
Christian Wiese 17 years ago committed by Christian Wiese
parent
commit
d105f701fd
  1. 30
      base/glibc/glibc.conf

30
base/glibc/glibc.conf

@ -32,8 +32,32 @@ if atstage toolchain; then
fi fi
else else
var_append confopt " " "--with-headers=$root/usr/include" var_append confopt " " "--with-headers=$root/usr/include"
if [ "$SDECFG_MULTILIB" == 1 ] ; then
# set the ABI for each buildloop
echo_status "Glibc Buildloop: $buildloop"
hook_add preconf 3 'multilib_abi_loop $buildloop'
else
abi="$SDECFG_ABI_DEFAULT"
fi
if ! [ $buildloop -eq $buildloops ]; then
# as long as we did not reached the last loop we have to chdir
# back to the top-level source directory before we enter the
# next loop.
hook_add postmake 9 'cd .. ; pwd'
fi
# set slibdir according to the ABI we build
hook_add preconf 4 'pkg_glibc_set_slibdir $abi'
fi fi
# function to set slibdir depending on the ABI given as argument
pkg_glibc_set_slibdir() {
slibdir="lib$1"
echo_status "slibdir: $slibdir"
}
# use at least "-O" when build without optimisation for debugging ... # use at least "-O" when build without optimisation for debugging ...
var_insert GCC_WRAPPER_INSERT " " "-O" var_insert GCC_WRAPPER_INSERT " " "-O"
# glibc does not like -ffast-math # glibc does not like -ffast-math
@ -53,8 +77,8 @@ hook_add preconf 3 "pkg_glibc_preconf"
# name unique by appending $arch_target to distinguish while building # name unique by appending $arch_target to distinguish while building
# a multilib capable glibc using buildloops. # a multilib capable glibc using buildloops.
pkg_glibc_objdir(){ pkg_glibc_objdir(){
mkdir -p "objdir-$arch_target" mkdir -p "objdir-$abi"
cd "objdir-$arch_target" cd "objdir-$abi"
} }
hook_add preconf 9 "pkg_glibc_objdir" hook_add preconf 9 "pkg_glibc_objdir"
@ -256,8 +280,6 @@ if atstage toolchain; then
makeinstopt="-k cross-compiling=yes install-headers" makeinstopt="-k cross-compiling=yes install-headers"
fi fi
[[ $libdir = *lib64 ]] && slibdir=lib64 || slibdir=lib
#if atstage cross; then #if atstage cross; then
# var_append patchfiles " " $confdir/no_path_in_glibcso.diff # var_append patchfiles " " $confdir/no_path_in_glibcso.diff
#fi #fi

Loading…
Cancel
Save