ghc-network-bsd/network-bsd.cabal

100 lines
3.6 KiB
Plaintext
Raw Permalink Normal View History

cabal-version: 1.12
name: network-bsd
version: 2.8.1.0
x-revision: 5
license: BSD3
license-file: LICENSE
maintainer: Kazu Yamamoto, Herbert Valerio Riedel
synopsis: POSIX network database (<netdb.h>) API
description:
This package provides Haskell bindings to the
the [POSIX network database (netdb.h) API](http://pubs.opengroup.org/onlinepubs/009696699/basedefs/netdb.h.html).
.
=== Relationship to the @network@ package
.
The @network@ package version 2.* series provides "Network.BSD" but
it is removed starting with @network@ version 3.0.
.
This package provides the "Network.BSD" module split off from the
<https://hackage.haskell.org/package/network network package>.
.
If in addition to the @network@'s modules also "Network.BSD" is
necessary, add @network-bsd@ to your dependencies like so:
.
> library
> build-depends: network >= 2.7 && < 3.2
> , network-bsd >= 2.7 && < 2.9
.
I.e. you can control the version of the @network@ package
independently.
.
__NOTE__: Starting with @network-bsd-2.8.1.0@ the APIs of @network@
and @network-bsd@ evolve differently, and consequently the
versioning doesn't match up anymore! Moreover, also starting with
version @network-bsd-2.8.1.0@ this package requires @network >= 3@
in order to avoid module name clashes with @network < 3@'s
"Network.BSD" module.
.
However, @network-bsd-2.7.0.0@ and @network-bsd-2.8.0.0@ passes thru
the "Network.BSD" module from @network-2.7.*@ and @network-2.8.*@
respectively in a non-clashing way via Cabal's
<https://www.haskell.org/cabal/users-guide/developing-packages.html#pkg-field-library-reexported-modules reexported-modules>
feature while ensuring a well-defined
<https://pvp.haskell.org/ API versioning> of the observable API of
@network-bsd@. This is why the example above supporting a wide range
of @network@ versions works by including version 2.7.0.0 in the
required version range of @network-bsd@.
category: Network
build-type: Simple
homepage: https://github.com/haskell/network-bsd
bug-reports: https://github.com/haskell/network-bsd/issues
tested-with:
GHC == 9.6.2
GHC == 9.4.5
GHC == 9.2.8
GHC == 9.0.2
GHC == 8.10.7
GHC == 8.8.4
GHC == 8.6.5
GHC == 8.4.4
GHC == 8.2.2
GHC == 8.0.2
GHC == 7.10.3
GHC == 7.8.4
extra-source-files: CHANGELOG.md
library
default-language: Haskell2010
other-extensions: CPP, NondecreasingIndentation
exposed-modules: Network.BSD
build-depends: base >= 4.7 && < 5
, deepseq >= 1.3.0.0 && < 1.6
-- NOTES on `network` depdendency
--
-- `network-bsd` heavily relies on `network`'s
-- exported CPP headers! make sure that `network`
-- doesn't inadvertently break/change its CPP
-- headers before advertising support for new
-- versions of `network`.
--
-- Moreover, `network-bsd` reexports entities from
-- `network` so we need to be very conservative
-- with the bounds to avoid leaking through API
-- changes that aren't reflected in `network-bsd`'s
-- API version.
, network (>= 3.0.0.0 && < 3.0.2)
|| (>= 3.1.0.0 && < 3.2)
build-tools: hsc2hs >= 0.67 && < 0.69
ghc-options: -Wall
if os(windows) && impl(ghc >= 7.10)
-- See https://github.com/haskell/network/pull/362
cpp-options: -D_WIN32_WINNT=0x0600
source-repository head
type: git
location: https://github.com/haskell/network-bsd.git