aboutsummaryrefslogtreecommitdiffstats
path: root/chapter6/gcc.sh
blob: d13ef9f22671e6e028b5ba142d808bb8f8bcbc54 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/bin/bash

mkdir -p isl mpfr gmp mpc
tar -xf ../isl-*.tar.xz  -C isl --strip-components=1
tar -xf ../mpfr-*.tar.xz -C mpfr --strip-components=1
tar -xf ../gmp-*.tar.xz  -C gmp --strip-components=1
tar -xf ../mpc-*.tar.gz  -C mpc --strip-components=1

case $(uname -m) in
  x86_64)
    sed -e '/m64=/s/lib64/lib/' -i.orig gcc/config/i386/t-linux64
  ;;
esac

mkdir -v build
cd build

mkdir -pv ${LFS_TGT}/libgcc &&
ln -s ../../../libgcc/gthr-posix.h ${LFS_TGT}/libgcc/gthr-default.h &&
../configure \
    --build=$(../config.guess) \
    --host=${LFS_TGT} \
    --prefix=/usr \
    CC_FOR_TARGET=${LFS_TGT}-gcc \
    --with-build-sysroot=${LFS} \
    --enable-initfini-array \
    --disable-nls \
    --disable-multilib \
    --disable-decimal-float \
    --disable-libatomic \
    --disable-libgomp \
    --disable-libquadmath \
    --disable-libssp \
    --disable-libvtv \
    --disable-libstdcxx \
    --enable-languages=c,c++ &&
make &&
make DESTDIR=${LFS} -j1 install &&
ln -sv gcc ${LFS}/usr/bin/cc