Rename REAMDE to README.md
[nit.git] / src / Makefile
1 # This file is part of NIT ( http://www.nitlanguage.org ).
2 #
3 # Copyright 2008 Jean Privat <jean@pryen.org>
4 #
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
8 #
9 # http://www.apache.org/licenses/LICENSE-2.0
10 #
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.
16
17 NITCOPT=--semi-global
18 OLDNITCOPT=
19 OBJS=nitc nitpick nit nitdoc nitls nitunit nitpretty nitmetrics nitx nitlight nitdbg_client nitserial
20 SRCS=$(patsubst %,%.nit,$(OBJS))
21 BINS=$(patsubst %,../bin/%,$(OBJS))
22
23 all: $(BINS)
24
25 nitc_0: ../c_src/nitg parser/parser.nit
26 @echo '***************************************************************'
27 @echo '* Compile nitc_0 from NIT source files *'
28 @echo '***************************************************************'
29 ./git-gen-version.sh
30 ../c_src/nitg ${OLDNITCOPT} -o nitc_0 -v nitc.nit
31
32 $(BINS): nitc_0 parser/parser.nit
33 @echo '***************************************************************'
34 @echo '* Compile binaries from NIT source files *'
35 @echo '***************************************************************'
36 ./git-gen-version.sh
37 ./nitc_0 ${NITCOPT} -v --dir ../bin $(SRCS)
38
39 $(OBJS): nitc_0 parser/parser.nit
40 ./git-gen-version.sh
41 ./nitc_0 ${NITCOPT} -v $@.nit
42
43 ../c_src/nitg: ../c_src/*.c ../c_src/*.h ../c_src/Makefile
44 @echo '***************************************************************'
45 @echo '* Compile nitc from C source files *'
46 @echo '***************************************************************'
47 cd ../c_src; make
48
49 parser/parser.nit:
50 @echo '***************************************************************'
51 @echo '* Generate nit parser *'
52 @echo '***************************************************************'
53 cd parser; make
54
55 clean:
56 rm -rf -- .nit_compile* version.nit nitc_0 2> /dev/null || true
57 cd parser; make clean