libarchive-3.0.5.0: libarchive.cabal
cabal-version: 3.0
name: libarchive
version: 3.0.5.0
license: BSD-3-Clause
license-file: LICENSE
copyright: Copyright: (c) 2018-2020 Vanessa McHale
maintainer: vamchale@gmail.com
author: Vanessa McHale
bug-reports: https://github.com/vmchale/libarchive/issues
synopsis: Haskell interface to libarchive
description:
Haskell bindings for [libarchive](https://www.libarchive.org/). Provides the ability to unpack archives, including the ability to unpack archives lazily.
category: Codec
build-type: Custom
extra-source-files:
test/data/aarch64-linux-dist.tar
extra-doc-files:
README.md
CHANGELOG.md
source-repository head
type: git
location: https://github.com/vmchale/libarchive
custom-setup
setup-depends:
base <=5,
Cabal <=4,
chs-cabal
flag cross
description: Set this flag if cross-compiling
default: False
manual: True
flag low-memory
description: Run low-memory version of test suite
default: False
flag system-libarchive
description:
Use libarchive found with pkg-config rather than the bundled sources
flag no-exe
description: don't install the archive executables
library
exposed-modules:
Codec.Archive
Codec.Archive.Foreign
Codec.Archive.Foreign.Archive
Codec.Archive.Foreign.ArchiveEntry
Codec.Archive.Internal.Pack
Codec.Archive.Internal.Pack.Lazy
Codec.Archive.Internal.Pack.Common
Codec.Archive.Internal.Unpack.Lazy
Codec.Archive.Internal.Unpack
Codec.Archive.Internal.Monad
hs-source-dirs: src
other-modules:
Codec.Archive.Foreign.Archive.Macros
Codec.Archive.Foreign.ArchiveEntry.Macros
Codec.Archive.Types
Codec.Archive.Types.Foreign
Codec.Archive.Permissions
default-language: Haskell2010
other-extensions: DeriveGeneric DeriveAnyClass
ghc-options: -Wall
build-depends:
base >=4.8 && <5,
bytestring,
composition-prelude >=2.0.5.0,
dlist,
filepath,
mtl >=2.2.1,
unix-compat >=0.1.2.1,
deepseq >=1.4.0.0
if os(windows)
cc-options: -U__GCC_ASM_FLAG_OUTPUTS__
if arch(i386)
cc-options: -D_Alignas(t)=__attribute__((__aligned__(t)))
if !flag(cross)
build-tool-depends: c2hs:c2hs >=0.26.1, cpphs:cpphs
if !impl(ghc >=8.0)
build-depends:
semigroups,
transformers
if impl(ghc >=8.0)
ghc-options:
-Wincomplete-uni-patterns -Wincomplete-record-updates
-Wredundant-constraints
if impl(ghc >=8.4)
ghc-options: -Wmissing-export-lists
if impl(ghc >=8.10)
ghc-options: -Wunused-packages
if flag(system-libarchive)
pkgconfig-depends: libarchive >=3.8.2 && <4.0
else
build-depends: libarchive-clib >=3.8.2 && <4.0
includes:
archive.h
archive_entry.h
executable archive
main-is: Main.hs
hs-source-dirs: exe
default-language: Haskell2010
ghc-options: -Wall
build-depends:
base >=4.8 && <5,
bytestring >=0.9,
bzlib >=0.4 && <0.7,
directory >=1.0,
exceptions,
filepath >=1.0,
libarchive,
lzma-static,
time,
zlib ^>=0.7.1.1
if flag(no-exe)
buildable: False
test-suite libarchive-test
type: exitcode-stdio-1.0
main-is: Spec.hs
build-tool-depends: cpphs:cpphs
hs-source-dirs: test
other-modules:
Codec.Archive.Roundtrip
Codec.Archive.Test
default-language: Haskell2010
other-extensions: OverloadedStrings
ghc-options: -threaded -rtsopts "-with-rtsopts=-N -K1K" -Wall
build-depends:
base,
deepseq,
libarchive,
hspec,
bytestring,
directory >=1.2.5.0,
filepath,
temporary,
mtl >=2.2.2,
dir-traverse,
composition-prelude >=2.0.5.0,
pathological-bytestrings
if os(windows)
build-depends:
hspec-core
if flag(low-memory)
cpp-options: -DLOW_MEMORY
if !impl(ghc >=8.0)
build-depends: transformers
if impl(ghc >=8.0)
ghc-options:
-Wincomplete-uni-patterns -Wincomplete-record-updates
-Wredundant-constraints
if impl(ghc >=8.4)
ghc-options: -Wmissing-export-lists
if impl(ghc >=8.10)
ghc-options: -Wunused-packages
benchmark libarchive-bench
type: exitcode-stdio-1.0
main-is: Bench.hs
hs-source-dirs: bench
default-language: Haskell2010
ghc-options: -Wall
build-depends:
base,
libarchive,
criterion,
bytestring,
tar >=0.6.0.0,
temporary
if impl(ghc >=8.0)
ghc-options:
-Wincomplete-uni-patterns -Wincomplete-record-updates
-Wredundant-constraints
if impl(ghc >=8.4)
ghc-options: -Wmissing-export-lists
if impl(ghc >=8.10)
ghc-options: -Wunused-packages
benchmark mem
type: exitcode-stdio-1.0
main-is: Mem.hs
hs-source-dirs: mem
default-language: Haskell2010
ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
build-depends:
base,
libarchive,
bytestring
if impl(ghc >=8.0)
ghc-options:
-Wincomplete-uni-patterns -Wincomplete-record-updates
-Wredundant-constraints
if impl(ghc >=8.4)
ghc-options: -Wmissing-export-lists
if impl(ghc >=8.10)
ghc-options: -Wunused-packages