Skip to content

macho/load_commands: support new load commands from macOS 15.4#846

Merged
woodruffw merged 1 commit intomasterfrom
macos-15.4
Apr 24, 2025
Merged

macho/load_commands: support new load commands from macOS 15.4#846
woodruffw merged 1 commit intomasterfrom
macos-15.4

Conversation

@Bo98
Copy link
Member

@Bo98 Bo98 commented Apr 24, 2025

Two things to note:

  • I haven't tested any of this whatsoever as I do not have a real binary with these commands.
  • It's possible some of these are not yet actually emitted by the linker. This was the case last year when DylibUseCommand foundations were first found in macOS 14.4 dyld code but not actually enabled unless deploying to macOS 15+.

@woodruffw
Copy link
Member

Thanks! These look fine to me structurally, although I similarly don't have a test binary.

@Bo98 do you happen to have source refs for these? I was looking through through the latest https://github.com/apple-oss-distributions/cctools but couldn't find them listed in loader.h.

@Bo98
Copy link
Member Author

Bo98 commented Apr 24, 2025

Full dyld and cctools source isn't available yet for macOS 15.4 but I did find /Library/Developer/CommandLineTools/SDKs/MacOSX15.4.sdk/usr/include/mach-o/loader.h (assuming you have the latest CLT - you can find something similar in Xcode.app too).

Doesn't tell us whether these are in use yet or what OS versions they apply to like the full source code would but in the end that doesn't really matter much for us.

Copy link
Member

@woodruffw woodruffw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @Bo98! I'll merge here and we can figure out tests if/when these LCs become common.

@woodruffw woodruffw merged commit fe719bb into master Apr 24, 2025
16 of 18 checks passed
@woodruffw woodruffw deleted the macos-15.4 branch April 24, 2025 17:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants