c_src: update Makefile to compile on MacOSX
[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=
18 OLDNITCOPT= --no-stacktrace
19
20 all: ../bin/nitdoc ../bin/nitmetrics ../bin/nitg ../bin/nit ../bin/nitx ../bin/nitunit ../bin/nitlight ../bin/nitls ../bin/nitdbg_client
21
22 nitg_0: ../c_src/nitg parser/parser.nit
23 @echo '***************************************************************'
24 @echo '* Compile nitg_0 from NIT source files *'
25 @echo '***************************************************************'
26 ./git-gen-version.sh
27 ../c_src/nitg ${OLDNITCOPT} -o nitg_0 -v nitg.nit
28
29 ../bin/nitg: nitg_0 parser/parser.nit
30 @echo '***************************************************************'
31 @echo '* Compile nitg from NIT source files *'
32 @echo '***************************************************************'
33 ./git-gen-version.sh
34 ./nitg_0 ${NITCOPT} -o ../bin/nitg -v nitg.nit
35
36 ../bin/nitdoc: ../bin/nitg
37 @echo '***************************************************************'
38 @echo '* Compile nitdoc from NIT source files *'
39 @echo '***************************************************************'
40 ./git-gen-version.sh
41 ../bin/nitg ${NITCOPT} -o ../bin/nitdoc -v nitdoc.nit
42
43 ../bin/nitmetrics: ../bin/nitg
44 @echo '***************************************************************'
45 @echo '* Compile nitmetrics from NIT source files *'
46 @echo '***************************************************************'
47 ./git-gen-version.sh
48 ../bin/nitg ${NITCOPT} -o ../bin/nitmetrics -v nitmetrics.nit
49
50 ../bin/nit: ../bin/nitg
51 @echo '***************************************************************'
52 @echo '* Compile nit from NIT source files *'
53 @echo '***************************************************************'
54 ./git-gen-version.sh
55 ../bin/nitg ${NITCOPT} -o ../bin/nit -v nit.nit
56
57 ../bin/nitdbg_client : ../bin/nitg
58 @echo '***************************************************************'
59 @echo '* Compile nitdbg_client from NIT source files *'
60 @echo '***************************************************************'
61 ./git-gen-version.sh
62 ../bin/nitg ${NITCOPT} -o ../bin/nitdbg_client -v nitdbg_client.nit
63
64 ../bin/nitx: ../bin/nitg
65 @echo '***************************************************************'
66 @echo '* Compile nitx from NIT source files *'
67 @echo '***************************************************************'
68 ./git-gen-version.sh
69 ../bin/nitg ${NITCOPT} -o ../bin/nitx -v nitx.nit
70
71 ../bin/nitunit : ../bin/nitg
72 @echo '***************************************************************'
73 @echo '* Compile nitunit from NIT source files *'
74 @echo '***************************************************************'
75 ./git-gen-version.sh
76 ../bin/nitg ${NITCOPT} -o ../bin/nitunit -v nitunit.nit
77
78 ../bin/nitlight : ../bin/nitg
79 @echo '***************************************************************'
80 @echo '* Compile nitlight from NIT source files *'
81 @echo '***************************************************************'
82 ./git-gen-version.sh
83 ../bin/nitg ${NITCOPT} -o ../bin/nitlight -v nitlight.nit
84
85 ../bin/nitls : ../bin/nitg
86 @echo '***************************************************************'
87 @echo '* Compile nitls from NIT source files *'
88 @echo '***************************************************************'
89 ./git-gen-version.sh
90 ../bin/nitg ${NITCOPT} -o ../bin/nitls -v nitls.nit
91
92 ../c_src/nitg: ../c_src/*.c ../c_src/*.h ../c_src/Makefile
93 @echo '***************************************************************'
94 @echo '* Compile nitg from C source files *'
95 @echo '***************************************************************'
96 cd ../c_src; make
97
98 parser/parser.nit:
99 @echo '***************************************************************'
100 @echo '* Generate nit parser *'
101 @echo '***************************************************************'
102 cd parser; make
103
104 clean:
105 rm -rf -- .nit_compile* version.nit 2> /dev/null || true
106 cd parser; make clean
107
108 distclean: clean
109 cd parser; make distclean