summaryrefslogtreecommitdiff
path: root/testsuite
diff options
context:
space:
mode:
authorTamar Christina <tamar@zhox.com>2022-12-04 15:55:43 +0000
committerMarge Bot <ben+marge-bot@smart-cactus.org>2023-02-03 14:07:30 -0500
commit48e391952c17ff7eab10b0b1456e3f2a2af28a9b (patch)
tree3f1d77f2c01e70cff568a6c30acf3db421e3b566 /testsuite
parentde1d15127ac3f41ac3044215b0ea3398a36edc89 (diff)
downloadhaskell-48e391952c17ff7eab10b0b1456e3f2a2af28a9b.tar.gz
linker: Fix BFD import libraries
This commit fixes the BFD style import library support in the runtime linker. This was accidentally broken during the refactoring to clang and went unnoticed because clang itself is unable to generate the BFD style import libraries. With this change we can not link against both GCC or Clang produced libraries again and intermix code produced by both compilers.
Diffstat (limited to 'testsuite')
-rw-r--r--testsuite/tests/ghci/linking/dyn/Makefile4
-rw-r--r--testsuite/tests/ghci/linking/dyn/all.T6
-rw-r--r--testsuite/tests/ghci/linking/dyn/bin_impl_gcc/ASimpL.dllbin0 -> 15508756 bytes
-rw-r--r--testsuite/tests/ghci/linking/dyn/bin_impl_gcc/libASx.dll.abin0 -> 29698010 bytes
-rw-r--r--testsuite/tests/rts/all.T2
5 files changed, 4 insertions, 8 deletions
diff --git a/testsuite/tests/ghci/linking/dyn/Makefile b/testsuite/tests/ghci/linking/dyn/Makefile
index 1e000ff524..ea48f25af2 100644
--- a/testsuite/tests/ghci/linking/dyn/Makefile
+++ b/testsuite/tests/ghci/linking/dyn/Makefile
@@ -88,10 +88,6 @@ compile_libAB_dyn:
.PHONY: compile_libAS_impl_gcc
compile_libAS_impl_gcc:
- rm -rf bin_impl_gcc
- mkdir bin_impl_gcc
- '$(TEST_HC)' $(MY_TEST_HC_OPTS) -odir "bin_impl_gcc" -shared A.c -o "bin_impl_gcc/$(call DLL,ASimpL)"
- mv bin_impl_gcc/libASimpL.dll.a bin_impl_gcc/libASx.dll.a
echo "main" | '$(TEST_HC)' $(TEST_HC_OPTS_INTERACTIVE) T11072.hs -lASx -L./bin_impl_gcc
.PHONY: compile_libAS_impl_msvc
diff --git a/testsuite/tests/ghci/linking/dyn/all.T b/testsuite/tests/ghci/linking/dyn/all.T
index e8b99d1f19..557087444e 100644
--- a/testsuite/tests/ghci/linking/dyn/all.T
+++ b/testsuite/tests/ghci/linking/dyn/all.T
@@ -41,9 +41,9 @@ test('T10458',
extra_hc_opts('-L"$PWD/T10458dir" -lAS')],
ghci_script, ['T10458.script'])
-test('T11072gcc', [extra_files(['A.c', 'T11072.hs']),
- expect_broken(18718),
- unless(doing_ghci, skip), unless(opsys('mingw32'), skip)],
+test('T11072gcc', [extra_files(['A.c', 'T11072.hs', 'bin_impl_gcc/']),
+ unless(doing_ghci, skip), unless(opsys('mingw32'), skip),
+ unless(arch('x86_64'), skip)],
makefile_test, ['compile_libAS_impl_gcc'])
test('T11072msvc', [extra_files(['A.c', 'T11072.hs', 'libAS.def', 'i686/', 'x86_64/']),
diff --git a/testsuite/tests/ghci/linking/dyn/bin_impl_gcc/ASimpL.dll b/testsuite/tests/ghci/linking/dyn/bin_impl_gcc/ASimpL.dll
new file mode 100644
index 0000000000..2debfc0d2d
--- /dev/null
+++ b/testsuite/tests/ghci/linking/dyn/bin_impl_gcc/ASimpL.dll
Binary files differ
diff --git a/testsuite/tests/ghci/linking/dyn/bin_impl_gcc/libASx.dll.a b/testsuite/tests/ghci/linking/dyn/bin_impl_gcc/libASx.dll.a
new file mode 100644
index 0000000000..3c13ab3e2f
--- /dev/null
+++ b/testsuite/tests/ghci/linking/dyn/bin_impl_gcc/libASx.dll.a
Binary files differ
diff --git a/testsuite/tests/rts/all.T b/testsuite/tests/rts/all.T
index dcdd991817..f3349e0232 100644
--- a/testsuite/tests/rts/all.T
+++ b/testsuite/tests/rts/all.T
@@ -411,7 +411,7 @@ test('T10296b', [only_ways(['threaded2'])], compile_and_run, [''])
test('numa001', [ extra_run_opts('8'), unless(unregisterised(), extra_ways(['debug_numa'])) ]
, compile_and_run, [''])
-test('T12497', [ unless(opsys('mingw32'), skip)
+test('T12497', [ unless(opsys('mingw32'), skip), expect_broken(22694)
],
makefile_test, ['T12497'])