-NITC=../../bin/nitg
+all:
+%: FORCE
+ ${MAKE} $@ ${MFLAGS} -C src/
-all: nitcc calc
+Makefile:
+ true
-nitcc_parser_gen: nitcc_parser_gen.nit
- @echo "*** Compile the nitcc bootstrap parser generator -- level 0"
- ${NITC} nitcc_parser_gen.nit -v
-
-nitcc0: nitcc.nit nitcc_parser_gen
- @echo "*** Compile the primitive nitcc --- bootstrap level 0"
- ./nitcc_parser_gen
- ${NITC} nitcc.nit -v -o nitcc0
-
-nitcc1: nitcc0 nitcc.nit
- @echo "*** Compile the intermediate nitcc --- bootstrap level 1"
- ./nitcc0 nitcc.sablecc
- ${NITC} nitcc.nit -v -o nitcc1
-
-nitcc: nitcc1 nitcc.nit
- @echo "*** Compile the final nitcc --- bootstrap level 2"
- ./nitcc1 nitcc.sablecc
- ${NITC} nitcc.nit -v
-
-calc: nitcc examples/calc.sablecc examples/calc.nit
- @echo "*** Example program, calc"
- cd examples && ../nitcc calc.sablecc
- ${NITC} examples/calc.nit -v
- ./calc -e "1+2*3-40/5+9------1"
-
-minilang: nitcc examples/minilang.sablecc examples/minilang.nit
- @echo "*** Example program, minilang"
- cd examples && ../nitcc minilang.sablecc
- ${NITC} examples/minilang.nit -v
- printf "10\n42\n" | ./minilang examples/minilang.minilang
-
-tests:
- cd tests && ./run
-
-.PHONY: tests
+.PHONY: FORCE
--- /dev/null
+NITC=../../../bin/nitg
+
+all: nitcc calc
+
+nitcc_parser_gen: nitcc_parser_gen.nit
+ @echo "*** Compile the nitcc bootstrap parser generator -- level 0"
+ ${NITC} nitcc_parser_gen.nit -v
+
+nitcc0: nitcc.nit nitcc_parser_gen
+ @echo "*** Compile the primitive nitcc --- bootstrap level 0"
+ ./nitcc_parser_gen
+ ${NITC} nitcc.nit -v -o nitcc0
+
+nitcc1: nitcc0 nitcc.nit
+ @echo "*** Compile the intermediate nitcc --- bootstrap level 1"
+ ./nitcc0 nitcc.sablecc
+ ${NITC} nitcc.nit -v -o nitcc1
+
+nitcc: nitcc1 nitcc.nit
+ @echo "*** Compile the final nitcc --- bootstrap level 2"
+ ./nitcc1 nitcc.sablecc
+ ${NITC} nitcc.nit -v
+
+calc: nitcc ../examples/calc.sablecc ../examples/calc.nit
+ @echo "*** Example program, calc"
+ cd ../examples && ../src/nitcc calc.sablecc
+ ${NITC} ../examples/calc.nit -v
+ ./calc -e "1+2*3-40/5+9------1"
+
+minilang: nitcc ../examples/minilang.sablecc ../examples/minilang.nit
+ @echo "*** Example program, minilang"
+ cd ../examples && ../src/nitcc minilang.sablecc
+ ${NITC} ../examples/minilang.nit -v
+ printf "10\n42\n" | ./minilang ../examples/minilang.minilang
+
+tests:
+ cd ../tests && ./run
+
+.PHONY: tests
# This program is used to perform regression tests of nitcc.
-NITCC=../nitcc
+NITCC=../src/nitcc
NITC=../../../bin/nitc
mkdir alt out 2>/dev/null