1 # This file is part of NIT ( http://www.nitlanguage.org ).
3 # Copyright 2008 Jean Privat <jean@pryen.org>
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
18 contrib_dir
= .
/contrib
19 examples_dir
= .
/examples
20 all_contribs
= $(dir $(wildcard $(contrib_dir
)/*/Makefile
))
22 # Additional program directories (contrib and examples) that are buildable
23 extras
= $(filter-out $(contrib_dir
)/nitc
/,$(all_contribs
))
24 extras
+= $(dir $(wildcard $(examples_dir
)/*/Makefile
))
28 @echo
"Congratulations! Nit was succesfully compiled."
29 @echo
"To configure your shell environment, execute the following command:"
30 @echo
" source misc/nit_env.sh install"
32 # Compile all programs in `contrib`, `examples` and `src`.
34 # Furthermore, build the toolchain’s `man` pages.
36 for directory in
$(extras
); do \
37 (cd
"$${directory}" && $(MAKE
)) || exit
1; \
40 docs
: doc
/stdlib
/index.html doc
/nitc
/index.html
46 cd src
; make ..
/bin
/nitdoc
49 cd src
; make ..
/bin
/nitls
51 doc
/stdlib
/index.html
: bin
/nitdoc bin
/nitls
52 @echo
'***************************************************************'
53 @echo
'* Generate doc for NIT standard library *'
54 @echo
'***************************************************************'
55 bin
/nitdoc lib
-d doc
/stdlib \
56 --custom-title
"Nit Standard Library" \
57 --custom-brand
"<a href=\"http://nitlanguage.org/\">Nitlanguage.org</a>" \
58 --custom-overview-text
"<p>Documentation for the standard library of Nit<br/>Version $$(git describe)<br/>Date: $$(git show --format="%cd
" | head -1)</p>" \
59 --custom-footer-text
"Nit standard library. Version $$(git describe)." \
60 --github-upstream
"nitlang:nit:master" \
61 --github-base-sha1
"$$(git rev-parse HEAD)" \
63 --source
"https://github.com/nitlang/nit/blob/$$(git rev-parse HEAD)/%f#L%l-%L" \
64 --piwik-tracker
"pratchett.info.uqam.ca/piwik/" \
67 doc
/nitc
/index.html
: bin
/nitdoc bin
/nitls
68 bin
/nitdoc lib src
/nit
*.nit src
/test_
*.nit
-d doc
/nitc \
70 --custom-title
"Nit Compilers and Tools" \
71 --custom-brand
"<a href=\"http://nitlanguage.org/\">Nitlanguage.org</a>" \
72 --custom-overview-text
"<p>Documentation for the Nit tools<br/>Version $$(git describe)<br/>Date: $$(git show --format="%cd
" | head -1)</p>" \
73 --custom-footer-text
"Nit tools. Version $$(git describe)." \
74 --github-upstream
"nitlang:nit:master" \
75 --github-base-sha1
"$$(git rev-parse HEAD)" \
77 --source
"https://github.com/nitlang/nit/blob/$$(git rev-parse HEAD)/%f#L%l-%L" \
78 --piwik-tracker
"pratchett.info.uqam.ca/piwik/" \
82 # Setup PATH to find nitc
83 PATH
=$$PWD/bin
:$$PATH $(MAKE
) -C share
/man
86 rm -rf
-- doc
/stdlib doc
/nitc || true
90 cd share
/man
; make
clean
91 for directory in
$(extras
); do \
92 (cd
"$$directory" && $(MAKE
) clean); \