2017-09-28 02:12:44 +03:00
|
|
|
This is the main repository for the Macaw binary analysis framework.
|
|
|
|
This framework is implemented to offer extensible support for
|
|
|
|
architectures.
|
|
|
|
|
|
|
|
The main algorithm implemented so far is a code discovery procedure
|
|
|
|
which will discover reachable code in the binary given one or more
|
2018-06-15 20:47:27 +03:00
|
|
|
entry points such as `_start` or the current symbols.
|
2017-09-28 02:12:44 +03:00
|
|
|
|
|
|
|
The core libraries are:
|
|
|
|
|
|
|
|
* macaw-base -- The core architecture-independent operations and algorithms.
|
2018-06-15 20:15:02 +03:00
|
|
|
* macaw-symbolic -- Library that provides symbolic simulation of Macaw programs via Crucible.
|
2017-09-28 02:12:44 +03:00
|
|
|
* macaw-x86 -- Provides definitions enabling Macaw to be used on X86_64 programs.
|
2018-06-15 20:15:02 +03:00
|
|
|
* macaw-x86-symbolic -- Adds Macaw-symbolic extensions needed to support x86.
|
2017-09-28 02:12:44 +03:00
|
|
|
|
2018-06-15 20:15:02 +03:00
|
|
|
The libraries that make up Macaw are released under the BSD license.
|
2018-10-31 02:12:16 +03:00
|
|
|
|
|
|
|
To build with Stack, first create a top-level `stack.yaml` file by
|
|
|
|
symlinking to one of the provided `stack-ghc-<version>.yaml`
|
|
|
|
files. E.g.
|
|
|
|
|
|
|
|
ln -s stack-ghc-8.2.yaml stack.yaml
|
|
|
|
stack build
|