From 24b5cb32a7ee2444cd4f5d4128498e868e623d44 Mon Sep 17 00:00:00 2001 From: ketmar Date: Fri, 13 Sep 2013 03:07:36 +0300 Subject: [PATCH] build scripts updated --- 0build.sh | 7 ++++--- 0build_common.sh | 44 ++++++++++++++++++++++++++++++++------------ 0build_cross.sh | 7 ++++--- 0build_wine.sh | 9 +++++---- 4 files changed, 45 insertions(+), 22 deletions(-) diff --git a/0build.sh b/0build.sh index e216bee..649163b 100755 --- a/0build.sh +++ b/0build.sh @@ -3,9 +3,9 @@ CC="gcc -pipe" LINK="gcc -pipe" LINKFLAGS="-s" -AR="ar ru" -RANLIB="ranlib" -CFLAGS="-O2 -Wall -DMKJAMBASE_COMPACT" +AR="ar sru" +#RANLIB="ranlib" +CFLAGS="-O2 -Wall -DMKJAMBASE_COMPACT -fwrapv -march=native -mtune=native" checkoldcompiler="ona" if [ `uname -m` = "armv7l" ]; then # n900 native @@ -40,5 +40,6 @@ BUILDPATH="_build" XOS="unix" WINE="" EXESFX="" +CROSS="ona" . ./0build_common.sh diff --git a/0build_common.sh b/0build_common.sh index efe80ba..72152ab 100644 --- a/0build_common.sh +++ b/0build_common.sh @@ -9,7 +9,7 @@ docc() { if [ "z$ptmp" = "z" ]; then ptmp="src" fi - ${CC} -std=gnu99 -c -o ${BUILDPATH}/obj/$1.o ${CFLAGS} -Isrc -I${BUILDPATH} $ptmp/$1.c + ${CC} -std=gnu99 -c -o ${BUILDPATH}/obj/$1.o ${CFLAGS} -Isrc ${ADDITIONAL_INCLUDES} $ptmp/$1.c } @@ -55,6 +55,12 @@ donativelink() { } +if [ "z$1" = "z--disable-yacc" ]; then + force_no_yacc="tan" + shift +fi + + if [ "z$force_no_yacc" = "z" ]; then have_yacc="tan" yacc -h >/dev/null 2>&1 @@ -63,6 +69,9 @@ if [ "z$force_no_yacc" = "z" ]; then have_yacc="ona" fi #have_yacc="ona" +else + echo "WARNING: YACC/Bison disabled!" + have_yacc="ona" fi @@ -107,15 +116,21 @@ rm -rf ${DESTPATH}/* 2>/dev/null if [ "$have_yacc" = "tan" ]; then echo "Yacc jamgram" - tools/yyacc ${BUILDPATH}/jamgram.y ${BUILDPATH}/jamgramtab.h src/jamgram.yy - yacc -d ${BUILDPATH}/jamgram.y - mv -f y.tab.c ${BUILDPATH}/jamgram.c - mv -f y.tab.h ${BUILDPATH}/jamgram.h + #tools/yyacc ${BUILDPATH}/jamgram.y ${BUILDPATH}/jamgramtab.h src/jamgram.yy + #yacc -d ${BUILDPATH}/jamgram.y + #mv -f y.tab.c ${BUILDPATH}/jamgram.c + #mv -f y.tab.h ${BUILDPATH}/jamgram.h + tools/yyacc src/jamgram.y src/jamgramtab.h src/jamgram.yy + yacc -d src/jamgram.y + mv -f y.tab.c src/jamgram.c + mv -f y.tab.h src/jamgram.h + docc "jamgram" else echo "Using pregenerated jamgram" - cp src/jamgram_poorman/* ${BUILDPATH}/ + #cp src/jamgram_poorman/* ${BUILDPATH}/ + ADDITIONAL_INCLUDES="-Isrc/jamgram_poorman" + docc "jamgram" src/jamgram_poorman fi -docc "jamgram" ${BUILDPATH} #donativecc "unigen" #donativelink "unigen" @@ -130,9 +145,10 @@ done echo "Ar libjam.a" ${AR} ${BUILDPATH}/obj/libjam.a ${libobj} - -echo "Ranlib libjam.a" -${RANLIB} ${BUILDPATH}/obj/libjam.a +if [ "z${RANLIB}" != "z" ]; then + echo "Ranlib libjam.a" + ${RANLIB} ${BUILDPATH}/obj/libjam.a +fi rm -f ${libobj} docc "jam" @@ -140,8 +156,12 @@ docc "jam" donativecc "mkjambase" donativelink "mkjambase" echo "preparing Jambase" -${BUILDPATH}/mkjambase${EXESFX} ${BUILDPATH}/jambase.c defaults/Jambase -docc "jambase" ${BUILDPATH} +mv ${BUILDPATH}/mkjambase${EXESFX} ${DESTPATH}/ +${DESTPATH}/mkjambase${EXESFX} src/jambase.c defaults/Jambase +if [ "z$CROSS" = "ztan" ]; then + rm ${DESTPATH}/mkjambase${EXESFX} +fi +docc "jambase" dolink "jam" ${DESTPATH} ${BUILDPATH}/obj/jambase.o ${BUILDPATH}/obj/libjam.a diff --git a/0build_cross.sh b/0build_cross.sh index c89c870..fb6f561 100755 --- a/0build_cross.sh +++ b/0build_cross.sh @@ -1,19 +1,20 @@ #!/bin/sh MGCC="i686-pc-mingw32-gcc -pipe -static-libgcc" -CFLAGS="-O2 -DNT -Wall -DMKJAMBASE_COMPACT" +CFLAGS="-O2 -DNT -Wall -DMKJAMBASE_COMPACT -march=i486 -mtune=i486" CC="${MGCC}" LINK="${CC}" #LINKFLAGS="-s" LINKFLAGS="-s -Wl,-subsystem,console" -AR="i686-pc-mingw32-ar -ru" -RANLIB="i686-pc-mingw32-ranlib" +AR="i686-pc-mingw32-ar -sru" +#RANLIB="i686-pc-mingw32-ranlib" LINKLIBS="-lkernel32 -ladvapi32" DESTPATH="bin.win32" BUILDPATH="_wbuild" WINE="tan" XOS="nt" EXESFX=".exe" +CROSS="tan" ${CC} -v >/dev/null 2>&1 if test "$?" = "127"; then diff --git a/0build_wine.sh b/0build_wine.sh index 60e551e..24d8309 100755 --- a/0build_wine.sh +++ b/0build_wine.sh @@ -1,13 +1,13 @@ #!/bin/sh MGPATH="wine c:\\\\mingw\\\\bin\\\\" -MGCC="mingw32-gcc.exe" -CFLAGS="-O2 -DNT -Wall -DMKJAMBASE_COMPACT" +MGCC="mingw32-gcc.exe -static-libgcc" +CFLAGS="-O2 -DNT -Wall -DMKJAMBASE_COMPACT -march=i486 -mtune=i486" CC="${MGPATH}${MGCC}" LINK="${CC}" LINKFLAGS="-s" -AR="${MGPATH}ar.exe -ru" -RANLIB="${MGPATH}ranlib.exe" +AR="${MGPATH}ar.exe -sru" +#RANLIB="${MGPATH}ranlib.exe" LINKLIBS="-lkernel32 -ladvapi32" #LINKFLAGS="-s -Wl,-subsystem,windows" DESTPATH="bin.win32" @@ -15,5 +15,6 @@ BUILDPATH="_wbuild" WINE="tan" XOS="nt" EXESFX=".exe" +CROSS="ona" . ./0build_common.sh -- 2.11.4.GIT