diff --git a/libraries/base/tests/IO/all.T b/libraries/base/tests/IO/all.T index 1a545648967457dffc48d2eab7e733a7869bede4..bfe14ee2aa197ab161ae64a71895ab38a5070797 100644 --- a/libraries/base/tests/IO/all.T +++ b/libraries/base/tests/IO/all.T @@ -86,11 +86,13 @@ test('hGetBuf001', [ when(fast(), skip) , expect_fail_if_windows , js_broken(22374) + , req_process ], compile_and_run, ['-package unix']) test('hDuplicateTo001', [fragile_for(16819, concurrent_ways), - when(opsys('mingw32'), skip)], compile_and_run, ['']) + when(opsys('mingw32'), skip), + req_process], compile_and_run, ['']) test('countReaders001', js_broken(22261), compile_and_run, ['']) diff --git a/libraries/base/tests/System/all.T b/libraries/base/tests/System/all.T index ad3b046b25f6d077e15e59977c4d133103dd47b5..10ddd7754fb9be02ac26857f2fb250d53512fb59 100644 --- a/libraries/base/tests/System/all.T +++ b/libraries/base/tests/System/all.T @@ -4,7 +4,7 @@ test('getArgs001', normal, compile_and_run, ['']) test('getEnv001', normal, compile_and_run, ['']) test('T5930', normal, compile_and_run, ['']) -test('system001', [js_broken(22349), when(opsys("mingw32"), skip)], \ +test('system001', [js_broken(22349), when(opsys("mingw32"), skip), req_process], \ compile_and_run, ['']) test('Timeout001', js_broken(22261), compile_and_run, ['']) test('T16466', normal, compile_and_run, ['']) diff --git a/libraries/base/tests/all.T b/libraries/base/tests/all.T index d5eba40dff9f0e4b4794e6cce946a0e888e37a47..0a9e00eb1105ce15dda4ede1c75f2b35dd834a48 100644 --- a/libraries/base/tests/all.T +++ b/libraries/base/tests/all.T @@ -158,7 +158,7 @@ test('T2528', normal, compile_and_run, ['']) # May 2014: seems to work on msys2 # May 2018: The behavior of printf seems very implementation dependent. # so let's normalise the output. -test('T4006', [js_broken(22349), normalise_fun(normalise_quotes)], compile_and_run, ['']) +test('T4006', [js_broken(22349), normalise_fun(normalise_quotes), req_process], compile_and_run, ['']) test('T5943', normal, compile_and_run, ['']) test('T5962', normal, compile_and_run, ['']) @@ -181,7 +181,7 @@ test('T7653', [when(opsys('mingw32'), skip), omit_ways(prof_ways+['ghci'])], compile_and_run, ['']) test('T7787', normal, compile_and_run, ['']) -test('topHandler01', [when(opsys('mingw32'), skip), js_broken(22261)], compile_and_run, ['']) +test('topHandler01', [when(opsys('mingw32'), skip), js_broken(22261), req_process], compile_and_run, ['']) test('topHandler02', [when(opsys('mingw32'), skip), omit_ways(['ghci']), @@ -227,7 +227,7 @@ test('T8089', [exit_code(99), run_timeout_multiplier(0.01)], compile_and_run, ['']) test('T8684', expect_broken(8684), compile_and_run, ['']) -test('hWaitForInput-accurate-stdin', [js_broken(22349), expect_broken_for(16535, threaded_ways), omit_ways(['ghci'])], compile_and_run, ['']) +test('hWaitForInput-accurate-stdin', [js_broken(22349), expect_broken_for(16535, threaded_ways), omit_ways(['ghci']), req_process], compile_and_run, ['']) test('T9826',normal, compile_and_run,['']) test('T9848', [ collect_stats('bytes allocated') @@ -240,7 +240,7 @@ test('T10149', normal, compile_and_run, ['']) test('T11334a', normal, compile_and_run, ['']) test('T11555', normal, compile_and_run, ['']) test('T12494', normal, compile_and_run, ['']) -test('T12852', [when(opsys('mingw32'), skip), js_broken(22374)], compile_and_run, ['']) +test('T12852', [when(opsys('mingw32'), skip), js_broken(22374), req_process], compile_and_run, ['']) test('lazySTexamples', normal, compile_and_run, ['']) test('T11760', [req_ghc_smp, req_target_smp, @@ -254,7 +254,7 @@ test('T13191', ], compile_and_run, ['-O']) -test('T13525', [when(opsys('mingw32'), skip), js_broken(22374)], compile_and_run, ['']) +test('T13525', [when(opsys('mingw32'), skip), js_broken(22374), req_process], compile_and_run, ['']) test('T13097', normal, compile_and_run, ['']) test('functorOperators', normal, compile_and_run, ['']) test('T3474', diff --git a/libraries/hpc b/libraries/hpc index bb5c55d697b0d0e6b8cce5ff5037273241de3239..ffbd36cb1799b8dfde4fb8e2c7845edd8532053f 160000 --- a/libraries/hpc +++ b/libraries/hpc @@ -1 +1 @@ -Subproject commit bb5c55d697b0d0e6b8cce5ff5037273241de3239 +Subproject commit ffbd36cb1799b8dfde4fb8e2c7845edd8532053f diff --git a/libraries/process b/libraries/process index e60ab049b92238b0111654589f17b6ee68249f01..97e924aa97ab713529feed4f0edde5df9d4d2678 160000 --- a/libraries/process +++ b/libraries/process @@ -1 +1 @@ -Subproject commit e60ab049b92238b0111654589f17b6ee68249f01 +Subproject commit 97e924aa97ab713529feed4f0edde5df9d4d2678 diff --git a/testsuite/config/ghc b/testsuite/config/ghc index 46b897bef0564f697c93069bf9c1c9561136be76..77c7e0a15186981668f08debb7676211f8b4564b 100644 --- a/testsuite/config/ghc +++ b/testsuite/config/ghc @@ -79,6 +79,9 @@ if not config.arch == "javascript": config.compile_ways.append('hpc') config.run_ways.append('hpc') +if config.arch == "wasm32": + config.have_process = False + config.way_flags = { 'normal' : [], 'normal_h' : [], diff --git a/testsuite/driver/testglobals.py b/testsuite/driver/testglobals.py index 6688d961d2fe7730693d6d99444dbae44ac02579..66d68440fdc77ac547c90249ed578698fb99386f 100644 --- a/testsuite/driver/testglobals.py +++ b/testsuite/driver/testglobals.py @@ -145,6 +145,9 @@ class TestConfig: # Do we have threaded RTS? self.ghc_with_threaded_rts = False + # Do we even have processes? + self.have_process = True + # Does the platform support loading of dynamic shared libraries? e.g. # some musl-based environments do not. self.supports_dynamic_libs = True diff --git a/testsuite/driver/testlib.py b/testsuite/driver/testlib.py index 43aab6f0dad2234a8ab20c6edb3002ae87d06655..370cdf1988238201cf5213439913aff74cab8d2d 100644 --- a/testsuite/driver/testlib.py +++ b/testsuite/driver/testlib.py @@ -317,6 +317,10 @@ def req_ghc_with_threaded_rts( name, opts ): if not config.ghc_with_threaded_rts: opts.skip = True +def req_process( name, opts ): + if not config.have_process: + opts.skip = True + def ignore_stdout(name, opts): opts.ignore_stdout = True diff --git a/testsuite/tests/ghc-api/target-contents/all.T b/testsuite/tests/ghc-api/target-contents/all.T index 9072d6609ec6902a55369229df9f59a7e37b9df0..3deaceaef67678a7e30204ef2862291ff005ff40 100644 --- a/testsuite/tests/ghc-api/target-contents/all.T +++ b/testsuite/tests/ghc-api/target-contents/all.T @@ -1,6 +1,7 @@ test('TargetContents', [ extra_run_opts('"' + config.libdir + '"') , js_broken(22362) + , req_process ] , compile_and_run, ['-package ghc -package exceptions']) diff --git a/testsuite/tests/rts/all.T b/testsuite/tests/rts/all.T index aab8c6908c79fc1cf7de9210d08c0c1fb4140146..57920ec4dad340379c5baf8af2e9e9d61d36622c 100644 --- a/testsuite/tests/rts/all.T +++ b/testsuite/tests/rts/all.T @@ -222,7 +222,8 @@ test('exec_signals', [when(opsys('mingw32'), skip), pre_cmd('$MAKE -s --no-print-directory exec_signals-prep'), cmd_prefix('./exec_signals_prepare'), - js_broken(22355)], + js_broken(22355), + req_process], compile_and_run, ['']) test('return_mem_to_os', normal, compile_and_run, ['']) @@ -390,6 +391,7 @@ test('T9839_05', test('T10590', [ ignore_stderr , when(opsys('mingw32'), skip) , js_skip # JS backend doesn't support pipes + , req_process ], compile_and_run, ['']) # 20000 was easily enough to trigger the bug with 7.10 @@ -422,7 +424,8 @@ test('T13617', [ unless(opsys('mingw32'), skip)], # Test is fragile on all systems. #21184 links to various other reports through # its history. test('T12903', [ fragile(21184) - , js_broken(22374)] + , js_broken(22374) + , req_process] , compile_and_run, ['']) test('T13832', [exit_code(1), req_ghc_with_threaded_rts], compile_and_run, ['-threaded'])