3 #echo "MSG: KJam windoze MinGW build" ;
5 MGPATH
="wine c:\\\\mingw\\\\bin\\\\"
8 CCFLAGS
="-O2 -DNT -Wall"
9 CC
="${MGPATH}${MGCC} -mthreads"
10 LINK
="${CC} -mthreads"
12 RANLIB
="${MGPATH}ranlib.exe"
13 LINKLIBS
="-lkernel32 -ladvapi32"
14 #LINKFLAGS="-s -Wl,-subsystem,windows"
17 echo "building KJam-w32..."
19 mkdir
-p bin.win32
2>/dev
/null
20 rm bin.win32
/* 2>/dev
/null
23 ${CC} -c -o bin.win32
/builtins.o
${CCFLAGS} builtins.c
25 ${CC} -c -o bin.win32
/command.o
${CCFLAGS} command.c
27 ${CC} -c -o bin.win32
/compile.o
${CCFLAGS} compile.c
29 ${CC} -c -o bin.win32
/execunix.o
${CCFLAGS} execunix.c
31 ${CC} -c -o bin.win32
/filent.o
${CCFLAGS} filent.c
33 ${CC} -c -o bin.win32
/pathunix.o
${CCFLAGS} pathunix.c
35 PATH
="$PATH:." .
/yyacc jamgram.y jamgramtab.h jamgram.yy
37 mv -f y.tab.c jamgram.c
38 mv -f y.tab.h jamgram.h
40 ${CC} -c -o bin.win32
/jamgram.o
${CCFLAGS} jamgram.c
42 ${CC} -c -o bin.win32
/expand.o
${CCFLAGS} expand.c
44 ${CC} -c -o bin.win32
/glob.o
${CCFLAGS} glob.c
46 ${CC} -c -o bin.win32
/hash.o
${CCFLAGS} hash.c
48 ${CC} -c -o bin.win32
/headers.o
${CCFLAGS} headers.c
50 ${CC} -c -o bin.win32
/lists.o
${CCFLAGS} lists.c
52 ${CC} -c -o bin.win32
/make.o
${CCFLAGS} make.c
54 ${CC} -c -o bin.win32
/make1.o
${CCFLAGS} make1.c
56 ${CC} -c -o bin.win32
/newstr.o
-fno-strict-aliasing ${CCFLAGS} newstr.c
58 ${CC} -c -o bin.win32
/option.o
${CCFLAGS} option.c
60 ${CC} -c -o bin.win32
/parse.o
${CCFLAGS} parse.c
62 ${CC} -c -o bin.win32
/regexp.o
${CCFLAGS} regexp.c
64 ${CC} -c -o bin.win32
/rules.o
-fno-strict-aliasing ${CCFLAGS} rules.c
66 ${CC} -c -o bin.win32
/scan.o
${CCFLAGS} scan.c
68 ${CC} -c -o bin.win32
/search.o
${CCFLAGS} search.c
70 ${CC} -c -o bin.win32
/timestamp.o
-fno-strict-aliasing ${CCFLAGS} timestamp.c
72 ${CC} -c -o bin.win32
/variable.o
-fno-strict-aliasing ${CCFLAGS} variable.c
74 ${CC} -c -o bin.win32
/hdrmacro.o
-fno-strict-aliasing ${CCFLAGS} hdrmacro.c
76 ${CC} -c -o bin.win32
/kstrings.o
${CCFLAGS} kstrings.c
78 ${AR} ru bin.win32
/libjam.a bin.win32
/builtins.o bin.win32
/command.o bin.win32
/compile.o bin.win32
/execunix.o bin.win32
/filent.o bin.win32
/pathunix.o bin.win32
/jamgram.o bin.win32
/expand.o bin.win32
/glob.o bin.win32
/hash.o bin.win32
/headers.o bin.win32
/lists.o bin.win32
/make.o bin.win32
/make1.o bin.win32
/newstr.o bin.win32
/option.o bin.win32
/parse.o bin.win32
/regexp.o bin.win32
/rules.o bin.win32
/scan.o bin.win32
/search.o bin.win32
/timestamp.o bin.win32
/variable.o bin.win32
/hdrmacro.o bin.win32
/kstrings.o
79 echo "Ranlib libjam.a"
80 ${RANLIB} bin.win32
/libjam.a
81 rm -f bin.win32
/builtins.o bin.win32
/command.o bin.win32
/compile.o bin.win32
/execunix.o bin.win32
/filent.o bin.win32
/pathunix.o bin.win32
/jamgram.o bin.win32
/expand.o bin.win32
/glob.o bin.win32
/hash.o bin.win32
/headers.o bin.win32
/lists.o bin.win32
/make.o bin.win32
/make1.o bin.win32
/newstr.o bin.win32
/option.o bin.win32
/parse.o bin.win32
/regexp.o bin.win32
/rules.o bin.win32
/scan.o bin.win32
/search.o bin.win32
/timestamp.o bin.win32
/variable.o bin.win32
/hdrmacro.o bin.win32
/kstrings.o
84 gcc
-pipe -c -o bin.win32
/mkjambase.o
${CCFLAGS} mkjambase.c
86 gcc
-pipe -s -o bin.win32
/mkjambase bin.win32
/mkjambase.o
87 chmod 711 bin.win32
/mkjambase
88 #strip bin.win32/mkjambase
89 echo "preparing Jambase"
90 PATH
="$PATH:." bin.win32
/mkjambase jambase.c Jambase
92 ${CC} -c -o bin.win32
/jambase.o
${CCFLAGS} jambase.c
93 rm bin.win32
/mkjambase
96 ${CC} -c -o bin.win32
/jam.o
${CCFLAGS} jam.c
98 ${LINK} ${LINKFLAGS} ${LINKLIBS} -o bin.win32
/jam.exe bin.win32
/jam.o bin.win32
/jambase.o bin.win32
/libjam.a
99 chmod 711 bin.win32
/jam.exe
102 rm bin.win32
/*.o bin.win32
/*.a
2>/dev
/null
104 echo "KJam-w32 built"