diff options
author | Ben Gamari <ben@smart-cactus.org> | 2021-09-10 11:47:09 -0400 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2021-10-12 19:16:40 -0400 |
commit | 05303f686fae8f1050c1cfb08225e39a5f13a7a1 (patch) | |
tree | 95fd87b1daa54462c29e9f1c64c2dbbc87d33262 /testsuite/tests/dynlibs/all.T | |
parent | 3b1c12d353eef24b29601798874eb875978452cd (diff) | |
download | haskell-05303f686fae8f1050c1cfb08225e39a5f13a7a1.tar.gz |
testsuite: Clean up dynlib support predicates
Previously it was unclear whether req_shared_libs should require:
* that the platform supports dynamic library loading,
* that GHC supports dynamic linking of Haskell code, or
* that the dyn way libraries were built
Clarify by splitting the predicate into two:
* `req_dynamic_lib_support` demands that the platform support dynamic
linking
* `req_dynamic_hs` demands that the GHC support dynamic linking of
Haskell code on the target platform
Naturally `req_dynamic_hs` cannot be true unless
`req_dynamic_lib_support` is also true.
Diffstat (limited to 'testsuite/tests/dynlibs/all.T')
-rw-r--r-- | testsuite/tests/dynlibs/all.T | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/testsuite/tests/dynlibs/all.T b/testsuite/tests/dynlibs/all.T index 622bcab6a7..569962761a 100644 --- a/testsuite/tests/dynlibs/all.T +++ b/testsuite/tests/dynlibs/all.T @@ -1,24 +1,31 @@ test('T3807', - [req_shared_libs, - when(have_thread_sanitizer(), expect_broken(18883)), - when(opsys('mingw32'), - skip)], makefile_test, []) + [unless(have_dynamic(), skip), + when(have_thread_sanitizer(), expect_broken(18883))], + makefile_test, []) -test('T4464', [req_shared_libs, unless(opsys('mingw32'), skip)], makefile_test, []) +test('T4464', [req_dynamic_hs, unless(opsys('mingw32'), skip)], makefile_test, []) -test('T5373', [req_shared_libs], makefile_test, []) +test('T5373', [unless(have_dynamic(), skip)], makefile_test, []) # It's not clear exactly what platforms we can expect this to succeed on. test('T13702', [when(have_thread_sanitizer(), expect_broken(18884)), - req_shared_libs, unless(opsys('linux'), skip)], + unless(have_dynamic(), skip), + unless(opsys('linux'), skip)], makefile_test, []) -# test that -shared and -flink-rts actually links the rts -test('T18072', [req_shared_libs, unless(opsys('linux'), skip)], makefile_test, []) +# test that -shared and -flink-rts actually links the RTS +test('T18072', [unless(have_dynamic(), skip), unless(opsys('linux'), skip)], makefile_test, []) # test that -shared and -flink-rts respects alternative RTS flavours -test('T18072debug', [extra_files(['T18072.hs']), req_shared_libs, unless(opsys('linux'), skip)], makefile_test, []) +test('T18072debug', + [unless(have_dynamic(), skip), + extra_files(['T18072.hs']), + unless(opsys('linux'), skip)], + makefile_test, []) -# check that -staticlib and -fno-link-rts results in an archive without the RTR library -test('T18072static', [extra_files(['T18072.hs']), unless(opsys('linux'), skip)], makefile_test, []) +# check that -staticlib and -fno-link-rts results in an archive without the RTS library +test('T18072static', + [extra_files(['T18072.hs']), + unless(opsys('linux'), skip)], + makefile_test, []) |