eth0s/toolchain/07-gcc-pass2

58 lines
1.9 KiB
Text
Raw Normal View History

name=gcc
2021-06-13 19:27:19 +08:00
version=11.1.0
2020-06-12 16:42:33 +08:00
gmp_version=6.2.0
2020-11-13 13:58:01 +08:00
mpc_version=1.2.1
mpfr_version=4.1.0
2021-04-18 08:19:42 +08:00
source="http://ftp.gnu.org/gnu/gcc/gcc-$version/gcc-$version.tar.xz
http://ftp.gnu.org/gnu/gmp/gmp-$gmp_version.tar.xz
https://ftp.gnu.org/gnu/mpc/mpc-$mpc_version.tar.gz
2021-04-18 08:19:42 +08:00
http://www.mpfr.org/mpfr-$mpfr_version/mpfr-$mpfr_version.tar.xz"
2018-12-01 00:12:45 +08:00
build() {
cd $name-$version
2018-12-01 00:12:45 +08:00
mv -v ../mpfr-$mpfr_version mpfr
mv -v ../gmp-$gmp_version gmp
mv -v ../mpc-$mpc_version mpc
2018-12-01 00:12:45 +08:00
cat gcc/limitx.h gcc/glimits.h gcc/limity.h > \
`dirname $($LFS_TGT-gcc -print-libgcc-file-name)`/include-fixed/limits.h
2021-05-04 08:20:54 +08:00
for file in gcc/config/linux.h gcc/config/i386/linux.h gcc/config/i386/linux64.h
2018-12-01 00:12:45 +08:00
do
2021-05-04 08:20:54 +08:00
cp -uv $file $file.orig
2018-12-01 00:12:45 +08:00
sed -e 's@/lib\(64\)\?\(32\)\?/ld@/tools&@g' \
-e 's@/usr@/tools@g' $file.orig > $file
echo '
#undef STANDARD_STARTFILE_PREFIX_1
#undef STANDARD_STARTFILE_PREFIX_2
#define STANDARD_STARTFILE_PREFIX_1 "/tools/lib/"
#define STANDARD_STARTFILE_PREFIX_2 ""' >> $file
touch $file.orig
done
2020-06-28 23:38:04 +08:00
sed -i -e 's@/lib/ld-linux.so.2@/lib32/ld-linux.so.2@g' gcc/config/i386/linux64.h
sed -i -e '/MULTILIB_OSDIRNAMES/d' gcc/config/i386/t-linux64
echo "MULTILIB_OSDIRNAMES = m64=../lib m32=../lib32 mx32=../libx32" >> gcc/config/i386/t-linux64
2018-12-01 00:12:45 +08:00
mkdir -v build
cd build
CC=$LFS_TGT-gcc \
CXX=$LFS_TGT-g++ \
AR=$LFS_TGT-ar \
RANLIB=$LFS_TGT-ranlib \
2020-06-28 23:38:04 +08:00
../configure \
2018-12-01 00:12:45 +08:00
--prefix=/tools \
--with-local-prefix=/tools \
--with-native-system-header-dir=/tools/include \
--enable-languages=c,c++ \
--disable-libstdcxx-pch \
--disable-bootstrap \
2020-06-28 23:38:04 +08:00
--disable-libgomp \
--with-multilib-list=m32,m64
2018-12-01 00:12:45 +08:00
make
make install
ln -sv gcc /tools/bin/cc
}