# limitations under the License.
NITCOPT=--semi-global
-OLDNITCOPT=
-OBJS=nitc nitpick nit nitdoc nitls nitunit nitpretty nitmetrics nitx nitlight nitdbg_client nitserial
+OLDNITCOPT=--semi-global
+OBJS=nitc nitpick nit nitls nitunit nitpm nitx nitlight nitserial nitrestful
SRCS=$(patsubst %,%.nit,$(OBJS))
BINS=$(patsubst %,../bin/%,$(OBJS))
+MOREOBJS=nitdoc nitweb nitcatalog nitmetrics nitpretty nitweb
+MORESRCS=$(patsubst %,%.nit,$(MOREOBJS))
+MOREBINS=$(patsubst %,../bin/%,$(MOREOBJS))
+DEPS=$(wildcard *.nit */*.nit) parser/parser.nit
-all: $(BINS)
+# Workaround: Cygwin requires peflags to bootstrap
+peflags := ${shell which peflags 2>/dev/null}
-nitc_0: ../c_src/nitc parser/parser.nit
+all: ../bin/nitc
+
+more: ../bin/nitdoc
+
+pre-build:
+ ./git-gen-version.sh
+
+nitc_0: ../c_src/nitc $(DEPS)
@echo '***************************************************************'
@echo '* Compile nitc_0 from NIT source files *'
@echo '***************************************************************'
./git-gen-version.sh
../c_src/nitc ${OLDNITCOPT} -o nitc_0 -v nitc.nit
+ifdef peflags
+ ${peflags} --cygwin-heap=2048 nitc_0
+endif
-$(BINS): nitc_0 parser/parser.nit
+../bin/nitc: nitc_0 $(DEPS)
@echo '***************************************************************'
@echo '* Compile binaries from NIT source files *'
@echo '***************************************************************'
./git-gen-version.sh
test -d ../bin || mkdir ../bin
./nitc_0 ${NITCOPT} -v --dir ../bin $(SRCS)
- rm -r .nit_compile || true # to clean old .nit_compile generated file
-$(OBJS): nitc_0 parser/parser.nit
+../bin/nitdoc: ../bin/nitc $(DEPS)
+ ../bin/nitc ${NITCOPT} -v --dir ../bin $(MORESRCS)
+
+$(OBJS): nitc_0 $(DEPS)
./git-gen-version.sh
./nitc_0 ${NITCOPT} -v $@.nit
@echo '***************************************************************'
cd ../c_src; make
rm ../c_src/*.o || true # to reduce disc used
+ifdef peflags
+ ${peflags} --cygwin-heap=2048 ../c_src/nitc
+endif
parser/parser.nit:
@echo '***************************************************************'