Skip to content

Add build prebuilts support for any version of swift-syntax. #8994

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

dschaefer2
Copy link
Member

@dschaefer2 dschaefer2 commented Aug 5, 2025

Removes the hardcoding of the contents of the prebuilt libraries.

Adds a --version argument to specify which versions of swift-syntax you want to build for. You can have multiple of these. We add a sample build.sh script to the folder to show an example, including finding the most recent prerelease of 602.

Also removes the hardcoding of the list of products that go into the library. Instead we ask the package for its list of library products and add them all.

Finally, removes the header files since SwiftPM now hooks up the include paths to the CModules from the source in the checkouts.

Removes the hardcoding of the contents of the prebuilt libraries.
Adds a --version argument to specify which versions of swift-syntax
you want to build for. You can have multiple of these. Also removes
the hardcoding of the list of products that go into the library.
Instead we ask the package for it's list of library products and
add them all.
@dschaefer2
Copy link
Member Author

@swift-ci please test

let buildDir = scratchDir.appending("release")
let srcModulesDir = buildDir.appending("Modules")
let prebuiltDir = stageDir.appending(repo.url.lastPathComponent)
try await shell("git clone https://github.com/swiftlang/swift-syntax.git", cwd: srcDir)
Copy link
Contributor

Choose a reason for hiding this comment

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

not new code but we should be avoiding shell where possible in order to avoid injections, especially where the command is not a string literal

@dschaefer2
Copy link
Member Author

@swift-ci please test windows

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