summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2021-07-22 12:24:43 +0100
committerMatthew Pickering <matthewtpickering@gmail.com>2021-07-22 12:26:51 +0100
commitda201d1de71aea65a49e16c3e72b60ea5898d214 (patch)
tree365608353317dc2ac0576058ed6dc49fec813768
parent10124b16538091806953d732e24ca485a0664895 (diff)
downloadhaskell-wip/T18567.tar.gz
Add test for #18567wip/T18567
Closes #18567
-rw-r--r--testsuite/tests/cabal/t18567/Makefile20
-rw-r--r--testsuite/tests/cabal/t18567/Setup.hs2
-rw-r--r--testsuite/tests/cabal/t18567/T18567.stderr5
-rw-r--r--testsuite/tests/cabal/t18567/all.T9
-rw-r--r--testsuite/tests/cabal/t18567/internal-lib.cabal26
-rw-r--r--testsuite/tests/cabal/t18567/src/TestLib.hs4
-rw-r--r--testsuite/tests/cabal/t18567/sublib-unused/SublibUnused.hs1
-rw-r--r--testsuite/tests/cabal/t18567/sublib/Sublib.hs1
8 files changed, 68 insertions, 0 deletions
diff --git a/testsuite/tests/cabal/t18567/Makefile b/testsuite/tests/cabal/t18567/Makefile
new file mode 100644
index 0000000000..78cdf67535
--- /dev/null
+++ b/testsuite/tests/cabal/t18567/Makefile
@@ -0,0 +1,20 @@
+TOP=../../..
+include $(TOP)/mk/boilerplate.mk
+include $(TOP)/mk/test.mk
+
+SETUP = ./Setup -v0
+
+# This test is for packages in internal libraries
+
+T18567: clean
+ $(MAKE) clean
+ '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make Setup
+ $(SETUP) clean
+ $(SETUP) configure $(CABAL_MINIMAL_BUILD) --with-ghc='$(TEST_HC)' --ghc-options='$(TEST_HC_OPTS)'
+ $(SETUP) build
+ifneq "$(CLEANUP)" ""
+ $(MAKE) clean
+endif
+
+clean :
+ $(RM) -r */dist Setup$(exeext) *.o *.hi
diff --git a/testsuite/tests/cabal/t18567/Setup.hs b/testsuite/tests/cabal/t18567/Setup.hs
new file mode 100644
index 0000000000..9a994af677
--- /dev/null
+++ b/testsuite/tests/cabal/t18567/Setup.hs
@@ -0,0 +1,2 @@
+import Distribution.Simple
+main = defaultMain
diff --git a/testsuite/tests/cabal/t18567/T18567.stderr b/testsuite/tests/cabal/t18567/T18567.stderr
new file mode 100644
index 0000000000..660c39cc22
--- /dev/null
+++ b/testsuite/tests/cabal/t18567/T18567.stderr
@@ -0,0 +1,5 @@
+
+<no location info>: warning: [-Wunused-packages]
+ The following packages were specified via -package or -package-id flags,
+ but were not needed for compilation:
+ - internal-lib-0.1.0.0-1ShKL1eXB3aGPfTSujH0Bv-sublib-unused
diff --git a/testsuite/tests/cabal/t18567/all.T b/testsuite/tests/cabal/t18567/all.T
new file mode 100644
index 0000000000..5b30bfaaf9
--- /dev/null
+++ b/testsuite/tests/cabal/t18567/all.T
@@ -0,0 +1,9 @@
+if config.cleanup:
+ cleanup = 'CLEANUP=1'
+else:
+ cleanup = 'CLEANUP=0'
+
+test('T18567',
+ extra_files(['Setup.hs', 'sublib/', 'sublib-unused', 'src/', 'internal-lib.cabal']),
+ run_command,
+ ['$MAKE -s --no-print-directory T18567 ' + cleanup])
diff --git a/testsuite/tests/cabal/t18567/internal-lib.cabal b/testsuite/tests/cabal/t18567/internal-lib.cabal
new file mode 100644
index 0000000000..bd26a969b6
--- /dev/null
+++ b/testsuite/tests/cabal/t18567/internal-lib.cabal
@@ -0,0 +1,26 @@
+cabal-version: 2.0
+name: internal-lib
+version: 0.1.0.0
+license: BSD3
+build-type: Simple
+cabal-version: >=2.0
+
+library
+ hs-source-dirs: src
+ exposed-modules: TestLib
+ build-depends: base, sublib, sublib-unused
+ default-language: Haskell2010
+ ghc-options: -Wunused-packages
+
+library sublib-unused
+ hs-source-dirs: sublib-unused
+ exposed-modules: SublibUnused
+ build-depends: base
+ default-language: Haskell2010
+library sublib
+ hs-source-dirs: sublib
+ exposed-modules: Sublib
+ build-depends: base
+ default-language: Haskell2010
+
+
diff --git a/testsuite/tests/cabal/t18567/src/TestLib.hs b/testsuite/tests/cabal/t18567/src/TestLib.hs
new file mode 100644
index 0000000000..978580c21c
--- /dev/null
+++ b/testsuite/tests/cabal/t18567/src/TestLib.hs
@@ -0,0 +1,4 @@
+module TestLib where
+
+-- Uses sublib but not sublib-unused
+import Sublib
diff --git a/testsuite/tests/cabal/t18567/sublib-unused/SublibUnused.hs b/testsuite/tests/cabal/t18567/sublib-unused/SublibUnused.hs
new file mode 100644
index 0000000000..34bd48558a
--- /dev/null
+++ b/testsuite/tests/cabal/t18567/sublib-unused/SublibUnused.hs
@@ -0,0 +1 @@
+module SublibUnused where
diff --git a/testsuite/tests/cabal/t18567/sublib/Sublib.hs b/testsuite/tests/cabal/t18567/sublib/Sublib.hs
new file mode 100644
index 0000000000..c41d4cbf16
--- /dev/null
+++ b/testsuite/tests/cabal/t18567/sublib/Sublib.hs
@@ -0,0 +1 @@
+module Sublib where