Merge pull request #409 from Alkarex/patch-1
[mono.git] / mcs / class / System.Core / Makefile
index 6acc12d632a323d1669774d9d27d7616af720ae7..0b3e9865cf872b893587e3cc262998da24c8de67 100644 (file)
@@ -1,18 +1,36 @@
-thisdir = class/System.Core\r
-SUBDIRS = \r
-include ../../build/rules.make\r
-\r
-LIBRARY = System.Core.dll\r
-LIB_MCS_FLAGS = /r:$(corlib)\r
-NO_TEST = yes\r
-
-# This is a .NET 2.0 only assembly
-VALID_PROFILE := $(filter net_2_0_bootstrap net_2_0, $(PROFILE))
-ifndef VALID_PROFILE
-LIBRARY_NAME = dummy-System.Core.dll
-NO_INSTALL = yes
-NO_SIGN_ASSEMBLY = yes
-NO_TEST = yes
+thisdir = class/System.Core
+SUBDIRS = 
+include ../../build/rules.make
+
+LIBRARY = System.Core.dll
+
+LIB_MCS_FLAGS = -d:INSIDE_SYSCORE -d:LIBC /r:System.dll -unsafe
+
+ifneq (2.1, $(FRAMEWORK_VERSION))
+LIB_MCS_FLAGS += -d:NET_3_5 -nowarn:1720
+endif
+
+ifeq (monodroid, $(PROFILE))
+LIB_MCS_FLAGS += -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,ANDROID
+endif
+
+ifeq (monotouch, $(PROFILE))
+LIB_MCS_FLAGS += -d:FULL_AOT_RUNTIME
 endif
 
-include ../../build/library.make\r
+ifeq (4, $(FRAMEWORK_VERSION_MAJOR))
+LIB_MCS_FLAGS += -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT
+endif
+
+ifneq (basic, $(PROFILE))
+CLR_PROFILE := $(filter 2.0 4.0 4.5, $(FRAMEWORK_VERSION))
+endif
+
+ifdef CLR_PROFILE
+LIB_MCS_FLAGS += -r:Mono.Posix.dll
+endif
+
+TEST_MCS_FLAGS = $(LIB_MCS_FLAGS)
+
+include ../../build/library.make
+