summaryrefslogtreecommitdiff
path: root/testsuite/tests/dynlibs/all.T
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2021-09-10 11:47:09 -0400
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-10-12 19:16:40 -0400
commit05303f686fae8f1050c1cfb08225e39a5f13a7a1 (patch)
tree95fd87b1daa54462c29e9f1c64c2dbbc87d33262 /testsuite/tests/dynlibs/all.T
parent3b1c12d353eef24b29601798874eb875978452cd (diff)
downloadhaskell-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.T31
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, [])