diff --git a/libraries/commonConfiguration.gradle b/libraries/commonConfiguration.gradle index c8071ec9124..85360c3d32b 100644 --- a/libraries/commonConfiguration.gradle +++ b/libraries/commonConfiguration.gradle @@ -5,14 +5,14 @@ String jdkPath(String version) { return path } -ext { - JDK_16 = jdkPath("1.6") - JDK_17 = jdkPath("1.7") - JDK_18 = jdkPath("1.8") - distDir = file("$kotlin_root/dist") - distLibDir = file("$kotlin_root/dist/kotlinc/lib") - bootstrapCompilerFile = file("$distDir/kotlin-compiler-for-maven.jar") -} +//ext { +// JDK_16 = jdkPath("1.6") +// JDK_17 = jdkPath("1.7") +// JDK_18 = jdkPath("1.8") +// distDir = file("$kotlin_root/dist") +// distLibDir = file("$kotlin_root/dist/kotlinc/lib") +// bootstrapCompilerFile = file("$distDir/kotlin-compiler-for-maven.jar") +//} ext.configureJvmProject = { Project project -> project.configure(project) { @@ -159,9 +159,11 @@ ext.configurePublishing = { Project project -> ext.createPreprocessorTask = { Project project, def name, def sourceDir, def targetDir, def profile = "JS" -> return project.tasks.create("preprocessSources$name", JavaExec) { +// dependsOn(rootProject.prepareBootstrap) inputs.dir(sourceDir) outputs.dir(targetDir) - classpath = project.files(bootstrapCompilerFile) + classpath = rootProject.configurations.bootstrapCompile +// classpath = project.files(bootstrapCompilerFile) main = "org.jetbrains.kotlin.preprocessor.PreprocessorCLI" args = [sourceDir, targetDir, profile] } @@ -170,13 +172,15 @@ ext.createPreprocessorTask = { Project project, def name, def sourceDir, def tar ext.createScriptTask = { Project project, def name, Closure configureClosure = null -> JavaExec task = project.tasks.create(name, JavaExec) return project.configure(task) { - classpath = project.configurations.scriptCompile +// dependsOn(rootProject.prepareBootstrap) + classpath = rootProject.configurations.scriptCompile + println(rootProject.configurations.scriptCompile.files) main = "org.jetbrains.kotlin.cli.jvm.K2JVMCompiler" args = [ "-script", "-version", "-no-stdlib", - "-cp", project.configurations.scriptRuntime.asPath] + "-cp", rootProject.configurations.scriptRuntime.asPath] if (configureClosure != null) { configureClosure.delegate = it diff --git a/libraries/configureGradleTools.gradle b/libraries/configureGradleTools.gradle new file mode 100644 index 00000000000..36663025076 --- /dev/null +++ b/libraries/configureGradleTools.gradle @@ -0,0 +1,36 @@ + +configure([project(':kotlin-gradle-plugin'), project(':kotlin-allopen'), project(':kotlin-noarg')]) { project -> + apply plugin: 'com.gradle.plugin-publish' + + if (project.hasProperty('publishPluginsVersion')) { + configurations.archives.artifacts.all { + version = project.getProperty('publishPluginsVersion') + } + } + + if (project.hasProperty("${project.name}-jar")) { + println("Using pre-built artifact for ${project.name}") + configurations.archives.artifacts.clear() + + artifacts { + archives(file(project.getProperty("${project.name}-jar"))) { + name project.name + } + } + } + + publishPlugins.doFirst { + assert !kotlin_version.contains('SNAPSHOT') + } + + pluginBundle { + website = 'https://kotlinlang.org/' + vcsUrl = 'https://github.com/JetBrains/kotlin/' + description = 'Kotlin plugins for Gradle' + tags = ['kotlin'] + + mavenCoordinates { + groupId = "org.jetbrains.kotlin" + } + } +} diff --git a/libraries/gradle/wrapper/gradle-wrapper.properties b/libraries/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index 8364dbbca1c..00000000000 --- a/libraries/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,6 +0,0 @@ -#Fri Apr 28 16:02:26 MSK 2017 -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-bin.zip diff --git a/libraries/gradlePluginsConfiguration.gradle b/libraries/gradlePluginsConfiguration.gradle new file mode 100644 index 00000000000..73ac0e9764e --- /dev/null +++ b/libraries/gradlePluginsConfiguration.gradle @@ -0,0 +1,42 @@ + +//task clean { +// doLast { +// delete "${buildDir}/repo" +// } +//} + +configure([project(':kotlin-gradle-plugin'), project(':kotlin-allopen'), project(':kotlin-noarg')]) { project -> + apply plugin: 'com.gradle.plugin-publish' + + if (project.hasProperty('publishPluginsVersion')) { + configurations.archives.artifacts.all { + version = project.getProperty('publishPluginsVersion') + } + } + + if (project.hasProperty("${project.name}-jar")) { + println("Using pre-built artifact for ${project.name}") + configurations.archives.artifacts.clear() + + artifacts { + archives(file(project.getProperty("${project.name}-jar"))) { + name project.name + } + } + } + + publishPlugins.doFirst { + assert !kotlin_version.contains('SNAPSHOT') + } + + pluginBundle { + website = 'https://kotlinlang.org/' + vcsUrl = 'https://github.com/JetBrains/kotlin/' + description = 'Kotlin plugins for Gradle' + tags = ['kotlin'] + + mavenCoordinates { + groupId = "org.jetbrains.kotlin" + } + } +} \ No newline at end of file diff --git a/libraries/stdlib/build.gradle b/libraries/stdlib/build.gradle index b69cfeb2c38..f57336ae826 100644 --- a/libraries/stdlib/build.gradle +++ b/libraries/stdlib/build.gradle @@ -9,7 +9,7 @@ sourceSets { annotations { if(!System.properties.'idea.active') { java { - srcDir "${rootDir}/../core/runtime.jvm/src" + srcDir "${rootDir}/core/runtime.jvm/src" include 'org/jetbrains/annotations/**' } kotlin { @@ -19,13 +19,13 @@ sourceSets { } builtins { java { - srcDir "${rootDir}/../core/builtins/src" - srcDir "${rootDir}/../core/runtime.jvm/src" + srcDir "${rootDir}/core/builtins/src" + srcDir "${rootDir}/core/runtime.jvm/src" exclude 'org/jetbrains/annotations/**' } kotlin { - srcDir "${rootDir}/../core/builtins/src" - srcDir "${rootDir}/../core/runtime.jvm/src" + srcDir "${rootDir}/core/builtins/src" + srcDir "${rootDir}/core/runtime.jvm/src" exclude 'org/jetbrains/annotations/**' } } @@ -56,7 +56,8 @@ task originalStdlibJar(type: Jar) { jar { manifestAttributes(manifest, project, 'Main') - from("${rootDir}/../dist/builtins") + dependsOn ":core:builtins:serialize" + from("${rootDir}/dist/builtins") from sourceSets.builtins.output } @@ -64,14 +65,14 @@ task distJar(type: Jar) { baseName = 'dist-kotlin-stdlib' version = null manifestAttributes(manifest, project, 'Main') - from("${rootDir}/../dist/builtins") + from("${rootDir}/dist/builtins") from sourceSets.annotations.output from sourceSets.builtins.output from sourceSets.main.output } sourcesJar { - from "${rootDir}/../core/builtins/native" + from "${rootDir}/core/builtins/native" from sourceSets.builtins.kotlin } @@ -102,7 +103,7 @@ compileBuiltinsKotlin { "-version", "-Xallow-kotlin-package", "-Xdump-declarations-to", "${buildDir}/runtime-declarations.json", - "-cp", "${rootDir}/../dist/builtins", + "-cp", "${rootDir}/dist/builtins", "-module-name", "kotlin-runtime" ] } diff --git a/libraries/stdlib/common/build.gradle b/libraries/stdlib/common/build.gradle index 09b85a4fe02..809b227eec0 100644 --- a/libraries/stdlib/common/build.gradle +++ b/libraries/stdlib/common/build.gradle @@ -17,7 +17,11 @@ sourceSets { createPreprocessorTask(project, "Main", "${projectDir}/../src/kotlin", commonSrcDir) -compileKotlinCommon.dependsOn preprocessSourcesMain +compileKotlinCommon { + dependsOn preprocessSourcesMain +// dependsOn ":prepare:compiler:prepare-compiler-with-bootstrap-runtime" +// compilerJarFile = compilerJarWithBootstrapRuntime +} /* // TODO: currently unsupported diff --git a/libraries/stdlib/js/build.gradle b/libraries/stdlib/js/build.gradle index 6b4fe8458be..fad1bc21249 100644 --- a/libraries/stdlib/js/build.gradle +++ b/libraries/stdlib/js/build.gradle @@ -13,8 +13,8 @@ def builtinsSrcDir = "${buildDir}/builtin-sources" def builtinsSrcDir2 = "${buildDir}/builtin-sources-for-builtins" def commonSrcDir = "${buildDir}/common-sources" def commonTestSrcDir = "${buildDir}/common-test-sources" -def builtinsDir = "${rootDir}/../core/builtins" -def jsLibrariesDir = "${rootDir}/../js/js.libraries" +def builtinsDir = "${rootDir}/core/builtins" +def jsLibrariesDir = "${rootDir}/js/js.libraries" def jsSrcDir = "${jsLibrariesDir}/src" def jsTestSrcDir = "${jsLibrariesDir}/test" def jsSrcJsDir = "${jsSrcDir}/js" @@ -205,7 +205,7 @@ task mergedJar(type: Jar, dependsOn: classes) { // TODO: Use standard implementation title after js stdlib detector becomes more flexible Properties properties = new Properties() - new File("${rootDir}/../resources/kotlinManifest.properties").withInputStream { + new File("${rootDir}/resources/kotlinManifest.properties").withInputStream { properties.load(it) } manifest.attributes 'Implementation-Title' : properties."manifest.impl.title.kotlin.javascript.stdlib" diff --git a/libraries/tools/gradle-tools/build.gradle b/libraries/tools/gradle-tools/build.gradle index 9679923641d..323faa4339f 100644 --- a/libraries/tools/gradle-tools/build.gradle +++ b/libraries/tools/gradle-tools/build.gradle @@ -18,6 +18,7 @@ allprojects { } apply from: "${kotlin_root}/libraries/commonConfiguration.gradle" +apply from: "${kotlin_root}/libraries/configureGradleTools.gradle" subprojects { repositories { @@ -58,38 +59,3 @@ task clean { } } -configure([project(':kotlin-gradle-plugin'), project(':kotlin-allopen'), project(':kotlin-noarg')]) { project -> - apply plugin: 'com.gradle.plugin-publish' - - if (project.hasProperty('publishPluginsVersion')) { - configurations.archives.artifacts.all { - version = project.getProperty('publishPluginsVersion') - } - } - - if (project.hasProperty("${project.name}-jar")) { - println("Using pre-built artifact for ${project.name}") - configurations.archives.artifacts.clear() - - artifacts { - archives(file(project.getProperty("${project.name}-jar"))) { - name project.name - } - } - } - - publishPlugins.doFirst { - assert !kotlin_version.contains('SNAPSHOT') - } - - pluginBundle { - website = 'https://kotlinlang.org/' - vcsUrl = 'https://github.com/JetBrains/kotlin/' - description = 'Kotlin plugins for Gradle' - tags = ['kotlin'] - - mavenCoordinates { - groupId = "org.jetbrains.kotlin" - } - } -} \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/build.gradle b/libraries/tools/kotlin-gradle-plugin-integration-tests/build.gradle index 296613fd1d6..66b17678301 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/build.gradle +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/build.gradle @@ -14,10 +14,10 @@ dependencies { testCompile project(':kotlin-gradle-subplugin-example') testCompile project(':kotlin-allopen') - testCompile "org.jetbrains.kotlin:annotation-processor-example:$kotlin_version" + testCompile project (path: ':examples:annotation-processor-example') testCompile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version" testCompile "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version" - testCompile "org.jetbrains.kotlin:kotlin-build-common-test:$kotlin_version" + testCompile project (path: ':build-common', configuration: 'tests-jar') testCompile 'org.jetbrains.kotlin:gradle-api:2.2' } diff --git a/libraries/tools/kotlin-gradle-plugin/build.gradle b/libraries/tools/kotlin-gradle-plugin/build.gradle index fe713be446f..1b3782453e0 100644 --- a/libraries/tools/kotlin-gradle-plugin/build.gradle +++ b/libraries/tools/kotlin-gradle-plugin/build.gradle @@ -43,7 +43,7 @@ dependencies { agp25CompileOnly 'org.codehaus.groovy:groovy-all:2.3.9' agp25CompileOnly gradleApi() - testCompile "org.jetbrains.kotlin:kotlin-build-common-test:$kotlin_version" + testCompile project (path: ':build-common', configuration: 'tests-jar') testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version" testCompile "junit:junit:4.12" } diff --git a/libraries/tools/kotlin-reflect/build.gradle b/libraries/tools/kotlin-reflect/build.gradle index 8ffd8564790..db0813e83b2 100644 --- a/libraries/tools/kotlin-reflect/build.gradle +++ b/libraries/tools/kotlin-reflect/build.gradle @@ -19,7 +19,7 @@ configureJvmProject(project) configurePublishing(project) -def core = "${rootDir}/../core" +def core = "${rootDir}//core" def annotationsSrc = "${buildDir}/annotations" def relocatedCoreSrc = "${buildDir}/core-relocated" @@ -47,9 +47,10 @@ configurations { dependencies { proguardDeps project(':kotlin-stdlib') shadows 'javax.inject:javax.inject:1' - shadows project(path: ':tools:protobuf-lite') + shadows project(path: ':custom-dependencies:protobuf-lite', configuration: 'default') compile project(':kotlin-stdlib') + compile project(path: ':custom-dependencies:protobuf-lite', configuration: 'default') } task copyAnnotations(type: Sync) { @@ -70,6 +71,7 @@ compileJava { compileKotlin { dependsOn copyAnnotations + dependsOn ':custom-dependencies:protobuf-lite:prepare' kotlinOptions { freeCompilerArgs = ["-version", "-Xallow-kotlin-package", @@ -107,7 +109,7 @@ createScriptTask(project, "stripMetadata") { inputs.file(inputJar) outputs.file(outputJar) args += [ - "${rootDir}/../generators/infrastructure/strip-kotlin-annotations.kts", + "${rootDir}/generators/infrastructure/strip-kotlin-annotations.kts", "kotlin/Metadata", "kotlin/reflect/jvm/internal/impl/.*", inputJar, @@ -115,7 +117,6 @@ createScriptTask(project, "stripMetadata") { ] } - def mainArchiveName = "${archivesBaseName}-${project.version}.jar" def outputJarPath = "${libsDir}/${mainArchiveName}" def rtJar = ['jre/lib/rt.jar', '../Classes/classes.jar'].collect { new File(JDK_16, it) }.find { it.isFile() } diff --git a/libraries/tools/kotlin-stdlib-gen/build.gradle b/libraries/tools/kotlin-stdlib-gen/build.gradle index 6d5bd2bbf17..e0ca9f660d5 100644 --- a/libraries/tools/kotlin-stdlib-gen/build.gradle +++ b/libraries/tools/kotlin-stdlib-gen/build.gradle @@ -5,7 +5,7 @@ sourceSets { } dependencies { - compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_gradle_plugin_version" + compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" } compileKotlin { @@ -17,5 +17,5 @@ task run(type: JavaExec) { group 'application' main 'generators.GenerateStandardLibKt' classpath sourceSets.main.runtimeClasspath - args = ["${rootDir}/.."] + args = ["${rootDir}"] } \ No newline at end of file diff --git a/libraries/tools/kotlin-stdlib-js-merger/build.gradle b/libraries/tools/kotlin-stdlib-js-merger/build.gradle index ace09028ed4..d74b0f5d13d 100644 --- a/libraries/tools/kotlin-stdlib-js-merger/build.gradle +++ b/libraries/tools/kotlin-stdlib-js-merger/build.gradle @@ -3,7 +3,7 @@ description = 'Merge utility for Kotlin Standard Library for JS' apply plugin: 'kotlin' dependencies { - compile files("$distDir/kotlin-compiler-for-maven.jar") + compile "org.jetbrains.kotlin:kotlin-compiler:$kotlin_version" } sourceSets { diff --git a/libraries/tools/runtime/build.gradle b/libraries/tools/runtime/build.gradle index c59d62f61cb..3332edd3a2d 100644 --- a/libraries/tools/runtime/build.gradle +++ b/libraries/tools/runtime/build.gradle @@ -13,8 +13,8 @@ sourceSets { if(!System.properties.'idea.active') main { java { - srcDir "${rootDir}/../core/builtins/src" - srcDir "${rootDir}/../core/runtime.jvm/src" + srcDir "${rootDir}/core/builtins/src" + srcDir "${rootDir}/core/runtime.jvm/src" exclude 'org/jetbrains/annotations/**' } kotlin { @@ -25,13 +25,13 @@ sourceSets { jar { manifestAttributes(manifest, project, 'Main') - from("${rootDir}/../dist/builtins") + from("${rootDir}/dist/builtins") } sourcesJar { classifier = 'sources' from sourceSets.main.kotlin - from "${rootDir}/../core/builtins/native" + from "${rootDir}/core/builtins/native" } artifacts { @@ -44,7 +44,7 @@ compileKotlin { freeCompilerArgs = [ "-Xallow-kotlin-package", "-Xdump-declarations-to", "${buildDir}/runtime-declarations.json", - "-cp", "${rootDir}/../dist/builtins", + "-cp", "${rootDir}/dist/builtins", "-module-name", project.name ] } diff --git a/libraries/tools/script-runtime/build.gradle b/libraries/tools/script-runtime/build.gradle index 6be933774a5..0ff4706d856 100644 --- a/libraries/tools/script-runtime/build.gradle +++ b/libraries/tools/script-runtime/build.gradle @@ -12,7 +12,7 @@ dependencies { sourceSets { main { kotlin { - srcDir "${rootDir}/../core/script.runtime/src" + srcDir "${rootDir}/core/script.runtime/src" } } }