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:
authorZoltan Varga <vargaz@gmail.com>2011-01-27 13:48:21 +0300
committerZoltan Varga <vargaz@gmail.com>2011-01-27 13:48:21 +0300
commit6c92b5d5cc21fd97b51c45eab49be294d7971893 (patch)
treee24ecb6f6aafd9b6ac51eafa8b10aba76862d491 /mcs/class/aot-compiler
parente51049ee3bc83cd5fcf249d85e656354b5d9a119 (diff)
Fix up aot-ing of mscorlib/mcs by AOTing mcs in the basic/2.0 profiles, installing it in 2.0.
Diffstat (limited to 'mcs/class/aot-compiler')
-rw-r--r--mcs/class/aot-compiler/Makefile26
1 files changed, 21 insertions, 5 deletions
diff --git a/mcs/class/aot-compiler/Makefile b/mcs/class/aot-compiler/Makefile
index a0339653517..944455866d3 100644
--- a/mcs/class/aot-compiler/Makefile
+++ b/mcs/class/aot-compiler/Makefile
@@ -10,8 +10,10 @@ include ../../build/rules.make
the_libdir = $(topdir)/class/lib/$(PROFILE)/
-mcs_exe = $(the_libdir)/mcs.exe
-mcs_aot_image = $(mcs_exe)$(PLATFORM_AOT_SUFFIX)
+# mcs is in the basic profile, but the aot image should be compiled against the current
+# profile
+mcs_exe = $(topdir)/class/lib/basic/mcs.exe
+mcs_aot_image = $(the_libdir)/mcs.exe$(PLATFORM_AOT_SUFFIX)
mscorlib_dll = $(the_libdir)/mscorlib.dll
mscorlib_aot_image = $(mscorlib_dll)$(PLATFORM_AOT_SUFFIX)
@@ -24,22 +26,36 @@ ifndef SKIP_AOT
ifdef PLATFORM_AOT_SUFFIX
Q_AOT=$(if $(V),,@echo "AOT [$(PROFILE)] $(notdir $(@))";)
$(mcs_aot_image): $(mcs_exe)
- $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version --debug $(mcs_exe) || cat $(PROFILE)_aot.log || (cat $(PROFILE)_aot.log; exit 1)
+ $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(mcs_aot_image) --debug $(mcs_exe) || cat $(PROFILE)_aot.log || (cat $(PROFILE)_aot.log; exit 1)
$(mscorlib_aot_image): $(mscorlib_dll)
$(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version --debug $(mscorlib_dll) || (cat $(PROFILE)_aot.log; exit 1)
ifdef ENABLE_AOT
-all-local: $(mscorlib_aot_image) $(mcs_aot_image)
-
clean-local:
-rm -f $(mscorlib_aot_image) $(mcs_aot_image) $(PROFILE)_aot.log
+ifeq ($(PROFILE),basic)
+all-local: $(mscorlib_aot_image) $(mcs_aot_image)
+install-local:
+endif
+
+ifeq ($(PROFILE),net_2_0)
+all-local: $(mscorlib_aot_image) $(mcs_aot_image)
install-local:
$(MKINSTALLDIRS) $(DESTDIR)$(LIBRARY_INSTALL_DIR)
$(INSTALL_LIB) $(mscorlib_aot_image) $(DESTDIR)$(LIBRARY_INSTALL_DIR)
$(INSTALL_LIB) $(mcs_aot_image) $(DESTDIR)$(PROGRAM_INSTALL_DIR)
+endif
+
+# No mcs in net 4.0
+ifeq ($(PROFILE),net_4_0)
+all-local: $(mscorlib_aot_image)
+install-local:
+ $(MKINSTALLDIRS) $(DESTDIR)$(LIBRARY_INSTALL_DIR)
+ $(INSTALL_LIB) $(mscorlib_aot_image) $(DESTDIR)$(LIBRARY_INSTALL_DIR)
+endif
endif