mirror of
https://github.com/Jozufozu/Flywheel.git
synced 2024-12-26 15:06:28 +01:00
77833a5b01
- Create separate remap tasks for the common mojmap api to get loom to populate its manifest file - Add helper method to fork a JarTaskSet and generate new remap tasks - Remove non-remap publish method - Set assemble to depend on published jar tasks again - Add companion methods to create individual jar tasks
82 lines
1.9 KiB
Text
82 lines
1.9 KiB
Text
plugins {
|
|
idea
|
|
java
|
|
`maven-publish`
|
|
id("dev.architectury.loom")
|
|
id("flywheel.subproject")
|
|
id("flywheel.platform")
|
|
}
|
|
|
|
val api = sourceSets.create("api")
|
|
val lib = sourceSets.create("lib")
|
|
val backend = sourceSets.create("backend")
|
|
val main = sourceSets.getByName("main")
|
|
|
|
transitiveSourceSets {
|
|
compileClasspath = main.compileClasspath
|
|
|
|
sourceSet(api) {
|
|
rootCompile()
|
|
}
|
|
sourceSet(lib) {
|
|
rootCompile()
|
|
compile(api)
|
|
}
|
|
sourceSet(backend) {
|
|
rootCompile()
|
|
compile(api, lib)
|
|
}
|
|
sourceSet(main) {
|
|
compile(api, lib, backend)
|
|
}
|
|
|
|
createCompileConfigurations()
|
|
}
|
|
|
|
platform {
|
|
commonProject = project(":common")
|
|
sources(api, lib, backend, main)
|
|
compileWithCommonSourceSets()
|
|
setupLoomMod()
|
|
setupLoomRuns()
|
|
setupFatJar()
|
|
}
|
|
|
|
jarSets {
|
|
mainSet.publish(platform.modArtifactId)
|
|
create("api", api, lib).apply {
|
|
addToAssemble()
|
|
publish(platform.apiArtifactId)
|
|
}
|
|
}
|
|
|
|
defaultPackageInfos {
|
|
sources(api, lib, backend, main)
|
|
}
|
|
|
|
loom {
|
|
forge {
|
|
mixinConfig("flywheel.backend.mixins.json")
|
|
mixinConfig("flywheel.impl.mixins.json")
|
|
mixinConfig("flywheel.impl.sodium.mixins.json")
|
|
}
|
|
|
|
runs {
|
|
configureEach {
|
|
property("forge.logging.markers", "")
|
|
property("forge.logging.console.level", "debug")
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
forge("net.minecraftforge:forge:${property("minecraft_version")}-${property("forge_version")}")
|
|
|
|
modCompileOnly("maven.modrinth:embeddium:${property("embeddium_version")}")
|
|
modCompileOnly("maven.modrinth:oculus:${property("oculus_version")}")
|
|
|
|
"forApi"(project(path = ":common", configuration = "commonApiOnly"))
|
|
"forLib"(project(path = ":common", configuration = "commonLib"))
|
|
"forBackend"(project(path = ":common", configuration = "commonBackend"))
|
|
"forMain"(project(path = ":common", configuration = "commonImpl"))
|
|
}
|