@@ -26,7 +26,6 @@ val apiVersion: String by project
2626val minecraftVersion: String by project
2727val forgeVersion: String by project
2828val recommendedVersion: String by project
29- val organization: String by project
3029val projectUrl: String by project
3130
3231description = " The SpongeAPI implementation for MinecraftForge"
@@ -80,63 +79,67 @@ val mixins: NamedDomainObjectProvider<SourceSet> = commonProject.sourceSets.name
8079val main: NamedDomainObjectProvider <SourceSet > = commonProject.sourceSets.named(" main" )
8180
8281// SpongeForge source sets
83- val forgeMain by sourceSets.named(" main" ) {
84- // implementation (compile) dependencies
85- spongeImpl.applyNamedDependencyOnOutput(commonProject, accessors.get(), this , project, this .implementationConfigurationName)
86- spongeImpl.applyNamedDependencyOnOutput(commonProject, launch.get(), this , project, this .implementationConfigurationName)
87- spongeImpl.applyNamedDependencyOnOutput(commonProject, applaunch.get(), this , project, this .implementationConfigurationName)
82+ // Service layer
83+ val forgeAppLaunch by sourceSets.register(" applaunch" ) {
84+ spongeImpl.addDependencyToImplementation(applaunch.get(), this )
8885
8986 configurations.named(implementationConfigurationName) {
90- extendsFrom(gameLayerConfig .get())
87+ extendsFrom(serviceLayerConfig .get())
9188 }
9289}
90+
91+ // Lang layer
92+ val forgeLang by sourceSets.register(" lang" ) {
93+ configurations.named(implementationConfigurationName) {
94+ extendsFrom(langLayerConfig.get())
95+ }
96+ }
97+
98+ // Game layer
9399val forgeLaunch by sourceSets.register(" launch" ) {
94- // implementation (compile) dependencies
95- spongeImpl.applyNamedDependencyOnOutput(commonProject, launch.get(), this , project, this .implementationConfigurationName)
96- spongeImpl.applyNamedDependencyOnOutput(commonProject, applaunch.get(), this , project, this .implementationConfigurationName)
97- spongeImpl.applyNamedDependencyOnOutput(commonProject, main.get(), this , project, this .implementationConfigurationName)
98- spongeImpl.applyNamedDependencyOnOutput(project, this , forgeMain, project, forgeMain.implementationConfigurationName)
100+ spongeImpl.addDependencyToImplementation(applaunch.get(), this )
101+ spongeImpl.addDependencyToImplementation(launch.get(), this )
102+ spongeImpl.addDependencyToImplementation(main.get(), this )
103+ spongeImpl.addDependencyToImplementation(forgeAppLaunch, this )
99104
100105 configurations.named(implementationConfigurationName) {
101106 extendsFrom(gameLayerConfig.get())
102107 }
103108}
104109val forgeAccessors by sourceSets.register(" accessors" ) {
105- spongeImpl.applyNamedDependencyOnOutput(commonProject, mixins.get(), this , project, this .implementationConfigurationName)
106- spongeImpl.applyNamedDependencyOnOutput(commonProject, accessors.get(), this , project, this .implementationConfigurationName)
107- spongeImpl.applyNamedDependencyOnOutput(project, this , forgeLaunch, project, forgeLaunch.implementationConfigurationName)
110+ spongeImpl.addDependencyToImplementation(accessors.get(), this )
108111
109112 configurations.named(implementationConfigurationName) {
110113 extendsFrom(gameLayerConfig.get())
111114 }
112115}
113116val forgeMixins by sourceSets.register(" mixins" ) {
114- // implementation (compile) dependencies
115- spongeImpl.applyNamedDependencyOnOutput(commonProject, mixins.get(), this , project, this .implementationConfigurationName)
116- spongeImpl.applyNamedDependencyOnOutput(commonProject, accessors.get(), this , project, this .implementationConfigurationName)
117- spongeImpl.applyNamedDependencyOnOutput(commonProject, launch.get(), this , project, this .implementationConfigurationName)
118- spongeImpl.applyNamedDependencyOnOutput(commonProject, applaunch.get(), this , project, this .implementationConfigurationName)
119- spongeImpl.applyNamedDependencyOnOutput(commonProject, main.get(), this , project, this .implementationConfigurationName)
120- spongeImpl.applyNamedDependencyOnOutput(project, forgeMain, this , project, this .implementationConfigurationName)
121- spongeImpl.applyNamedDependencyOnOutput(project, forgeAccessors, this , project, this .implementationConfigurationName)
122- spongeImpl.applyNamedDependencyOnOutput(project, forgeLaunch, this , project, this .implementationConfigurationName)
117+ spongeImpl.addDependencyToImplementation(applaunch.get(), this )
118+ spongeImpl.addDependencyToImplementation(launch.get(), this )
119+ spongeImpl.addDependencyToImplementation(accessors.get(), this )
120+ spongeImpl.addDependencyToImplementation(mixins.get(), this )
121+ spongeImpl.addDependencyToImplementation(main.get(), this )
122+ spongeImpl.addDependencyToImplementation(forgeAppLaunch, this )
123+ spongeImpl.addDependencyToImplementation(forgeLaunch, this )
124+ spongeImpl.addDependencyToImplementation(forgeAccessors, this )
123125
124126 configurations.named(implementationConfigurationName) {
125127 extendsFrom(gameLayerConfig.get())
126128 }
127129}
128- val forgeLang by sourceSets.register(" lang" ) {
129- configurations.named(implementationConfigurationName) {
130- extendsFrom(langLayerConfig.get())
131- }
132- }
133- val forgeAppLaunch by sourceSets.register(" applaunch" ) {
134- // implementation (compile) dependencies
135- spongeImpl.applyNamedDependencyOnOutput(commonProject, applaunch.get(), this , project, this .implementationConfigurationName)
136- spongeImpl.applyNamedDependencyOnOutput(project, this , forgeLaunch, project, forgeLaunch.implementationConfigurationName)
130+ val forgeMain by sourceSets.named(" main" ) {
131+ spongeImpl.addDependencyToImplementation(applaunch.get(), this )
132+ spongeImpl.addDependencyToImplementation(launch.get(), this )
133+ spongeImpl.addDependencyToImplementation(accessors.get(), this )
134+ spongeImpl.addDependencyToImplementation(main.get(), this )
135+ spongeImpl.addDependencyToImplementation(forgeAppLaunch, this )
136+ spongeImpl.addDependencyToImplementation(forgeLaunch, this )
137+ spongeImpl.addDependencyToImplementation(forgeAccessors, this )
138+
139+ spongeImpl.addDependencyToImplementation(this , forgeMixins)
137140
138141 configurations.named(implementationConfigurationName) {
139- extendsFrom(serviceLayerConfig .get())
142+ extendsFrom(gameLayerConfig .get())
140143 }
141144}
142145
@@ -195,18 +198,6 @@ dependencies {
195198 }
196199 })
197200
198- api(project(" :" , configuration = " launch" )) {
199- exclude(group = " org.spongepowered" , module = " mixin" )
200- }
201- implementation(project(" :" , configuration = " accessors" )) {
202- exclude(group = " org.spongepowered" , module = " mixin" )
203- }
204- implementation(project(commonProject.path)) {
205- exclude(group = " org.spongepowered" , module = " mixin" )
206- }
207-
208- forgeMixins.implementationConfigurationName(project(commonProject.path))
209-
210201 val service = serviceLibrariesConfig.name
211202 service(apiLibs.pluginSpi)
212203 service(project(transformersProject.path)) {
@@ -441,14 +432,6 @@ sourceSets {
441432 }
442433}
443434
444- indraSpotlessLicenser {
445- licenseHeaderFile(rootProject.file(" HEADER.txt" ))
446-
447- property(" name" , " Sponge" )
448- property(" organization" , organization)
449- property(" url" , projectUrl)
450- }
451-
452435publishing {
453436 publications {
454437 register(" sponge" , MavenPublication ::class ) {
0 commit comments