libBF-0.6.6: libBF.cabal
cabal-version: 2.2
name: libBF
version: 0.6.6
synopsis: A binding to the libBF library.
description: LibBF is a C library for working with arbitray precision
IEEE 754 floating point numbers.
bug-reports: https://github.com/GaloisInc/libBF-hs/issues
license: MIT
license-file: LICENSE
author: Iavor Diatchki
maintainer: iavor.diatchki@gmail.com
-- copyright:
category: Data
extra-source-files: CHANGELOG.md
source-repository head
type: git
location: https://github.com/GaloisInc/libBF-hs.git
flag system-libbf
default: False
description: Use system libbf instead
library
exposed-modules:
LibBF,
LibBF.Opts,
LibBF.Mutable
build-depends:
base >=4.12.0.0 && < 5,
deepseq,
hashable >= 1.3
build-tool-depends:
hsc2hs:hsc2hs
hs-source-dirs: src
-- Prior to GHC 9.4, Windows GHC bindists bundled a GCC-based C toolchain,
-- which requires linking against the GCC library to handle some of the
-- compiler intrinsics that appear in the optimized code. Moreover,
-- dynamically linking against the GCC library proves fragile, so we force
-- static linking by providing the full name of the static GCC library
-- archive.
--
-- On GHC 9.4+, Windows GHC bindists ship a Clang-based C toolchain. Clang
-- optimizations don't appear to require linking against anything in
-- particular, so it just works out of the box.
if !impl(ghc >= 9.4)
if os(windows)
if arch(x86_64)
extra-libraries: gcc_s_seh-1
else
extra-libraries: gcc_s_dw2-1
if flag(system-libbf)
extra-libraries: bf
c-sources:
cbits/libbf-hs.c
else
include-dirs:
libbf-quickjs-2021-03-27
includes:
libbf-quickjs-2021-03-27/libbf.h
install-includes:
libbf-quickjs-2021-03-27/libbf.h
libbf-quickjs-2021-03-27/cutils.h
c-sources:
libbf-quickjs-2021-03-27/cutils.c
libbf-quickjs-2021-03-27/libbf.c
cbits/libbf-hs.c
ghc-options: -Wall
default-language: Haskell2010
executable bf-test
main-is: RunUnitTests.hs
hs-source-dirs: tests
build-depends: base, libBF
default-language: Haskell2010
test-suite libBF-tests
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: RunUnitTests.hs
default-language: Haskell2010
build-depends: base, libBF