mirror of
https://github.com/xomboverlord/buildtools.git
synced 2026-02-07 07:23:16 +01:00
fixed some bugs, gets newlib but not the gcc build after
This commit is contained in:
6
README
Normal file
6
README
Normal file
@@ -0,0 +1,6 @@
|
||||
An evolving effort to automate generation of a XOmB toolchain and crosscompiler.
|
||||
|
||||
currently dies during the second GCC phase with the bizarre error:
|
||||
"/home/wolfwood/repos/buildtools/build/gcc-obj/./gcc/include-fixed/time.h:12: error: conflicting types for 'clock_t'
|
||||
/home/wolfwood/repos/buildtools/local/x86_64-pc-xomb/include/sys/types.h:104: note: previous declaration of 'clock_t' was here
|
||||
"
|
||||
107
build.sh
107
build.sh
@@ -11,47 +11,51 @@ GMP_VER=5.0.1
|
||||
MPFR_VER=2.4.2
|
||||
NEWLIB_VER=1.18.0
|
||||
|
||||
WFLAGS=-c
|
||||
|
||||
export PATH=$PREFIX/bin:$PATH
|
||||
|
||||
# Fetch each package
|
||||
|
||||
# FETCH BINUTILS
|
||||
wget http://ftp.gnu.org/gnu/binutils/binutils-${BINUTILS_VER}.tar.gz
|
||||
echo "FETCH BINUTILS"
|
||||
wget $WFLAGS http://ftp.gnu.org/gnu/binutils/binutils-${BINUTILS_VER}.tar.gz
|
||||
tar -xf binutils-${BINUTILS_VER}.tar.gz
|
||||
|
||||
# FETCH GCC
|
||||
wget http://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/gcc-core-${GCC_VER}.tar.gz
|
||||
echo "FETCH GCC"
|
||||
wget $WFLAGS http://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/gcc-core-${GCC_VER}.tar.gz
|
||||
tar -xf gcc-core-${GCC_VER}.tar.gz
|
||||
wget http://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/gcc-g++-${GCC_VER}.tar.gz
|
||||
wget $WFLAGS http://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/gcc-g++-${GCC_VER}.tar.gz
|
||||
tar -xf gcc-g++-${GCC_VER}.tar.gz
|
||||
wget http://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/gcc-fortran-${GCC_VER}.tar.gz
|
||||
wget $WFLAGS http://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/gcc-fortran-${GCC_VER}.tar.gz
|
||||
tar -xf gcc-fortran-${GCC_VER}.tar.gz
|
||||
|
||||
# FETCH GMP
|
||||
wget http://ftp.gnu.org/gnu/gmp/gmp-${GMP_VER}.tar.gz
|
||||
echo "FETCH GMP"
|
||||
wget $WFLAGS http://ftp.gnu.org/gnu/gmp/gmp-${GMP_VER}.tar.gz
|
||||
tar -xf gmp-${GMP_VER}.tar.gz
|
||||
|
||||
# FETCH MPFR
|
||||
wget http://ftp.gnu.org/gnu/mpfr/mpfr-${MPFR_VER}.tar.gz
|
||||
echo "FETCH MPFR"
|
||||
wget $WFLAGS http://ftp.gnu.org/gnu/mpfr/mpfr-${MPFR_VER}.tar.gz
|
||||
tar -xf mpfr-${MPFR_VER}.tar.gz
|
||||
|
||||
# FETCH NEWLIB
|
||||
wget ftp://sources.redhat.com/pub/newlib/newlib-${NEWLIB_VER}.tar.gz
|
||||
echo "FETCH NEWLIB"
|
||||
wget $WFLAGS ftp://sources.redhat.com/pub/newlib/newlib-${NEWLIB_VER}.tar.gz
|
||||
tar -xf newlib-${NEWLIB_VER}.tar.gz
|
||||
|
||||
# Patch and push new code into each package
|
||||
|
||||
# PATCH BINUTILS
|
||||
patch -p0 -d binutils-${BINUTILS_VER} < ../binutils-xomb.patch
|
||||
echo "PATCH BINUTILS"
|
||||
patch -p0 -d binutils-${BINUTILS_VER} < ../binutils-xomb.patch || exit
|
||||
cp -r ../binutils-files/* binutils-${BINUTILS_VER}/.
|
||||
|
||||
# PATCH GCC
|
||||
patch -p0 -d gcc-${GCC_VER} < ../gcc-xomb.patch
|
||||
echo "PATCH GCC"
|
||||
patch -p0 -d gcc-${GCC_VER} < ../gcc-xomb.patch || exit
|
||||
cp -r ../gcc-files/* gcc-${GCC_VER}/.
|
||||
|
||||
# PATCH NEWLIB
|
||||
patch -p0 -d newlib-${NEWLIB_VER} < ../newlib-xomb.patch
|
||||
echo "PATCH NEWLIB"
|
||||
patch -p0 -d newlib-${NEWLIB_VER} < ../newlib-xomb.patch || exit
|
||||
cp -r ../newlib-files/* newlib-${NEWLIB_VER}/.
|
||||
|
||||
# MAKE OBJECT DIRECTORIES
|
||||
echo "MAKE OBJECT DIRECTORIES"
|
||||
mkdir -p binutils-obj
|
||||
mkdir -p gcc-obj
|
||||
mkdir -p newlib-obj
|
||||
@@ -60,48 +64,61 @@ mkdir -p mpfr-obj
|
||||
|
||||
# Compile all packages
|
||||
|
||||
# COMPILE BINUTILS
|
||||
echo "COMPILE BINUTILS"
|
||||
cd binutils-obj
|
||||
../binutils-${BINUTILS_VER}/configure --target=$TARGET --prefix=$PREFIX
|
||||
make
|
||||
make install
|
||||
../binutils-${BINUTILS_VER}/configure --target=$TARGET --prefix=$PREFIX || exit
|
||||
make || exit
|
||||
make install || exit
|
||||
cd ..
|
||||
|
||||
# COMPILE GMP
|
||||
echo "COMPILE GMP"
|
||||
cd gmp-obj
|
||||
../gmp-${GMP_VER}/configure --prefix=$PREFIX --disable-shared
|
||||
make
|
||||
make check
|
||||
make install
|
||||
../gmp-${GMP_VER}/configure --prefix=$PREFIX --disable-shared || exit
|
||||
make || exit
|
||||
make check || exit
|
||||
make install || exit
|
||||
cd ..
|
||||
|
||||
# COMPILE MPFR
|
||||
echo "COMPILE MPFR"
|
||||
cd mpfr-obj
|
||||
../mpfr-${MPFR_VER}/configure --prefix=$PREFIX --with-gmp=$PREFIX --disable-shared
|
||||
make
|
||||
make check
|
||||
make install
|
||||
make || exit
|
||||
make check || exit
|
||||
make install || exit
|
||||
cd ..
|
||||
|
||||
# COMPILE GCC
|
||||
echo "AUTOCONF GCC"
|
||||
cd gcc-${GCC_VER}/libstdc++-v3
|
||||
#autoconf || exit
|
||||
cd ../..
|
||||
|
||||
echo "COMPILE GCC"
|
||||
cd gcc-obj
|
||||
../gcc-${GCC_VER}/configure --target=$TARGET --prefix=$PREFIX --enable-languages=c,c++,fortran --disable-libssp --with-gmp=$PREFIX --with-mpfr=$PREFIX --disable-nls --with-headers=$PREFIX/include --with-newlib
|
||||
make all-gcc
|
||||
make all-target-libgcc
|
||||
make install-gcc
|
||||
make install-target-libgcc
|
||||
../gcc-${GCC_VER}/configure --target=$TARGET --prefix=$PREFIX --enable-languages=c,c++,fortran --disable-libssp --with-gmp=$PREFIX --with-mpfr=$PREFIX --disable-nls --with-headers=$PREFIX/include --with-newlib || exit
|
||||
make all-gcc || exit
|
||||
make install-gcc || exit
|
||||
cd ..
|
||||
|
||||
# COMPILE NEWLIB-XOMB
|
||||
echo "AUTOCONF NEWLIB-XOMB"
|
||||
cd newlib-${NEWLIB_VER}/newlib/libc/sys
|
||||
./configure
|
||||
cd ../../../..
|
||||
autoconf || exit
|
||||
cd xomb
|
||||
autoreconf || exit
|
||||
cd ../../../../..
|
||||
|
||||
# COMPILE NEWLIB
|
||||
echo "CONFIGURE NEWLIB"
|
||||
cd newlib-obj
|
||||
../newlib-${NEWLIB_VER}/configure --target=$TARGET --prefix=$PREFIX --with-gmp=$PREFIX --with-mpfr=$PREFIX
|
||||
make all
|
||||
make install
|
||||
../newlib-${NEWLIB_VER}/configure --target=$TARGET --prefix=$PREFIX --with-gmp=$PREFIX --with-mpfr=$PREFIX || exit
|
||||
|
||||
echo "COMPILE NEWLIB"
|
||||
make || exit
|
||||
make install || exit
|
||||
cd ..
|
||||
|
||||
echo "PASS-2 COMPILE GCC"
|
||||
cd gcc-obj
|
||||
#make all-target-libgcc
|
||||
#make install-target-libgcc
|
||||
make || exit
|
||||
make install || exit
|
||||
cd ..
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
@@ -1240,6 +1240,7 @@ case $os in
|
||||
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
|
||||
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
|
||||
| -aos* \
|
||||
| -aos* | -aros* \
|
||||
+ | -xomb* \
|
||||
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
|
||||
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
sys_dir=w65
|
||||
;;
|
||||
+ x86_64-*-xomb*)
|
||||
+ machine_dir=xomb
|
||||
+ sys_dir=xomb
|
||||
+ ;;
|
||||
xscale-*-*)
|
||||
sys_dir=arm
|
||||
|
||||
Reference in New Issue
Block a user