@@ -9,14 +9,27 @@ APT_ARCH=$3
99BINUTILS=2.28.1
1010GCC=6.5.0
1111
12+ # Choose correct target based on the $ARCH
13+ case " $ARCH " in
14+ x86_64)
15+ TARGET=x86_64-pc-solaris2.10
16+ ;;
17+ sparcv9)
18+ TARGET=sparcv9-sun-solaris2.10
19+ ;;
20+ * )
21+ printf ' ERROR: unknown architecture: %s\n' " $ARCH "
22+ exit 1
23+ esac
24+
1225# First up, build binutils
1326mkdir binutils
1427cd binutils
1528
1629curl https://ftp.gnu.org/gnu/binutils/binutils-$BINUTILS .tar.xz | tar xJf -
1730mkdir binutils-build
1831cd binutils-build
19- hide_output ../binutils-$BINUTILS /configure --target=$ARCH -sun-solaris2.10
32+ hide_output ../binutils-$BINUTILS /configure --target=$TARGET
2033hide_output make -j10
2134hide_output make install
2235
@@ -62,13 +75,13 @@ patch -p0 << 'EOF'
6275-extern size_t strnlen(const char *, size_t);
6376EOF
6477
65- mkdir /usr/local/$ARCH -sun-solaris2.10 /usr
66- mv usr/include /usr/local/$ARCH -sun-solaris2.10 /usr/include
67- mv usr/lib/$LIB_ARCH /* /usr/local/$ARCH -sun-solaris2.10 /lib
68- mv lib/$LIB_ARCH /* /usr/local/$ARCH -sun-solaris2.10 /lib
78+ mkdir /usr/local/$TARGET /usr
79+ mv usr/include /usr/local/$TARGET /usr/include
80+ mv usr/lib/$LIB_ARCH /* /usr/local/$TARGET /lib
81+ mv lib/$LIB_ARCH /* /usr/local/$TARGET /lib
6982
70- ln -s usr/include /usr/local/$ARCH -sun-solaris2.10 /sys-include
71- ln -s usr/include /usr/local/$ARCH -sun-solaris2.10 /include
83+ ln -s usr/include /usr/local/$TARGET /sys-include
84+ ln -s usr/include /usr/local/$TARGET /include
7285
7386cd ..
7487rm -rf solaris
@@ -84,7 +97,7 @@ mkdir ../gcc-build
8497cd ../gcc-build
8598hide_output ../gcc-$GCC /configure \
8699 --enable-languages=c,c++ \
87- --target=$ARCH -sun-solaris2.10 \
100+ --target=$TARGET \
88101 --with-gnu-as \
89102 --with-gnu-ld \
90103 --disable-multilib \
0 commit comments