X-Git-Url: http://nitlanguage.org?ds=sidebyside
diff --git a/Makefile b/Makefile
index 6521d64..326d49b 100644
--- a/Makefile
+++ b/Makefile
@@ -16,48 +16,67 @@
NITCOPT=
-all: bin/nitc bin/nitdoc doc/stdlib/index.html
+# Additional program directories (contrib and examples) that are buildable
+PROGS=$(dir $(wildcard examples/*/Makefile contrib/*/Makefile))
-bin/nitc: c_src/nitc src/parser/parser.nit
- @echo '***************************************************************'
- @echo '* Compile nitc from NIT source files *'
- @echo '***************************************************************'
- mkdir .nit_compile 2> /dev/null || true
- cp c_src/* .nit_compile
- c_src/nitc ${NITCOPT} -o bin/nitc -O src/nitc.nit
+all: tools
-bin/nitdoc: bin/nitc
- @echo '***************************************************************'
- @echo '* Compile nitdoc from NIT source files *'
- @echo '***************************************************************'
- bin/nitc ${NITCOPT} -o bin/nitdoc -O src/nitdoc.nit
+# Compile all programs in $PROGS
+full: all
+ for m in $(PROGS); do $(MAKE) -C "$$m" || exit 1; done
+
+docs: doc/stdlib/index.html doc/nitc/index.html
+
+tools:
+ cd src; make
+
+bin/nitdoc:
+ cd src; make ../bin/nitdoc
-doc/stdlib/index.html: bin/nitdoc
+bin/nitls:
+ cd src; make ../bin/nitls
+
+doc/stdlib/index.html: bin/nitdoc bin/nitls
@echo '***************************************************************'
@echo '* Generate doc for NIT standard library *'
@echo '***************************************************************'
- bin/nitdoc lib/*.nit -d doc/stdlib
+ bin/nitdoc $$(bin/nitls lib -rs --path) -d doc/stdlib \
+ --custom-title "Nit Standard Library" \
+ --custom-brand "Nitlanguage.org" \
+ --custom-overview-text "
Documentation for the standard library of Nit
Version $$(git describe)
Date: $$(git show --format="%cd" | head -1)
" \
+ --custom-footer-text "Nit standard library. Version $$(git describe)." \
+ --github-upstream "privat:nit:master" \
+ --github-base-sha1 "$$(git rev-parse HEAD)" \
+ --github-gitdir "." \
+ --source "https://github.com/privat/nit/blob/$$(git rev-parse HEAD)/%f#L%l-%L" \
+ --piwik-tracker "pratchett.info.uqam.ca/piwik/" \
+ --piwik-site-id "2" \
-c_src/nitc: c_src/*.c c_src/*.h c_src/nitc._build.sh c_src/Makefile
- @echo '***************************************************************'
- @echo '* Compile nitc from C source files *'
- @echo '***************************************************************'
- cd c_src; make
+doc/nitc/index.html: bin/nitdoc bin/nitls
+ bin/nitdoc $$(bin/nitls lib -rs --path) src/nit*.nit src/test_*.nit -d doc/nitc \
+ --private \
+ --custom-title "Nit Compilers and Tools" \
+ --custom-brand "Nitlanguage.org" \
+ --custom-overview-text "Documentation for the Nit tools
Version $$(git describe)
Date: $$(git show --format="%cd" | head -1)
" \
+ --custom-footer-text "Nit tools. Version $$(git describe)." \
+ --github-upstream "privat:nit:master" \
+ --github-base-sha1 "$$(git rev-parse HEAD)" \
+ --github-gitdir "." \
+ --source "https://github.com/privat/nit/blob/$$(git rev-parse HEAD)/%f#L%l-%L" \
+ --piwik-tracker "pratchett.info.uqam.ca/piwik/" \
+ --piwik-site-id "3"
-src/parser/parser.nit:
- @echo '***************************************************************'
- @echo '* Generate nit parser *'
- @echo '***************************************************************'
- cd src/parser; make
+man:
+ $(MAKE) -C share/man
clean:
rm -rf -- .nit_compile 2> /dev/null || true
- cd c_src; make clean
- cd src/parser; make clean
- cd tests; make clean
-
-dist-clean: clean
- cd c_src; make dist-clean
- cd src/parser; make dist-clean
- rm -rf -- bin/nitc bin/nitdoc doc/stdlib
-
+ rm -rf -- doc/stdlib doc/nitc || true
+ cd c_src; make clean
+ cd src; make clean
+ cd tests; make clean
+ cd share/man; make clean
+ for m in $(PROGS); do \
+ $(MAKE) clean -C "$$m"; \
+ test -d $$m/.nit_compile && rm -r $$m/.nit_compile; \
+ done || true