Bash script to build LFS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.9 KiB

#!/usr/bin/env bash
mkdir --parents mpfr
archivepath=$(find "${SOURCES}" -name "mpfr*.tar.*" -print)
tar --extract --file=../"$(basename "${archivepath}")" --directory=mpfr --strip-components=1
mkdir --parents gmp
archivepath=$(find "${SOURCES}" -name "gmp*.tar.*" -print)
tar --extract --file=../"$(basename "${archivepath}")" --directory=gmp --strip-components=1
mkdir --parents mpc
archivepath=$(find "${SOURCES}" -name "mpc*.tar.*" -print)
tar --extract --file=../"$(basename "${archivepath}")" --directory=mpc --strip-components=1
case $(uname -m) in
x86_64)
sed --expression='/m64=/s/lib64/lib/' --in-place=.orig gcc/config/i386/t-linux64
;;
esac
mkdir --parents build
pushd build || return 1
../configure \
--target="${LFS_TGT}" \
--prefix="${LFS}"/tools \
--with-glibc-version=2.43 \
--with-sysroot="${LFS}" \
--with-newlib \
--without-headers \
--enable-default-pie \
--enable-default-ssp \
--disable-nls \
--disable-shared \
--disable-multilib \
--disable-threads \
--disable-libatomic \
--disable-libgomp \
--disable-libquadmath \
--disable-libssp \
--disable-libvtv \
--disable-libstdcxx \
--enable-languages=c,c++
make
make install
popd || return 1
cat gcc/{limitx,glimits,limity}.h > \
"$("${LFS_TGT}"-gcc -print-file-name=include)"/limits.h