Improve building and solve audit-userspace problem

This commit is contained in:
Denis Benato 2024-12-11 03:00:38 +01:00
parent a1cf134be2
commit 4df2bea407

View file

@ -5,6 +5,7 @@ export LINUX_VERSION="6.12.1"
# Backup the native environment # Backup the native environment
export BUILD_CC="$BUILD_CC" export BUILD_CC="$BUILD_CC"
export CC_native="$CC" export CC_native="$CC"
export CPP_native="$CPP"
export CXX_native="$CXX" export CXX_native="$CXX"
export AS_native="$AS" export AS_native="$AS"
export LD_native="$LD" export LD_native="$LD"
@ -16,6 +17,7 @@ export OBJDUMP_native="$OBJDUMP"
export READELF_native="$READELF" export READELF_native="$READELF"
export CFLAGS_native="$CFLAGS_native" export CFLAGS_native="$CFLAGS_native"
export CPPFLAGS_native="$CPPFLAGS" export CPPFLAGS_native="$CPPFLAGS"
export CXXFLAGS_native="$CXXFLAGS"
export LDFLAGS_native="$LDFLAGS" export LDFLAGS_native="$LDFLAGS"
export LD_LIBRARY_PATH_native="$LD_LIBRARY_PATH" export LD_LIBRARY_PATH_native="$LD_LIBRARY_PATH"
export PKG_CONFIG_LIBDIR_native="$PKG_CONFIG_LIBDIR" export PKG_CONFIG_LIBDIR_native="$PKG_CONFIG_LIBDIR"
@ -85,6 +87,7 @@ unset LDFLAGS
setup_toolchain() { setup_toolchain() {
export BUILD_CC=gcc export BUILD_CC=gcc
export CC="$LFS_TGT-gcc" export CC="$LFS_TGT-gcc"
export CPP="$LFS_TGT-cpp"
export CXX="$LFS_TGT-g++" export CXX="$LFS_TGT-g++"
export AS="$LFS_TGT-as" export AS="$LFS_TGT-as"
export LD="$LFS_TGT-ld" export LD="$LFS_TGT-ld"
@ -94,8 +97,9 @@ setup_toolchain() {
export STRIP="$LFS_TGT-strip" export STRIP="$LFS_TGT-strip"
export OBJDUMP="$LFS_TGT-objdump" export OBJDUMP="$LFS_TGT-objdump"
export READELF="$LFS_TGT-readelf" export READELF="$LFS_TGT-readelf"
export CPPFLAGS=""
export CFLAGS=" $TARGET_ADDITIONAL_CFLAGS -U_FORTIFY_SOURCE -O2 -L$LFS_TOOLS/lib -L$LFS/usr/lib -I$LFS_TOOLS/include -I$LFS_TOOLS/$LFS_TGT/include" export CFLAGS=" $TARGET_ADDITIONAL_CFLAGS -U_FORTIFY_SOURCE -O2 -L$LFS_TOOLS/lib -L$LFS/usr/lib -I$LFS_TOOLS/include -I$LFS_TOOLS/$LFS_TGT/include"
export CPPFLAGS=" $TARGET_ADDITIONAL_CFLAGS -U_FORTIFY_SOURCE -O2 -L$LFS_TOOLS/lib -L$LFS/usr/lib -I$LFS_TOOLS/include -I$LFS_TOOLS/$LFS_TGT/include -I$LFS_TOOLS/$LFS_TGT/include/c++/14.2.0/ -I$LFS_TOOLS/$LFS_TGT/include/c++/14.2.0/$LFS_TGT" export CXXFLAGS=" $TARGET_ADDITIONAL_CFLAGS -U_FORTIFY_SOURCE -O2 -L$LFS_TOOLS/lib -L$LFS/usr/lib -I$LFS_TOOLS/include -I$LFS_TOOLS/$LFS_TGT/include -I$LFS_TOOLS/$LFS_TGT/include/c++/14.2.0/ -I$LFS_TOOLS/$LFS_TGT/include/c++/14.2.0/$LFS_TGT"
export LDFLAGS=" -L$LFS/usr/lib -L$LFS_TOOLS/lib" export LDFLAGS=" -L$LFS/usr/lib -L$LFS_TOOLS/lib"
export LD_LIBRARY_PATH_old="$LD_LIBRARY_PATH" export LD_LIBRARY_PATH_old="$LD_LIBRARY_PATH"
export LD_LIBRARY_PATH="$LFS_TOOLS/lib $LFS/usr/lib" export LD_LIBRARY_PATH="$LFS_TOOLS/lib $LFS/usr/lib"
@ -108,6 +112,7 @@ host_toolchain() {
export BUILD_CC="$BUILD_CC_native" export BUILD_CC="$BUILD_CC_native"
export CC="$CC_native" export CC="$CC_native"
export CXX="$CXX_native" export CXX="$CXX_native"
export CPP="$CPP_native"
export AS="$AS_native" export AS="$AS_native"
export LD="$LD_native" export LD="$LD_native"
export AR="$AR_native" export AR="$AR_native"
@ -118,6 +123,7 @@ host_toolchain() {
export READELF="$READELF_native" export READELF="$READELF_native"
export CFLAGS="$CFLAGS_native" export CFLAGS="$CFLAGS_native"
export CPPFLAGS="$CPPFLAGS_native" export CPPFLAGS="$CPPFLAGS_native"
export CXXFLAGS="$CXXFLAGS_native"
export LDFLAGS="$LDFLAGS_native" export LDFLAGS="$LDFLAGS_native"
export PKG_CONFIG_LIBDIR="$PKG_CONFIG_LIBDIR_native" export PKG_CONFIG_LIBDIR="$PKG_CONFIG_LIBDIR_native"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH_native" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH_native"
@ -599,6 +605,7 @@ if [ ! -f "$STEPS_DIR/zlib" ]; then
"../configure" \ "../configure" \
--prefix=/usr \ --prefix=/usr \
--enable-static=no \
--enable-shared --enable-shared
make -j 32 make -j 32
@ -623,21 +630,32 @@ if [ ! -f "$STEPS_DIR/ncurses" ]; then
mkdir -vp build-$LFS_TGT mkdir -vp build-$LFS_TGT
cd build-$LFS_TGT cd build-$LFS_TGT
# --build=${CLFS_HOST} \ # --with-cxx-binding no c++?
# --with-cxx-shared no c++?
# --disable-stripping # this must go away
"../configure" \ "../configure" \
--prefix=$LFS/usr \ --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--libdir=/usr/lib \
--sbindir=/usr/bin \
--disable-stripping \
--with-shared \ --with-shared \
--host=${LFS_TGT} \ --host=${LFS_TGT} \
--build=${BUILD_MACHINE_TRIPLET} \ --build=${BUILD_MACHINE_TRIPLET} \
--without-debug \ --without-debug \
--disable-stripping \ --enable-pc-files \
--enable-widec \
--disable-setuid-environ \
--disable-root-environ \
--disable-root-access \
--without-ada \ --without-ada \
--enable-overwrite \ --enable-overwrite \
--with-build-cc=gcc \ --with-build-cc=gcc
--libdir=$LFS/usr/lib
make -j 32 make -j 32
make install make -j 32 DESTDIR="$LFS" install
cd "$BASE_DIR" cd "$BASE_DIR"
rm -rf "$LFS_BUILD/ncurses" rm -rf "$LFS_BUILD/ncurses"
@ -829,6 +847,7 @@ if [ ! -f "$STEPS_DIR/libseccomp" ]; then
--prefix=/usr \ --prefix=/usr \
--host=${LFS_TGT} \ --host=${LFS_TGT} \
--build=${BUILD_MACHINE_TRIPLET} \ --build=${BUILD_MACHINE_TRIPLET} \
--enable-static=no \
--cache-file=config.cache --cache-file=config.cache
make -j 32 make -j 32
@ -1225,6 +1244,7 @@ if [ ! -f "$STEPS_DIR/gettext" ]; then
--disable-shared \ --disable-shared \
--libdir=/usr/lib \ --libdir=/usr/lib \
--with-sysroot=$SYSROOT \ --with-sysroot=$SYSROOT \
--enable-nls \
--enable-curses \ --enable-curses \
--with-xz \ --with-xz \
--cache-file=config.cache --cache-file=config.cache
@ -1291,7 +1311,7 @@ if [ ! -f "$STEPS_DIR/pcre2" ]; then
--build=${BUILD_MACHINE_TRIPLET} \ --build=${BUILD_MACHINE_TRIPLET} \
--prefix=${LFS}/usr \ --prefix=${LFS}/usr \
--enable-shared \ --enable-shared \
--disable-shared \ --enable-static=no \
--enable-jit \ --enable-jit \
--enable-pcre2-16 \ --enable-pcre2-16 \
--enable-pcre2-32 \ --enable-pcre2-32 \
@ -1383,6 +1403,10 @@ if [ ! -f "$STEPS_DIR/audit-userspace" ]; then
fi fi
cd "$LFS_BUILD/audit-userspace" cd "$LFS_BUILD/audit-userspace"
#CPPFLAGS_old="$CPPFLAGS"
#export CFLAGS=" $TARGET_ADDITIONAL_CFLAGS -U_FORTIFY_SOURCE -O2 -L$LFS_TOOLS/lib -L$LFS/usr/lib -I$LFS_TOOLS/include -I$LFS_TOOLS/$LFS_TGT/include "
#export CPPFLAGS=" $TARGET_ADDITIONAL_CFLAGS -U_FORTIFY_SOURCE -O2 -L$LFS_TOOLS/lib -L$LFS/usr/lib -I$LFS_TOOLS/include -I$LFS_TOOLS/$LFS_TGT/include " # -I$LFS_TOOLS/$LFS_TGT/include/c++/14.2.0/ -I$LFS_TOOLS/$LFS_TGT/include/c++/14.2.0/$LFS_TGT
autoreconf -fiv autoreconf -fiv
mkdir -vp build-$LFS_TGT mkdir -vp build-$LFS_TGT
@ -1412,6 +1436,8 @@ if [ ! -f "$STEPS_DIR/audit-userspace" ]; then
make -j 32 make -j 32
make -j 32 DESTDIR=$LFS install make -j 32 DESTDIR=$LFS install
#export CPPFLAGS="$CPPFLAGS_old"
cd "$BASE_DIR" cd "$BASE_DIR"
rm -rf "$LFS_BUILD/audit-userspace" rm -rf "$LFS_BUILD/audit-userspace"
touch "$STEPS_DIR/audit-userspace" touch "$STEPS_DIR/audit-userspace"