Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve external dependencies #51

Closed
4 tasks
pgoodman opened this issue Sep 14, 2016 · 1 comment
Closed
4 tasks

Improve external dependencies #51

pgoodman opened this issue Sep 14, 2016 · 1 comment
Labels

Comments

@pgoodman
Copy link
Collaborator

I think dependency management needs to be improved. Right now the bootstrap.sh script downloads and builds some packages from source. It would be preferable to use existing package managers to get these libraries.

  • Provide a script for unpacking and installing XED to a common library directory, e.g. /usr/local/lib. This should allow the build process to avoid nasty hacks related to linking against the third-party folder.
  • Use OS package managers (aptitude, homebrew, etc.) to download and install things like protobufs, glog, etc. This should also be used for pip to install the python bindings of things.
  • Include the protoc-produced Python- and C++-generated code for using CFG.proto. Changes to CFG.proto should result in these auto-generated files being updated in the repo.
  • Download and globally install the LLVM release, assuming it is not already installed.

These steps will make it easier to have a bunch of simple binaries (e.g. remill-opt, remill-lift, etc.) that can be installed to system directories, without needing to reference stuff in the third_party directory. Ideally, this type of change will enable Remill itself to be packageable.

@pgoodman
Copy link
Collaborator Author

DOing this in the issue_51_third_party_code branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant