mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2026-08-27 12:41:43 +00:00
58 lines
2.2 KiB
Groovy
58 lines
2.2 KiB
Groovy
/*
|
|
* Iris is a World Generator for Minecraft Bukkit Servers
|
|
* Copyright (c) 2021 Arcane Arts (Volmit Software)
|
|
*
|
|
* 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 General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
plugins {
|
|
id 'org.gradle.toolchains.foojay-resolver-convention' version '1.0.0'
|
|
}
|
|
|
|
rootProject.name = 'Iris'
|
|
|
|
apply from: new File(settingsDir, 'gradle/volmlib-resolution.settings.gradle')
|
|
|
|
include(':core', ':core:agent')
|
|
include(':probe')
|
|
include(':spi')
|
|
include(':adapters:bukkit:plugin')
|
|
include(':adapters:bukkit:nms:v26_2_R1')
|
|
|
|
/*
|
|
* Opt-in: surface the three modded adapter builds to the IDE.
|
|
*
|
|
* ./gradlew -PincludeModdedAdapters=true ...
|
|
*
|
|
* OFF by default, and deliberately so. Each adapter settings file does
|
|
* `includeBuild('../..')` back onto this build so it can substitute `art.arcane:core` and
|
|
* `art.arcane:spi` with the root projects. Including the adapters from here therefore closes a
|
|
* composite cycle (root -> adapter -> root) and registers the same VolmLib checkout from two
|
|
* participants at once. The release path does not need it: `fabricJar`/`forgeJar`/`neoforgeJar`
|
|
* invoke each adapter through its own wrapper as a standalone build (see build.gradle), which is
|
|
* also what keeps Loom, ForgeGradle, and ModDevGradle off one plugin classpath.
|
|
*
|
|
* Enable it only for IDE import, and expect to disable it again if Gradle rejects the cycle.
|
|
*/
|
|
boolean includeModdedAdapters = providers.gradleProperty('includeModdedAdapters')
|
|
.orElse('false')
|
|
.map { String value -> value.equalsIgnoreCase('true') }
|
|
.get()
|
|
|
|
if (includeModdedAdapters) {
|
|
includeBuild('adapters/fabric')
|
|
includeBuild('adapters/forge')
|
|
includeBuild('adapters/neoforge')
|
|
}
|