Skip to content
Browse files

Add two more

svn path=/trunk/olive/; revision=64818
  • Loading branch information...
1 parent 816c482 commit 223fb2a6ba507cd2f17ee7a7a50add71ce739b31 @migueldeicaza migueldeicaza committed Sep 3, 2006
Showing with 210 additions and 0 deletions.
  1. +111 −0 Makefile
  2. +99 −0 mkinstalldirs
View
111 Makefile
@@ -0,0 +1,111 @@
+thisdir := .
+
+SUBDIRS := build class nunit20
+
+net_3_0_SUBDIRS := build class nunit20
+
+include build/rules.make
+
+all-recursive $(STD_TARGETS:=-recursive): platform-check profile-check
+
+.PHONY: all-local $(STD_TARGETS:=-local)
+all-local $(STD_TARGETS:=-local):
+ @:
+
+# fun specialty targets
+
+PROFILES = default net_2_0
+
+.PHONY: all-profiles $(STD_TARGETS:=-profiles)
+all-profiles $(STD_TARGETS:=-profiles): %-profiles: profiles-do--%
+ @:
+
+profiles-do--%:
+ $(MAKE) $(PROFILES:%=profile-do--%--$*)
+
+# The % below looks like profile-name--target-name
+profile-do--%:
+ $(MAKE) PROFILE=$(subst --, ,$*)
+
+# We don't want to run the tests in parallel. We want behaviour like -k.
+profiles-do--run-test:
+ ret=:; $(foreach p,$(PROFILES), { $(MAKE) PROFILE=$(p) run-test || ret=false; }; ) $$ret
+
+# Orchestrate the bootstrap here.
+_boot_ = all clean install
+$(_boot_:%=profile-do--net_2_0--%): profile-do--net_2_0--%: profile-do--net_2_0_bootstrap--%
+$(_boot_:%=profile-do--net_2_0_bootstrap--%): profile-do--net_2_0_bootstrap--%: profile-do--default--%
+$(_boot_:%=profile-do--default--%): profile-do--default--%: profile-do--net_1_1_bootstrap--%
+$(_boot_:%=profile-do--net_1_1_bootstrap--%): profile-do--net_1_1_bootstrap--%: profile-do--basic--%
+
+testcorlib:
+ @cd class/corlib && $(MAKE) test run-test
+
+compiler-tests:
+ $(MAKE) TEST_SUBDIRS="tests errors" run-test-profiles
+
+test-installed-compiler:
+ $(MAKE) TEST_SUBDIRS="tests errors" PROFILE=default TEST_RUNTIME=mono MCS=mcs run-test
+ $(MAKE) TEST_SUBDIRS="tests errors" PROFILE=net_2_0 TEST_RUNTIME=mono MCS=gmcs run-test
+
+package := infocard
+
+dist-local: dist-default
+
+dist-pre:
+ rm -rf $(package)
+ mkdir $(package)
+
+dist-tarball: dist-pre
+ $(MAKE) distdir='$(package)' dist-recursive
+ tar cvzf $(package).tar.gz $(package)
+
+dist: dist-tarball
+ rm -rf $(package)
+
+# the egrep -v is kind of a hack (to get rid of the makefrags)
+# but otherwise we have to make dist then make clean which
+# is sort of not kosher. And it breaks with DIST_ONLY_SUBDIRS.
+#
+# We need to set prefix on make so class/System/Makefile can find
+# the installed System.Xml to build properly
+
+distcheck: dist-tarball
+ rm -rf InstallTest Distcheck-MCS ; \
+ mkdir InstallTest ; \
+ destdir=`cd InstallTest && pwd` ; \
+ mv $(package) Distcheck-MCS ; \
+ (cd Distcheck-MCS && \
+ $(MAKE) prefix=$(prefix) && $(MAKE) test && $(MAKE) install DESTDIR="$$destdir" && \
+ $(MAKE) clean && $(MAKE) dist || exit 1) || exit 1 ; \
+ mv Distcheck-MCS $(package) ; \
+ tar tzf $(package)/$(package).tar.gz |sed -e 's,/$$,,' |sort >distdist.list ; \
+ rm $(package)/$(package).tar.gz ; \
+ tar tzf $(package).tar.gz |sed -e 's,/$$,,' |sort >before.list ; \
+ find $(package) |egrep -v '(makefrag|response)' |sed -e 's,/$$,,' |sort >after.list ; \
+ cmp before.list after.list || exit 1 ; \
+ cmp before.list distdist.list || exit 1 ; \
+ rm -f before.list after.list distdist.list ; \
+ rm -rf $(package) InstallTest
+
+monocharge:
+ chargedir=monocharge-`date -u +%Y%m%d` ; \
+ mkdir "$$chargedir" ; \
+ DESTDIR=`cd "$$chargedir" && pwd` ; \
+ $(MAKE) install DESTDIR="$$DESTDIR" || exit 1 ; \
+ tar cvzf "$$chargedir".tgz "$$chargedir" ; \
+ rm -rf "$$chargedir"
+
+# A bare-bones monocharge.
+
+monocharge-lite:
+ chargedir=monocharge-lite-`date -u +%Y%m%d` ; \
+ mkdir "$$chargedir" ; \
+ DESTDIR=`cd "$$chargedir" && pwd` ; \
+ $(MAKE) -C mcs install DESTDIR="$$DESTDIR" || exit 1; \
+ $(MAKE) -C class/corlib install DESTDIR="$$DESTDIR" || exit 1; \
+ $(MAKE) -C class/System install DESTDIR="$$DESTDIR" || exit 1; \
+ $(MAKE) -C class/System.XML install DESTDIR="$$DESTDIR" || exit 1; \
+ $(MAKE) -C class/Mono.CSharp.Debugger install DESTDIR="$$DESTDIR" || exit 1; \
+ tar cvzf "$$chargedir".tgz "$$chargedir" ; \
+ rm -rf "$$chargedir"
View
99 mkinstalldirs
@@ -0,0 +1,99 @@
+#! /bin/sh
+# mkinstalldirs --- make directory hierarchy
+# Author: Noah Friedman <friedman@prep.ai.mit.edu>
+# Created: 1993-05-16
+# Public domain
+
+errstatus=0
+dirmode=""
+
+usage="\
+Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
+
+# process command line arguments
+while test $# -gt 0 ; do
+ case "${1}" in
+ -h | --help | --h* ) # -h for help
+ echo "${usage}" 1>&2; exit 0 ;;
+ -m ) # -m PERM arg
+ shift
+ test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
+ dirmode="${1}"
+ shift ;;
+ -- ) shift; break ;; # stop option processing
+ -* ) echo "${usage}" 1>&2; exit 1 ;; # unknown option
+ * ) break ;; # first non-opt arg
+ esac
+done
+
+for file
+do
+ if test -d "$file"; then
+ shift
+ else
+ break
+ fi
+done
+
+case $# in
+0) exit 0 ;;
+esac
+
+case $dirmode in
+'')
+ if mkdir -p -- . 2>/dev/null; then
+ echo "mkdir -p -- $*"
+ exec mkdir -p -- "$@"
+ fi ;;
+*)
+ if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
+ echo "mkdir -m $dirmode -p -- $*"
+ exec mkdir -m "$dirmode" -p -- "$@"
+ fi ;;
+esac
+
+for file
+do
+ set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
+ shift
+
+ pathcomp=
+ for d
+ do
+ pathcomp="$pathcomp$d"
+ case "$pathcomp" in
+ -* ) pathcomp=./$pathcomp ;;
+ esac
+
+ if test ! -d "$pathcomp"; then
+ echo "mkdir $pathcomp"
+
+ mkdir "$pathcomp" || lasterr=$?
+
+ if test ! -d "$pathcomp"; then
+ errstatus=$lasterr
+ else
+ if test ! -z "$dirmode"; then
+ echo "chmod $dirmode $pathcomp"
+
+ lasterr=""
+ chmod "$dirmode" "$pathcomp" || lasterr=$?
+
+ if test ! -z "$lasterr"; then
+ errstatus=$lasterr
+ fi
+ fi
+ fi
+ fi
+
+ pathcomp="$pathcomp/"
+ done
+done
+
+exit $errstatus
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 3
+# End:
+# mkinstalldirs ends here

0 comments on commit 223fb2a

Please sign in to comment.
Something went wrong with that request. Please try again.