Skip to content

Fix build to allow custom boost, llvm and phasar directories.#80

Merged
pdschubert merged 1 commit intosecure-software-engineering:masterfrom
ddiepo-pjr:customboost
Feb 3, 2020
Merged

Fix build to allow custom boost, llvm and phasar directories.#80
pdschubert merged 1 commit intosecure-software-engineering:masterfrom
ddiepo-pjr:customboost

Conversation

@ddiepo-pjr
Copy link
Copy Markdown
Contributor

The build was assuming that boost was installed to the default system
location and accessible, however for using this as a library I want to
use a custom installed boost to match the version of boost used by the
application. Most of the changes to CMakeLists are to use find_package
to locate the desired boost libraries. I believe this is the preferred
way to include boost libraries.

Also, this changed to allow llvm to be installed to a specified
directory. This change allows the developer to work with multiple
different versions for different projects.

The bootstrap.sh changes include:

  • This also includes a change to specify the exact directory for phasar
    to be installed to. This allows the developer to have multiple
    installations.
  • The git submodule init / update was required for a fresh install. I'm
    guessing this was just accidentally commented out.
  • Removed the package libmysqlcppconn-dev which isn't necessary to
    copmile. Perhaps there's another dependency somewhere else, but I
    specifically removed this because it also pulls in a bunch of other
    dependencies (notably boost, and I specifically do not want the
    maintaner's version of boost installed).
  • Added ability to specify the boost install dir to use.
  • Added ability to run unit tests (I haven't verified this
    functionality, but it did work prior to the big merge last week).

The build was assuming that boost was installed to the default system
location and accessible, however for using this as a library I want to
use a custom installed boost to match the version of boost used by the
application. Most of the changes to CMakeLists are to use find_package
to locate the desired boost libraries. I believe this is the preferred
way to include boost libraries.

Also, this changed to allow llvm to be installed to a specified
directory. This change allows the developer to work with multiple
different versions for different projects.

The bootstrap.sh changes include:
- This also includes a change to specify the exact directory for phasar
to be installed to. This allows the developer to have multiple
installations.
- The git submodule init / update was required for a fresh install.  I'm
guessing this was just accidentally commented out.
- Removed the package libmysqlcppconn-dev which isn't necessary to
copmile.  Perhaps there's another dependency somewhere else, but I
specifically removed this because it also pulls in a bunch of other
dependencies (notably boost, and I specifically do not want the
maintaner's version of boost installed).
- Added ability to specify the boost install dir to use.
- Added ability to run unit tests (I haven't verified this
functionality, but it did work prior to the big merge last week).
@pdschubert pdschubert self-requested a review January 30, 2020 07:19
@pdschubert pdschubert assigned pdschubert and unassigned pdschubert Jan 30, 2020
@pdschubert pdschubert merged commit 852da7d into secure-software-engineering:master Feb 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants