* XmlSerializationReaderInterpreter.cs: Use the parameter type when getting the...
[mono.git] / mcs / makefile.gnu
index 1a9ec0a429d15766f179372f1a8b66873f6b7923..86fe2904ef3439dc3d72ca87d7617bf4ad980be5 100644 (file)
@@ -1,13 +1,22 @@
-DIRS=jay mcs class nunit nunit/src/NUnitConsole
+DIRS=jay mcs class mbas nunit20 monoresgen ilasm tools
 DIST=monocharge-`date -u +%Y%m%d`
+MCS = mcs
+INSTALL=/usr/bin/install
+DOCFILES= README.building
 
 #nant doesn't work yet
 
 default: all
 
 all:
+       if ! which $(MCS); then \
+               echo You must have a C\# compiler installed to continue.; \
+               echo This is typically provided by \'mono\'.; \
+               echo Read INSTALL.txt for details.; \
+               exit 1; \
+       fi;
        for i in $(DIRS) ; do \
-               (cd $$i; $(MAKE) -f makefile.gnu $@) || exit 1; \
+               (cd $$i && $(MAKE) -f makefile.gnu $@ && cd ..) || exit 1; \
        done
 
 install:
@@ -16,19 +25,37 @@ install:
                exit 1; \
        fi;
        for i in $(DIRS) ; do \
-               (cd $$i; $(MAKE) -f makefile.gnu $@) || exit 1; \
+               (cd $$i && $(MAKE) -f makefile.gnu $@ && cd ..) || exit 1; \
        done
+       mkdir -p $(prefix)/share/doc/mono
+       $(INSTALL) -m 644 $(DOCFILES) $(prefix)/share/doc/mono
+
+
+test: all
+       for i in $(DIRS) ; do \
+               (cd $$i && $(MAKE) -f makefile.gnu $@ && cd ..) || exit 1; \
+       done
+
+testcorlib:
+       cd class/corlib/Test && $(MAKE) -f makefile.gnu test
 
 clean:
        -rm -f monocharge-*.tar.gz
        for i in $(DIRS) ; do \
-               (cd $$i; $(MAKE) -f makefile.gnu $@) || exit 1; \
+               (cd $$i && $(MAKE) -f makefile.gnu $@ && cd ..) || exit 1; \
        done
 
+corlib:
+       cd class/corlib && $(MAKE) -f makefile.gnu
+
+# Please do only use `binary-snapshot', the `dist' target will disappear really soon !
+binary-snapshot: dist
+
 dist: all
        mkdir $(DIST)
        for i in $(DIRS) ; do \
-               (cd $$i; $(MAKE) -f makefile.gnu install prefix=$(PWD)/$(DIST)) || exit 1; \
+               (cd $$i && $(MAKE) -f makefile.gnu install \
+                       prefix=$(PWD)/$(DIST) && cd ..) || exit 1; \
        done
        tar -c $(DIST) | gzip > $(DIST).tar.gz
        rm -rf $(DIST)