Merge pull request #1542 from ninjarobot/UriTemplateMatchException
[mono.git] / mcs / class / corlib / Makefile
index 6523afbc01415592d9dc6552b9bc6b8c2f6b3c71..0e83f59cb600d633a7f7aba08614eeac19d056d9 100644 (file)
@@ -5,12 +5,11 @@ export __SECURITY_BOOTSTRAP_DB=$(topdir)/class/corlib
 
 LIBRARY = corlib.dll
 LIBRARY_NAME = mscorlib.dll
-LIB_MCS_FLAGS = $(RESOURCE_FILES:%=-resource:%)
-LIBRARY_USE_INTERMEDIATE_FILE = yes
 
-ifeq (basic, $(PROFILE))
+REFERENCE_SOURCES_FLAGS = -d:FEATURE_PAL,PFX_LEGACY_3_5 -d:MONO -d:MONO_HYBRID_ENCODING_SUPPORT
+LIB_MCS_FLAGS = $(REFERENCE_SOURCES_FLAGS) $(RESOURCE_FILES:%=-resource:%)
 
-else
+#LIBRARY_USE_INTERMEDIATE_FILE = yes
 
 ifeq (2, $(FRAMEWORK_VERSION_MAJOR))
 LIB_MCS_FLAGS += --runtime:v2
@@ -22,20 +21,11 @@ $(error Unknown framework version)
 endif
 endif
 
-endif
-
-ifeq (xammac, $(PROFILE))
-PLATFORM_includes = corlib.dll.sources
-PLATFORM_excludes = xammac_corlib.dll.exclude.sources
-response = $(wildcard $(PROFILE)_$(LIBRARY).sources)
-@echo $(PLATFORM_includes) $(PLATFORM_excludes)
-@sort $(PLATFORM_includes) $(PLATFORM_excludes) | uniq -u | $(PLATFORM_CHANGE_SEPARATOR_CMD) > $(response)
-endif
-
 LIBRARY_COMPILE = $(BOOT_COMPILE)
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)
 
 RESOURCE_FILES = \
+       resources/charinfo.nlp \
        resources/collation.core.bin \
        resources/collation.tailoring.bin \
        resources/collation.cjkCHS.bin \
@@ -44,7 +34,8 @@ RESOURCE_FILES = \
        resources/collation.cjkKO.bin \
        resources/collation.cjkKOlv2.bin
 
-LOCAL_MCS_FLAGS = -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC
+REFERENCE_SOURCES_FLAGS = -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT
+LOCAL_MCS_FLAGS = -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB,MONO_CULTURE_DATA -d:LIBC $(REFERENCE_SOURCES_FLAGS)
 DEFAULT_REFERENCES =
 
 # System.IO/DirectoryInfoTest.cs needs Mono.Posix
@@ -142,7 +133,7 @@ $(vtsdir)/$(PROFILE)_TestLib/%/Address.dll: $(vtsdir)/VersionTolerantSerializati
        @mkdir -p $(dir $@)
        $(CSCOMPILE) -target:library -r:$(corlib) -warn:0 -out:$@ $^
 
-$(vtsdir)/$(PROFILE)_TestLib/BinarySerializationOverVersions.exe: $(vtsdir)/BinarySerializationOverVersions.cs $(vtsdir)/$(PROFILE)_TestLib/1.0/Address.dll
+$(vtsdir)/$(PROFILE)_TestLib/BinarySerializationOverVersions.exe: $(vtsdir)/BinarySerializationOverVersions.cs $(vtsdir)/$(PROFILE)_TestLib/1.0/Address.dll $(test_nunit_dep)
        $(CSCOMPILE) $(test_nunit_ref) -warn:0 -r:$(corlib) \
                -r:$(vtsdir)/$(PROFILE)_TestLib/1.0/Address.dll \
                $(vtsdir)/BinarySerializationOverVersions.cs -out:$@
@@ -155,8 +146,10 @@ run-test-vts: test-vts
        @echo Running vts tests...
        PATH="$(TEST_RUNTIME_WRAPPERS_PATH):$(PATH)" $(TEST_RUNTIME) $(RUNTIME_FLAGS) $(TEST_HARNESS) -noshadow \
                $(vtsdir)/$(PROFILE)_TestLib/BinarySerializationOverVersions.exe
+ifndef NO_TEST
 test: test-vts
 run-test: run-test-vts
+endif
 
 EXTRA_DISTFILES += \
        $(vtsdir)/VersionTolerantSerializationTestLib/1.0/Address.cs \
@@ -166,3 +159,21 @@ EXTRA_DISTFILES += \
        $(vtsdir)/VersionTolerantSerializationTestLib/5.0/Address.cs \
        $(vtsdir)/VersionTolerantSerializationTestLib/6.0/Address.cs \
        $(vtsdir)/BinarySerializationOverVersions.cs
+
+#
+# Android TimeZoneInfo testing....
+#
+
+tzi.exe: System/AndroidPlatform.cs $(wildcard System/TimeZone*.cs) ../../build/common/Consts.cs ../../build/common/Locale.cs ../Mono.Options/Mono.Options/Options.cs ReferenceSources/TimeZoneInfoOptions.cs
+       mcs /debug+ /out:$@ /unsafe "/d:INSIDE_CORLIB;MONODROID;MOBILE;NET_4_5;NET_4_0;LIBC;SELF_TEST" $^
+
+android-pull-tzdb:
+       mkdir -p android/tzdb/usr/share/zoneinfo
+       mkdir -p android/tzdb/misc/zoneinfo/zoneinfo
+       android_root=`adb shell echo '$$ANDROID_ROOT' | tr -d "\r"` ; \
+       android_data=`adb shell echo '$$ANDROID_DATA' | tr -d "\r"` ; \
+       adb $(ADB_TARGET) pull $$android_root/usr/share/zoneinfo    android/tzdb/usr/share/zoneinfo ; \
+       adb $(ADB_TARGET) pull $$android_data/misc/zoneinfo/tzdata  android/tzdb/misc/zoneinfo
+
+android-dump-tzdata: tzi.exe android-pull-tzdb
+       __XA_OVERRIDE_TIMEZONE_ID__=America/New_York ANDROID_ROOT="`pwd`/android/tzdb" ANDROID_DATA="`pwd`/android/tzdb" mono --debug tzi.exe -o android/tzdata