X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Ftests%2FMakefile.am;h=fb464a3969b9b4937957b48824f093818d591e94;hb=0465b3764f3891dd57747470c6d40f494acbe0c0;hp=83b7d196cbd2b12005d107ba4df1eb074b2c175d;hpb=df9c98dda18083ec63171490267e08342621ef45;p=mono.git diff --git a/mono/tests/Makefile.am b/mono/tests/Makefile.am index 83b7d196cbd..36488929a89 100644 --- a/mono/tests/Makefile.am +++ b/mono/tests/Makefile.am @@ -1,7 +1,13 @@ SUBDIRS = assemblyresolve gc-descriptors -check-local: assemblyresolve/test/asm.dll testjit test-generic-sharing test-type-load test-cattr-type-load test-reflection-load-with-context test_platform \ - test-console-output test-messages test-env-options test-unhandled-exception-2 test-appdomain-unload test-process-stress rm-empty-logs +if INSTALL_MOBILE_STATIC +FEATUREFUL_RUNTIME_TEST = +else +FEATUREFUL_RUNTIME_TEST = test-appdomain-unload +endif + +check-local: assemblyresolve/test/asm.dll testjit test-generic-sharing test-type-load test-multi-netmodule test-cattr-type-load test-reflection-load-with-context test_platform \ + test-console-output test-messages test-env-options test-unhandled-exception-2 $(FEATUREFUL_RUNTIME_TEST) test-process-stress rm-empty-logs check-full: test-sgen check-local check-parallel: compile-tests check-full @@ -22,6 +28,14 @@ JITTEST_PROG_RUN = MONO_CFG_DIR=$(mono_build_root)/runtime/etc $(LIBTOOL) --mode RUNTIME_ARGS=--config tests-config --optimize=all --debug +if HOST_WIN32 +TEST_RUNNER_ARGS=--config tests-config --runtime $(if $(MONO_EXECUTABLE),$(shell cygpath -w -a $(MONO_EXECUTABLE) | sed 's/\\/\\\\/g'),mono) +else +TEST_RUNNER_ARGS=--config tests-config --runtime $(if $(MONO_EXECUTABLE),$(MONO_EXECUTABLE),mono) +endif + +TEST_RUNNER_ARGS += $(if $(V), --verbose,) + CLASS=$(mcs_topdir)/class/lib/$(DEFAULT_PROFILE) with_mono_path = MONO_PATH=$(CLASS) @@ -32,16 +46,27 @@ MKBUNDLE = \ PKG_CONFIG_PATH=$(top_builddir):$(PKG_CONFIG_PATH) \ $(RUNTIME) $(CLASS)/mkbundle.exe +if INSTALL_MOBILE_STATIC +PROFILE_MCS_FLAGS = -d:MOBILE,MOBILE_STATIC,MOBILE_LEGACY +endif + MCS_NO_LIB = $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe -unsafe -debug \ -noconfig -nologo \ -nowarn:0162 -nowarn:0168 -nowarn:0219 -nowarn:0414 -nowarn:0618 \ -nowarn:0169 -nowarn:1690 -nowarn:0649 -nowarn:0612 -nowarn:3021 \ - -nowarn:0197 + -nowarn:0197 $(PROFILE_MCS_FLAGS) MCS = $(MCS_NO_LIB) -lib:$(CLASS) ILASM = $(RUNTIME) $(CLASS)/ilasm.exe +if INSTALL_MOBILE_STATIC +TEST_RUNNER = ./test-runner.exe --runtime $(top_builddir)/runtime/mono-wrapper --mono-path "$(CLASS)" --aot-run-flags "$(AOT_RUN_FLAGS)" --aot-build-flags "$(AOT_BUILD_FLAGS)" +else +TEST_RUNNER = ./test-runner.exe --runtime $(top_builddir)/runtime/mono-wrapper --mono-path "$(CLASS)" +endif + + BENCHSRC=fib.cs random.cs nested-loops.cs ackermann.cs tight-loop.cs sieve.cs STRESS_TESTS_SRC= \ @@ -59,9 +84,71 @@ STRESS_TESTS_SRC= \ process-stress.cs \ assembly-load-stress.cs +BASE_TEST_MOBILE_STATIC_NOT_SUPPORTED= \ + remoting4.cs # Needs remoting support \ + remoting1.cs # Needs remoting support \ + remoting2.cs # Needs remoting support \ + remoting3.cs # Needs remoting support \ + remoting5.cs # Needs remoting support \ + appdomain.cs # Needs appdomain support \ + appdomain-client.cs # Needs appdomain support \ + appdomain-unload.cs # Needs appdomain support \ + appdomain-async-invoke.cs # Needs appdomain support \ + appdomain-thread-abort.cs # Needs appdomain support \ + appdomain1.cs # Needs appdomain support \ + appdomain2.cs # Needs appdomain support \ + appdomain-exit.cs # Needs appdomain support \ + assemblyresolve_event2.2.cs # Needs appdomain support \ + appdomain-unload-callback.cs # Needs appdomain support \ + appdomain-unload-doesnot-raise-pending-events.cs # Needs appdomain support \ + unload-appdomain-on-shutdown.cs # Needs appdomain support \ + bug-47295.cs # Needs SRE \ + loader.cs # Needs SRE \ + pinvoke2.cs # Needs SRE \ + generic-type-builder.2.cs # Needs SRE \ + dynamic-generic-size.cs # Needs SRE \ + cominterop.cs # Needs COM \ + dynamic-method-access.2.cs # Need SRE \ + dynamic-method-finalize.2.cs # Need SRE \ + dynamic-method-stack-traces.cs # Need SRE\ + generic_type_definition.2.cs # Need SRE \ + bug-333798-tb.2.cs # Need SRE \ + bug-335131.2.cs # Need SRE \ + bug-322722_patch_bx.2.cs # Need SRE\ + bug-322722_dyn_method_throw.2.cs # Need SRE \ + bug-389886-2.cs # Need SRE \ + bug-349190.2.cs # Need SRE \ + bug-389886-sre-generic-interface-instances.cs # Need SRE \ + bug-462592.cs # Need SRE \ + bug-575941.cs # Need SRE \ + bug-389886-3.cs # Need SRE \ + constant-division.cs # Need SRE \ + dynamic-method-resurrection.cs # Need SRE \ + bug-80307.cs # Need System.Web \ + assembly_append_ordering.cs # Need SRE \ + bug-544446.cs # Needs AppDomains / TranparentProxy \ + bug-36848.cs # Needs AppDomains / TranparentProxy \ + generic-marshalbyref.2.cs # Needs AppDomains \ + stackframes-async.2.cs # Needs AppDomains \ + transparentproxy.cs # Needs AppDomains / TranparentProxy \ + bug-48015.cs # Needs AppDomains / TranparentProxy \ + delegate9.cs # Needs AppDomains \ + marshal-valuetypes.cs # Needs AppDomains \ + xdomain-threads.cs # Needs AppDomains \ + monitor.cs # Needs AppDomains \ + generic-xdomain.2.cs # Needs AppDomains \ + threadpool-exceptions7.cs # Needs AppDomains \ + cross-domain.cs # Needs AppDomains \ + generic-unloading.2.cs # Needs AppDomains \ + namedmutex-destroy-race.cs # needs named Mutex \ + thread6.cs # On MOBILE, ThreadAbortException doesn't have necessary field for this test + # Disabled until ?mcs is fixed # bug-331958.cs -BASE_TEST_CS_SRC= \ +# Note: only add tests that are compatible with mobile_static to this category +BASE_TEST_CS_SRC_UNIVERSAL= \ + generic-unloading-sub.2.cs \ + create-instance.cs \ bug-2907.cs \ array-init.cs \ arraylist.cs \ @@ -71,7 +158,6 @@ BASE_TEST_CS_SRC= \ assemblyresolve_event4.cs \ checked.cs \ char-isnumber.cs \ - create-instance.cs \ field-layout.cs \ pack-layout.cs \ pack-bug.cs \ @@ -108,7 +194,7 @@ BASE_TEST_CS_SRC= \ typeof-ptr.cs \ static-constructor.cs \ pinvoke.cs \ - pinvoke2.cs \ + pinvoke-utf8.cs \ pinvoke3.cs \ pinvoke11.cs \ pinvoke13.cs \ @@ -174,13 +260,6 @@ BASE_TEST_CS_SRC= \ jit-float.cs \ pop.cs \ time.cs \ - appdomain.cs \ - appdomain1.cs \ - appdomain2.cs \ - appdomain-client.cs \ - appdomain-unload.cs \ - appdomain-async-invoke.cs \ - loader.cs \ pointer.cs \ hashcode.cs \ delegate1.cs \ @@ -190,16 +269,10 @@ BASE_TEST_CS_SRC= \ delegate6.cs \ delegate7.cs \ delegate8.cs \ - delegate9.cs \ delegate10.cs \ delegate11.cs \ delegate12.cs \ delegate13.cs \ - remoting1.cs \ - remoting2.cs \ - remoting3.cs \ - remoting4.cs \ - remoting5.cs \ largeexp.cs \ largeexp2.cs \ marshalbyref1.cs \ @@ -220,11 +293,9 @@ BASE_TEST_CS_SRC= \ marshal8.cs \ marshal9.cs \ marshalbool.cs \ - marshal-valuetypes.cs \ test-byval-in-struct.cs \ thread.cs \ thread5.cs \ - thread6.cs \ thread-static.cs \ thread-static-init.cs \ context-static.cs \ @@ -244,12 +315,9 @@ BASE_TEST_CS_SRC= \ threadpool-exceptions4.cs \ threadpool-exceptions5.cs \ threadpool-exceptions6.cs \ - threadpool-exceptions7.cs \ base-definition.cs \ bug-27420.cs \ - bug-47295.cs \ bug-46781.cs \ - bug-48015.cs \ bug-42136.cs \ bug-59286.cs \ bug-70561.cs \ @@ -260,8 +328,6 @@ BASE_TEST_CS_SRC= \ bug-323114.cs \ bug-Xamarin-5278.cs \ interlocked.cs \ - cross-domain.cs \ - appdomain-exit.cs \ delegate-async-exit.cs \ delegate-delegate-exit.cs \ delegate-exit.cs \ @@ -278,16 +344,13 @@ BASE_TEST_CS_SRC= \ main-returns.cs \ subthread-exit.cs \ desweak.cs \ - cominterop.cs \ exists.cs \ handleref.cs \ - transparentproxy.cs \ dbnull-missing.cs \ test-type-ctor.cs \ soft-float-tests.cs \ thread-exit.cs \ finalize-parent.cs \ - assemblyresolve_event2.2.cs \ interlocked-2.2.cs \ pinvoke-2.2.cs \ bug-78431.2.cs \ @@ -295,7 +358,6 @@ BASE_TEST_CS_SRC= \ catch-generics.2.cs \ event-get.2.cs \ safehandle.2.cs \ - stackframes-async.2.cs \ module-cctor-loader.2.cs \ generics-invoke-byref.2.cs \ generic-signature-compare.2.cs \ @@ -317,14 +379,10 @@ BASE_TEST_CS_SRC= \ generic-virtual2.2.cs \ generic-valuetype-interface.2.cs \ generic-getgenericarguments.2.cs \ - generic-type-builder.2.cs \ generic-synchronized.2.cs \ generic-delegate-ctor.2.cs \ generic-array-iface-set.2.cs \ generic-typedef.2.cs \ - generic-marshalbyref.2.cs \ - generic-xdomain.2.cs \ - dynamic-generic-size.cs \ bug-431413.2.cs \ bug-459285.2.cs \ generic-virtual-invoke.2.cs \ @@ -340,27 +398,17 @@ BASE_TEST_CS_SRC= \ bug-479763.2.cs \ bug-616463.cs \ bug-80392.2.cs \ - dynamic-method-access.2.cs \ - dynamic-method-finalize.2.cs \ - dynamic-method-stack-traces.cs \ bug-82194.2.cs \ anonarray.2.cs \ ienumerator-interfaces.2.cs \ array-enumerator-ifaces.2.cs \ generic_type_definition_encoding.2.cs \ - generic_type_definition.2.cs \ bug-333798.2.cs \ - bug-333798-tb.2.cs \ - bug-335131.2.cs \ - bug-322722_patch_bx.2.cs \ bug-348522.2.cs \ bug-340662_bug.cs \ - bug-322722_dyn_method_throw.2.cs \ - bug-389886-2.cs \ bug-325283.2.cs \ thunks.cs \ winx64structs.cs \ - bug-349190.2.cs \ nullable_boxing.2.cs \ valuetype-equals.cs \ custom-modifiers.2.cs \ @@ -369,44 +417,30 @@ BASE_TEST_CS_SRC= \ bug-324535.cs \ modules.cs \ bug-81673.cs \ - bug-36848.cs \ bug-81691.cs \ - bug-80307.cs \ bug-415577.cs \ filter-stack.cs \ vararg2.cs \ - bug-389886-sre-generic-interface-instances.cs \ bug-461867.cs \ bug-461941.cs \ bug-461261.cs \ bug-400716.cs \ - bug-462592.cs \ bug-459094.cs \ - generic-unloading.2.cs \ - generic-unloading-sub.2.cs \ bug-467456.cs \ - appdomain-unload-callback.cs \ bug-508538.cs \ bug-472692.2.cs \ gchandles.cs \ interlocked-3.cs \ interlocked-4.2.cs \ - appdomain-thread-abort.cs \ - xdomain-threads.cs \ w32message.cs \ - bug-544446.cs \ gc-altstack.cs \ large-gc-bitmap.cs \ bug-561239.cs \ bug-562150.cs \ - bug-575941.cs \ bug-599469.cs \ - bug-389886-3.cs \ - monitor.cs \ monitor-resurrection.cs \ monitor-wait-abort.cs \ monitor-abort.cs \ - dynamic-method-resurrection.cs \ bug-666008.cs \ bug-685908.cs \ sgen-long-vtype.cs \ @@ -418,13 +452,10 @@ BASE_TEST_CS_SRC= \ bug-bxc-795.cs \ bug-3903.cs \ async-with-cb-throws.cs \ - appdomain-unload-doesnot-raise-pending-events.cs \ bug-6148.cs \ - assembly_append_ordering.cs \ bug-10127.cs \ bug-18026.cs \ allow-synchronous-major.cs \ - unload-appdomain-on-shutdown.cs \ block_guard_restore_aligment_on_exit.cs \ thread_static_gc_layout.cs \ sleep.cs \ @@ -435,7 +466,21 @@ BASE_TEST_CS_SRC= \ pinvoke_ppcs.cs \ pinvoke_ppci.cs \ pinvoke_ppcf.cs \ - pinvoke_ppcd.cs + pinvoke_ppcd.cs \ + bug-29585.cs \ + priority.cs \ + abort-cctor.cs \ + thread-native-exit.cs \ + reference-loader.cs + +if INSTALL_MOBILE_STATIC +BASE_TEST_CS_SRC= \ + $(BASE_TEST_CS_SRC_UNIVERSAL) +else +BASE_TEST_CS_SRC= \ + $(BASE_TEST_MOBILE_STATIC_NOT_SUPPORTED) \ + $(BASE_TEST_CS_SRC_UNIVERSAL) +endif TEST_CS_SRC_DIST= \ $(BASE_TEST_CS_SRC) \ @@ -471,7 +516,7 @@ if X86 if HOST_WIN32 PLATFORM_DISABLED_TESTS=async-exc-compilation.exe finally_guard.exe finally_block_ending_in_dead_bb.exe \ - bug-18026.exe monitor.exe threadpool-exceptions5.exe + bug-18026.exe monitor.exe threadpool-exceptions5.exe pinvoke-utf8.exe endif endif @@ -584,6 +629,58 @@ endif endif +if ENABLE_COOP +COOP_DISABLED_TESTS= thunks.exe +else +COOP_DISABLED_TESTS= +endif + +if INSTALL_MOBILE_STATIC +# Tests which rely on TypeLoadExceptions +# In full-aot mode, these cause the relevant methods to be not AOTed. +PROFILE_DISABLED_TESTS = \ + typeload-unaligned.exe \ + field-access.exe \ + invalid_generic_instantiation.exe \ + bug-481403.exe \ + array_ldelema.exe \ + array_load_exception.exe \ + bug445361.exe \ + generic-type-load-exception.2.exe \ + invalid-token.exe \ + call_missing_method.exe \ + call_missing_class.exe \ + ldfld_missing_field.exe \ + ldfld_missing_class.exe \ + vt-sync-method.exe + +# Tests which rely on remoting +PROFILE_DISABLED_TESTS += \ + context-static.exe \ + bug-415577.exe \ + generic-marshalbyref.2.exe \ + unhandled-exception-7.exe + +# Tests which use unsupported pinvoke+full aot +# functionality +PROFILE_DISABLED_TESTS += \ + marshal.exe \ + marshal2.exe \ + marshal6.exe \ + marshal7.exe \ + marshal8.exe \ + pinvoke-2.2.exe \ + pinvoke3.exe \ + thunks.exe + +# Tests which load assemblies which are not +# in the mobile_static profile +PROFILE_DISABLED_TESTS += \ + assembly-load-remap.exe +else +PROFILE_DISABLED_TESTS= +endif + # The two finalizer tests only work under sgen # gc-altstack.exe fails under boehm because it has no support for altstack # bug-459094.exe creates an extremely deep directory tree @@ -597,7 +694,9 @@ DISABLED_TESTS= \ delegate-invoke.exe \ bug-Xamarin-5278.exe \ $(PLATFORM_DISABLED_TESTS) \ - $(EXTRA_DISABLED_TESTS) + $(EXTRA_DISABLED_TESTS) \ + $(COOP_DISABLED_TESTS) \ + $(PROFILE_DISABLED_TESTS) DISABLED_TESTS_WRENCH= \ $(DISABLED_TESTS) \ @@ -617,7 +716,14 @@ AOT_DISABLED_TESTS=constraints-load.exe TEST_CSC_SRC= \ vararg.cs -TEST_IL_SRC= \ +# constraints-load.il: +# Failed to load method 0x6000007 from '..../mono/tests/constraints-load.exe' due to +# Could not resolve type with token 01000002 assembly:mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 type:System.BrokenIComparable`1 member:. +IL_SRC_MOBILE_STATIC_NOT_SUPPORTED= \ + constraints-load.il \ + bug-515884.il + +TEST_IL_SRC_UNIVERSAL= \ field-access.il \ method-access.il \ ldftn-access.il \ @@ -676,40 +782,75 @@ TEST_IL_SRC= \ bug-463303.il \ bug469742.2.il \ bug-528055.il \ - constraints-load.il \ array_load_exception.il \ bug-481403.il \ interface-with-static-method.il \ - bug-515884.il \ bug-633291.il \ delegate-with-null-target.il \ bug-318677.il \ gsharing-valuetype-layout.il \ invalid_generic_instantiation.il +if INSTALL_MOBILE_STATIC +TEST_IL_SRC= \ + $(TEST_IL_SRC_UNIVERSAL) +else +TEST_IL_SRC= \ + $(TEST_IL_SRC_MOBILE_STATIC_NOT_SUPPORTED) \ + $(TEST_IL_SRC_UNIVERSAL) +endif # pre-requisite test sources: files that are not test themselves # but that need to be compiled PREREQ_IL_SRC=event-il.il module-cctor.il PREREQ_CS_SRC= -PREREQ_IL_DLL_SRC=event-il.il module-cctor.il -PREREQ_CS_DLL_SRC= +PREREQ_IL_DLL_SRC= +PREREQ_CS_DLL_SRC=TestingReferenceAssembly.cs TestingReferenceReferenceAssembly.cs -PREREQSI_IL=$(PREREQ_IL_SRC:.il=.exe) -PREREQSI_CS=$(PREREQ_CS_SRC:.cs=.exe) +PREREQSI_IL=$(PREREQ_IL_SRC:.il=.exe) \ + $(PREREQ_IL_DLL_SRC:.il=.dll) +PREREQSI_CS=$(PREREQ_CS_SRC:.cs=.exe) \ + $(PREREQ_CS_DLL_SRC:.cs=.dll) TESTSI_CS=$(TEST_CS_SRC:.cs=.exe) TESTSI_IL=$(TEST_IL_SRC:.il=.exe) TESTBS=$(BENCHSRC:.cs=.exe) STRESS_TESTS=$(STRESS_TESTS_SRC:.cs=.exe) +PREREQSI_IL_AOT=$(PREREQ_IL_SRC:.il=.exe$(PLATFORM_AOT_SUFFIX)) \ + $(PREREQ_IL_DLL_SRC:.il=.dll$(PLATFORM_AOT_SUFFIX)) +PREREQSI_CS_AOT=$(PREREQ_CS_SRC:.cs=.exe$(PLATFORM_AOT_SUFFIX)) \ + $(PREREQ_CS_DLL_SRC:.cs=.dll$(PLATFORM_AOT_SUFFIX)) + EXTRA_DIST=test-driver test-runner.cs $(TEST_CS_SRC_DIST) $(TEST_IL_SRC) \ $(BENCHSRC) $(STRESS_TESTS_SRC) stress-runner.pl $(PREREQ_IL_SRC) $(PREREQ_CS_SRC) %.exe: %.il $(ILASM) -out:$@ $< -%.exe: %.cs TestDriver.dll - $(MCS) -r:System.dll -r:System.Xml.dll -r:System.Core.dll -r:TestDriver.dll -r:Mono.Posix.dll -out:$@ $< +if !INSTALL_MOBILE_STATIC +TEST_DRIVER_HARD_KILL_FEATURE=-r:Mono.Posix.dll +endif + +if INSTALL_MOBILE_STATIC +TEST_DRIVER_DEPEND=TestDriver.dll$(PLATFORM_AOT_SUFFIX) +else +TEST_DRIVER_DEPEND=TestDriver.dll +endif + +%.exe: %.cs $(TEST_DRIVER_DEPEND) + $(MCS) -r:System.dll -r:System.Xml.dll -r:System.Core.dll -r:TestDriver.dll $(TEST_DRIVER_HARD_KILL_FEATURE) -out:$@ $< + +%.dll: %.cs + $(MCS) -r:System.dll -target:library -out:$@ $< + +TestingReferenceReferenceAssembly.dll: TestingReferenceReferenceAssembly.cs TestingReferenceAssembly.dll + $(MCS) -r:TestingReferenceAssembly.dll -target:library -out:$@ $< + +%.exe$(PLATFORM_AOT_SUFFIX): %.exe + $(RUNTIME) $(AOT_BUILD_FLAGS) $< + +%.dll$(PLATFORM_AOT_SUFFIX): %.dll + $(RUNTIME) $(AOT_BUILD_FLAGS) $< # mkbundle works on ppc, but the pkg-config POC doesn't when run with make test if POWERPC @@ -733,8 +874,24 @@ test_platform: test-eglib-remap endif endif +AOT_EXTRA_LIBS = \ +bug-382986-lib.dll$(PLATFORM_AOT_SUFFIX) \ +bug-324535-il.dll$(PLATFORM_AOT_SUFFIX) \ +bug-36848-a.dll$(PLATFORM_AOT_SUFFIX) \ +bug-81691-b.dll$(PLATFORM_AOT_SUFFIX) \ +bug-327438.2.exe$(PLATFORM_AOT_SUFFIX) \ +bug-81466-lib.dll$(PLATFORM_AOT_SUFFIX) \ +TestingReferenceAssembly.dll$(PLATFORM_AOT_SUFFIX) \ +TestingReferenceReferenceAssembly.dll$(PLATFORM_AOT_SUFFIX) + +if INSTALL_MOBILE_STATIC +prereqs: $(PREREQSI_IL_AOT) $(PREREQSI_CS_AOT) $(AOT_EXTRA_LIBS) +else +prereqs: $(PREREQSI_IL) $(PREREQSI_CS) +endif + # Target to precompile the test executables -tests: $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la $(PREREQSI_IL) $(PREREQSI_CS) $(GSHARED_TESTS) +tests: $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la prereqs $(GSHARED_TESTS) # # Test that no symbols are missed in eglib-remap.h @@ -767,40 +924,25 @@ endif test-env-options: MONO_ENV_OPTIONS="--version" $(RUNTIME) array-init.exe | grep -q Architecture: -if AMD64 -test-sgen : sgen-tests -else -if X86 -if HOST_WIN32 -test-sgen : -else -test-sgen : sgen-tests -endif -else -if ARM test-sgen : sgen-tests -else -if S390X -test-sgen : sgen-regular-tests -endif -endif -endif -endif # Precompile the test assemblies in parallel compile-tests: $(MAKE) -j4 $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la $(PREREQSI_IL) $(PREREQSI_CS) +if INSTALL_MOBILE_STATIC + $(MAKE) $(PREREQSI_IL_AOT) $(PREREQSI_CS_AOT) $(AOT_EXTRA_LIBS) +endif # Remove empty .stdout and .stderr files for wrench rm-empty-logs: @echo "Removing empty logs..." - @find . '(' -name "*.stdout" -o -name "*.stderr" ')' -empty -exec rm {} \; + find . '(' -name "*.stdout" -o -name "*.stderr" ')' -size 0 -exec rm {} \; assemblyresolve/test/asm.dll: $(MAKE) -C assemblyresolve prereq TestDriver.dll: - $(MCS) -target:library -out:$@ $(srcdir)/../mini/TestDriver.cs + $(MCS) -target:library -out:$@ $(srcdir)/../mini/TestDriver.cs $(srcdir)/../mini/TestHelpers.cs test_cs: $(TEST_PROG) $(TESTSI_CS) libtest.la @failed=0; \ @@ -877,11 +1019,11 @@ runtest: $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la $(PREREQSI_IL) $(PREREQS runtest-managed: test-runner.exe $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la $(PREREQSI_IL) $(PREREQSI_CS) @if [ "x$$CI" = "x1" ]; then disabled_tests="$(DISABLED_TESTS_WRENCH)"; else disabled_tests="$(DISABLED_TESTS)"; fi; \ - $(RUNTIME) --debug ./test-runner.exe -j a --testsuite-name "runtime" --disabled "$${disabled_tests}" $(TESTSI_CS) $(TESTBS) $(TESTSI_IL) + $(RUNTIME) --debug $(TEST_RUNNER) $(TEST_RUNNER_ARGS) -j a --testsuite-name "runtime" --timeout 300 --disabled "$${disabled_tests}" $(TESTSI_CS) $(TESTBS) $(TESTSI_IL) runtest-managed-serial: test-runner.exe $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la $(PREREQSI_IL) $(PREREQSI_CS) @if [ "x$$CI" = "x1" ]; then disabled_tests="$(DISABLED_TESTS_WRENCH)"; else disabled_tests="$(DISABLED_TESTS)"; fi; \ - $(RUNTIME) --debug ./test-runner.exe -j 1 --testsuite-name "runtime" --disabled "$${disabled_tests}" $(TESTSI_CS) $(TESTBS) $(TESTSI_IL) + $(RUNTIME) --debug $(TEST_RUNNER) $(TEST_RUNNER_ARGS) -j 1 --testsuite-name "runtime" --disabled "$${disabled_tests}" $(TESTSI_CS) $(TESTBS) $(TESTSI_IL) testjit: @if test x$(M) != x0; then $(MAKE) runtest-managed; else $(MAKE) runtest; fi @@ -931,7 +1073,7 @@ testbundle: console.exe @- rm -rf a.out EXTRA_DIST += load-missing.il t-missing.cs load-exceptions.cs -test-type-load: TestDriver.dll +test-type-load: $(TEST_DRIVER_DEPEND) @$(ILASM) /dll /output:load-missing.dll $(srcdir)/load-missing.il > /dev/null @$(MCS) -t:library -out:t.dll -d:FOUND $(srcdir)/t-missing.cs @$(MCS) -r:TestDriver.dll -r:load-missing.dll -r:t.dll -out:load-exceptions.exe $(srcdir)/load-exceptions.cs @@ -939,8 +1081,16 @@ test-type-load: TestDriver.dll @echo "Testing load-exception.exe..." @$(RUNTIME) load-exceptions.exe > load-exceptions.exe.stdout 2> load-exceptions.exe.stderr +EXTRA_DIST += test-multi-netmodule-1-netmodule.cs test-multi-netmodule-2-dll1.cs test-multi-netmodule-3-dll2.cs test-multi-netmodule-4-exe.cs +test-multi-netmodule: + @$(MCS) -t:module test-multi-netmodule-1-netmodule.cs + @$(MCS) -addmodule:test-multi-netmodule-1-netmodule.netmodule -t:library test-multi-netmodule-2-dll1.cs + @$(MCS) -addmodule:test-multi-netmodule-1-netmodule.netmodule -t:library test-multi-netmodule-3-dll2.cs + @$(MCS) -r:test-multi-netmodule-2-dll1.dll test-multi-netmodule-4-exe.cs + $(RUNTIME) test-multi-netmodule-4-exe.exe > test-multi-netmodule-4-exe.exe.stdout 2> test-multi-netmodule-4-exe.exe.stderr + EXTRA_DIST += custom-attr-errors.cs custom-attr-errors-lib.cs -test-cattr-type-load: TestDriver.dll custom-attr-errors.cs custom-attr-errors-lib.cs +test-cattr-type-load: $(TEST_DRIVER_DEPEND) custom-attr-errors.cs custom-attr-errors-lib.cs $(MCS) -D:WITH_MEMBERS /t:library $(srcdir)/custom-attr-errors-lib.cs $(MCS) -r:TestDriver.dll -r:custom-attr-errors-lib.dll $(srcdir)/custom-attr-errors.cs $(MCS) /t:library $(srcdir)/custom-attr-errors-lib.cs @@ -963,55 +1113,69 @@ debug-casts: @$(MCS) -r:TestDriver.dll $(srcdir)/debug-casts.cs @$(RUNTIME) --debug=casts debug-casts.exe -EXTRA_DIST += sgen-bridge.cs sgen-descriptors.cs sgen-gshared-vtype.cs sgen-bridge-major-fragmentation.cs sgen-domain-unload.cs sgen-weakref-stress.cs sgen-cementing-stress.cs sgen-case-23400.cs finalizer-wait.cs critical-finalizers.cs sgen-domain-unload-2.cs sgen-suspend.cs sgen-new-threads-dont-join-stw.cs sgen-bridge-xref.cs bug-17590.cs sgen-toggleref.cs +EXTRA_DIST += sgen-bridge.cs sgen-descriptors.cs sgen-gshared-vtype.cs sgen-bridge-major-fragmentation.cs sgen-domain-unload.cs sgen-weakref-stress.cs sgen-cementing-stress.cs sgen-case-23400.cs finalizer-wait.cs critical-finalizers.cs sgen-domain-unload-2.cs sgen-suspend.cs sgen-new-threads-dont-join-stw.cs sgen-new-threads-dont-join-stw-2.cs sgen-bridge-xref.cs bug-17590.cs sgen-toggleref.cs sgen-bridge-gchandle.cs sgen-tests: $(MAKE) sgen-regular-tests +if !S390X $(MAKE) sgen-toggleref-tests $(MAKE) sgen-bridge-tests $(MAKE) sgen-bridge2-tests +endif + +SGEN_REGULAR_TESTS_MOBILE_STATIC_NOT_SUPPORTED = \ + sgen-domain-unload.exe \ + sgen-domain-unload-2.exe -SGEN_REGULAR_TESTS = \ +SGEN_REGULAR_TESTS_UNIVERSAL = \ finalizer-wait.exe \ critical-finalizers.exe \ sgen-descriptors.exe \ sgen-gshared-vtype.exe \ - sgen-domain-unload.exe \ - sgen-domain-unload-2.exe \ sgen-weakref-stress.exe \ sgen-cementing-stress.exe \ sgen-case-23400.exe \ sgen-new-threads-dont-join-stw.exe \ + sgen-new-threads-dont-join-stw-2.exe \ gc-graystack-stress.exe \ bug-17590.exe +if INSTALL_MOBILE_STATIC +SGEN_REGULAR_TESTS= \ + $(SGEN_REGULAR_TESTS_UNIVERSAL) +else +SGEN_REGULAR_TESTS= \ + $(SGEN_REGULAR_TESTS_MOBILE_STATIC_NOT_SUPPORTED) \ + $(SGEN_REGULAR_TESTS_UNIVERSAL) +endif + sgen-regular-tests: $(SGEN_REGULAR_TESTS) - $(MAKE) sgen-regular-tests-plain + $(MAKE) sgen-regular-tests-ms $(MAKE) sgen-regular-tests-ms-conc $(MAKE) sgen-regular-tests-ms-conc-split $(MAKE) sgen-regular-tests-ms-split - $(MAKE) sgen-regular-tests-ms-split-95 - $(MAKE) sgen-regular-tests-plain-clear-at-gc + $(MAKE) sgen-regular-tests-ms-conc-split-95 + $(MAKE) sgen-regular-tests-ms-clear-at-gc $(MAKE) sgen-regular-tests-ms-conc-clear-at-gc - $(MAKE) sgen-regular-tests-ms-split-clear-at-gc + $(MAKE) sgen-regular-tests-ms-conc-split-clear-at-gc -sgen-regular-tests-plain: $(SGEN_REGULAR_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) +sgen-regular-tests-ms: $(SGEN_REGULAR_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) sgen-regular-tests-ms-conc: $(SGEN_REGULAR_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) sgen-regular-tests-ms-conc-split: $(SGEN_REGULAR_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep-conc,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep-conc,minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) sgen-regular-tests-ms-split: $(SGEN_REGULAR_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) -sgen-regular-tests-ms-split-95: $(SGEN_REGULAR_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="minor=split,alloc-ratio=95" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) -sgen-regular-tests-plain-clear-at-gc: $(SGEN_REGULAR_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep,minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) +sgen-regular-tests-ms-conc-split-95: $(SGEN_REGULAR_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep-conc,minor=split,alloc-ratio=95" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) +sgen-regular-tests-ms-clear-at-gc: $(SGEN_REGULAR_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="major=marksweep" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) sgen-regular-tests-ms-conc-clear-at-gc: $(SGEN_REGULAR_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) -sgen-regular-tests-ms-split-clear-at-gc: $(SGEN_REGULAR_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) +sgen-regular-tests-ms-conc-split-clear-at-gc: $(SGEN_REGULAR_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="major=marksweep-conc,minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS) SGEN_TOGGLEREF_TESTS= \ sgen-toggleref.exe @@ -1027,21 +1191,21 @@ sgen-toggleref-tests: $(SGEN_TOGGLEREF_TESTS) $(MAKE) sgen-toggleref-tests-ms-split-clear-at-gc sgen-toggleref-tests-plain: $(SGEN_TOGGLEREF_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) sgen-toggleref-tests-ms-conc: $(SGEN_TOGGLEREF_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) sgen-toggleref-tests-ms-conc-split: $(SGEN_TOGGLEREF_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc,minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) sgen-toggleref-tests-ms-split: $(SGEN_TOGGLEREF_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) sgen-toggleref-tests-ms-split-95: $(SGEN_TOGGLEREF_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,minor=split,alloc-ratio=95" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,minor=split,alloc-ratio=95" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) sgen-toggleref-tests-plain-clear-at-gc: $(SGEN_TOGGLEREF_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) sgen-toggleref-tests-ms-conc-clear-at-gc: $(SGEN_TOGGLEREF_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) sgen-toggleref-tests-ms-split-clear-at-gc: $(SGEN_TOGGLEREF_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test,minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS) SGEN_BRIDGE_TESTS= \ sgen-bridge.exe \ @@ -1058,21 +1222,21 @@ sgen-bridge-tests: $(SGEN_BRIDGE_TESTS) $(MAKE) sgen-bridge-tests-ms-split-tarjan-bridge sgen-bridge-tests-plain: $(SGEN_BRIDGE_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) sgen-bridge-tests-ms-conc: $(SGEN_BRIDGE_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) sgen-bridge-tests-ms-split: $(SGEN_BRIDGE_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) sgen-bridge-tests-plain-new-bridge: $(SGEN_BRIDGE_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) sgen-bridge-tests-ms-conc-new-bridge: $(SGEN_BRIDGE_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new,major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new,major=marksweep-conc" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) sgen-bridge-tests-ms-split-new-bridge: $(SGEN_BRIDGE_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new,minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) sgen-bridge-tests-plain-tarjan-bridge: $(SGEN_BRIDGE_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) sgen-bridge-tests-ms-split-tarjan-bridge: $(SGEN_BRIDGE_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan,minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS) SGEN_BRIDGE2_TESTS= \ sgen-bridge-xref.exe @@ -1088,21 +1252,52 @@ sgen-bridge2-tests: $(SGEN_BRIDGE2_TESTS) $(MAKE) sgen-bridge2-tests-ms-split-tarjan-bridge sgen-bridge2-tests-plain: $(SGEN_BRIDGE2_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) sgen-bridge2-tests-ms-conc: $(SGEN_BRIDGE2_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) sgen-bridge2-tests-ms-split: $(SGEN_BRIDGE2_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) sgen-bridge2-tests-plain-new-bridge: $(SGEN_BRIDGE2_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) sgen-bridge2-tests-ms-conc-new-bridge: $(SGEN_BRIDGE2_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new,major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new,major=marksweep-conc" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) sgen-bridge2-tests-ms-split-new-bridge: $(SGEN_BRIDGE2_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new,minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) sgen-bridge2-tests-plain-tarjan-bridge: $(SGEN_BRIDGE2_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) sgen-bridge2-tests-ms-split-tarjan-bridge: $(SGEN_BRIDGE2_TESTS) test-runner.exe - MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan,minor=split" $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS) + +SGEN_BRIDGE3_TESTS= \ + sgen-bridge-gchandle.exe + +sgen-bridge3-tests: $(SGEN_BRIDGE3_TESTS) + $(MAKE) sgen-bridge3-tests-plain + $(MAKE) sgen-bridge3-tests-ms-conc + $(MAKE) sgen-bridge3-tests-ms-split + $(MAKE) sgen-bridge3-tests-plain-new-bridge + $(MAKE) sgen-bridge3-tests-ms-conc-new-bridge + $(MAKE) sgen-bridge3-tests-ms-split-new-bridge + $(MAKE) sgen-bridge3-tests-plain-tarjan-bridge + $(MAKE) sgen-bridge3-tests-ms-split-tarjan-bridge + +sgen-bridge3-tests-plain: $(SGEN_bridge3_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=3Bridge" MONO_GC_PARAMS="" $(RUNTIME) $(TEST_RUNNER) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE3_TESTS) +sgen-bridge3-tests-ms-conc: $(SGEN_BRIDGE3_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=3Bridge" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) $(TEST_RUNNER) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE3_TESTS) +sgen-bridge3-tests-ms-split: $(SGEN_BRIDGE3_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=3Bridge" MONO_GC_PARAMS="minor=split" $(RUNTIME) $(TEST_RUNNER) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE3_TESTS) +sgen-bridge3-tests-plain-new-bridge: $(SGEN_BRIDGE3_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=3Bridge" MONO_GC_PARAMS="bridge-implementation=new" $(RUNTIME) $(TEST_RUNNER) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE3_TESTS) +sgen-bridge3-tests-ms-conc-new-bridge: $(SGEN_BRIDGE3_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=3Bridge" MONO_GC_PARAMS="bridge-implementation=new,major=marksweep-conc" $(RUNTIME) $(TEST_RUNNER) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE3_TESTS) +sgen-bridge3-tests-ms-split-new-bridge: $(SGEN_BRIDGE3_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=3Bridge" MONO_GC_PARAMS="bridge-implementation=new,minor=split" $(RUNTIME) $(TEST_RUNNER) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE3_TESTS) +sgen-bridge3-tests-plain-tarjan-bridge: $(SGEN_BRIDGE3_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=3Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan" $(RUNTIME) $(TEST_RUNNER) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE3_TESTS) +sgen-bridge3-tests-ms-split-tarjan-bridge: $(SGEN_BRIDGE3_TESTS) test-runner.exe + MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=3Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan,minor=split" $(RUNTIME) $(TEST_RUNNER) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE3_TESTS) + AOT_CONFIGURATIONS= \ "|regular" \ @@ -1145,19 +1340,23 @@ test-aot: # Generated tests for runtime invoke EXTRA_DIST += gen-runtime-invoke.cs -runtime-invoke.gen.exe: TestDriver.dll gen-runtime-invoke.exe +runtime-invoke.gen.exe: $(TEST_DRIVER_DEPEND) gen-runtime-invoke.exe $(RUNTIME) gen-runtime-invoke.exe > runtime-invoke.gen.cs $(MCS) -out:runtime-invoke.gen.exe -r:TestDriver.dll runtime-invoke.gen.cs EXTRA_DIST += make-imt-test.cs -imt_big_iface_test.exe: TestDriver.dll make-imt-test.exe +imt_big_iface_test.exe: $(TEST_DRIVER_DEPEND) make-imt-test.exe $(RUNTIME) make-imt-test.exe > imt_big_iface_test.cs $(MCS) -out:imt_big_iface_test.exe -r:TestDriver.dll imt_big_iface_test.cs EXTRA_DIST += test-inline-call-stack-library.cs test-inline-call-stack.cs -test-inline-call-stack-library.dll: TestDriver.dll $(srcdir)/test-inline-call-stack-library.cs +test-inline-call-stack-library.dll: $(TEST_DRIVER_DEPEND) $(srcdir)/test-inline-call-stack-library.cs $(MCS) -t:library -out:test-inline-call-stack-library.dll $(srcdir)/test-inline-call-stack-library.cs -test-inline-call-stack.exe: TestDriver.dll test-inline-call-stack-library.dll $(srcdir)/test-inline-call-stack.cs +if INSTALL_MOBILE_STATIC + $(RUNTIME) $(AOT_BUILD_FLAGS) $@ +endif + +test-inline-call-stack.exe: $(TEST_DRIVER_DEPEND) test-inline-call-stack-library.dll $(srcdir)/test-inline-call-stack.cs $(MCS) -r:TestDriver.dll -r:test-inline-call-stack-library.dll -out:test-inline-call-stack.exe $(srcdir)/test-inline-call-stack.cs EXTRA_DIST += unhandled-exception-base-configuration.config @@ -1200,12 +1399,18 @@ bug-81673.exe bug-81673-interface.dll: $(srcdir)/bug-81673.cs $(srcdir)/bug-8167 $(MCS) -target:library -out:bug-81673-interface.dll $(srcdir)/bug-81673-interface.cs $(MCS) -out:bug-81673.exe -r:bug-81673-interface.dll $(srcdir)/bug-81673.cs $(MCS) -define:WITH_STOP -target:library -out:bug-81673-interface.dll $(srcdir)/bug-81673-interface.cs +if INSTALL_MOBILE_STATIC + $(RUNTIME) $(AOT_BUILD_FLAGS) $@ +endif EXTRA_DIST += bug-36848-a.cs bug-36848.exe bug-36848-a.dll: $(srcdir)/bug-36848.cs $(srcdir)/bug-36848-a.cs $(MCS) -target:library -out:bug-36848-a.dll $(srcdir)/bug-36848-a.cs $(MCS) -r:bug-36848-a.dll -out:bug-36848.exe $(srcdir)/bug-36848.cs $(MCS) -target:library -out:bug-36848-a.dll $(srcdir)/bug-36848-a.cs /define:WITH_STOP +if INSTALL_MOBILE_STATIC + $(RUNTIME) $(AOT_BUILD_FLAGS) $@ +endif EXTRA_DIST += bug-81691-a.cs bug-81691-b.cs bug-81691.exe bug-81691-b.dll: $(srcdir)/bug-81691.cs $(srcdir)/bug-81691-a.cs $(srcdir)/bug-81691-b.cs @@ -1218,24 +1423,37 @@ bug-81691.exe: bug-81691-b.dll EXTRA_DIST += bug-81466-lib.il bug-81466-lib.dll: bug-81466-lib.il $(ILASM) /dll /output:bug-81466-lib.dll $(srcdir)/bug-81466-lib.il +if INSTALL_MOBILE_STATIC + $(RUNTIME) $(AOT_BUILD_FLAGS) $@ +endif bug-81466.exe: bug-81466.il bug-81466-lib.dll $(ILASM) /exe /output:bug-81466.exe $(srcdir)/bug-81466.il EXTRA_DIST += bug-324535-il.il bug-324535-il.dll : bug-324535-il.il $(ILASM) /dll /output:bug-324535-il.dll $(srcdir)/bug-324535-il.il +if INSTALL_MOBILE_STATIC + $(RUNTIME) $(AOT_BUILD_FLAGS) $@ +endif bug-324535.exe : bug-324535.cs bug-324535-il.dll $(MCS) -r:bug-324535-il.dll -out:bug-324535.exe $(srcdir)/bug-324535.cs EXTRA_DIST += custom-modifiers.2.cs custom-modifiers-lib.il custom-modifiers-lib.dll: custom-modifiers-lib.il $(ILASM) /dll /output:custom-modifiers-lib.dll $(srcdir)/custom-modifiers-lib.il +if INSTALL_MOBILE_STATIC + $(RUNTIME) $(AOT_BUILD_FLAGS) $@ +endif custom-modifiers.2.exe: custom-modifiers.2.cs custom-modifiers-lib.dll $(MCS) -r:custom-modifiers-lib.dll -out:custom-modifiers.2.exe $(srcdir)/custom-modifiers.2.cs EXTRA_DIST += bug-382986-lib.cs bug-382986-lib.dll: bug-382986-lib.cs $(MCS) -target:library -out:$@ $(srcdir)/bug-382986-lib.cs +if INSTALL_MOBILE_STATIC + $(RUNTIME) $(AOT_BUILD_FLAGS) $@ +endif + bug-382986.exe: bug-382986.cs bug-382986-lib.dll $(MCS) -out:$@ -r:bug-382986-lib.dll $(srcdir)/bug-382986.cs @@ -1259,10 +1477,16 @@ test-coreclr-security : coreclr-security.exe EXTRA_DIST += generic-unboxing.2.il generic-unboxing.2.dll : generic-unboxing.2.il $(ILASM) /dll /output:generic-unboxing.2.dll $(srcdir)/generic-unboxing.2.il +if INSTALL_MOBILE_STATIC + $(RUNTIME) $(AOT_BUILD_FLAGS) $@ +endif EXTRA_DIST += generic-boxing.2.il generic-boxing.2.dll : generic-boxing.2.il generic-unboxing.2.dll $(ILASM) /dll /output:generic-boxing.2.dll $(srcdir)/generic-boxing.2.il +if INSTALL_MOBILE_STATIC + $(RUNTIME) $(AOT_BUILD_FLAGS) $@ +endif EXTRA_DIST += generic-unbox.2.cs generic-unbox.2.exe : generic-unbox.2.cs generic-unboxing.2.dll @@ -1275,6 +1499,9 @@ generic-box.2.exe : generic-box.2.cs generic-unboxing.2.dll generic-boxing.2.dll EXTRA_DIST += generic-delegate2.2.cs generic-delegate2-lib.2.il generic-delegate2-lib.2.dll : generic-delegate2-lib.2.il $(ILASM) /dll /output:$@ $(srcdir)/generic-delegate2-lib.2.il +if INSTALL_MOBILE_STATIC + $(RUNTIME) $(AOT_BUILD_FLAGS) $@ +endif generic-delegate2.2.exe : generic-delegate2.2.cs generic-delegate2-lib.2.dll $(MCS) -r:generic-delegate2-lib.2.dll -out:$@ $(srcdir)/generic-delegate2.2.cs @@ -1286,7 +1513,10 @@ gshared: test-generic-sharing gshared-aot: @$(MAKE) AOT=1 gshared -GSHARED_TESTS = \ +GSHARED_TESTS_MOBILE_STATIC_NOT_SUPPORTED = \ + generic-type-builder.2.exe + +GSHARED_TESTS_UNIVERSAL = \ generics-sharing.2.exe shared-generic-methods.2.exe \ shared-generic-synchronized.2.exe generic-initobj.2.exe \ generics-sharing-other-exc.2.exe generic-box.2.exe \ @@ -1302,7 +1532,7 @@ GSHARED_TESTS = \ generic-exceptions.2.exe generic-delegate2.2.exe \ generic-virtual2.2.exe generic-valuetype-interface.2.exe \ generic-valuetype-newobj.2.exe generic-valuetype-newobj2.2.exe \ - generic-getgenericarguments.2.exe generic-type-builder.2.exe \ + generic-getgenericarguments.2.exe \ generic-synchronized.2.exe generic-delegate-ctor.2.exe \ generic-constrained.2.exe bug-431413.2.exe \ generic-virtual-invoke.2.exe generic-typedef.2.exe \ @@ -1314,6 +1544,15 @@ GSHARED_TESTS = \ generic-type-load-exception.2.exe bug-616463.exe \ bug-1147.exe +if INSTALL_MOBILE_STATIC +GSHARED_TESTS= \ + $(GSHARED_TESTS_UNIVERSAL) +else +GSHARED_TESTS= \ + $(GSHARED_TESTS_MOBILE_STATIC_NOT_SUPPORTED) \ + $(GSHARED_TESTS_UNIVERSAL) +endif + test-generic-sharing-normal: $(GSHARED_TESTS) @for fn in $+ ; do \ echo "Testing $$fn ..."; \ @@ -1325,7 +1564,7 @@ test-generic-sharing-normal: $(GSHARED_TESTS) done test-generic-sharing-managed: test-runner.exe $(GSHARED_TESTS) - @$(RUNTIME) ./test-runner.exe -j a --testsuite-name "gshared" --opt-sets "gshared gshared,shared gshared,-inline gshared,-inline,shared" $(GSHARED_TESTS) + @$(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) -j a --testsuite-name "gshared" --disabled "$(DISABLED_TESTS)" --opt-sets "gshared gshared,shared gshared,-inline gshared,-inline,shared" $(GSHARED_TESTS) if NACL_CODEGEN test-generic-sharing: @@ -1344,7 +1583,7 @@ test-async-exceptions : async-exceptions.exe EXTRA_DIST += modules.cs modules-m1.cs modules-m1.netmodule: modules-m1.cs $(MCS) -out:$@ /target:module $(srcdir)/modules-m1.cs -modules.exe: modules.cs modules-m1.netmodule TestDriver.dll +modules.exe: modules.cs modules-m1.netmodule $(TEST_DRIVER_DEPEND) $(MCS) -out:$@ /addmodule:modules-m1.netmodule -r:TestDriver.dll $(srcdir)/modules.cs # Useful if mono is compiled with --enable-shared=no @@ -1402,13 +1641,13 @@ test-unhandled-exception-2: $(UNHANDLED_EXCEPTION_1_TESTS) $(UNHANDLED_EXCEPTION $(MAKE) test-unhandled-exception-2-255-without-managed-handler test-unhandled-exception-2-1-with-managed-handler: $(UNHANDLED_EXCEPTION_1_TESTS) test-runner.exe - $(RUNTIME) ./test-runner.exe -j a --testsuite-name $@ --expected-exit-code 1 $(UNHANDLED_EXCEPTION_1_TESTS) + $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) -j a --testsuite-name $@ --disabled "$(DISABLED_TESTS)" --expected-exit-code 1 $(UNHANDLED_EXCEPTION_1_TESTS) test-unhandled-exception-2-1-without-managed-handler: $(UNHANDLED_EXCEPTION_1_TESTS) test-runner.exe - TEST_UNHANDLED_EXCEPTION_HANDLER=1 $(RUNTIME) ./test-runner.exe -j a --testsuite-name $@ --expected-exit-code 1 $(UNHANDLED_EXCEPTION_1_TESTS) + TEST_UNHANDLED_EXCEPTION_HANDLER=1 $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) -j a --testsuite-name $@ --disabled "$(DISABLED_TESTS)" --expected-exit-code 1 $(UNHANDLED_EXCEPTION_1_TESTS) test-unhandled-exception-2-255-with-managed-handler: $(UNHANDLED_EXCEPTION_255_TESTS) test-runner.exe - $(RUNTIME) ./test-runner.exe -j a --testsuite-name $@ --expected-exit-code 255 $(UNHANDLED_EXCEPTION_255_TESTS) + $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) -j a --testsuite-name $@ --disabled "$(DISABLED_TESTS)" --expected-exit-code 255 $(UNHANDLED_EXCEPTION_255_TESTS) test-unhandled-exception-2-255-without-managed-handler: $(UNHANDLED_EXCEPTION_255_TESTS) test-runner.exe - TEST_UNHANDLED_EXCEPTION_HANDLER=1 $(RUNTIME) ./test-runner.exe -j a --testsuite-name $@ --expected-exit-code 255 $(UNHANDLED_EXCEPTION_255_TESTS) + TEST_UNHANDLED_EXCEPTION_HANDLER=1 $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) -j a --testsuite-name $@ --disabled "$(DISABLED_TESTS)" --expected-exit-code 255 $(UNHANDLED_EXCEPTION_255_TESTS) endif @@ -1429,10 +1668,11 @@ test-console-output: console-output.exe PROCESS_STRESS_TESTS= \ process-stress-1.exe \ process-stress-2.exe \ - process-stress-3.exe + process-stress-3.exe \ + process-leak.exe test-process-stress: $(PROCESS_STRESS_TESTS) test-runner.exe - $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 600 $(PROCESS_STRESS_TESTS) + $(RUNTIME) $(TEST_RUNNER) $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 600 $(PROCESS_STRESS_TESTS) coreclr-gcstress: $(MAKE) -C $(mono_build_root)/acceptance-tests coreclr-gcstress