@@ -30,6 +30,16 @@ func findJavaHome() -> String {
30
30
}
31
31
let javaHome = findJavaHome ( )
32
32
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
+
33
43
let package = Package (
34
44
name: " JavaKit " ,
35
45
platforms: [
@@ -119,38 +129,38 @@ let package = Package(
119
129
dependencies: [ " JavaRuntime " , " JavaKitMacros " , " JavaTypes " ] ,
120
130
exclude: [ " generated/JavaKit.swift2java " ] ,
121
131
swiftSettings: [
122
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
132
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
123
133
]
124
134
) ,
125
135
. target(
126
136
name: " JavaKitJar " ,
127
137
dependencies: [ " JavaKit " ] ,
128
138
exclude: [ " generated/JavaKitJar.swift2java " ] ,
129
139
swiftSettings: [
130
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
140
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
131
141
]
132
142
) ,
133
143
. target(
134
144
name: " JavaKitNetwork " ,
135
145
dependencies: [ " JavaKit " ] ,
136
146
exclude: [ " generated/JavaKitNetwork.swift2java " ] ,
137
147
swiftSettings: [
138
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
148
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
139
149
]
140
150
) ,
141
151
. target(
142
152
name: " JavaKitReflection " ,
143
153
dependencies: [ " JavaKit " ] ,
144
154
exclude: [ " generated/JavaKitReflection.swift2java " ] ,
145
155
swiftSettings: [
146
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
156
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
147
157
]
148
158
) ,
149
159
. target(
150
160
name: " JavaKitVM " ,
151
161
dependencies: [ " JavaKit " ] ,
152
162
swiftSettings: [
153
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
163
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
154
164
] ,
155
165
linkerSettings: [
156
166
. unsafeFlags(
@@ -169,14 +179,14 @@ let package = Package(
169
179
name: " JavaKitExample " ,
170
180
dependencies: [ " JavaKit " ] ,
171
181
swiftSettings: [
172
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
182
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
173
183
]
174
184
) ,
175
185
176
186
. target(
177
187
name: " JavaRuntime " ,
178
188
swiftSettings: [
179
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
189
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
180
190
]
181
191
) ,
182
192
@@ -253,7 +263,7 @@ let package = Package(
253
263
" JExtractSwift "
254
264
] ,
255
265
swiftSettings: [
256
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
266
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
257
267
]
258
268
) ,
259
269
]
0 commit comments