1 thisdir = class/System.Core
3 include ../../build/rules.make
5 LIBRARY = System.Core.dll
7 REFERENCE_SOURCES_FLAGS = -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE
9 LIB_MCS_FLAGS = $(REFERENCE_SOURCES_FLAGS) -d:INSIDE_SYSCORE -d:LIBC -unsafe -nowarn:436
10 TXT_RESOURCE_STRINGS = ../referencesource/System.Core/System.Core.txt
12 ifneq (2.1, $(FRAMEWORK_VERSION))
13 LIB_MCS_FLAGS += -d:NET_3_5 -nowarn:1720
17 LIB_MCS_FLAGS += -d:FEATURE_CORE_DLR,FEATURE_REFEMIT
20 system_core_plain_libdir = $(the_libdir_base)plaincore
22 ifdef AOT_FRIENDLY_PROFILE
23 extra_test_flags := -exclude:NotWorkingInterpreter
24 system_core_library_deps = $(the_libdir_base)Mono.Dynamic.Interpreter.dll $(system_core_plain_libdir)/System.Core.dll
25 LIB_MCS_FLAGS += -d:FEATURE_CORE_DLR
27 ifneq (plaincore/,$(intermediate))
28 LIB_REFS += Mono.Dynamic.Interpreter
29 LIB_MCS_FLAGS += -d:MONO_INTERPRETER
34 ifeq (monotouch_runtime, $(PROFILE))
35 LIB_MCS_FLAGS += -d:FULL_AOT_RUNTIME
38 ifeq (4, $(FRAMEWORK_VERSION_MAJOR))
39 LIB_MCS_FLAGS += -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT
42 ifneq (basic, $(PROFILE))
43 CLR_PROFILE := $(filter 2.0 4.0 4.5, $(FRAMEWORK_VERSION))
47 LIB_REFS += Mono.Posix
50 CC_PROFILE := $(filter monotouch% xammac, $(PROFILE))
53 ../corlib/CommonCrypto/AesManaged.g.cs \
54 ../corlib/CommonCrypto/AesCryptoServiceProvider.g.cs
56 ../corlib/CommonCrypto/%.g.cs:
57 $(MAKE) -C ../corlib/CommonCrypto
60 TEST_MCS_FLAGS = $(LIB_MCS_FLAGS)
62 include ../../build/library.make
64 $(the_libdir_base)System.Core.dll: $(system_core_library_deps)
66 .NOTPARALLEL: $(system_core_plain_libdir)/System.Core.dll $(the_libdir_base)Mono.Dynamic.Interpreter.dll
68 ifneq (plaincore/,$(intermediate))
69 $(system_core_plain_libdir)/System.Core.dll:
70 $(MAKE) intermediate=plaincore/ $(system_core_plain_libdir)/System.Core.dll
73 $(the_libdir_base)Mono.Dynamic.Interpreter.dll:
74 (cd ../Mono.Dynamic.Interpreter; $(MAKE))
76 TEST_HARNESS_EXCLUDES += $(extra_test_flags)
78 CLEAN_FILES = $(system_core_plain_libdir)/System.Core.dll
81 ifneq ($(PROFILE),basic)
83 $(MAKE) csproj-local intermediate=plaincore/