X-Git-Url: http://nitlanguage.org diff --git a/Makefile b/Makefile index 636e0ce..4f4f71b 100644 --- a/Makefile +++ b/Makefile @@ -14,16 +14,31 @@ # See the License for the specific language governing permissions and # limitations under the License. -NITCOPT= + +contrib_dir = ./contrib +examples_dir = ./examples +all_contribs = $(dir $(wildcard $(contrib_dir)/*/Makefile)) # Additional program directories (contrib and examples) that are buildable -PROGS=$(dir $(wildcard examples/*/Makefile contrib/*/Makefile)) +extras = $(filter-out $(contrib_dir)/nitc/,$(all_contribs)) +extras += $(dir $(wildcard $(examples_dir)/*/Makefile)) + +all: tools man + @echo "" + @echo "Congratulations! Nit was succesfully compiled." + @echo "To configure your shell environment, execute the following command:" + @echo " source misc/nit_env.sh install" -all: tools +more: + cd src; make more -# Compile all programs in $PROGS -full: all - for m in $(PROGS); do $(MAKE) -C "$$m" || exit 1; done +# Compile all programs in `contrib`, `examples` and `src`. +# +# Furthermore, build the toolchain’s `man` pages. +full: all more + for directory in $(extras); do \ + (cd "$${directory}" && $(MAKE)) || exit 1; \ + done docs: doc/stdlib/index.html doc/nitc/index.html @@ -40,39 +55,36 @@ doc/stdlib/index.html: bin/nitdoc bin/nitls @echo '***************************************************************' @echo '* Generate doc for NIT standard library *' @echo '***************************************************************' - bin/nitdoc $$(bin/nitls lib -rs --path) -d doc/stdlib \ + bin/nitdoc lib -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" \ doc/nitc/index.html: bin/nitdoc bin/nitls - bin/nitdoc $$(bin/nitls lib -rs --path) src/nit*.nit src/test_*.nit -d doc/nitc \ + bin/nitdoc lib 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" +man: + # Setup PATH to find nitc + PATH=$$PWD/bin:$$PATH $(MAKE) -C share/man + clean: - rm -rf -- .nit_compile 2> /dev/null || true rm -rf -- doc/stdlib doc/nitc || true cd c_src; make clean cd src; make clean cd tests; make clean - for m in $(PROGS); do \ - $(MAKE) clean -C "$$m"; \ - test -d $$m/.nit_compile && rm -r $$m/.nit_compile; \ - done || true + cd share/man; make clean + -for directory in $(extras); do \ + (echo "CLEANING $$directory" && cd "$$directory" && $(MAKE) clean); \ + done + @echo "" + @echo "Nit was succesfully cleaned." \ No newline at end of file