macaw/base/macaw-base.cabal
Ryan Scott 02c2bc468e macaw-base: Introduce *.Panic module
This is cargo-culted from the `*.Panic` module of a similar name in
`macaw-aarch32`. This will be useful in a subsequent commit in which we replace
some unreachable calls to `fail` with `panic`.
2023-04-18 15:17:23 -04:00

107 lines
2.8 KiB
Plaintext

name: macaw-base
version: 0.3.15.6
author: Galois, Inc.
maintainer: jhendrix@galois.com
build-type: Simple
cabal-version: >= 1.10
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.13,
binary,
binary-symbols >= 0.1.3,
bytestring,
containers >= 0.5.8.1,
directory,
elf-edit >= 0.39,
exceptions,
filepath,
galois-dwarf >= 0.2.2,
IntervalMap >= 0.5,
lens >= 4.7,
mtl,
panic,
parameterized-utils >= 2.1.0 && < 2.2,
prettyprinter >= 1.7.0,
template-haskell,
text,
utf8-string,
vector,
QuickCheck >= 2.7
hs-source-dirs: src
exposed-modules:
Data.Macaw.AbsDomain.AbsState
Data.Macaw.AbsDomain.CallParams
Data.Macaw.AbsDomain.JumpBounds
Data.Macaw.AbsDomain.Refine
Data.Macaw.AbsDomain.StridedInterval
Data.Macaw.Analysis.FunctionArgs
Data.Macaw.Analysis.RegisterUse
Data.Macaw.Architecture.Info
Data.Macaw.CFG
Data.Macaw.CFG.App
Data.Macaw.CFG.AssignRhs
Data.Macaw.CFG.Block
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.Classifier
Data.Macaw.Discovery.Classifier.JumpTable
Data.Macaw.Discovery.Classifier.PLT
Data.Macaw.Discovery.ParsedContents
Data.Macaw.Discovery.State
Data.Macaw.Dwarf
Data.Macaw.Fold
Data.Macaw.Memory
Data.Macaw.Memory.ElfLoader
Data.Macaw.Memory.ElfLoader.DynamicDependencies
Data.Macaw.Memory.ElfLoader.PLTStubs
Data.Macaw.Memory.LoadCommon
Data.Macaw.Memory.Permissions
Data.Macaw.Memory.Symbols
Data.Macaw.Types
Data.Macaw.Utils.Changed
Data.Macaw.Utils.IncComp
Data.Macaw.Utils.Pretty
other-modules:
Data.Macaw.AbsDomain.StackAnalysis
Data.Macaw.Panic
ghc-options: -Wall -Wcompat
ghc-options: -fno-warn-unticked-promoted-constructors
ghc-prof-options: -O2 -fprof-auto-top
default-language: Haskell2010
default-extensions:
GADTs
NoStarIsType
ScopedTypeVariables
TypeOperators