Merge: doc: fixed some typos and other misc. corrections
[nit.git] / Makefile
index 6d3bc86..4f4f71b 100644 (file)
--- a/Makefile
+++ b/Makefile
 # 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 ""
@@ -25,9 +29,16 @@ all: tools man
        @echo "To configure your shell environment, execute the following command:"
        @echo "    source misc/nit_env.sh install"
 
-# Compile all programs in $PROGS
-full: all
-       for m in $(PROGS); do $(MAKE) -C "$$m" || exit 1; done
+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
 
@@ -49,10 +60,6 @@ doc/stdlib/index.html: bin/nitdoc bin/nitls
                --custom-brand "<a href=\"http://nitlanguage.org/\">Nitlanguage.org</a>" \
                --custom-overview-text "<p>Documentation for the standard library of Nit<br/>Version $$(git describe)<br/>Date: $$(git show --format="%cd" | head -1)</p>" \
                --custom-footer-text "Nit standard library. Version $$(git describe)." \
-               --github-upstream "nitlang:nit:master" \
-               --github-base-sha1 "$$(git rev-parse HEAD)" \
-               --github-gitdir "." \
-               --source "https://github.com/nitlang/nit/blob/$$(git rev-parse HEAD)/%f#L%l-%L" \
                --piwik-tracker "pratchett.info.uqam.ca/piwik/" \
                --piwik-site-id "2" \
 
@@ -63,15 +70,12 @@ doc/nitc/index.html: bin/nitdoc bin/nitls
                --custom-brand "<a href=\"http://nitlanguage.org/\">Nitlanguage.org</a>" \
                --custom-overview-text "<p>Documentation for the Nit tools<br/>Version $$(git describe)<br/>Date: $$(git show --format="%cd" | head -1)</p>" \
                --custom-footer-text "Nit tools. Version $$(git describe)." \
-               --github-upstream "nitlang:nit:master" \
-               --github-base-sha1 "$$(git rev-parse HEAD)" \
-               --github-gitdir "." \
-               --source "https://github.com/nitlang/nit/blob/$$(git rev-parse HEAD)/%f#L%l-%L" \
                --piwik-tracker "pratchett.info.uqam.ca/piwik/" \
                --piwik-site-id "3"
 
 man:
-       $(MAKE) -C share/man
+       # Setup PATH to find nitc
+       PATH=$$PWD/bin:$$PATH $(MAKE) -C share/man
 
 clean:
        rm -rf -- doc/stdlib doc/nitc || true
@@ -79,6 +83,8 @@ clean:
        cd src; make clean
        cd tests; make clean
        cd share/man; make clean
-       for m in $(PROGS); do \
-               $(MAKE) clean -C "$$m"; \
-               done || true
+       -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