Buck: haskell_binary()

haskell_binary()

This is liable to change in the future.

A haskell_binary() rule represents a groups of Haskell sources and deps which build an executable.

Arguments

  • name (required) #

    The name of the rule.

  • main (defaults to None) #

    The main module serving as the entry point into the binary. If not specified, the compiler default is used.

  • srcs (defaults to []) #

    A list of Haskell sources to be built by this rule.

  • compiler_flags (defaults to []) #

    Flags to pass to the Haskell compiler when compiling this rule's sources.

  • deps (defaults to []) #

    Either haskell_library or prebuilt_haskell_library rules from which this rules sources import modules or native linkable rules exporting symbols this rules sources call into.

  • visibility (defaults to []) #

    List of build target patterns that identify the build rules that can include this rule in its deps.

  • licenses (defaults to []) #

    Set of license files for this library. To get the list of license files for a given build rule and all of its dependencies, you can use buck query.

  • labels (defaults to []) #

    Set of arbitrary strings which allow you to annotate a build rule with tags that can be searched for over an entire dependency tree using buck query attrfilter.

Examples

haskell_binary(
  name = 'foo',
  srcs = [
    'Foo.hs',
  ],
)