98 lines
2.5 KiB
Groovy
98 lines
2.5 KiB
Groovy
|
|
|
|
pluginManagement {
|
|
repositories {
|
|
google()
|
|
mavenCentral()
|
|
gradlePluginPortal()
|
|
maven { url = uri("https://teavm.org/maven/repository") }
|
|
mavenLocal()
|
|
}
|
|
plugins {
|
|
id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0"
|
|
id("com.android.application") version '8.12.2' apply false
|
|
id("com.android.library") version '8.12.2' apply false
|
|
id("org.jetbrains.kotlin.android") version "2.1.20" apply false
|
|
}
|
|
}
|
|
|
|
|
|
|
|
plugins {
|
|
id("org.gradle.toolchains.foojay-resolver") version "1.0.0"
|
|
}
|
|
|
|
toolchainManagement {
|
|
jvm {
|
|
javaRepositories {
|
|
repository("foojay") {
|
|
resolverClass = org.gradle.toolchains.foojay.FoojayToolchainResolver
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencyResolutionManagement {
|
|
repositories {
|
|
mavenLocal()
|
|
mavenCentral()
|
|
google()
|
|
maven {
|
|
url = uri("https://central.sonatype.com/repository/maven-snapshots")
|
|
}
|
|
maven { url = uri("https://teavm.org/maven/repository") }
|
|
ivy {
|
|
name = "Node.js"
|
|
setUrl("https://nodejs.org/dist/")
|
|
patternLayout {
|
|
artifact("v[revision]/[artifact](-v[revision]-[classifier]).[ext]")
|
|
}
|
|
metadataSources {
|
|
artifact()
|
|
}
|
|
content {
|
|
includeModule("org.nodejs", "node")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
if (!gradle.hasProperty('ext')) {
|
|
gradle.ext {}
|
|
}
|
|
|
|
gradle.beforeProject { p ->
|
|
if (p == p.rootProject) {
|
|
p.tasks.register("cleanDist", org.gradle.api.tasks.Delete) {
|
|
delete p.layout.projectDirectory.dir("dist")
|
|
}
|
|
p.gradle.projectsEvaluated {
|
|
def cleanTask = p.tasks.findByName("clean") ?: p.tasks.register("clean")
|
|
cleanTask.configure { dependsOn("cleanDist") }
|
|
}
|
|
}
|
|
}
|
|
|
|
// import json properties
|
|
apply from: "${rootDir}/gradle/libs/props.gradle"
|
|
def ngeConfig = gradle.ext.loadNgeAppProperties("${rootDir}/app/src/main/resources/ngeapp.json")
|
|
gradle.beforeProject { p ->
|
|
ngeConfig.each { k, v -> p.ext.set(k, v) }
|
|
if (ngeConfig.Version) p.version = ngeConfig.Version.toString()
|
|
if (ngeConfig.Namespace) p.group = ngeConfig.Namespace.toString()
|
|
}
|
|
|
|
print("Build with config: "+ngeConfig)
|
|
rootProject.name = ngeConfig.ShortName
|
|
include('app')
|
|
|
|
// ENABLE DESKTOP BUILD TARGET
|
|
include('platform-desktop')
|
|
|
|
// ENABLE ANDROID BUILD TARGET
|
|
include('platform-android')
|
|
|
|
// ENABLE WEB BUILD TARGET
|
|
include('platform-web')
|