packages feed

gore-and-ash-network-1.1.0.1: gore-and-ash-network.cabal

name:                gore-and-ash-network
version:             1.1.0.1
synopsis:            Core module for Gore&Ash engine with low level network API
description:         Please see README.md
homepage:            https://github.com/Teaspot-Studio/gore-and-ash-network
license:             BSD3
license-files:       LICENSE LICENSE_henet
author:              Anton Gushcha
                     John Ericson
                     Lee Salzman
maintainer:          ncrashed@gmail.com
copyright:           2015-2016 Anton Gushcha,
                     2013-2015 John Ericson,
                     2002-2013 Lee Salzman,
                     2013 Sergei Lebedev <superbobry@gmail.com>, 
                     2013 Aleksey Kladov <aleksey.kladov@gmail.com>,
                     2013 Fedor Gogolev <knsd@knsd.net>

category:            Game
build-type:          Custom
cabal-version:       >=1.10

extra-source-files:   enet/include/enet/*.h
                      bin/mkDerivedGmpConstants.c

Bug-reports:          https://github.com/Teaspot-Studio/gore-and-ash-network/issues
Source-repository head
  type:               git
  location:           git@github.com:Teaspot-Studio/gore-and-ash-network.git

library
  hs-source-dirs:     src, henet, bitset
  exposed-modules:    Game.GoreAndAsh.Network
                      Game.GoreAndAsh.Network.API
                      Game.GoreAndAsh.Network.Message
                      Game.GoreAndAsh.Network.Module
                      Game.GoreAndAsh.Network.State
  other-modules:
                      Data.BitSet
                      Data.BitSet.Dynamic
                      Data.BitSet.Generic
                      Data.BitSet.Word
                      GHC.Integer.GMP.PrimExt
                      GHC.Integer.GMP.TypeExt
                      Network.ENet
                      Network.ENet.Bindings
                      Network.ENet.Bindings.Callbacks
                      Network.ENet.Bindings.List
                      Network.ENet.Bindings.System
                      Network.ENet.Host
                      Network.ENet.Internal
                      Network.ENet.Packet
                      Network.ENet.Peer
  c-sources:          
                      enet/callbacks.c
                      enet/compress.c
                      enet/host.c
                      enet/list.c
                      enet/packet.c
                      enet/peer.c
                      enet/protocol.c

                      cbits/gmp-extras.cmm

  include-dirs:       enet
                      enet/include
                      cbits

  build-tools:        hsc2hs

  default-language:    Haskell2010
  build-depends:       base >= 4.7 && < 5
                     , bytestring >= 0.10.6.0
                     , containers >= 0.5.6.2
                     , deepseq >= 1.4.1.1
                     , exceptions >= 0.8.0.2
                     , extra >= 1.4.2
                     , ghc-prim
                     , gore-and-ash >= 1.1.0.0
                     , gore-and-ash-logging >= 1.1.0.0
                     , hashable >= 1.2.3.3
                     , integer-gmp >= 1.0.0.0
                     , mtl >= 2.2.1
                     , network >= 2.6.2.1
                     , text >= 1.2.1.3
                     , text-show >= 2
                     , typesafe-endian >= 0.1
                     , unordered-containers >= 0.2.5.1

  default-extensions:  
                       Arrows
                       BangPatterns
                       DeriveGeneric
                       FlexibleInstances
                       GeneralizedNewtypeDeriving
                       MultiParamTypeClasses
                       OverloadedStrings
                       RecordWildCards
                       ScopedTypeVariables
                       TupleSections
                       TypeFamilies
                       TypeSynonymInstances
                       UndecidableInstances

  if os(windows)
    extra-libraries:  gmp-10
  else
    extra-libraries:  gmp

  cc-options:         -g
  ld-options:         -g
  if os(windows)
    cpp-options:        -DWINDOWS
    cc-options:         -D_WIN32 -D_DEBUG
    c-sources:          enet/win32.c
  else
    cc-options:         -D_GNU_SOURCE -Wno-deprecated-declarations -DHAS_SOCKLEN_T=1
    c-sources:          enet/unix.c