cabal-version: 1.12
-- This file has been generated from package.yaml by hpack version 0.36.0.
--
-- see: https://github.com/sol/hpack
name: proto-lens-setup
version: 0.4.0.8
synopsis: Cabal support for codegen with proto-lens.
description: This package provides Cabal support for the @proto-lens@ package.
It automatically generates Haskell source files from protocol buffer
files (@.proto@).
.
To generate Haskell modules for a Cabal package, import
"Data.ProtoLens.Setup" from the @Setup.hs@ file. For example:
.
> import Data.ProtoLens.Setup
> -- Here, "src" is the directory where .proto source files may be found
> main = defaultMainGeneratingProtos "src"
.
Then, edit the @.cabal@ file of your project to:
.
* Specify @build-type: Custom@, and add a @custom-setup@ clause that
depends on @proto-lens-setup@.
.
* List the .proto files in @extra-source-files@. Note that the field belongs
at the top level of the @.cabal@ file, rather than once per
library\/executable\/etc.
.
* List the generated modules (e.g. @Proto.Foo.Bar@) in @exposed-modules@
or @other-modules@ of the rule(s) that use them (e.g. the library or
executables). Additionally, add @proto-lens-runtime@ to the @build-depends@
of those rules.
.
For example, in @foo-bar-proto.cabal@:
.
> build-type: Custom
> extra-source-files: src/foo/bar.proto
> ...
> custom-setup
> setup-depends: base, Cabal, proto-lens-setup
.
> library
> exposed-modules: Proto.Foo.Bar, Proto.Foo.Bar_Fields
> autogen-modules: Proto.Foo.Bar, Proto.Foo.Bar_Fields
> build-depends: proto-lens-runtime, ...
homepage: https://github.com/google/proto-lens#readme
bug-reports: https://github.com/google/proto-lens/issues
author: Judah Jacobson
maintainer: proto-lens@googlegroups.com
copyright: Google Inc.
license: BSD3
license-file: LICENSE
build-type: Simple
extra-source-files:
Changelog.md
source-repository head
type: git
location: https://github.com/google/proto-lens
subdir: proto-lens-setup
library
exposed-modules:
Data.ProtoLens.Setup
other-modules:
Paths_proto_lens_setup
hs-source-dirs:
src
build-depends:
Cabal >=2.0 && <3.12
, base >=4.10 && <4.20
, bytestring >=0.10 && <0.13
, containers >=0.5 && <0.8
, deepseq >=1.4 && <1.6
, directory >=1.2 && <1.4
, filepath >=1.4 && <1.6
, process >=1.2 && <1.7
, proto-lens-protoc >=0.4 && <0.9
, temporary >=1.2 && <1.4
, text >=1.2 && <2.2
default-language: Haskell2010