upx / upx-fork-apple-oss-distributions-xnu

UPX fork
https://github.com/apple-oss-distributions/xnu.git
Other
0 stars 0 forks source link

Building the XNU kernel with GitHub Actions #1

Open markus-oberhumer opened 9 months ago

markus-oberhumer commented 9 months ago

Created from issue https://github.com/upx/upx/issues/612

jreiser commented 9 months ago

Successfully building an xnu kernel will be a good beginning... but one important goal is to build a user-mode app that can be debugged in order to trace the execution of do_execve(), in order to discover the actual requirements for successful execution of a upx-compressed executable. So save the pieces (the *.o and *.a) and the sequence of commands (what make invokes).

markus-oberhumer commented 9 months ago

Yes, but first step is to actually build that thing.

markus-oberhumer commented 9 months ago

Actions are up and running: https://github.com/upx/upx-fork-apple-oss-distributions-xnu/actions

@tomnific and all: feedback/patches are highly welcome!

markus-oberhumer commented 9 months ago

Two hours later: https://github.com/upx/upx-fork-apple-oss-distributions-xnu/actions/runs/7014467795

Currently stuck at fatal error: 'TrustCache/API.h' file not found

markus-oberhumer commented 9 months ago

And another missing file: fatal error: 'os/firehose_buffer_private.h' file not found

https://github.com/upx/upx-fork-apple-oss-distributions-xnu/actions/runs/7015323992

(Build log artifact is now available)

jreiser commented 9 months ago

A couple months ago I also saw firehose_buffer_private.h missing. An internet search provided links to 3 candidates from previous Apple open-source releases. I picked one, and continued, hacking onward.

markus-oberhumer commented 9 months ago

Found apple-oss-distributions--libdispatch.git/os/firehose_buffer_private.h. Will try to copy that file.

markus-oberhumer commented 9 months ago

Current status on master branch: https://github.com/upx/upx-fork-apple-oss-distributions-xnu/actions/runs/7021092042

I'm done with this for now; build infrastructure and log file upload is in place, so hopefully somebody else will be able to improve things.

osalbahr commented 7 months ago

Would using https://github.com/blacktop/darwin-xnu-build help?

markus-oberhumer commented 7 months ago

@osalbahr Thanks for that link, looks like they try to solve the same problem.

@jreiser Maybe you want to have a look at https://github.com/blacktop/darwin-xnu-build