Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaja R Harinath <harinath@hurrynot.org>2004-06-16 09:57:59 +0400
committerRaja R Harinath <harinath@hurrynot.org>2004-06-16 09:57:59 +0400
commit1d73024b83e4d26db0836e0e1175decd0886a33d (patch)
treea9600873b725cf0bae6bc995ee321a0b0abdea55 /Makefile.am
parentcb6d808af93ccfd9df36a11ffa484c81088aa8ae (diff)
(bootstrap) [PLATFORM_WIN32]: Open code. Don't
build and populate net_2_0 profile. (populate-runtime-subdir): Make into subroutine that takes list of profiles to populate. (faststrap): Update. svn path=/trunk/mono/; revision=29661
Diffstat (limited to 'Makefile.am')
-rw-r--r--Makefile.am36
1 files changed, 21 insertions, 15 deletions
diff --git a/Makefile.am b/Makefile.am
index 114f3b604e8..786f16f0478 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -28,6 +28,7 @@ mcs_topdir=$(top_srcdir)/../mcs
.PHONY: bootstrap faststrap fasterstrap bootstrap-clean bootstrap-check get-monolite-latest monolite-bootstrap
.PHONY: tmpinst-dir tmpinst-mcs-basic-build tmpinst-mcs-short-build tmpinst-mcs-full-build tmpinst-monolite
.PHONY: mono-do-runtime-only mcs-do-basic-build mcs-do-short-build mcs-do-full-build mcs-do-clean-profiles mcs-do-run-test
+.PHONY: populate-runtime-subdir
if USE_JIT
mono_runtime = mono/mini/mono
@@ -52,7 +53,10 @@ tmpinst = _tmpinst
if PLATFORM_WIN32
# bootstraps using the .NET C# compiler
-bootstrap: fasterstrap
+bootstrap: tmpinst-dir
+ cd $(mcs_topdir) && $(MAKE) PROFILE=default all
+ $(MAKE) populate_profiles='default:net_1_1' populate-runtime-subdir
+ $(MAKE)
else
@@ -69,21 +73,8 @@ faststrap: tmpinst-mcs-short-build
$(MAKE) mono-do-runtime-only
$(MAKE) fasterstrap
-.PHONY: populate-runtime-subdir
-## *** warning ***: tested only with GNU make
-populate-runtime-subdir:
- srcdir=`cd $(srcdir) && pwd`; tmpinst=`pwd`/$(tmpinst) ; \
- PATH=$$tmpinst/bin:$$PATH ; export PATH ; \
- cd $(mcs_topdir) \
- && $(MAKE) PROGRAM_INSTALL_DIR=$$srcdir/runtime LIBRARY_INSTALL_DIR=$$srcdir/runtime/net_1_1 prefix=$$tmpinst/prefix PROFILE=default install \
- && $(MAKE) PROGRAM_INSTALL_DIR=$$srcdir/runtime LIBRARY_INSTALL_DIR=$$srcdir/runtime/net_2_0 prefix=$$tmpinst/prefix PROFILE=net_2_0 install
- test -z "`find $(tmpinst)/prefix -name '*.dll'`"
- test -z "`find $(tmpinst)/prefix -name '*.exe'`"
- set fnord `find $(tmpinst)/prefix -type f | wc -l` ; test "$$2" = 9
- rm -rf $(tmpinst)/prefix
-
fasterstrap: tmpinst-mcs-full-build
- $(MAKE) populate-runtime-subdir
+ $(MAKE) populate_profiles='default:net_1_1 net_2_0:net_2_0' populate-runtime-subdir
$(MAKE)
bootstrap-clean: clean mcs-do-clean-profiles
@@ -149,6 +140,21 @@ mcs-do-run-test: tmpinst-dir
PATH=$$tmpinst/bin:$$PATH ; export PATH ; \
cd $(mcs_topdir) && $(MAKE) PROFILE=default run-test
+populate-runtime-subdir:
+ test -n '$(populate_profiles)'
+ @srcdir=`cd $(srcdir) && pwd`; tmpinst=`pwd`/$(tmpinst) ; \
+ PATH=$$tmpinst/bin:$$PATH ; export PATH ; \
+ for profile in $(populate_profiles); do \
+ ( set fnord `echo $$profile | sed 's,:, ,g'` && \
+ echo "cd $(mcs_topdir) && $(MAKE) PROGRAM_INSTALL_DIR=$$srcdir/runtime PROFILE=$$2 LIBRARY_INSTALL_DIR=$$srcdir/runtime/$$3 prefix=$$tmpinst/prefix install" && \
+ cd $(mcs_topdir) && \
+ $(MAKE) PROGRAM_INSTALL_DIR=$$srcdir/runtime PROFILE=$$2 LIBRARY_INSTALL_DIR=$$srcdir/runtime/$$3 prefix=$$tmpinst/prefix install ) || exit 1 ; \
+ done
+ test -z "`find $(tmpinst)/prefix -name '*.dll' -print`"
+ test -z "`find $(tmpinst)/prefix -name '*.exe' -print`"
+ set fnord `find $(tmpinst)/prefix -type f -print | wc -l` ; test "$$2" = 9
+ rm -rf $(tmpinst)/prefix
+
tmpinst-dir:
mkdir -p $(tmpinst) $(tmpinst)/bin $(tmpinst)/lib $(tmpinst)/etc/mono
$(MAKE) tmpinst-dir-contents