ghc-entropy/entropy-0.4.1.6.cabal

97 lines
3.0 KiB
Plaintext

name: entropy
version: 0.4.1.6
x-revision: 1
description: A mostly platform independent method to obtain cryptographically strong entropy
(RDRAND, urandom, CryptAPI, and patches welcome)
Users looking for cryptographically strong (number-theoretically
sound) PRNGs should see the 'DRBG' package too.
synopsis: A platform independent entropy source
license: BSD3
license-file: LICENSE
copyright: Thomas DuBuisson <thomas.dubuisson@gmail.com>
author: Thomas DuBuisson <thomas.dubuisson@gmail.com>
maintainer: Thomas DuBuisson <thomas.dubuisson@gmail.com>
category: Data, Cryptography
homepage: https://github.com/TomMD/entropy
bug-reports: https://github.com/TomMD/entropy/issues
stability: stable
-- build-type: Simple
-- ^^ Used for HaLVM
build-type: Custom
-- ^^ Test for RDRAND support using 'ghc'
cabal-version: >=1.10
tested-with: GHC == 8.2.2
-- data-files:
extra-source-files: ./cbits/getrandom.c ./cbits/random_initialized.c ./cbits/rdrand.c, ./cbits/rdrand.h, README.md
-- Notice to compile with HaLVM the above 'build-type' must be changed
-- to 'Simple' instead of 'Custom'. The current build system naively
-- runs GHC to determine if the compiler supports RDRAND before proceeding.
flag halvm
description: Build for the HaLVM
default: False
custom-setup
setup-depends: Cabal >= 1.10 && < 3.5
, base < 5
, filepath < 1.5
, directory < 1.4
, process < 1.7
library
ghc-options: -O2
exposed-modules: System.Entropy
if impl(ghcjs) || os(ghcjs)
other-modules: System.EntropyGhcjs
else {
if os(windows)
other-modules: System.EntropyWindows
else {
if os(halvm)
other-modules: System.EntropyXen
else
other-modules: System.EntropyNix
}
}
other-extensions: CPP, ForeignFunctionInterface, BangPatterns,
ScopedTypeVariables
build-depends: base >= 4.8 && < 5, bytestring
default-language: Haskell2010
if impl(ghcjs) || os(ghcjs) {
build-depends: ghcjs-dom
, jsaddle
}
else {
if(os(halvm))
cpp-options: -DXEN -DHAVE_RDRAND
cc-options: -DXEN -DHAVE_RDRAND
if arch(x86_64)
cpp-options: -Darch_x86_64
cc-options: -Darch_x86_64 -O2
-- gcc 4.8.2 on i386 fails to compile rdrand.c when using -fPIC!
c-sources: cbits/rdrand.c
include-dirs: cbits
if arch(i386)
cpp-options: -Darch_i386
cc-options: -Darch_i386 -O2
if os(windows)
build-depends: Win32 >= 2.5
cpp-options: -DisWindows
cc-options: -DisWindows
extra-libraries: advapi32
else
if !os(halvm)
Build-Depends: unix
c-sources: cbits/getrandom.c cbits/random_initialized.c
}
source-repository head
type: git
location: https://github.com/TomMD/entropy