summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2021-09-27 16:49:33 +0100
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-10-19 03:30:16 -0400
commit3035d1a2f28fcd26e85f22fb17ca2c9f30f8920a (patch)
tree0a25c67636467942994e347376b31fca9a77354b
parent19d1237e1db9eb49320cfc222b5efe7bfb8f89de (diff)
downloadhaskell-3035d1a2f28fcd26e85f22fb17ca2c9f30f8920a.tar.gz
tests: Remove $(CABAL_MINIMAL_CONFIGURATION) from T16219
There is a latent issue in T16219 where -dynamic-too is enabled when compiling a signature file which causes us to enter the DT_Failed state because library-a-impl doesn't generate dyn_o files. Somehow this used to work in 8.10 (that also entered the DT_Failed state) We don't need dynamic object files when compiling a signature file but the code loads interfaces, and if dynamic-too is enabled then it will also try to load the dyn_hi file and check the two are consistent. There is another hack to do with this in `GHC.Iface.Recomp`. The fix for this test is to remove CABAL_MINIMAL_CONFIGURATION, which stops cabal building shared libraries by default. I'm of the opinion that the DT_Failed state indicates an error somewhere so we should hard fail rather than this confusing (broken) rerun logic. Whether this captures the original intent of #16219 is debateable, but it's not clear how it was supposed to work in the first place if the libraries didn't build dynamic object files. Module C imports module A, which is from a library where shared objects are not built so the test would never have worked anyway (if anything from A was used in a TH splice).
-rw-r--r--testsuite/tests/backpack/cabal/T16219/Makefile2
-rw-r--r--testsuite/tests/backpack/cabal/T16219/T16219.stderr6
2 files changed, 7 insertions, 1 deletions
diff --git a/testsuite/tests/backpack/cabal/T16219/Makefile b/testsuite/tests/backpack/cabal/T16219/Makefile
index e98af4b2fc..8fc041994c 100644
--- a/testsuite/tests/backpack/cabal/T16219/Makefile
+++ b/testsuite/tests/backpack/cabal/T16219/Makefile
@@ -3,7 +3,7 @@ include $(TOP)/mk/boilerplate.mk
include $(TOP)/mk/test.mk
SETUP='$(PWD)/Setup' -v0
-CONFIGURE=$(SETUP) configure $(CABAL_MINIMAL_BUILD) --with-ghc='$(TEST_HC)' --ghc-options='$(TEST_HC_OPTS)' --package-db='$(PWD)/tmp.d' --prefix='$(PWD)/inst'
+CONFIGURE=$(SETUP) configure --with-ghc='$(TEST_HC)' --ghc-options='$(TEST_HC_OPTS)' --package-db='$(PWD)/tmp.d' -v0 --prefix='$(PWD)/inst'
T16219: clean
'$(GHC_PKG)' init tmp.d
diff --git a/testsuite/tests/backpack/cabal/T16219/T16219.stderr b/testsuite/tests/backpack/cabal/T16219/T16219.stderr
new file mode 100644
index 0000000000..89a07b9193
--- /dev/null
+++ b/testsuite/tests/backpack/cabal/T16219/T16219.stderr
@@ -0,0 +1,6 @@
+Warning: -rtsopts and -with-rtsopts have no effect with -shared.
+ Call hs_init_ghc() from your main() function to set these options.
+Warning: -rtsopts and -with-rtsopts have no effect with -shared.
+ Call hs_init_ghc() from your main() function to set these options.
+Warning: -rtsopts and -with-rtsopts have no effect with -shared.
+ Call hs_init_ghc() from your main() function to set these options.