macaw/base/macaw-base.cabal
2018-07-23 13:47:24 -07:00

81 lines
2.1 KiB
Plaintext

name: macaw-base
version: 0.3
author: Galois, Inc.
maintainer: jhendrix@galois.com
build-type: Simple
cabal-version: >= 1.9.2
license: BSD3
license-file: LICENSE
description:
Macaw is a multi-architecture binary analysis library written in
Haskell. @macaw-base@ defines the core algorithms and data types
used across architectures. This includes:
.
* The control-flow graph data structure used to represent control-flow
graphs is defined in "Data.Macaw.CFG".
.
* The datatypes used to add support for new architectures are defined in
"Data.Macaw.Architecture".
.
* The datatypes used to represent memory are defined in "Data.Macaw.Memory".
Functions for constructing memory objects from Elf files are in
"Data.Macaw.Memory.ElfLoader".
.
* The main code discovery algorithm for discovering code are in
"Data.Macaw.Discovery".
.
* Declarations for working with Dwarf debug information are in "Data.Macaw.Dwarf".
library
build-depends:
base >= 4,
ansi-wl-pprint,
binary,
binary-symbols,
bytestring,
containers >= 0.5.8.1,
elf-edit >= 0.29,
galois-dwarf,
IntervalMap >= 0.5,
lens >= 4.7,
mtl,
parameterized-utils >= 1.0.1,
text,
vector,
QuickCheck >= 2.7
hs-source-dirs: src
exposed-modules:
Data.Macaw.AbsDomain.AbsState
Data.Macaw.AbsDomain.JumpBounds
Data.Macaw.AbsDomain.Refine
Data.Macaw.AbsDomain.StridedInterval
Data.Macaw.Analysis.FunctionArgs
Data.Macaw.Architecture.Info
Data.Macaw.CFG
Data.Macaw.CFG.App
Data.Macaw.CFG.AssignRhs
Data.Macaw.CFG.Block
Data.Macaw.CFG.BlockLabel
Data.Macaw.CFG.Core
Data.Macaw.CFG.DemandSet
Data.Macaw.CFG.Rewriter
Data.Macaw.DebugLogging
Data.Macaw.Discovery
Data.Macaw.Discovery.AbsEval
Data.Macaw.Discovery.State
Data.Macaw.Dwarf
Data.Macaw.Fold
Data.Macaw.Memory
Data.Macaw.Memory.ElfLoader
Data.Macaw.Memory.LoadCommon
Data.Macaw.Memory.Permissions
Data.Macaw.SCFG
Data.Macaw.Types
Data.Macaw.Utils.Pretty
ghc-options: -Wall
ghc-options: -fno-warn-unticked-promoted-constructors
ghc-prof-options: -O2 -fprof-auto-top