1 # This file is part of NIT ( http://www.nitlanguage.org ).
3 # Copyright 2008 Jean Privat <jean@pryen.org>
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
18 OLDNITCOPT
=--semi-global
19 OBJS
=nitc nitpick nit nitdoc nitls nitunit picnit nitpretty nitmetrics nitx nitlight nitserial nitrestful
20 SRCS
=$(patsubst %,%.nit
,$(OBJS
))
21 BINS
=$(patsubst %,..
/bin
/%,$(OBJS
))
22 DEPS
=$(wildcard *.nit
*/*.nit
) parser
/parser.nit
24 # Workaround: Cygwin requires peflags to bootstrap
25 peflags
:= ${shell which peflags
2>/dev
/null
}
32 nitc_0
: ..
/c_src
/nitc
$(DEPS
)
33 @echo
'***************************************************************'
34 @echo
'* Compile nitc_0 from NIT source files *'
35 @echo
'***************************************************************'
37 ..
/c_src
/nitc
${OLDNITCOPT} -o nitc_0
-v nitc.nit
39 ${peflags} --cygwin-heap
=2048 nitc_0
42 ..
/bin
/nitc
: nitc_0
$(DEPS
)
43 @echo
'***************************************************************'
44 @echo
'* Compile binaries from NIT source files *'
45 @echo
'***************************************************************'
47 test -d ..
/bin || mkdir ..
/bin
48 .
/nitc_0
${NITCOPT} -v
--dir ..
/bin
$(SRCS
)
50 $(OBJS
): nitc_0
$(DEPS
)
52 .
/nitc_0
${NITCOPT} -v
$@.nit
54 ..
/c_src
/nitc
: ..
/c_src
/*.c ..
/c_src
/*.h ..
/c_src
/Makefile
55 @echo
'***************************************************************'
56 @echo
'* Compile nitc from C source files *'
57 @echo
'***************************************************************'
59 rm ..
/c_src
/*.o || true
# to reduce disc used
61 ${peflags} --cygwin-heap
=2048 ..
/c_src
/nitc
65 @echo
'***************************************************************'
66 @echo
'* Generate nit parser *'
67 @echo
'***************************************************************'
71 rm -rf
-- version.nit nitc_0
2> /dev
/null || true