|
|
|
|
|
|
|
|
|
|
|
plugins {
|
|
|
|
`jni-library`
|
|
|
|
}
|
|
|
|
|
|
|
|
fun DependencyHandlerScope.javaImplementation(dep: Any) {
|
|
|
|
compileOnly(dep)
|
|
|
|
runtimeOnly(dep)
|
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
javaImplementation(project(":darklaf-native-utils"))
|
|
|
|
javaImplementation(project(":darklaf-utils"))
|
|
|
|
javaImplementation(project(":darklaf-platform-base"))
|
|
|
|
javaImplementation(project(":darklaf-theme"))
|
|
|
|
javaImplementation(project(":darklaf-property-loader"))
|
|
|
|
javaImplementation("net.java.dev.jna:jna")
|
|
|
|
}
|
|
|
|
|
|
|
|
library {
|
|
|
|
targetMachines.addAll(machines.windows.x86, machines.windows.x86_64)
|
|
|
|
binaries.configureEach {
|
|
|
|
compileTask.get().compilerArgs.addAll(
|
|
|
|
when (toolChain) {
|
|
|
|
is Gcc, is Clang -> listOf("--std=c++11")
|
|
|
|
is VisualCpp -> listOf("/EHsc")
|
|
|
|
else -> emptyList()
|
|
|
|
}
|
|
|
|
)
|
|
|
|
}
|
|
|
|
binaries.whenElementFinalized(CppSharedLibrary::class) {
|
|
|
|
linkTask.get().linkerArgs.addAll(
|
|
|
|
when (toolChain) {
|
|
|
|
is Gcc, is Clang -> listOf("-ldwmapi", "-lGdi32", "-luser32", "-ladvapi32", "-Shell32")
|
|
|
|
is VisualCpp -> listOf("dwmapi.lib", "user32.lib", "Gdi32.lib", "Advapi32.lib", "Shell32.lib")
|
|
|
|
else -> emptyList()
|
|
|
|
}
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|