-
Notifications
You must be signed in to change notification settings - Fork 42
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
vcpkg integration #128
Draft
ekilmer
wants to merge
31
commits into
master
Choose a base branch
from
ekilmer/vcpkg-integration
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
vcpkg integration #128
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ekilmer
force-pushed
the
ekilmer/vcpkg-integration
branch
2 times, most recently
from
July 7, 2022 01:14
e72d8f0
to
fda0365
Compare
This was referenced Jul 7, 2022
Latest release
Overlay ports for projects (sleigh, lief) that don't exist in upstream vcpkg repo and/or are required overlays (mbedtls v3) because upstream won't accept them due to single-version package policy and mandatory compatibility of all existing packages. This uses a development version of sleigh that does a large refactor of the CMake and some target names. The lief portfile was copied from an existing PR
ekilmer
force-pushed
the
ekilmer/vcpkg-integration
branch
from
July 7, 2022 13:43
fda0365
to
3af4dbe
Compare
TODO: We should split out the sleigh compiler tool into its own port to support cross-compilation better. The host only needs the compiler and not the libraries
ekilmer
force-pushed
the
ekilmer/vcpkg-integration
branch
from
August 4, 2022 21:07
0c9becb
to
425ebe3
Compare
Also fix LIEF compilation with newer fmt. Use old fmt instead
* master: Use MemMapManager to detect free space in memory instead of page permissions (#149) Various EVM fixes (#148) Bump patch version Expose more functionalities in python bindings (#146) Bump patch version Expose `ULE` and `ULT` to bindings (#140) Support KECCAK hash of empty string (0-length) data (#139) Bump patch version Add support for EVM LOG* instructions (#138) Various fixes for running a Smart Contract (#135) Various improvements to `EVM` support (#137) Bump patch version Allow to deep copy transaction objects in bindings (#133) Bump version Allow to skip the data parameter in python event callbacks (#132) Bump version Fix processing IR stores with big addresses (#131) Update lief to 0.12.1 (#110)
We used the wrong `python3` command compared to what CMake found
Not sure if this value is correct or not but at least it shows what the value actually is for further debugging without reproducing
Seems that Ghidra has fixed some bugs for these instructions. I tested other instructions that are commented but they still fail
*Not sure if these are true fixes. Found while investigating sleigh regression
Future versions of sleigh will remove 'using namespace std;' from headers
* ekilmer/update-sleigh: Use 'std::' prefix when needed Fix some ubsan errors Fix compilation when using sleigh submodule Don't include LLVM version in HACKING doc Add back previously failing tests Change value for tests (unsure if correct) Merge latest x86 slaspec files from Ghidra 10.2.2 Update sleigh to 10.2.2 CI: Fix Python 3 macOS dependencies CI: Update clang compiler from 11 to 14
Update language spec files
* ekilmer/update-sleigh: Don't fail fast matrix Update to Ghidra 10.2.3
ekilmer
force-pushed
the
ekilmer/vcpkg-integration
branch
from
March 30, 2023 15:53
28b5a35
to
893f0ee
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a rough integration for usage of vcpkg dependencies. You can build like the following on Linux or macOS:
and it should work but tests might not pass on Mac because of LIEF upgrade.
You can also attempt to build on Windows (after merging and fixing a few things in #97, see #97 (comment) for more details) with the following
Also, for the
dev
preset, you can have something like this file asCMakeUserPresets.json
in the root of maat.TODO:
Things I can think of now...
master
branch CMake refactor lifting-bits/sleigh#105