Skip to content

Migrate the Windows build to build.ps1, a new build script #69337

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

Merged
merged 8 commits into from
Oct 31, 2023
Merged

Migrate the Windows build to build.ps1, a new build script #69337

merged 8 commits into from
Oct 31, 2023

Conversation

tristanlabelle
Copy link
Contributor

Migrates the Windows CI build script to build.ps1, a PowerShell-based build script suitable for local incremental builds as well as CI builds, including multi-architecture builds, packaging and test running.

@compnerd
Copy link
Member

@swift-ci please build toolchain Windows platform

@tristanlabelle
Copy link
Contributor Author

[2023-10-23 19:59:31] Building 'C:\Users\swift-ci\jenkins\workspace\swift-PR-build-toolchain-windows\swift\tools\swift-inspect' to 'T:\x64\swift-inspect' for arch 'x64'...
error: InternalError(description: "Internal error. Please file a bug at https://github.com/apple/swift-package-manager/issues with this info. Failed to parse target info (malformed(json: \"\", underlyingError: Error Domain=NSCocoaErrorDomain Code=3840 \"The data is not in the correct format.\")).\nRaw compiler output: ")
Error: swift.exe exited with code 1.

This is fixed with the latest build.ps1. Will update.

@tristanlabelle tristanlabelle changed the title Migrate to build.ps1 Migrate the Windows build to build.ps1, a new build script Oct 24, 2023
@compnerd
Copy link
Member

@swift-ci please build toolchain Windows platform

@tristanlabelle
Copy link
Contributor Author

Failing on:

C:\Users\swift-ci\jenkins\workspace\swift-PR-build-toolchain-windows\llvm-project\lldb\source\Plugins\LanguageRuntime\Swift\SwiftLanguageRuntime.cpp(2344): error C2280: 'lldb_private::ThreadSafeReflectionContext::ThreadSafeReflectionContext(const lldb_private::ThreadSafeReflectionContext &)': attempting to reference a deleted function

swiftlang/llvm-project#7658 (comment)

@compnerd
Copy link
Member

@swift-ci please build toolchain Windows platform

@compnerd
Copy link
Member

@swift-ci please build toolchain windows platform

Comment on lines 129 to 131
git clone --quiet --no-tags --depth 1 --branch v2.9.12 https://github.com/gnome/libxml2
git clone --quiet --no-tags --depth 1 --branch version-3.36.0 https://github.com/sqlite/sqlite
git clone --quiet --no-tags --depth 1 --branch maint/maint-69 https://github.com/unicode-org/icu
Copy link
Member

Choose a reason for hiding this comment

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

We should also move these to update-checkout.

Copy link
Contributor

Choose a reason for hiding this comment

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

- Update the curl pin to 8.4.0
- Stage artifacts to expected location
@compnerd
Copy link
Member

@swift-ci please build toolchain Windows platform

@compnerd
Copy link
Member

@swift-ci please smoke test

@shahmishal
Copy link
Member

The new script is missing .msi files, only see these two files. is that expected?

  • installer.exe
  • rtl.amd64.msm

@stevapple
Copy link
Contributor

The new script is missing .msi files, only see these two files. is that expected?

  • installer.exe
  • rtl.amd64.msm

Seems just not copied? https://github.com/tristanlabelle/swift/blob/20c89b5d792f2ab21819b0f0792607057ba398dd/utils/build.ps1#L1581-L1582

@compnerd
Copy link
Member

@shahmishal yeah, that is intentional - the artifacts were what we wanted to actually have generally available to download. The msm is the redistributable merge module that allows others to integrate a distribution of the runtime (due to lack of ABI stability). The installer is the installer for the toolchain, which now allows you to control what is installed.

I can certainly add in the MSIs if you like.

Stage cabs and MSIs as well.
@compnerd
Copy link
Member

@swift-ci please build toolchain Windows platform

@compnerd
Copy link
Member

@swift-ci please smoke test

@compnerd
Copy link
Member

@swift-ci please build toolchain Windows platform

@compnerd
Copy link
Member

@swift-ci please build toolchain Windows platform

1 similar comment
@shahmishal
Copy link
Member

@swift-ci please build toolchain Windows platform

@compnerd
Copy link
Member

@swift-ci please smoke test

@compnerd compnerd merged commit 3a863c4 into swiftlang:main Oct 31, 2023
@tristanlabelle tristanlabelle deleted the build.ps1 branch November 2, 2023 20:45
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.

4 participants