Engine/testapp/build.gradle.kts
JeremyStarTM e2e5040055
All checks were successful
PRs & Pushes / build (push) Successful in 1m46s
PRs & Pushes / test (push) Successful in 1m44s
PRs & Pushes / build-apidoc (push) Successful in 1m44s
Improve build scripts
Thanks solonovamax! She/he/they helped improve the engine's build scripts and gave a lot of tips when working with Gradle.

Website: https://solonovamax.gay
Fedi: https://tech.lgbt/@solonovamax
GitHub: https://github.com/solonovamax
2024-12-24 23:56:42 +01:00

77 lines
2.2 KiB
Text

/*
* STAROPENSOURCE ENGINE SOURCE FILE
* Copyright (c) 2024 The StarOpenSource Engine Authors
* Licensed under the GNU General Public License v3.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
// Plugins
plugins {
id("application")
}
// Dependencies
dependencies {
// sos!engine
implementation(project(":base"))
implementation(project(":ansi"))
}
// Configure JAR
tasks.withType<Jar> {
manifest {
attributes["Main-Class"] = "de.staropensource.engine.testapp.Main"
}
}
// Configure application
application {
mainClass = "de.staropensource.engine.testapp.Main"
// JVM arguments
applicationDefaultJvmArgs = buildList {
// Unlock more VM options
add("-XX:+UnlockDiagnosticVMOptions")
add("-XX:+UnlockExperimentalVMOptions")
// VM settings
// -> Log garbage collection
if (
hasProperty("jvm.logGC")
&& property("jvm.logGC") as String == "true"
)
add("-Xlog:gc")
// -> Log JIT & AOT
if (
hasProperty("jvm.logJITandAOT")
&& property("jvm.logJITandAOT") as String == "true"
) {
add("-XX:+PrintCompilation")
add("-XX:+PrintInlining")
}
// -> Select garbage collector
if (hasProperty("jvm.garbageCollector"))
when (property("jvm.garbageCollector")) {
"epsilon" -> add("-XX:+UseEpsilonGC")
"serial" -> add("-XX:+UseSerialGC")
"g1" -> add("-XX:+UseG1GC")
}
// Jansi
add("-Djansi.mode=force")
}
}