Skip to content

Make _FoundationInternationalizationData a swift library - #556

Merged
jmschonfeld merged 3 commits into
swiftlang:mainfrom
jmschonfeld:i18n-data-swift
Aug 4, 2026
Merged

Make _FoundationInternationalizationData a swift library#556
jmschonfeld merged 3 commits into
swiftlang:mainfrom
jmschonfeld:i18n-data-swift

Conversation

@jmschonfeld

Copy link
Copy Markdown
Contributor

Removes the C headers from the _FoundationInternationalizationData distribution and adds the swiftmodule files

@jmschonfeld

Copy link
Copy Markdown
Contributor Author

@compnerd compnerd left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Oh this is amazing!

@jmschonfeld

Copy link
Copy Markdown
Contributor Author

@compnerd it failed with

         C:\Users\swift-ci\jenkins\workspace\swift-PR-build-toolchain-windows\swift-installer-scripts\platforms\Windows\platforms\windows\windows.wxs(1101): error WIX0094: The identifier 'Directory:_FoundationInternationalizationData.swiftmodule' could not be found. Ensure you have typed the reference correctly and that all the necessary inputs are provided to the linker. [C:\Users\swift-ci\jenkins\workspace\swift-PR-build-toolchain-windows\swift-installer-scripts\platforms\Windows\platforms\windows\windows.wixproj]
         C:\Users\swift-ci\jenkins\workspace\swift-PR-build-toolchain-windows\swift-installer-scripts\platforms\Windows\platforms\windows\windows.wxs(1106): error WIX0094: The identifier 'Directory:lib_FoundationInternationalizationData.swiftmodule' could not be found. Ensure you have typed the reference correctly and that all the necessary inputs are provided to the linker. [C:\Users\swift-ci\jenkins\workspace\swift-PR-build-toolchain-windows\swift-installer-scripts\platforms\Windows\platforms\windows\windows.wixproj]

I noticed I forgot to make one small change to build.ps1 so I made that at swiftlang/swift#91134. Do you know if that would be the cause of this issue, or is it something else with the installer script change? Not sure if I need to update this:

    <Module Include="_FoundationCollections" Shared="false" SDKSharedLinkage="true" />
    <Module Include="Foundation" LibraryName="Foundation" StaticDependencies="CoreFoundation;brotlicommon;brotlidec;curl;libxml2;zlib;_FoundationCShims;_FoundationInternationalizationData" />

to make _FoundationInternationalizationData separate now that it's a swift module like _FoundationCollections or if that's different than this issue

@compnerd

Copy link
Copy Markdown
Member

Ah, there is another missing change here - you need to include the directory in the skeleton, e.g. https://github.com/swiftlang/swift-installer-scripts/blob/main/platforms/Windows/platforms/windows/windows.wxs#L120-L174

Note that you will need it for Windows and Android.

@jmschonfeld

Copy link
Copy Markdown
Contributor Author

It looks like that's generated from SDKSwiftModules but I can't quite tell how that list is populated - do you know why this module wouldn't be listed in SDKSwiftModules? Is that related to the <Module tags I mentioned above?

@jmschonfeld

Copy link
Copy Markdown
Contributor Author

@compnerd aha, looks like that last change did the trick - does that look good to you? If so I think this is ready to merge

https://ci-external.swift.org/job/swift-PR-build-toolchain-windows/6713/

@jmschonfeld
jmschonfeld merged commit e9e6ff4 into swiftlang:main Aug 4, 2026
@jmschonfeld
jmschonfeld deleted the i18n-data-swift branch August 4, 2026 17:18
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