Skip to content

Commit 290e43d

Browse files
committed
fix include paths in Package.swift on Linux
1 parent 2c9b36c commit 290e43d

File tree

1 file changed

+18
-8
lines changed

1 file changed

+18
-8
lines changed

Package.swift

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,16 @@ func findJavaHome() -> String {
3030
}
3131
let javaHome = findJavaHome()
3232

33+
let javaIncludePath = "\(javaHome)/include"
34+
#if os(Linux)
35+
let javaPlatformIncludePath = "\(javaIncludePath)/linux"
36+
#elseif os(macOS)
37+
let javaPlatformIncludePath = "\(javaIncludePath)/darwin"
38+
#else
39+
#error("Currently only macOS and Linux platforms are supported, this may change in the future.")
40+
// TODO: Handle windows as well
41+
#endif
42+
3343
let package = Package(
3444
name: "JavaKit",
3545
platforms: [
@@ -119,38 +129,38 @@ let package = Package(
119129
dependencies: ["JavaRuntime", "JavaKitMacros", "JavaTypes"],
120130
exclude: ["generated/JavaKit.swift2java"],
121131
swiftSettings: [
122-
.unsafeFlags(["-I\(javaHome)/include", "-I\(javaHome)/include/darwin"])
132+
.unsafeFlags(["-I\(javaIncludePath)", "-I\(javaPlatformIncludePath)"])
123133
]
124134
),
125135
.target(
126136
name: "JavaKitJar",
127137
dependencies: ["JavaKit"],
128138
exclude: ["generated/JavaKitJar.swift2java"],
129139
swiftSettings: [
130-
.unsafeFlags(["-I\(javaHome)/include", "-I\(javaHome)/include/darwin"])
140+
.unsafeFlags(["-I\(javaIncludePath)", "-I\(javaPlatformIncludePath)"])
131141
]
132142
),
133143
.target(
134144
name: "JavaKitNetwork",
135145
dependencies: ["JavaKit"],
136146
exclude: ["generated/JavaKitNetwork.swift2java"],
137147
swiftSettings: [
138-
.unsafeFlags(["-I\(javaHome)/include", "-I\(javaHome)/include/darwin"])
148+
.unsafeFlags(["-I\(javaIncludePath)", "-I\(javaPlatformIncludePath)"])
139149
]
140150
),
141151
.target(
142152
name: "JavaKitReflection",
143153
dependencies: ["JavaKit"],
144154
exclude: ["generated/JavaKitReflection.swift2java"],
145155
swiftSettings: [
146-
.unsafeFlags(["-I\(javaHome)/include", "-I\(javaHome)/include/darwin"])
156+
.unsafeFlags(["-I\(javaIncludePath)", "-I\(javaPlatformIncludePath)"])
147157
]
148158
),
149159
.target(
150160
name: "JavaKitVM",
151161
dependencies: ["JavaKit"],
152162
swiftSettings: [
153-
.unsafeFlags(["-I\(javaHome)/include", "-I\(javaHome)/include/darwin"])
163+
.unsafeFlags(["-I\(javaIncludePath)", "-I\(javaPlatformIncludePath)"])
154164
],
155165
linkerSettings: [
156166
.unsafeFlags(
@@ -169,14 +179,14 @@ let package = Package(
169179
name: "JavaKitExample",
170180
dependencies: ["JavaKit"],
171181
swiftSettings: [
172-
.unsafeFlags(["-I\(javaHome)/include", "-I\(javaHome)/include/darwin"])
182+
.unsafeFlags(["-I\(javaIncludePath)", "-I\(javaPlatformIncludePath)"])
173183
]
174184
),
175185

176186
.target(
177187
name: "JavaRuntime",
178188
swiftSettings: [
179-
.unsafeFlags(["-I\(javaHome)/include", "-I\(javaHome)/include/darwin"])
189+
.unsafeFlags(["-I\(javaIncludePath)", "-I\(javaPlatformIncludePath)"])
180190
]
181191
),
182192

@@ -253,7 +263,7 @@ let package = Package(
253263
"JExtractSwift"
254264
],
255265
swiftSettings: [
256-
.unsafeFlags(["-I\(javaHome)/include", "-I\(javaHome)/include/darwin"])
266+
.unsafeFlags(["-I\(javaIncludePath)", "-I\(javaPlatformIncludePath)"])
257267
]
258268
),
259269
]

0 commit comments

Comments
 (0)