libffi-0.2: libffi.cabal
Name: libffi
cabal-version: >= 1.10
Version: 0.2
Description: A binding to libffi, allowing C functions of types only known at runtime to be called from Haskell.
License: BSD3
License-file: LICENSE
Copyright: Remi Turk 2008-2009
Author: Remi Turk
Maintainer: remi.turk@gmail.com
Homepage: http://haskell.org/haskellwiki/Library/libffi
Stability: alpha
Synopsis: A binding to libffi
Tested-With: GHC == 7.0.4
, GHC == 7.2.2
, GHC == 7.4.2
, GHC == 7.6.3
, GHC == 7.8.4
, GHC == 7.10.3
, GHC == 8.0.2
, GHC == 8.2.2
, GHC == 8.4.4
, GHC == 8.6.5
, GHC == 8.8.4
, GHC == 8.10.7
, GHC == 9.0.2
, GHC == 9.2.2
extra-source-files: CHANGELOG.md, README.md
Build-Type: Simple
Category: Foreign
flag ghc-bundled-libffi
description: When GHC is configured without @--with-system-libffi@, it
will bundle its own copies of @libffi@, one of them
statically linked and the other dynamically linked. This
flag will force linking against the static copy of @libffi@
that GHC bundles. This avoids a GHC bug
(https://gitlab.haskell.org/ghc/ghc/-/issues/15397) that
can arise when the linker confuses the system's dynamic
@libffi@ with GHC's own dynamic @libffi@.
Note that this flag only works when GHC is configured
without the @--with-system-libffi@ option. This is the case
for most GHC binary distributions, such as those provided
by @ghcup@. If you are using a GHC that was configured with
@--with-system-libffi@, however, you will need to disable
this option and link against the system's version of
@libffi@ instead.
default: True
source-repository head
type: git
location: https://github.com/remiturk/libffi
library
build-depends: base >= 3 && < 5, bytestring
exposed-modules: Foreign.LibFFI,
Foreign.LibFFI.Base,
Foreign.LibFFI.Types,
Foreign.LibFFI.FFITypes,
Foreign.LibFFI.Internal
if !flag(ghc-bundled-libffi)
pkgconfig-depends: libffi
default-language: Haskell2010