@@ -26,6 +26,16 @@ func findJavaHome() -> String {
2626}
2727let javaHome = findJavaHome ( )
2828
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+
2939let package = Package (
3040 name: " JavaKit " ,
3141 platforms: [
@@ -115,38 +125,38 @@ let package = Package(
115125 dependencies: [ " JavaRuntime " , " JavaKitMacros " , " JavaTypes " ] ,
116126 exclude: [ " generated/JavaKit.swift2java " ] ,
117127 swiftSettings: [
118- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
128+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
119129 ]
120130 ) ,
121131 . target(
122132 name: " JavaKitJar " ,
123133 dependencies: [ " JavaKit " ] ,
124134 exclude: [ " generated/JavaKitJar.swift2java " ] ,
125135 swiftSettings: [
126- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
136+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
127137 ]
128138 ) ,
129139 . target(
130140 name: " JavaKitNetwork " ,
131141 dependencies: [ " JavaKit " ] ,
132142 exclude: [ " generated/JavaKitNetwork.swift2java " ] ,
133143 swiftSettings: [
134- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
144+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
135145 ]
136146 ) ,
137147 . target(
138148 name: " JavaKitReflection " ,
139149 dependencies: [ " JavaKit " ] ,
140150 exclude: [ " generated/JavaKitReflection.swift2java " ] ,
141151 swiftSettings: [
142- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
152+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
143153 ]
144154 ) ,
145155 . target(
146156 name: " JavaKitVM " ,
147157 dependencies: [ " JavaKit " ] ,
148158 swiftSettings: [
149- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
159+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
150160 ] ,
151161 linkerSettings: [
152162 . unsafeFlags(
@@ -165,14 +175,14 @@ let package = Package(
165175 name: " JavaKitExample " ,
166176 dependencies: [ " JavaKit " ] ,
167177 swiftSettings: [
168- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
178+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
169179 ]
170180 ) ,
171181
172182 . target(
173183 name: " JavaRuntime " ,
174184 swiftSettings: [
175- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
185+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
176186 ]
177187 ) ,
178188
@@ -249,7 +259,7 @@ let package = Package(
249259 " JExtractSwift "
250260 ] ,
251261 swiftSettings: [
252- . unsafeFlags( [ " -I \( javaHome ) /include " , " -I \( javaHome ) /include/darwin " ] )
262+ . unsafeFlags( [ " -I \( javaIncludePath ) " , " -I \( javaPlatformIncludePath ) " ] )
253263 ]
254264 ) ,
255265 ]
0 commit comments