-
Notifications
You must be signed in to change notification settings - Fork 24
Add fix for building Swift SDKs from Debian Trixie containers #250
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
base: main
Are you sure you want to change the base?
Add fix for building Swift SDKs from Debian Trixie containers #250
Conversation
- This is a new requirement for Debian Trixie containers since asm headers in /usr/include are now symlinked to /usr/lib/linux directories. - This /usr/lib/linux directory is already included when building a Swift SDK without a container- this fixes building one with a container.
|
We don't have a way to catch this on CI, do we? |
Not really, but I wonder if some unit test could be added to test folders copied from a "container"...we could have a simple matrix of folders that are expected for each distro we support, then ensure they are copied. What do you think? |
|
Thinking of another idea- we could test that all symlinks point to valid paths when we copy the files from the container and then throw an error if a symlink points to "nothing". Then add some unit tests that simply try a matrix of container copies and verify that each one succeeds. |
|
@swift-ci test |
|
@swift-ci test |
3 similar comments
|
@swift-ci test |
|
@swift-ci test |
|
@swift-ci test |
I am building my own
debian:trixiecontainers with the Ubuntu 24.04 Swift toolchain included and feeding that into the swift-sdk-generator. However, it seems that starting with Debian Trixie, a new/usr/lib/linuxdirectory is included that is symlinked from multiarch/usr/includeheaders in the sysroot. For example:This PR simply copies the
/usr/lib/linuxdirectory from the container if it exists. When building a Swift SDK without a container for Debian Trixie, this directory is included in the *.deb packages and so works correctly.Also updated the README.md file to show that Debian 13 is supported by the generator.