Skip to content

Don't claim EXECUTABLE_PATH when signing a bundle with no executable - #1789

Closed
aceeyz wants to merge 1 commit into
swiftlang:mainfrom
aceeyz:codesign-bundle-without-executable
Closed

aceeyz wants to merge 1 commit into
swiftlang:mainfrom
aceeyz:codesign-bundle-without-executable

Conversation

@aceeyz

@aceeyz aceeyz commented Sep 24, 2026 •

Copy link
Copy Markdown

No description provided.

A package resource bundle whose Sources phase compiles .metal files into a .metallib is treated as producing a binary, so its CodeSign task declared $(EXECUTABLE_PATH) as mutated. With an empty EXECUTABLE_NAME that path is the bare Contents/MacOS folder; declaring it mutated nullifies the product-structure MkDir that would have created it, and every SwiftPM build of such a package warns 'missing creator for mutated node: (.../Contents/MacOS)'. This affects every package depending on mlx-swift.

Reproduce: a package with one C target containing a single .metal file, built with swift build --build-system swiftbuild.
@aceeyz

aceeyz commented Sep 24, 2026

Copy link
Copy Markdown
Author

error

@aceeyz
aceeyz deleted the codesign-bundle-without-executable branch September 24, 2026 21:29
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.

1 participant