-
Notifications
You must be signed in to change notification settings - Fork 27
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
Adding MacOS Support #203
Adding MacOS Support #203
Conversation
Requesting reviewer from @anfedotoff For more detail on the test issues, take a look at the MacOS CI runs on my fork - I used a println to inspect whats happening a little. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #203 +/- ##
==========================================
+ Coverage 62.37% 62.45% +0.07%
==========================================
Files 32 32
Lines 5292 5327 +35
==========================================
+ Hits 3301 3327 +26
- Misses 1991 2000 +9 ☔ View full report in Codecov by Sentry. |
AFAIK, |
We use precompiled binaries in tests, so they are in elf format. I think you should try to recompile them. |
Hi, @njelich! |
@SweetVishnya I made progress with the CI and GDB install on M1 Mac. Re recompiling the tests, do I simply run the x86 Makefile at the start of the test CI? |
We have the following tests:
The first kind should not be tested on Mac OS. Second works well. For 3-4 you just need to recompile using Makefile. Tests for 5-6 categories we should discuss. |
However, there is still some ELF and signal dependent code: https://github.com/ispras/casr/blob/master/libcasr/src/gdb/exploitable.rs |
.I disabled the coredump tests, recompiled everything etc - it passes now. https://github.com/njelich/casr/actions/runs/8239547704/job/22533003557 |
@SweetVishnya What should it be named then? https://github.blog/changelog/2024-01-30-github-actions-macos-14-sonoma-is-now-available/ |
@Avgor46 could you help with proper naming, please? |
Maybe |
Updated to |
@njelich, although, almost all of the tests are disabled. Have you tried to manually run casr-libfuzzer and casr-gdb? Do you have any screenshots? |
Hi! I played around with getting this to work on Mac, two main elements to get around were the linux_personality usage and lsb_release for getting some info. Both of those should be working fine, but I am getting some different behavior from tests.
I couldn't dig much deeper into these, but in general I get something like this in these tests, related to GDB
I would appreciate some direction. Thanks :) Hopefully we can port this amazing tool of Mac, and if LLDB is implemented instead of GDB even on M1 Macs (since GDB doesn't support M1 yet).
Note: the shift aways from
lsb_release
might be a good addition on its own, shifting aeverything to a single command -uname