-
Notifications
You must be signed in to change notification settings - Fork 317
process: allow compiling on darwin #621
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
base: main
Are you sure you want to change the base?
process: allow compiling on darwin #621
Conversation
I think, there are more changes needed to reach this point:
|
Maybe change the title and say non-linux open source systems!? I guess supporting Windows builds just adds more complexity without gaining any value. |
It is not just Windows.
|
yes, they are in different packages. I want the change to be small and self contained and revertable just in case |
@korniltsev Please be more specific in the PR title. |
Thanks, updated |
It would gain the same value as darwin. |
process/debug.go
Outdated
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.
maybe rename the file to debug_linux.go
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.
applied
Just had an idea similar tohttps://github.com//pull/625. Maybe instead of introducing build tags, we can split the package - move the ptrace specific code into a separate ptrace package |
Before approving this, I would like to have the complete picture in terms of how the code structure is changing and also the build system. In principle, I'm not against enabling limited compilation on non-Linux systems, but not if it comes with a lot of extra complexity and potential support headaches. The profiler only works on Linux [1] and that's where the focus should be. @korniltsev If you have multiple PRs in mind, then I'd delay approving/merging until you open all of them so we can look at them as a whole. [1] Technically it also works inside Docker-on-macOS as that spins up a Linux kernel that supports eBPF that's shared across containers running on the same macOS host. Maybe it also works on WSL2. |
I dont have any more new PRs in mind regarding this. There are 2 things I want to do.
Together they allow compiling and running coredump tests. The tests fail with an unexpected SIGURG signal - that would require another fix. Thats it. This will enable running a big and useful subset of unit tests without spawning virtual machines. |
To add a bit more on my previous comment: I see 2 possible solutions to what I am trying to achieve.
Do you have any other ideas how this could be done? |
Similar to #612
This will eventually help allowing running some unit tests (for example coredump tests) without spawning a full linux OS on non linux systems (at least darwin,
maybe windows)