diff options
Diffstat (limited to 'third_party/bazel/rules_haskell/tests/ghc')
-rw-r--r-- | third_party/bazel/rules_haskell/tests/ghc/BUILD.bazel | 3 | ||||
-rw-r--r-- | third_party/bazel/rules_haskell/tests/ghc/ghc.bzl | 19 |
2 files changed, 22 insertions, 0 deletions
diff --git a/third_party/bazel/rules_haskell/tests/ghc/BUILD.bazel b/third_party/bazel/rules_haskell/tests/ghc/BUILD.bazel new file mode 100644 index 000000000000..345ce4badf91 --- /dev/null +++ b/third_party/bazel/rules_haskell/tests/ghc/BUILD.bazel @@ -0,0 +1,3 @@ +load("//tests/ghc:ghc.bzl", "ghc_help") + +ghc_help(name = "ghc_help") diff --git a/third_party/bazel/rules_haskell/tests/ghc/ghc.bzl b/third_party/bazel/rules_haskell/tests/ghc/ghc.bzl new file mode 100644 index 000000000000..443f04e7be63 --- /dev/null +++ b/third_party/bazel/rules_haskell/tests/ghc/ghc.bzl @@ -0,0 +1,19 @@ +"""Runs ghc --help""" + +hs_toolchain = "@io_tweag_rules_haskell//haskell:toolchain" + +def _impl(ctx): + output = ctx.outputs.out + ghc = ctx.toolchains[hs_toolchain].tools.ghc + ctx.actions.run_shell( + inputs = [ghc], + outputs = [output], + progress_message = "Printing ghc help message", + command = "%s --help > %s" % (ghc.path, output.path), + ) + +ghc_help = rule( + implementation = _impl, + outputs = {"out": "out_file"}, + toolchains = [hs_toolchain], +) |