#!/usr/bin/make -f include /usr/share/dpkg/pkg-info.mk # The upstream Maven version differs from the Debian one for the release candidates UPSTREAM_VERSION := $(subst ~rc,-rc-,$(DEB_VERSION_UPSTREAM)) KOTLIN_VERSION := $(shell cat /usr/share/kotlin/kotlinc/build.txt) %: dh $@ --with maven-repo-helper override_dh_auto_build: # KotlinDependencyExtensions.kt is generated with a Gradle task (GenerateKotlinDependencyExtensions.kt) # The task is turned into a standalone program to avoid depending on Gradle mkdir --parents debian/generator subprojects/provider/src/generated/kotlin/org/gradle/kotlin/dsl sed -e '/^open class/,$$!{/^import org\.gradle\.api/d}' \ -e 's/ : DefaultTask()//' \ -e '/^ @get:OutputFile$$/d' \ -e '/^ @get:Input$$/d' \ -e '/^ @TaskAction$$/d' \ -e '/^ @Suppress("unused")$$/d' \ buildSrc/src/main/kotlin/codegen/GenerateKotlinDependencyExtensions.kt \ > debian/generator/generator.kt cat debian/generator-main.kt >> debian/generator/generator.kt kotlinc -include-runtime -d debian/generator/generator.jar debian/generator/generator.kt java -jar debian/generator/generator.jar \ subprojects/provider/src/generated/kotlin/org/gradle/kotlin/dsl/KotlinDependencyExtensions.kt \ debian \ debian # gradle-kotlin-dsl-tooling-models kotlinc \ -module-name gradle-kotlin-dsl-tooling-models \ -d subprojects/tooling-models/target/classes \ subprojects/tooling-models/src/main/kotlin/ cp -Rp subprojects/tooling-models/src/main/kotlin/* subprojects/tooling-models/target/classes jar cf subprojects/tooling-models/target/gradle-kotlin-dsl-tooling-models.jar -C subprojects/tooling-models/target/classes . # gradle-kotlin-dsl kotlinc \ -cp 'subprojects/tooling-models/target/gradle-kotlin-dsl-tooling-models.jar:\ :/usr/share/java/kotlin-compiler-embeddable.jar:\ :/usr/share/java/kotlin-scripting-compiler-embeddable.jar:\ :/usr/share/java/kotlin-scripting-common.jar:\ :/usr/share/java/kotlin-scripting-jvm.jar:\ :/usr/share/java/kotlin-stdlib-jdk7.jar:\ :/usr/share/kotlin/kotlinc/lib/sam-with-receiver-compiler-plugin.jar:\ :/usr/share/java/atinject-jsr330-api.jar:\ :/usr/share/java/groovy.jar:\ :/usr/share/groovy/lib/groovy-json.jar:\ :/usr/share/java/slf4j-api.jar:\ :/usr/share/java/gradle-base-services.jar:\ :/usr/share/java/gradle-base-services-groovy.jar:\ :/usr/share/java/gradle-build-cache.jar:\ :/usr/share/java/gradle-core.jar:\ :/usr/share/java/gradle-core-api.jar:\ :/usr/share/java/gradle-logging.jar:\ :/usr/share/java/gradle-model-core.jar:\ :/usr/share/java/gradle-persistent-cache.jar:\ :/usr/share/java/gradle-process-services.jar:\ :/usr/share/java/gradle-resources.jar:\ :/usr/share/java/gradle-tooling-api.jar' \ -module-name gradle-kotlin-dsl \ -d subprojects/provider/target/classes \ subprojects/provider/src/main/ subprojects/provider/src/generated/kotlin/ cp -Rp subprojects/provider/src/main/kotlin/* subprojects/provider/target/classes cp -Rp subprojects/provider/src/main/resources/* subprojects/provider/target/classes cp -Rp subprojects/provider/src/generated/kotlin/* subprojects/provider/target/classes # version manifest, generated by a WriteProperties task upstream; # the launcher of Gradle fails to start without it printf 'provider=$(UPSTREAM_VERSION)\nkotlin=$(KOTLIN_VERSION)\n' \ > subprojects/provider/target/classes/gradle-kotlin-dsl-versions.properties printf 'projects=\nruntime=annotations-13.0.jar,gradle-kotlin-dsl-tooling-models.jar,kotlin-compiler-embeddable.jar,kotlin-scripting-compiler-embeddable.jar,kotlin-scripting-common.jar,kotlin-scripting-jvm.jar,kotlin-scripting-impl.jar,kotlin-reflect.jar,kotlin-sam-with-receiver-compiler-plugin.jar,kotlin-stdlib.jar,kotlin-stdlib-jdk7.jar,kotlin-stdlib-jdk8.jar,kotlin-script-runtime.jar,trove4j.jar' \ > subprojects/provider/target/classes/gradle-kotlin-dsl-classpath.properties jar cf subprojects/provider/target/gradle-kotlin-dsl.jar -C subprojects/provider/target/classes/ . # gradle-kotlin-dsl-provider-plugins kotlinc \ -cp 'subprojects/provider/target/gradle-kotlin-dsl.jar:\ :/usr/share/java/gradle-base-services.jar:\ :/usr/share/java/gradle-core.jar:\ :/usr/share/java/gradle-core-api.jar:\ :/usr/share/java/gradle-model-core.jar:\ :/usr/share/java/gradle-plugins.jar:\ :/usr/share/java/gradle-base-services-groovy.jar' \ -module-name gradle-kotlin-dsl-provider-plugins \ -d subprojects/provider-plugins/target/classes \ subprojects/provider-plugins/src/main/ cp -Rp subprojects/provider-plugins/src/main/kotlin/* subprojects/provider-plugins/target/classes [ -d subprojects/provider-plugins/src/main/resources ] && cp -Rp subprojects/provider-plugins/src/main/resources/* subprojects/provider-plugins/target/classes || true printf 'projects=\nruntime=kotlin-stdlib.jar,kotlin-stdlib-jdk7.jar,kotlin-stdlib-jdk8.jar' \ > subprojects/provider-plugins/target/classes/gradle-kotlin-dsl-provider-plugins-classpath.properties jar cf subprojects/provider-plugins/target/gradle-kotlin-dsl-provider-plugins.jar -C subprojects/provider-plugins/target/classes . # gradle-kotlin-dsl-tooling-builders kotlinc \ -cp 'subprojects/provider/target/gradle-kotlin-dsl.jar:\ :subprojects/tooling-models/target/gradle-kotlin-dsl-tooling-models.jar:\ :/usr/share/java/gradle-base-services.jar:\ :/usr/share/java/gradle-base-services-groovy.jar:\ :/usr/share/java/gradle-core.jar:\ :/usr/share/java/gradle-core-api.jar:\ :/usr/share/java/gradle-dependency-management.jar:\ :/usr/share/java/gradle-ide.jar:\ :/usr/share/java/gradle-model-core.jar:\ :/usr/share/java/gradle-platform-base.jar:\ :/usr/share/java/gradle-plugins.jar:\ :/usr/share/java/gradle-platform-jvm.jar:\ :/usr/share/java/gradle-resources.jar:\ :/usr/share/java/gradle-tooling-api.jar' \ -module-name gradle-kotlin-dsl-tooling-builders \ -d subprojects/tooling-builders/target/classes \ subprojects/tooling-builders/src/main/kotlin/ cp -Rp subprojects/tooling-builders/src/main/kotlin/* subprojects/tooling-builders/target/classes printf 'projects=\nruntime=gradle-kotlin-dsl.jar,gradle-kotlin-dsl-tooling-models.jar,kotlin-compiler-embeddable.jar,kotlin-reflect.jar,kotlin-sam-with-receiver-compiler-plugin.jar,kotlin-stdlib.jar,kotlin-stdlib-jdk7.jar,kotlin-stdlib-jdk8.jar,annotations-13.0.jar' \ > subprojects/tooling-builders/target/classes/gradle-kotlin-dsl-tooling-builders-classpath.properties jar cf subprojects/tooling-builders/target/gradle-kotlin-dsl-tooling-builders.jar -C subprojects/tooling-builders/target/classes . # gradle-kotlin-dsl-plugins kotlinc \ -cp 'subprojects/provider/target/gradle-kotlin-dsl.jar:\ :/usr/share/java/kotlin-gradle-plugin.jar:\ :/usr/share/java/kotlin-sam-with-receiver.jar:\ :/usr/share/java/kotlin-stdlib-jdk8.jar:\ :/usr/share/java/atinject-jsr330-api.jar:\ :/usr/share/java/gradle-base-services.jar:\ :/usr/share/java/gradle-base-services-groovy.jar:\ :/usr/share/java/gradle-core.jar:\ :/usr/share/java/gradle-core-api.jar:\ :/usr/share/java/gradle-logging.jar:\ :/usr/share/java/slf4j-api.jar:\ :/usr/share/java/gradle-model-core.jar:\ :/usr/share/java/gradle-plugins.jar:\ :/usr/share/java/gradle-plugin-development.jar:\ :/usr/share/java/kotlin-gradle-plugin.jar:\ :/usr/share/java/kotlin-gradle-plugin-api.jar:\ :/usr/share/java/kotlin-sam-with-receiver.jar:\ :/usr/share/java/kotlin-compiler-embeddable.jar:\ :/usr/share/java/gradle-language-jvm.jar:\ :/usr/share/java/atinject-jsr330-api.jar' \ -module-name gradle-kotlin-dsl-plugins \ -d subprojects/plugins/target/classes \ subprojects/plugins/src/main/kotlin/ cp -Rp subprojects/plugins/src/main/kotlin/* subprojects/plugins/target/classes # plugin descriptors, generated by the java-gradle-plugin plugin upstream mkdir -p subprojects/plugins/target/classes/META-INF/gradle-plugins printf 'implementation-class=org.gradle.kotlin.dsl.plugins.dsl.KotlinDslPlugin\n' \ > subprojects/plugins/target/classes/META-INF/gradle-plugins/org.gradle.kotlin.kotlin-dsl.properties printf 'implementation-class=org.gradle.kotlin.dsl.plugins.embedded.EmbeddedKotlinPlugin\n' \ > subprojects/plugins/target/classes/META-INF/gradle-plugins/org.gradle.kotlin.embedded-kotlin.properties jar cf subprojects/plugins/target/gradle-kotlin-dsl-plugins.jar -C subprojects/plugins/target/classes . get-orig-poms: wget https://repo.gradle.org/artifactory/libs-releases-local/org/gradle/gradle-kotlin-dsl/$(UPSTREAM_VERSION)/gradle-kotlin-dsl-$(UPSTREAM_VERSION).pom -O debian/poms/gradle-kotlin-dsl.pom wget https://repo.gradle.org/artifactory/libs-releases-local/org/gradle/gradle-kotlin-dsl-tooling-builders/$(UPSTREAM_VERSION)/gradle-kotlin-dsl-tooling-builders-$(UPSTREAM_VERSION).pom -O debian/poms/gradle-kotlin-dsl-tooling-builders.pom wget https://repo.gradle.org/artifactory/libs-releases-local/org/gradle/gradle-kotlin-dsl-tooling-models/$(UPSTREAM_VERSION)/gradle-kotlin-dsl-tooling-models-$(UPSTREAM_VERSION).pom -O debian/poms/gradle-kotlin-dsl-tooling-models.pom wget https://repo.gradle.org/artifactory/libs-releases-local/org/gradle/gradle-kotlin-dsl-provider-plugins/$(UPSTREAM_VERSION)/gradle-kotlin-dsl-provider-plugins-$(UPSTREAM_VERSION).pom -O debian/poms/gradle-kotlin-dsl-provider-plugins.pom