1c16fc1166
kotlin_version -> buildKotlinVersion kotlinVersion -> kotlinCompilerVersion
81 lines
2.8 KiB
Groovy
81 lines
2.8 KiB
Groovy
buildscript {
|
|
def rootProperties = new Properties()
|
|
rootProperties.load(new FileReader(project.file("../gradle.properties")))
|
|
rootProperties.each {k,v -> ext.set(k, v)}
|
|
apply from: "../gradle/kotlinGradlePlugin.gradle"
|
|
|
|
repositories {
|
|
jcenter()
|
|
}
|
|
|
|
dependencies {
|
|
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7.3'
|
|
}
|
|
}
|
|
|
|
apply plugin: 'com.jfrog.bintray'
|
|
|
|
def versionMapping = [
|
|
'kotlin-script-runtime' : kotlinScriptRuntimeVersion,
|
|
'kotlin-compiler' : kotlinCompilerVersion,
|
|
'kotlin-stdlib' : kotlinStdLibVersion,
|
|
'kotlin-reflect' : kotlinReflectVersion,
|
|
'kotlin-stdlib-jre8' : kotlinStdLibJdk8Version
|
|
]
|
|
|
|
// Hack kotlin-compiler pom-file to resolve the dependency correctly.
|
|
task generatePom(type: DefaultTask) {
|
|
def originalPom = project.files(gradle.startParameter.projectProperties.pom).first()
|
|
inputs.file(originalPom)
|
|
|
|
def (_, artifactIdString, versionString) = gradle.startParameter.projectProperties.module.tokenize(':')
|
|
def versionPath = "${versionString.tokenize('-')[0]}-SNAPSHOT"
|
|
|
|
def newPom = file("${temporaryDir.canonicalPath}/$artifactIdString-${versionString}.pom")
|
|
outputs.file(newPom)
|
|
|
|
doLast {
|
|
def xml = new XmlParser().parse(originalPom)
|
|
def parent = xml.children().find() { it.name().localPart == 'parent' }
|
|
if (parent != null) {
|
|
def groupId = parent.groupId
|
|
def version = parent.version
|
|
xml.append(groupId)
|
|
xml.append(version)
|
|
xml.remove(parent)
|
|
}
|
|
xml.dependencies[0].each {
|
|
def suggestedVersion = versionMapping[it.artifactId.text()]
|
|
if (suggestedVersion != null) {
|
|
it.version[0].setValue(suggestedVersion)
|
|
}
|
|
}
|
|
new XmlNodePrinter(new PrintWriter(new FileWriter(newPom))).print(xml)
|
|
}
|
|
}
|
|
|
|
bintray {
|
|
user = gradle.startParameter.projectProperties.user
|
|
key = gradle.startParameter.projectProperties.key
|
|
pkg {
|
|
repo = 'kotlin-native-dependencies'
|
|
name = 'kotlin-compiler-builds'
|
|
userOrg = 'jetbrains'
|
|
publish = true
|
|
override = gradle.startParameter.projectProperties.override
|
|
}
|
|
|
|
filesSpec {
|
|
def (groupId, artifactId, version) = gradle.startParameter.projectProperties.module.tokenize(':')
|
|
def groupPath = groupId.replace('.', '/')
|
|
def artifactPath = artifactId
|
|
def versionPath = "${version.tokenize('-')[0]}-SNAPSHOT"
|
|
from project.files(gradle.startParameter.projectProperties.jar)
|
|
from project.files(gradle.startParameter.projectProperties.src)
|
|
from project.files(gradle.startParameter.projectProperties.doc)
|
|
from generatePom.outputs.files
|
|
into "$groupPath/$artifactPath/$versionPath"
|
|
}
|
|
|
|
}
|