Skip to content

Commit 0ee5a9d

Browse files
authored
Merge pull request #979 from 3405691582/swiftpm-openbsd
Update OpenBSD support for swiftpm.
2 parents 55c358a + eb8b141 commit 0ee5a9d

File tree

2 files changed

+12
-14
lines changed

2 files changed

+12
-14
lines changed

Package.swift

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ let terminfoLibraries: [LinkerSetting] = {
2828
if !useTerminfo {
2929
return []
3030
}
31-
#if os(FreeBSD)
31+
#if os(FreeBSD) || os(OpenBSD)
3232
return [.linkedLibrary("ncurses")]
3333
#else
3434
return [.linkedLibrary("ncurses", .when(platforms: [.linux, .macOS]))]
@@ -335,18 +335,7 @@ package.targets.first { $0.name == "llbuildBasic" }?.linkerSettings = [
335335
// FIXME: when the SupportedPlatforms availability directive is updated and
336336
// the platform port is in sync with this directive, these conditions can
337337
// be folded up with .when(platforms:_) clauses.
338-
#if os(OpenBSD)
339-
if let target = package.targets.first(where: { $0.name == "llbuildCore"}) {
340-
target.cSettings = [.unsafeFlags(["-I/usr/local/include"])]
341-
target.linkerSettings = [
342-
.linkedLibrary("sqlite3"),
343-
.unsafeFlags(["-L/usr/local/lib"])
344-
]
345-
}
346-
#elseif os(FreeBSD)
347-
if let target = package.targets.first(where: { $0.name == "llvmSupport" }) {
348-
target.linkerSettings = ["execinfo", "m", "pthread", "ncurses"].map { .linkedLibrary($0) }
349-
}
338+
#if os(FreeBSD) || os(OpenBSD)
350339
package.targets.filter({ $0.name == "llbuildCore" || $0.name == "llbuildCoreTests" }).forEach {
351340
$0.cSettings = [.unsafeFlags(["-I/usr/local/include"])]
352341
$0.linkerSettings = [
@@ -355,6 +344,15 @@ package.targets.filter({ $0.name == "llbuildCore" || $0.name == "llbuildCoreTest
355344
]
356345

357346
}
347+
#endif
348+
#if os(OpenBSD)
349+
if let target = package.targets.first(where: { $0.name == "llvmSupport" }) {
350+
target.linkerSettings = ["execinfo", "ncurses"].map { .linkedLibrary($0) }
351+
}
352+
#elseif os(FreeBSD)
353+
if let target = package.targets.first(where: { $0.name == "llvmSupport" }) {
354+
target.linkerSettings = ["execinfo", "m", "pthread", "ncurses"].map { .linkedLibrary($0) }
355+
}
358356
package.targets.filter({ $0.name == "llbuild" || $0.name == "swift-build-tool" }).forEach {
359357
$0.linkerSettings = [.linkedLibrary("dl"), .linkedLibrary("pthread")]
360358
}

unittests/Swift/BuildSystemEngineTests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ import llbuildTestSupport
2222
import WinSDK
2323
#endif
2424

25-
#if os(Windows) || os(FreeBSD)
25+
#if os(Windows) || os(OpenBSD) || os(FreeBSD)
2626
fileprivate let NSEC_PER_SEC = 1000000000
2727
#endif
2828

0 commit comments

Comments
 (0)