2003-01-14 Ville Palo <vi64pa@koti.soon.fi>
[mono.git] / mcs / makefile.gnu
1 DIRS=jay mcs class nunit nunit20 monoresgen ilasm tools
2 DIST=monocharge-`date -u +%Y%m%d`
3 MCS = mcs
4 INSTALL=/usr/bin/install
5 DOCFILES= README.building
6
7 #nant doesn't work yet
8
9 default: all
10
11 all:
12         if ! which $(MCS); then \
13                 echo You must have a C\# compiler installed to continue.; \
14                 echo This is typically provided by \'mono\'.; \
15                 echo Read INSTALL.txt for details.; \
16                 exit 1; \
17         fi;
18         for i in $(DIRS) ; do \
19                 $(MAKE) -C $$i -f makefile.gnu $@ || exit 1; \
20         done
21
22 install:
23         if test x$$prefix = x; then \
24                 echo Usage is: make -f makefile.gnu install prefix=YOURPREFIX; \
25                 exit 1; \
26         fi;
27         for i in $(DIRS) ; do \
28                 $(MAKE) -C $$i -f makefile.gnu $@ || exit 1; \
29         done
30         mkdir -p $(prefix)/share/doc/mono
31         $(INSTALL) -m 644 $(DOCFILES) $(prefix)/share/doc/mono
32
33
34 test: all
35         for i in $(DIRS) ; do \
36                 $(MAKE) -C $$i -f makefile.gnu $@ || exit 1; \
37         done
38
39 clean:
40         -rm -f monocharge-*.tar.gz
41         for i in $(DIRS) ; do \
42                 $(MAKE) -C $$i -f makefile.gnu $@ || exit 1; \
43         done
44
45 # Please do only use `binary-snapshot', the `dist' target will disappear really soon !
46 binary-snapshot: dist
47
48 dist: all
49         mkdir $(DIST)
50         for i in $(DIRS) ; do \
51                 $(MAKE) -C $$i -f makefile.gnu install prefix=$(PWD)/$(DIST) || exit 1; \
52         done
53         tar -c $(DIST) | gzip > $(DIST).tar.gz
54         rm -rf $(DIST)
55