X-Git-Url: http://nitlanguage.org diff --git a/Makefile b/Makefile index da446f9..4f4f71b 100644 --- a/Makefile +++ b/Makefile @@ -14,12 +14,33 @@ # See the License for the specific language governing permissions and # limitations under the License. -NITCOPT= -all: tools doc/stdlib/index.html +contrib_dir = ./contrib +examples_dir = ./examples +all_contribs = $(dir $(wildcard $(contrib_dir)/*/Makefile)) + +# Additional program directories (contrib and examples) that are buildable +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" + +more: + cd src; make more + +# 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 - #cd doc; make tools: cd src; make @@ -34,42 +55,36 @@ doc/stdlib/index.html: bin/nitdoc bin/nitls @echo '***************************************************************' @echo '* Generate doc for NIT standard library *' @echo '***************************************************************' - bin/nitdoc $$(bin/nitls lib -r) -d doc/stdlib \ + bin/nitdoc lib -d doc/stdlib \ --custom-title "Nit Standard Library" \ - --custom-menu-items "
  • Nitlanguage.org
  • " \ + --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" + --piwik-site-id "2" \ -doc/nitc/index.html: bin/nitdoc - bin/nitdoc src/nit*.nit src/test_*.nit -d doc/nitc \ +doc/nitc/index.html: bin/nitdoc bin/nitls + bin/nitdoc lib src/nit*.nit src/test_*.nit -d doc/nitc \ --private \ --custom-title "Nit Compilers and Tools" \ - --custom-menu-items "
  • Nitlanguage.org
  • " \ + --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 doc; make clean cd tests; make clean - -distclean: clean - rm -rf -- bin/nitdoc bin/nits doc/stdlib 2> /dev/null || true - cd c_src; make distclean - cd src/parser; make distclean - cd doc; make distclean - cd tests; make distclean + 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