-
Notifications
You must be signed in to change notification settings - Fork 188
[6.2][cherrypick] OpenBSD support. #1254
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: release/6.2
Are you sure you want to change the base?
Conversation
* Advise porter on where to make necessary change. In swiftlang#1075 the change was already made for BSD (thank you!); my working edit had this guidance to ensure future porters get an error directing them where to make a necessary change. Otherwise, the FoundationEssentials build will fail and complain these variables are not defined but not have guidance as to where they are sourced from. * OpenBSD does not support extended attributes. * OpenBSD does not have secure_getenv. * Remaining OpenBSD changes. * OpenBSD also needs `pthread_mutex_t?`. * Originally I followed Darwin's check with `d_namlen`, but this should work too. * Correct statvfs type casts for OpenBSD. On OpenBSD, fsblkcnt_t -- the type of f_blocks -- is a UInt64; therefore, so must `blockSize` be. Ultimately, both sides of the `totalSizeBytes` multiplication should probably be type cast for all platforms, but that's a more significant functional change for another time. * Default activeProcessorCount to 1, not 0. After a rather tedious debugging session trying to figure out why swiftpm-bootstrap appeared to be deadlocked, this turned out to be the culprit. Perhaps this should be #error instead, but for now, set a sensible default. * Use sysconf for activeProcessorCount. This is what Dispatch does in some places for OpenBSD anyway, so do likewise here.
@swift-ci please test. |
1 similar comment
@swift-ci please test. |
@swift-ci please test macOS platform. |
1 similar comment
@swift-ci please test macOS platform. |
I think we should actually be bulk merging main to 6.2 for the next few months. Cc @itingliu @shahmishal |
@parkera We have a GitHub Action workflow that creates a PR every week from main to release/6.2 automerger. https://github.com/swiftlang/github-workflows/blob/main/.github/workflows/create_automerge_pr.yml If you would prefer this setup for the swift-foundation repository, we can configure it. |
Should I expect an automerge to be set up to take care of this change? |
Explanation:
Cherrypick OpenBSD support changes onto 6.2. This will help reduce the delta between the branch and an eventual OpenBSD platform port.
Scope:
Most of the changes are limited to OpenBSD or changing defaults that do not apply to other operating systems.
Issues:
See OpenBSD port issue in OpenBSD port tracking swift#78437
Original PRs:
OpenBSD support. #1126
Risk:
Minimal, since changes are mostly limited to OpenBSD.
Testing:
Original change has passed CI.
Reviewers:
@finagolfin
@parkera