This is the mail archive of the crossgcc@cygnus.com mailing list for the crossgcc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Here's the script file I forgot to attach the first time. ;-) Mike
#!/bin/sh # File Build.Script # # Mike Gruber # September 19, 1998 # # This script builds a complete binutils/egcs/newlib toolchain # for a specified target, using a specified build directory, # installing the toolchain in a specified prefix directory, # with compressed tarfiles to be found in a specified other # directory, with a given compiler. # # Must have write privileges in the install directory to install. # # Before invoking this script, the following environment variables # must be set... AND exported!!! Also, check for correct values of # the local variables below. # # [1] target (say, = m68k-coff) target of toolchain # [2] prefix (say, = /home/Mike/local) installdir, use full path # [3] builddir specify full path # [4] srcdir specify full path # [5] cc specify full path # Local Variables, change when new source available BINUTILS_ARC=binutils-2.9.1.0.7.tar.gz EGCS_ARC=egcs-1.1b.tar.gz NEWLIB_ARC=newlib-1.8.1.tar.gz BINUTILS_SRC=binutils-2.9.1.0.7 EGCS_SRC=egcs-1.1b NEWLIB_SRC=newlib-1.8.1 # Build the binutils source tree cp $srcdir/$BINUTILS_ARC $builddir ; cd $builddir gunzip < $BINUTILS_ARC | tar xvf - ; rm $BINUTILS_ARC cd $builddir/$BINUTILS_SRC ; patch -p1 < $srcdir/binutils.patch.file # Build the egcs source tree, remove unwanted targets cp $srcdir/$EGCS_ARC $builddir ; cd $builddir gunzip < $EGCS_ARC | tar xvf - ; rm $EGCS_ARC cd $EGCS_SRC ; patch -p1 < $srcdir/egcs-1.1.1.diff rm -r libf2c ; rm -r gcc/objc ; rm -r gcc/f rm -r libio/tests* ; rm -r texinfo/tests* ; rm -r libstdc++/tests* rm -r gcc/tests* # Build the newlib source tree, add scanf() fix code for ColdFire cp $srcdir/$NEWLIB_ARC $builddir ; cd $builddir gunzip < $NEWLIB_ARC | tar xvf - ; rm $NEWLIB_ARC cd $builddir/$NEWLIB_SRC/libgloss/m68k cp $srcdir/ioctl.h $srcdir/readwrite.c $srcdir/Makefile.in . # Build binutils cd $builddir/$BINUTILS_SRC ; mkdir objdir ; cd objdir ../configure --target=$target --prefix=$prefix make CC=$cc CFLAGS=-O0 all install # Build egcs cd $builddir/$EGCS_SRC ; mkdir objdir ; cd objdir ../configure --target=$target --prefix=$prefix \ --with-gnu-as --with-gnu-ld --with-newlib \ --with-headers=$builddir/$NEWLIB_SRC/newlib/libc/include make CC=$cc LANGUAGES="c c++" all install # Build newlib cd $builddir/$NEWLIB_SRC ; mkdir objdir ; cd objdir ../configure --target=$target --prefix=$prefix \ --with-gnu-as --with-gnu-ld make CC=$cc all install # Remove the source trees cd $builddir rm -r $EGCS_SRC rm -r $BINUTILS_SRC rm -r $NEWLIB_SRC