X-Git-Url: http://nitlanguage.org
diff --git a/Makefile b/Makefile
index ee8c64d..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))
-docs: doc/stdlib/index.html doc/nitc/index.html doc/newmodel/index.html
- #cd doc; make
+# 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
tools:
cd src; make
@@ -27,46 +48,43 @@ tools:
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 $$(find lib/*/*.nit -maxdepth 0 -type f ) -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)." \
- --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/nitdoc src/nitc.nit src/nitdoc.nit src/nits.nit -d doc/nitc \
- --custom-title "Nit Compiler and Tools" \
- --custom-menu-items "Nitlanguage.org" \
- --custom-overview-text "Documentation for the Nit compiler and tools
Version $$(git describe)
Date: $$(git show --format="%cd" | head -1)
" \
- --custom-footer-text "Nit compiler. Version $$(git describe)." \
- --source "https://github.com/privat/nit/blob/$$(git rev-parse HEAD)/%f#L%l-%L"
+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-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)." \
+ --piwik-tracker "pratchett.info.uqam.ca/piwik/" \
+ --piwik-site-id "3"
-doc/newmodel/index.html: bin/nitdoc
- bin/nitdoc src/nit.nit src/nitmetrics.nit src/nitg.nit src/nitx.nit src/nitunit.nit src/nitlight.nit src/dbgcli.nit src/netdbg.nit -d doc/newmodel \
- --custom-title "Nit New Model" \
- --custom-menu-items "Nitlanguage.org" \
- --custom-overview-text "Documentation for the Nit tools based on the new metamodel
Version $$(git describe)
Date: $$(git show --format="%cd" | head -1)
" \
- --custom-footer-text "Nit new metamodel. 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"
+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/nitc bin/nitdoc bin/nits doc/stdlib doc/nitc/ 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