@@ -26,6 +26,16 @@ func findJavaHome() -> String {
26
26
}
27
27
let javaHome = findJavaHome ( )
28
28
29
+ let javaIncludePath = " \( javaHome) /include "
30
+ #if os(Linux)
31
+ let javaPlatformIncludePath = " \( javaIncludePath) /linux "
32
+ #elseif os(macOS)
33
+ let javaPlatformIncludePath = " \( javaIncludePath) /darwin "
34
+ #else
35
+ #error("Currently only macOS and Linux platforms are supported, this may change in the future.")
36
+ // TODO: Handle windows as well
37
+ #endif
38
+
29
39
let package = Package (
30
40
name: " JavaKit " ,
31
41
platforms: [
@@ -115,38 +125,38 @@ let package = Package(
115
125
dependencies: [ " JavaRuntime " , " JavaKitMacros " , " JavaTypes " ] ,
116
126
exclude: [ " generated/JavaKit.swift2java " ] ,
117
127
swiftSettings: [
118
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
128
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
119
129
]
120
130
) ,
121
131
. target(
122
132
name: " JavaKitJar " ,
123
133
dependencies: [ " JavaKit " ] ,
124
134
exclude: [ " generated/JavaKitJar.swift2java " ] ,
125
135
swiftSettings: [
126
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
136
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
127
137
]
128
138
) ,
129
139
. target(
130
140
name: " JavaKitNetwork " ,
131
141
dependencies: [ " JavaKit " ] ,
132
142
exclude: [ " generated/JavaKitNetwork.swift2java " ] ,
133
143
swiftSettings: [
134
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
144
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
135
145
]
136
146
) ,
137
147
. target(
138
148
name: " JavaKitReflection " ,
139
149
dependencies: [ " JavaKit " ] ,
140
150
exclude: [ " generated/JavaKitReflection.swift2java " ] ,
141
151
swiftSettings: [
142
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
152
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
143
153
]
144
154
) ,
145
155
. target(
146
156
name: " JavaKitVM " ,
147
157
dependencies: [ " JavaKit " ] ,
148
158
swiftSettings: [
149
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
159
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
150
160
] ,
151
161
linkerSettings: [
152
162
. unsafeFlags(
@@ -165,14 +175,14 @@ let package = Package(
165
175
name: " JavaKitExample " ,
166
176
dependencies: [ " JavaKit " ] ,
167
177
swiftSettings: [
168
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
178
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
169
179
]
170
180
) ,
171
181
172
182
. target(
173
183
name: " JavaRuntime " ,
174
184
swiftSettings: [
175
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
185
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
176
186
]
177
187
) ,
178
188
@@ -249,7 +259,7 @@ let package = Package(
249
259
" JExtractSwift "
250
260
] ,
251
261
swiftSettings: [
252
- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
262
+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
253
263
]
254
264
) ,
255
265
]
0 commit comments