-
Notifications
You must be signed in to change notification settings - Fork 13
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
Allow build on MacOS (MX) #30
base: main
Are you sure you want to change the base?
Conversation
This PR allows to build quokka on MacOS. We also update the FindIdaSdk cmake module from BinExport so we support also other IDA variants. This will now both compile Quokka in 32 bits and 64 bits, closing outstanding issues. This has been tested on a MacOS M2 computer (and it works).
# Please enter the commit message for your changes. Lines starting
53e7a5d
to
5264981
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good job! I just have added a few remarks, mostly because I think it's better if we don't pin specific minor versions of github actions so we can benefit from the latest versions without having to manually update them.
Nice refactoring on the cmake part as well!
|
||
runs-on: ${{ matrix.os }} | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
uses: actions/checkout@v4.1.1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
uses: actions/checkout@v4.1.1 | |
uses: actions/checkout@v4 |
Unless there are specific reasons to pin the minor version I think it's better to just use the latest v4 so that we don't need to constantly update it
|
||
- name: Setup cmake | ||
uses: jwlawson/actions-setup-cmake@v1.12 | ||
uses: jwlawson/actions-setup-cmake@959f1116cf9f1ae42fff8ec1a4aaae6d4a0e348b #v2.0.1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
uses: jwlawson/actions-setup-cmake@959f1116cf9f1ae42fff8ec1a4aaae6d4a0e348b #v2.0.1 | |
uses: jwlawson/actions-setup-cmake@v2 |
Same as above
# We need one action per file | ||
# See https://github.com/actions/upload-artifact/issues/331 | ||
- name: Upload Artifacts (64) | ||
uses: actions/[email protected] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
uses: actions/upload-artifact@v4.3.1 | |
uses: actions/upload-artifact@v4 |
with: | ||
name: idaplugin-${{ matrix.os }}-${{ matrix.ida_sdk }} | ||
path: ${{ matrix.ida_sdk }}-quokka_plugin0064.${{ matrix.ext }} | ||
if-no-files-found: error | ||
|
||
- name: Upload Artifacts (32) | ||
uses: actions/[email protected] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
uses: actions/upload-artifact@v4.3.1 | |
uses: actions/upload-artifact@v4 |
steps: | ||
- name: Download Artefact | ||
uses: actions/download-artifact@v3 | ||
uses: actions/download-artifact@v4.1.4 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
uses: actions/download-artifact@v4.1.4 | |
uses: actions/download-artifact@v4 |
|
||
- name: Release | ||
uses: softprops/action-gh-release@v0.1.14 | ||
uses: softprops/action-gh-release@9d7c94cfd0a1f3ed45544c887983e9fa900f0564 #v2.0.4 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
uses: softprops/action-gh-release@9d7c94cfd0a1f3ed45544c887983e9fa900f0564 #v2.0.4 | |
uses: softprops/action-gh-release@v2 |
@@ -1,18 +1,18 @@ | |||
include_guard() | |||
|
|||
get_filename_component(hw_proto "quokka.proto" ABSOLUTE) | |||
# get_filename_component(hw_proto "quokka.proto" ABSOLUTE) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# get_filename_component(hw_proto "quokka.proto" ABSOLUTE) |
We can just remove the line if not needed
TARGET quokka_proto | ||
LANGUAGE python | ||
OUT_VARS PROTO_PY) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OUT_VARS PROTO_PY) |
I think that PROTO_PY
was used only as a temporary var for compiling the protobuf file, with this refactor it shouldn't be needed anymore
This PR allows to build quokka on MacOS.
We also update the FindIdaSdk cmake module from BinExport so we support also other IDA variants.
This will now both compile Quokka in 32 bits and 64 bits, closing outstanding issues (#24).
This has been tested on a MacOS M2 computer (and it works).