macaw/README.md
Nathan Collins aa87eb9a45 Delete top-level stack.yaml symlink
To avoid conflicting stack.yaml files when crucible is used a
submodule in another repo with a top level stack.yaml.

Also, update the README to include creating a stack.yaml symlink
before building with stack the first time.
2018-10-30 16:12:16 -07:00

24 lines
961 B
Markdown

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
entry points such as `_start` or the current symbols.
The core libraries are:
* macaw-base -- The core architecture-independent operations and algorithms.
* macaw-symbolic -- Library that provides symbolic simulation of Macaw programs via Crucible.
* macaw-x86 -- Provides definitions enabling Macaw to be used on X86_64 programs.
* macaw-x86-symbolic -- Adds Macaw-symbolic extensions needed to support x86.
The libraries that make up Macaw are released under the BSD license.
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