feat(third_party/bazel): Check in rules_haskell from Tweag
This commit is contained in:
parent
2eb1dc26e4
commit
f723b8b878
479 changed files with 51484 additions and 0 deletions
45
third_party/bazel/rules_haskell/examples/README.md
vendored
Normal file
45
third_party/bazel/rules_haskell/examples/README.md
vendored
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
# rule_haskell examples
|
||||
|
||||
Examples of using [rules_haskell][rules_haskell], the Bazel rule set
|
||||
for building Haskell code.
|
||||
|
||||
* [**vector:**](./vector/) shows how to build the `vector` package as
|
||||
found on Hackage, using a Nix provided compiler toolchain.
|
||||
* [**rts:**](./rts/) demonstrates foreign exports and shows how to
|
||||
link against GHC's RTS library, i.e. `libHSrts.so`.
|
||||
|
||||
## **Important**
|
||||
|
||||
Run all commands from the root of `rules_haskell`.
|
||||
If you `cd examples/`, bazel *will* [break on
|
||||
you](https://github.com/tweag/rules_haskell/issues/740).
|
||||
This is a current problem with bazel workspaces.
|
||||
|
||||
## Root Workspace
|
||||
|
||||
Build everything in the root workspace with;
|
||||
|
||||
```
|
||||
$ bazel build @io_tweag_rules_haskell_examples//...
|
||||
```
|
||||
|
||||
Show every target of the vector example;
|
||||
|
||||
```
|
||||
$ bazel query @io_tweag_rules_haskell_examples//vector/...
|
||||
@io_tweag_rules_haskell_examples//vector:vector
|
||||
@io_tweag_rules_haskell_examples//vector:semigroups
|
||||
@io_tweag_rules_haskell_examples//vector:primitive
|
||||
@io_tweag_rules_haskell_examples//vector:ghc-prim
|
||||
@io_tweag_rules_haskell_examples//vector:deepseq
|
||||
@io_tweag_rules_haskell_examples//vector:base
|
||||
```
|
||||
|
||||
Build the two main Haskell targets;
|
||||
|
||||
```
|
||||
$ bazel build @io_tweag_rules_haskell_examples//vector
|
||||
$ bazel build @io_tweag_rules_haskell_examples//rts:add-one-hs
|
||||
```
|
||||
|
||||
[rules_haskell]: https://github.com/tweag/rules_haskell
|
||||
Loading…
Add table
Add a link
Reference in a new issue