Skip to content

Implement differently logic to strip and copy the tvos libraries #38275

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

Conversation

edymtt
Copy link
Contributor

@edymtt edymtt commented Jul 6, 2021

The previous logic could fail silently to copy the library if the i386
slice is not present in the first place (like it is the case for
libclang_rt.tvos.a in Xcode 13.0 beta 1) -- this will avoid errors
like

Undefined symbols for architecture arm64:
  "___isPlatformVersionAtLeast", referenced from:
    swift::initializeProtocolLookup() in ImageInspectionMachO.cpp.o
    swift::initializeProtocolConformanceLookup() in
ImageInspectionMachO.cpp.o
    swift::initializeTypeMetadataRecordLookup() in
ImageInspectionMachO.cpp.o
    swift::initializeDynamicReplacementLookup() in
ImageInspectionMachO.cpp.o

This is a backport of #38262

Addresses rdar://80209915

The previous logic could fail silently to copy the library if the i386
slice is not present in the first place (like it is the case for
`libclang_rt.tvos.a` in Xcode 13.0 beta 1) -- this will avoid errors
like

```
Undefined symbols for architecture arm64:
  "___isPlatformVersionAtLeast", referenced from:
    swift::initializeProtocolLookup() in ImageInspectionMachO.cpp.o
    swift::initializeProtocolConformanceLookup() in
ImageInspectionMachO.cpp.o
    swift::initializeTypeMetadataRecordLookup() in
ImageInspectionMachO.cpp.o
    swift::initializeDynamicReplacementLookup() in
ImageInspectionMachO.cpp.o
```

This is a backport of swiftlang#38262

Addresses rdar://80209915
@edymtt edymtt requested a review from shahmishal July 6, 2021 14:51
@edymtt edymtt requested a review from a team as a code owner July 6, 2021 14:51
@edymtt
Copy link
Contributor Author

edymtt commented Jul 6, 2021

@swift-ci please smoke test

@edymtt
Copy link
Contributor Author

edymtt commented Jul 6, 2021

@swift-ci please build toolchain

@edymtt
Copy link
Contributor Author

edymtt commented Jul 6, 2021

@swift-ci please test

@edymtt edymtt added the r5.5 label Jul 6, 2021
@swift-ci
Copy link
Contributor

swift-ci commented Jul 6, 2021

Build failed
Swift Test OS X Platform
Git Sha - c482331

@edymtt
Copy link
Contributor Author

edymtt commented Jul 6, 2021

@swift-ci please build toolchain

@edymtt
Copy link
Contributor Author

edymtt commented Jul 6, 2021

@swift-ci please smoke test macOS

@edymtt
Copy link
Contributor Author

edymtt commented Jul 6, 2021

@swift-ci please test macOS

@swift-ci
Copy link
Contributor

swift-ci commented Jul 6, 2021

Linux Toolchain (Ubuntu 16.04)
Download Toolchain
Git Sha - c482331

Install command
tar zxf swift-PR-38275-623-ubuntu16.04.tar.gz
More info

@swift-ci
Copy link
Contributor

swift-ci commented Jul 7, 2021

macOS Toolchain
Download Toolchain
Git Sha - c482331

Install command
tar -zxf swift-PR-38275-1046-osx.tar.gz --directory ~/

@edymtt edymtt merged commit 790c936 into swiftlang:release/5.5 Jul 7, 2021
@AnthonyLatsis AnthonyLatsis added 🍒 release cherry pick Flag: Release branch cherry picks swift 5.5 labels Jan 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🍒 release cherry pick Flag: Release branch cherry picks swift 5.5
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants