mirror of
https://github.com/unclechu/gRPC-haskell.git
synced 2024-11-05 10:49:42 +01:00
223 lines
5.8 KiB
Text
223 lines
5.8 KiB
Text
name: grpc-haskell
|
|
version: 0.0.0.0
|
|
synopsis: Haskell implementation of gRPC layered on shared C library.
|
|
-- description:
|
|
homepage: http://github.com/aloiscochard/grpc-haskell
|
|
license: Apache-2.0
|
|
license-file: LICENSE
|
|
author: Alois Cochard
|
|
maintainer: alois.cochard@gmail.com
|
|
copyright: Copyright 2015 Alois Cochard
|
|
category: Network
|
|
build-type: Simple
|
|
cabal-version: >=1.10
|
|
extra-source-files: cbits, include
|
|
|
|
Flag Debug
|
|
Description: Adds debug logging.
|
|
Manual: True
|
|
Default: False
|
|
|
|
flag with-examples
|
|
description: Also build example executables.
|
|
manual: True
|
|
default: True
|
|
|
|
library
|
|
build-depends:
|
|
base >=4.8 && <5.0
|
|
, clock >=0.6.0 && <0.8.0
|
|
, bytestring ==0.10.*
|
|
, stm == 2.4.*
|
|
, containers ==0.5.*
|
|
, managed >= 1.0.0 && < 1.1
|
|
, pipes ==4.1.*
|
|
, transformers
|
|
, proto3-wire
|
|
, protobuf-wire
|
|
|
|
, async ==2.1.*
|
|
, tasty >= 0.11 && <0.12
|
|
, tasty-hunit >= 0.9 && <0.10
|
|
, safe ==0.3.*
|
|
, vector
|
|
, sorted-list >=0.1.6.1 && <=0.3
|
|
|
|
c-sources:
|
|
cbits/grpc_haskell.c
|
|
exposed-modules:
|
|
-- NOTE: the order of these matters to c2hs.
|
|
Network.GRPC.Unsafe.Constants
|
|
Network.GRPC.Unsafe.Time
|
|
Network.GRPC.Unsafe.Slice
|
|
Network.GRPC.Unsafe.ChannelArgs
|
|
Network.GRPC.Unsafe.ByteBuffer
|
|
Network.GRPC.Unsafe.Metadata
|
|
Network.GRPC.Unsafe.Op
|
|
Network.GRPC.Unsafe
|
|
Network.GRPC.Unsafe.Security
|
|
Network.GRPC.LowLevel
|
|
Network.GRPC.LowLevel.Server.Unregistered
|
|
Network.GRPC.LowLevel.Client.Unregistered
|
|
Network.GRPC.LowLevel.CompletionQueue
|
|
Network.GRPC.LowLevel.CompletionQueue.Internal
|
|
Network.GRPC.LowLevel.CompletionQueue.Unregistered
|
|
Network.GRPC.LowLevel.GRPC
|
|
Network.GRPC.LowLevel.Op
|
|
Network.GRPC.LowLevel.Server
|
|
Network.GRPC.LowLevel.Call
|
|
Network.GRPC.LowLevel.Call.Unregistered
|
|
Network.GRPC.LowLevel.Client
|
|
Network.GRPC.HighLevel
|
|
Network.GRPC.HighLevel.Generated
|
|
Network.GRPC.HighLevel.Server
|
|
Network.GRPC.HighLevel.Server.Unregistered
|
|
extra-libraries:
|
|
grpc
|
|
includes:
|
|
include/grpc_haskell.h
|
|
, grpc/grpc.h
|
|
, grpc/status.h
|
|
, grpc/support/time.h
|
|
, grpc/impl/codegen/compression_types.h
|
|
, grpc/impl/codegen/slice_buffer.h
|
|
, grpc/impl/codegen/slice.h
|
|
build-tools: c2hs
|
|
default-language: Haskell2010
|
|
ghc-options: -Wall -fwarn-incomplete-patterns -fno-warn-unused-do-bind -threaded
|
|
include-dirs: include
|
|
hs-source-dirs: src
|
|
default-extensions: CPP
|
|
CC-Options: -std=c99
|
|
if flag(debug)
|
|
CPP-Options: -DDEBUG
|
|
CC-Options: -DGRPC_HASKELL_DEBUG -std=c99
|
|
|
|
executable hellos-server
|
|
if flag(with-examples)
|
|
build-depends:
|
|
base >=4.8 && <5.0
|
|
, async
|
|
, bytestring == 0.10.*
|
|
, containers ==0.5.*
|
|
, grpc-haskell
|
|
, proto3-wire
|
|
, protobuf-wire
|
|
, text
|
|
, transformers
|
|
else
|
|
buildable: False
|
|
default-language: Haskell2010
|
|
ghc-options: -Wall -g -threaded -rtsopts -with-rtsopts=-N -O2
|
|
hs-source-dirs: examples/hellos/hellos-server
|
|
main-is: Main.hs
|
|
|
|
executable hellos-client
|
|
if flag(with-examples)
|
|
build-depends:
|
|
base >=4.8 && <5.0
|
|
, async
|
|
, bytestring == 0.10.*
|
|
, containers ==0.5.*
|
|
, grpc-haskell
|
|
, proto3-wire
|
|
, protobuf-wire
|
|
, text
|
|
, transformers
|
|
else
|
|
buildable: False
|
|
default-language: Haskell2010
|
|
ghc-options: -Wall -g -threaded -rtsopts -with-rtsopts=-N -O2
|
|
hs-source-dirs: examples/hellos/hellos-client
|
|
main-is: Main.hs
|
|
|
|
executable echo-server
|
|
if flag(with-examples)
|
|
build-depends:
|
|
base >=4.8 && <5.0
|
|
, async
|
|
, bytestring == 0.10.*
|
|
, containers ==0.5.*
|
|
, grpc-haskell
|
|
, proto3-wire
|
|
, protobuf-wire
|
|
, text
|
|
else
|
|
buildable: False
|
|
default-language: Haskell2010
|
|
ghc-options: -Wall -g -threaded -rtsopts -with-rtsopts=-N -O2
|
|
hs-source-dirs: examples/echo/echo-server
|
|
main-is: Main.hs
|
|
|
|
executable echo-client
|
|
if flag(with-examples)
|
|
build-depends:
|
|
base >=4.8 && <5.0
|
|
, async
|
|
, bytestring == 0.10.*
|
|
, containers ==0.5.*
|
|
, grpc-haskell
|
|
, proto3-wire
|
|
, protobuf-wire
|
|
, text
|
|
, random
|
|
else
|
|
buildable: False
|
|
default-language: Haskell2010
|
|
ghc-options: -Wall -g -threaded -rtsopts -with-rtsopts=-N -O2
|
|
hs-source-dirs: examples/echo/echo-client
|
|
main-is: Main.hs
|
|
|
|
test-suite test
|
|
build-depends:
|
|
base >=4.8 && <5.0
|
|
, grpc-haskell
|
|
, bytestring ==0.10.*
|
|
, unix
|
|
, time
|
|
, async
|
|
, tasty >= 0.11 && <0.12
|
|
, tasty-hunit >= 0.9 && <0.10
|
|
, tasty-quickcheck ==0.8.*
|
|
, containers ==0.5.*
|
|
, managed >= 1.0.0 && < 1.1
|
|
, pipes ==4.1.*
|
|
, protobuf-wire
|
|
, transformers
|
|
, safe
|
|
, clock >=0.6.0 && <0.8.0
|
|
, turtle >= 1.2.0
|
|
, text
|
|
, QuickCheck ==2.8.*
|
|
other-modules:
|
|
LowLevelTests,
|
|
LowLevelTests.Op,
|
|
UnsafeTests,
|
|
GeneratedTests
|
|
default-language: Haskell2010
|
|
ghc-options: -Wall -fwarn-incomplete-patterns -fno-warn-unused-do-bind -g -threaded -rtsopts
|
|
hs-source-dirs: tests
|
|
main-is: Properties.hs
|
|
type: exitcode-stdio-1.0
|
|
default-extensions: CPP
|
|
if flag(debug)
|
|
CPP-Options: -DDEBUG
|
|
CC-Options: -DGRPC_HASKELL_DEBUG
|
|
|
|
benchmark bench
|
|
type: exitcode-stdio-1.0
|
|
build-depends:
|
|
base >=4.8 && <5.0
|
|
, grpc-haskell
|
|
, async ==2.1.*
|
|
, criterion ==1.1.*
|
|
, protobuf-wire
|
|
, bytestring ==0.10.*
|
|
, random >=1.0.0
|
|
hs-source-dirs: bench
|
|
main-is: Bench.hs
|
|
ghc-options: -Wall -O2 -threaded -rtsopts -with-rtsopts=-N
|
|
if flag(debug)
|
|
CPP-Options: -DDEBUG
|
|
CC-Options: -DGRPC_HASKELL_DEBUG
|
|
default-language: Haskell2010
|