lexer rules relaxed a little; please, don't use tokens like abc: -- use "abc:" instead
[k8jam.git] / src / Jamfile
blobfc51dfb3cf403ea9a9a1ccdebfd884c0371b4e38
1 SubDir TOP src ;
4 # Do we know yacc?
5 if $(YACC) { code += jamgram.y ; } else { code += jamgram.c ; }
8 if $(YACC) && $(SUFEXE) = "" {
9   GenFile jamgram.y jamgramtab.h : $(TOP)/tools/yyacc jamgram.yy ;
12 # How to build the compiled in jambase
13 Main mkjambase : mkjambase.c ;
15 # The guts of the Jamfile: how to build Jam
16 Main jam : jam.c jambase.c ;
17 LinkLibraries jam : libjam.a ;
18 GenFile jambase.c : mkjambase $(TOP)/defaults/Jambase ;
20 if $(UNIX) {
21   Strip mkjambase ;
22   Strip jam ;
26 # Strip the Jam executable on Mingw
27 if $(JAM_TOOLSET) = MINGW {
28   Strip jam$(SUFEXE) ;
32 Library libjam.a :
33   $(code)
34   builtins.c
35   command.c
36   compile.c
37   execcmd.c
38   expand.c
39   filent.c
40   fileunix.c
41   glob.c
42   hash.c
43   hdrmacro.c
44   headers.c
45   hsregexp.c
46   kstrings.c
47   lists.c
48   make.c
49   make1.c
50   newstr.c
51   option.c
52   parse.c
53   pathsys.c
54   rules.c
55   scan.c
56   search.c
57   timestamp.c
58   variable.c
60 aliasbreaks =
61   #newstr.c
62   #rules.c
63   #timestamp.c
64   #variable.c
65   #hdrmacro.c
68 if $(THIS_IS_K8JAM) {
69   ObjectNoAliasing $(aliasbreaks) ;
70 } else {
71   ObjectCcFlags $(aliasbreaks) : -fno-strict-aliasing ;
75 # installing
76 if $(UNIX) {
77   InstallBin $(INSTALLDIR_BIN) : jam$(SUFEXE) ;
78   #InstallBin $(INSTALLDIR_BIN) : mkjambase$(SUFEXE) ;
79   SubInclude TOP doc ;