Skip to content

[FreeBSD] Enable CFRunLoop support #5188

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 2 commits into
base: main
Choose a base branch
from

Conversation

michael-yuji
Copy link
Member

This patch enables CFRunLoop for FreeBSD.
Related libdispatch PR: swiftlang/swift-corelibs-libdispatch#861

@jakepetroules jakepetroules moved this from Done to In Progress in Swift on FreeBSD Mar 18, 2025
@parkera
Copy link
Contributor

parkera commented Jun 4, 2025

@swift-ci test

@@ -120,7 +120,7 @@ open class RunLoop: NSObject {
// Make sure we honor the override -- var currentCFRunLoop will do so on platforms where overrides are available.

// TODO: This has been removed as public API in port to the package, because CoreFoundation cannot be available as both toolchain "CoreFoundation" and package "_CoreFoundation"
#if os(Linux) || os(macOS) || os(iOS) || os(tvOS) || os(watchOS) || os(OpenBSD)
Copy link
Contributor

Choose a reason for hiding this comment

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

Should this just be #if !os(Windows)? Otherwise it seems like we'll just need to keep tweaking this over and over again. We probably want to take this code path on visionOS, NetBSD, Solaris, Android, and so on, right?

Copy link
Member Author

Choose a reason for hiding this comment

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

I think this is not necessarily true, since whether we should enable this code path depends on if such platform implemented the bits to support CFRunLoop, which is not necessarily true and by default we should assume it does not have support.

@etcwilde
Copy link
Contributor

@swift-ci please test

@michael-yuji
Copy link
Member Author

@swift-ci please test

@etcwilde
Copy link
Contributor

The crash on Linux should be fixed by swiftlang/swift#82176.

@etcwilde
Copy link
Contributor

@swift-ci please test Linux

@etcwilde
Copy link
Contributor

@swift-ci please test Windows

@etcwilde
Copy link
Contributor

swiftlang/swift-driver#1931
@swift-ci please test Linux

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
Development

Successfully merging this pull request may close these issues.

5 participants