diff options
Diffstat (limited to 'third_party/bazel/rules_haskell/tests/indirect-link/BUILD.bazel')
-rw-r--r-- | third_party/bazel/rules_haskell/tests/indirect-link/BUILD.bazel | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/third_party/bazel/rules_haskell/tests/indirect-link/BUILD.bazel b/third_party/bazel/rules_haskell/tests/indirect-link/BUILD.bazel new file mode 100644 index 000000000000..60403a4ef277 --- /dev/null +++ b/third_party/bazel/rules_haskell/tests/indirect-link/BUILD.bazel @@ -0,0 +1,52 @@ +load("@io_tweag_rules_haskell//haskell:haskell.bzl", "haskell_library", "haskell_test", "haskell_toolchain_library") + +cc_library( + name = "cbits-indirect", + srcs = ["cbits/impl.c"], +) + +cc_library( + name = "cbits", + srcs = ["cbits/intf.c"], + deps = ["cbits-indirect"], +) + +haskell_library( + name = "mypkg", + srcs = ["src/MyModule.hs"], + src_strip_prefix = "src", + deps = [ + ":cbits", + "//tests/hackage:base", + ], +) + +haskell_test( + name = "indirect-link-static", + srcs = ["test/Main.hs"], + linkstatic = True, + src_strip_prefix = "test", + deps = [ + ":mypkg", + "//tests/hackage:base", + ], +) + +haskell_test( + name = "indirect-link-dynamic", + srcs = ["test/Main.hs"], + linkstatic = False, + src_strip_prefix = "test", + deps = [ + ":mypkg", + "//tests/hackage:base", + ], +) + +test_suite( + name = "indirect-link", + tests = [ + ":indirect-link-dynamic", + ":indirect-link-static", + ], +) |