Inceptum/build.gradle.kts

73 lines
2.9 KiB
Plaintext
Raw Normal View History

import io.gitlab.jfronny.scripts.*
plugins {
2022-10-13 19:37:35 +02:00
id("jf.autoversion")
}
allprojects {
2022-10-13 19:37:35 +02:00
version = rootProject.version
group = "io.gitlab.jfronny.inceptum"
}
2023-05-04 11:25:37 +02:00
// common
val jfCommonsVersion by extra(libs.versions.jf.commons.get())
val gsonCompileVersion by extra(libs.versions.gson.compile.get())
val jbAnnotationsVersion by extra(libs.versions.annotations.get())
2023-05-04 11:25:37 +02:00
// launcher-imgui
val lwjglVersion by extra(libs.versions.lwjgl.get())
val imguiVersion by extra(libs.versions.imgui.get())
2023-05-04 11:25:37 +02:00
// launcher-gtk
val javagiVersion by extra(libs.versions.javagi.get())
val flavorProp: String by extra(prop("flavor", "custom"))
if (!setOf("custom", "maven", "fat", "windows", "linux", "macos").contains(flavorProp)) throw IllegalStateException("Unsupported flavor: $flavorProp")
val flavor: String by extra(if (flavorProp != "custom") flavorProp else OS.TYPE.codename)
val isPublic by extra(project.hasProperty("public"))
2022-09-04 21:21:24 +02:00
val isRelease by extra(project.hasProperty("release"))
2022-11-03 17:07:55 +01:00
val buildTime by extra(System.currentTimeMillis())
2022-09-06 11:15:21 +02:00
val wrapperVersion by extra(1)
2022-09-04 21:21:24 +02:00
tasks.register("exportMetadata") {
doLast {
projectDir.resolve("version.json").writeText(
"""
{
2022-09-06 11:15:21 +02:00
"wrapperVersion": $wrapperVersion,
2022-09-04 21:21:24 +02:00
"version": "$version",
2022-11-03 17:07:55 +01:00
"buildTime": $buildTime,
2022-09-04 21:21:24 +02:00
"isPublic": $isPublic,
"isRelease": $isRelease,
2022-09-06 11:15:21 +02:00
"jvm": ${project(":common").extra["javaVersion"]},
"repositories": [
"https://repo.maven.apache.org/maven2/",
2022-11-02 00:38:04 +01:00
"https://maven.frohnmeyer-wds.de/artifacts/"
2022-09-06 11:15:21 +02:00
],
"natives": {
"windows": [
"org.lwjgl:lwjgl:$lwjglVersion:natives-windows",
"org.lwjgl:lwjgl-opengl:$lwjglVersion:natives-windows",
"org.lwjgl:lwjgl-glfw:$lwjglVersion:natives-windows",
"org.lwjgl:lwjgl-tinyfd:$lwjglVersion:natives-windows",
"io.github.spair:imgui-java-natives-windows:$imguiVersion"
],
"linux": [
"org.lwjgl:lwjgl:$lwjglVersion:natives-linux",
"org.lwjgl:lwjgl-opengl:$lwjglVersion:natives-linux",
"org.lwjgl:lwjgl-glfw:$lwjglVersion:natives-linux",
"org.lwjgl:lwjgl-tinyfd:$lwjglVersion:natives-linux",
"io.github.spair:imgui-java-natives-linux:$imguiVersion"
],
"macos": [
"org.lwjgl:lwjgl:$lwjglVersion:natives-macos",
"org.lwjgl:lwjgl-opengl:$lwjglVersion:natives-macos",
"org.lwjgl:lwjgl-glfw:$lwjglVersion:natives-macos",
"org.lwjgl:lwjgl-tinyfd:$lwjglVersion:natives-macos",
"io.github.spair:imgui-java-natives-macos:$imguiVersion"
]
}
2022-09-04 21:21:24 +02:00
}
2022-09-06 11:15:21 +02:00
""".trimIndent()
2022-09-04 21:21:24 +02:00
)
}
}