Darklaf - A themeable swing Look and Feel based on Darcula-Laf
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
2.0 KiB

plugins {
java
`module-info-compile`
id("dev.nokee.jni-library")
id("dev.nokee.cpp-language")
`uber-jni-jar`
`use-prebuilt-binaries`
}
library {
dependencies {
jvmImplementation(projects.darklafNativeUtils)
jvmImplementation(projects.darklafUtils)
jvmImplementation(projects.darklafPlatformBase)
jvmImplementation(projects.darklafTheme)
jvmImplementation(projects.darklafPropertyLoader)
}
targetMachines.addAll(machines.windows.x86, machines.windows.x86_64)
variants.configureEach {
resourcePath.set("com/github/weisj/darklaf/platform/${project.name}")
sharedLibrary {
compileTasks.configureEach {
compilerArgs.addAll(
toolChain.map {
when (it) {
is Gcc, is Clang -> listOf(
"--std=c++17",
"-Wall", "-Wextra", "-pedantic",
"-Wno-language-extension-token", "-Wno-ignored-attributes"
)
is VisualCpp -> listOf("/std:c++17", "/EHsc", "/W4", "/permissive", "/WX")
else -> emptyList()
}
}
)
optimizedBinary()
}
linkTask.configure {
linkerArgs.addAll(
toolChain.map {
when (it) {
is Gcc, is Clang -> listOf(
"-ldwmapi", "-lGdi32", "-luser32",
"-ladvapi32", "-lShell32"
)
is VisualCpp -> listOf(
"dwmapi.lib", "user32.lib", "Gdi32.lib",
"Advapi32.lib", "Shell32.lib"
)
else -> emptyList()
}
}
)
}
}
}
}