more refactoring, and a script to try to build curses and nano

This commit is contained in:
wolfwood
2011-10-04 21:01:58 -04:00
parent 234bc9cb08
commit 7fcbd3b40b
22 changed files with 202 additions and 135 deletions

View File

@@ -48,33 +48,23 @@ fi
# diff -rupN
setphase "PATCH BINUTILS"
patch -p0 -d binutils-${BINUTILS_VER} < ../binutils.patch || exit
doPatch binutils
cp ../binutils-files/ld/emulparams/os_x86_64.sh binutils-${BINUTILS_VER}/ld/emulparams/${OSNAME}_x86_64.sh
setphase "PATCH GMP"
patch -p1 -d gmp-${GMP_VER} < ../gmp.patch || exit
setphase "PATCH MPFR"
patch -p0 -d mpfr-${MPFR_VER} < ../mpfr.patch || exit
setphase "PATCH MPC"
patch -p0 -d mpc-${MPC_VER} < ../mpc.patch || exit
patch -p1 -d gmp-${GMP_VER} < ../patches/gmp.patch || exit
doPatch mpfr
doPatch mpc
if [ $EXTRAS -eq 1 ]; then
setphase "PATCH PPL"
patch -p0 -d ppl-${PPL_VER} < ../ppl.patch || exit
setphase "PATCH CLOOG"
patch -p0 -d cloog-${CLOOG_VER} < ../cloog.patch || exit
doPatch ppl
doPatch cloog
fi
setphase "PATCH GCC"
patch -p0 -d gcc-${GCC_VER} < ../gcc.patch || exit
doPatch gcc
cp ../gcc-files/gcc/config/os.h gcc-${GCC_VER}/gcc/config/${OSNAME}.h
setphase "PATCH NEWLIB"
patch -p0 -d newlib-${NEWLIB_VER} < ../newlib.patch || exit
doPatch newlib
mkdir -p newlib-${NEWLIB_VER}/newlib/libc/sys/${OSNAME}
cp -r ../newlib-files/* newlib-${NEWLIB_VER}/newlib/libc/sys/${OSNAME}/.
cp ../newlib-files/vanilla-syscalls.c newlib-${NEWLIB_VER}/newlib/libc/sys/${OSNAME}/syscalls.c

View File

@@ -9,6 +9,7 @@ function setphase {
}
# --- Argument processing ---
#prcessArgs {
NOTEST=1
EXTRAS=1
CLEAN=0
@@ -19,5 +20,20 @@ for arg in $@; do
--extras) EXTRA=1;;
esac
done
#}
# --- patching ---
function toUpper {
UPPER=`echo $1 | tr '[:lower:]' '[:upper:]'`
}
function doPatch {
toUpper $1
setphase "PATCH $UPPER"
local VERSION=${UPPER}_VER
eval VER=\${$VERSION}
patch -p0 -d $1-$VER < ../patches/$1.patch || exit
}

67
scripts/nativevars.sh Normal file
View File

@@ -0,0 +1,67 @@
source scripts/config.sh
PREFIX=`pwd`/${OSNAME}-local
CROSSCONFIG="--prefix=${PREFIX} --host=${TARGET} --bindir=${PREFIX}/binaries --sysconfdir=${PREFIX}/config --libdir=${PREFIX}/lib --includedir=${PREFIX}/include"
if [ $CLEAN -eq 1 ]; then
rm -rf $PREFIX build/*/
fi
XOMBPATH=`pwd`/../xomb
CROSSPATH=`pwd`/local
if [ ! -d $XOMBPATH ]; then
XOMBPATH=`pwd`/../xomb
fi
if [ ! -f $XOMBPATH/app/build/elf.ld ]; then
echo "cannot find xomb $XOMBPATH"
exit
fi
#export LIBS="-l:drt0.a -l:syscall.a -l:mindrt.a"
export SHAREDLDFLAGS="-T$XOMBPATH/app/build/elf.ld"
# -L$XOMBPATH/user/c/lib -L$XOMBPATH/runtimes/mindrt"
export LDFLAGS="-static $SHAREDLDFLAGS -L$CROSSPATH/$TARGET"
export CPPFLAGS="-I$CROSSPATH/$TARGET/include/c++ -I$CROSSPATH/$TARGET/include/c++/$GCC_VER"
export CFLAGS="-static -O2 $CPPFLAGS"
export CXXFLAGS="$CFLAGS"
# -lsupc++ -lstdc++ -L$CROSSPATH/$TARGET"\
export CC=$TARGET-gcc
export CXX=$TARGET-g++
export AR=$TARGET-ar
export AS=$TARGET-as
#DLLTOOL
export LD=$TARGET-ld
#LIPO
export NM=$TARGET-nm
export RANLIB=$TARGET-ranlib
export STRIP=$TARGET-strip
#WINDRES
#WINDMC
export OBJCOPY=$TARGET-objcopy
export OBJDUMP=$TARGET-objdump
export CC_FOR_TARGET=$TARGET-gcc
export CXX_FOR_TARGET=$TARGET-g++
export AR_FOR_TARGET=$TARGET-ar
export AS_FOR_TARGET=$TARGET-as
#DLLTOOL
export LD_FOR_TARGET=$TARGET-ld
#LIPO
export NM_FOR_TARGET=$TARGET-nm
export RANLIB_FOR_TARGET=$TARGET-ranlib
export STRIP_FOR_TARGET=$TARGET-strip
#WINDRES
#WINDMC
export OBJCOPY_FOR_TARGET=$TARGET-objcopy
export OBJDUMP_FOR_TARGET=$TARGET-objdump