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:
authorAlexander Köplinger <alex.koeplinger@outlook.com>2020-01-29 23:28:06 +0300
committerGitHub <noreply@github.com>2020-01-29 23:28:06 +0300
commit5e3e34220c0e2bb95096318e83bec2d1d9ebd330 (patch)
tree0a32227b895fa48b12a45735321637dea525b4b1
parent81f184c2ad15e4161c28666b7a31d224bc31afc8 (diff)
[corlib] Split corlib xunit tests even more for iOS (#18619)
Follow-up to https://github.com/mono/mono/pull/18228 since two parts wasn't enough to fix the size issue on 32bits devices. We now use three parts. Fixes https://github.com/mono/mono/issues/18614
-rw-r--r--mcs/build/tests.make30
-rw-r--r--mcs/class/corlib/corlib_xtest.dll.sources11
2 files changed, 32 insertions, 9 deletions
diff --git a/mcs/build/tests.make b/mcs/build/tests.make
index 078989ada7a..47b7f76320b 100644
--- a/mcs/build/tests.make
+++ b/mcs/build/tests.make
@@ -147,7 +147,7 @@ ifdef HAVE_CS_TESTS
test_assemblies += $(test_lib_output)
ifdef TEST_SPLIT_ASSEMBLIES
-test_assemblies += $(test_lib_output:.dll=.part1.dll) $(test_lib_output:.dll=.part2.dll)
+test_assemblies += $(test_lib_output:.dll=.part1.dll) $(test_lib_output:.dll=.part2.dll) $(test_lib_output:.dll=.part3.dll)
endif
check: run-test
@@ -288,7 +288,15 @@ $(test_lib_output:.dll=.part1.dll): $(test_lib_output) $(test_response).part1
$(test_lib_output:.dll=.part2.dll): $(test_lib_output) $(test_response).part2
$(TEST_COMPILE) $(LIBRARY_FLAGS) -target:library -out:$@ $(test_flags) $(LOCAL_TEST_COMPILER_ONDOTNET_FLAGS) @$(test_response).part2
-tests_CLEAN_FILES += $(test_response).part1 $(test_response).part2
+$(test_lib_output:.dll=.part3.dll): $(test_lib_output) $(test_response).part3
+ifneq ($(wildcard $(test_response).part3),)
+ $(TEST_COMPILE) $(LIBRARY_FLAGS) -target:library -out:$@ $(test_flags) $(LOCAL_TEST_COMPILER_ONDOTNET_FLAGS) @$(test_response).part3
+endif
+
+# part3 is optional so we need this empty target to silence make if it doesn't exist
+$(test_response).part3: ;
+
+tests_CLEAN_FILES += $(test_response).part1 $(test_response).part2 $(test_response).part3
endif
$(test_response): $(test_sourcefile_base) $(wildcard *_test.dll.sources) $(wildcard *_test.dll.exclude.sources) $(topdir)/build/tests.make $(depsdir)/.stamp
@@ -296,7 +304,7 @@ $(test_response): $(test_sourcefile_base) $(wildcard *_test.dll.sources) $(wildc
$(test_makefrag): $(test_response)
@echo Creating $@ ...
- @sed 's,^,$(test_lib_output) $(test_lib_output:.dll=.part1.dll) $(test_lib_output:.dll=.part2.dll): ,' $< >$@
+ @sed 's,^,$(test_lib_output) $(test_lib_output:.dll=.part1.dll) $(test_lib_output:.dll=.part2.dll) $(test_lib_output:.dll=.part3.dll): ,' $< >$@
-include $(test_makefrag)
@@ -339,7 +347,7 @@ endif
xtest_assemblies += $(xtest_lib_output)
ifdef XTEST_SPLIT_ASSEMBLIES
-xtest_assemblies += $(xtest_lib_output:.dll=.part1.dll) $(xtest_lib_output:.dll=.part2.dll)
+xtest_assemblies += $(xtest_lib_output:.dll=.part1.dll) $(xtest_lib_output:.dll=.part2.dll) $(xtest_lib_output:.dll=.part3.dll)
endif
@@ -377,7 +385,15 @@ $(xtest_lib_output:.dll=.part1.dll): $(xtest_lib_output) $(xtest_response).part1
$(xtest_lib_output:.dll=.part2.dll): $(xtest_lib_output) $(xtest_response).part2
$(TEST_COMPILE) $(LIBRARY_FLAGS) $(XTEST_LIB_FLAGS) -target:library -out:$@ $(xtest_flags) @$(xtest_response).part2 $(xunit_src)
-xtests_CLEAN_FILES += $(xtest_response).part1 $(xtest_response).part2
+$(xtest_lib_output:.dll=.part3.dll): $(xtest_lib_output) $(xtest_response).part3
+ifneq ($(wildcard $(xtest_response).part3),)
+ $(TEST_COMPILE) $(LIBRARY_FLAGS) $(XTEST_LIB_FLAGS) -target:library -out:$@ $(xtest_flags) @$(xtest_response).part3 $(xunit_src)
+endif
+
+# part3 is optional so we need this empty target to silence make if it doesn't exist
+$(xtest_response).part3: ;
+
+xtests_CLEAN_FILES += $(xtest_response).part1 $(xtest_response).part2 $(xtest_response).part3
endif
# This handles .excludes/.sources pairs, as well as resolving the
@@ -385,9 +401,9 @@ endif
$(xtest_response): $(xtest_sourcefile_base) $(wildcard *_xtest.dll.sources) $(wildcard *_xtest.dll.exclude.sources) $(topdir)/build/tests.make $(depsdir)/.stamp
$(GENSOURCES) --strict --platformsdir:$(topdir)/build "$@" "$(xtest_library)" "$(PROFILE_PLATFORM)" "$(PROFILE)"
-$(xtest_makefrag): $(xtest_response) $(xtest_response_parts)
+$(xtest_makefrag): $(xtest_response)
@echo Creating $@ ...
- @sed 's,^,$(xtest_lib_output) $(xtest_lib_output:.dll=.part1.dll) $(xtest_lib_output:.dll=.part2.dll): ,' $< >$@
+ @sed 's,^,$(xtest_lib_output) $(xtest_lib_output:.dll=.part1.dll) $(xtest_lib_output:.dll=.part2.dll) $(xtest_lib_output:.dll=.part3.dll): ,' $< >$@
-include $(xtest_makefrag)
diff --git a/mcs/class/corlib/corlib_xtest.dll.sources b/mcs/class/corlib/corlib_xtest.dll.sources
index d57eba1b39d..27b311d3827 100644
--- a/mcs/class/corlib/corlib_xtest.dll.sources
+++ b/mcs/class/corlib/corlib_xtest.dll.sources
@@ -294,8 +294,6 @@ corefx/GlobalizationMode.cs
../../../external/corefx/src/System.Runtime/tests/System/TimeZoneNotFoundExceptionTests.cs
../../../external/corefx/src/System.Runtime/tests/System/TimeSpanTests.cs
../../../external/corefx/src/System.Runtime/tests/System/TimeSpanTests.netcoreapp.cs
-../../../external/corefx/src/System.Runtime/tests/System/ArraySegmentTests.cs
-../../../external/corefx/src/System.Runtime/tests/System/ArraySegmentTests.netcoreapp.cs
../../../external/corefx/src/System.Runtime/tests/System/BooleanTests.cs
../../../external/corefx/src/System.Runtime/tests/System/BooleanTests.netcoreapp.cs
../../../external/corefx/src/System.Runtime/tests/System/ByteTests.cs
@@ -366,6 +364,15 @@ corefx/GlobalizationMode.cs
../../../external/corefx/src/System.Runtime/tests/System/Text/*.cs
../../../external/corefx/src/System.Runtime/tests/System/Runtime/CompilerServices/*.cs:RuntimeHelpersTests.netcoreapp.cs,ConditionalWeakTableTests.netcoreapp.cs,ConditionalWeakTableTests.cs
+
+#split monotouch
+#split monotouch_tv
+#split monotouch_watch
+
+
+../../../external/corefx/src/System.Runtime/tests/System/ArraySegmentTests.cs
+../../../external/corefx/src/System.Runtime/tests/System/ArraySegmentTests.netcoreapp.cs
+
# System.Collections
../../../external/corefx/src/Common/tests/System/Collections/CollectionAsserts.cs
../../../external/corefx/src/Common/tests/System/Collections/TestBase.NonGeneric.cs