# Description: Statically typed programming language that can interoperate with Java # URL: https://kotlinlang.org/ # Maintainer: Tim Biermann, tbier at posteo dot de # Depends on: openjdk8 openjdk9-jdk setconf python maven name=kotlin version=1.5.0 #version=1.4.20-M2 release=1 source=(https://github.com/JetBrains/kotlin/archive/v$version/$name-$version.tar.gz gradle.properties) build() { cd $name-$version unset JAVA_HOME export JAVA_HOME=/usr/lib/java/openjdk8 export JDK_16=$JAVA_HOME export JDK_17=$JAVA_HOME export JDK_18=$JAVA_HOME export JDK_9=/usr/lib/java/openjdk9-jdk export PATH="${JAVA_HOME}/bin:$PATH" # this doesn't work #ln -sf ../gradle.properties . # basically what $SRC/$name-build-$version-release-*/gradlew does #./gradlew dependencies:update --gradle-user-home $SRC --project-cache-dir $SRC --no-build-cache java "-Xmx64m" "-Xms64m" "-Dorg.gradle.appname=gradlew" -classpath gradle/wrapper/gradle-wrapper.jar org.gradle.wrapper.GradleWrapperMain install -Dorg.gradle.warning.mode=none ## package everything into dist/ java "-Xmx64m" "-Xms64m" "-Dorg.gradle.appname=gradlew" -classpath gradle/wrapper/gradle-wrapper.jar org.gradle.wrapper.GradleWrapperMain dist # wrapping the package install -d $PKG/usr/{bin,lib,share/$name} pushd dist/kotlinc/bin for i in kapt kotlin kotlinc kotlinc-js kotlinc-jvm kotlin-dce-js; do install -Dm755 $i $PKG/usr/bin/$i done popd pushd dist/kotlinc/lib for i in *.jar; do install -Dm644 "$i" "$PKG/usr/share/$name/lib/$i" done popd cp dist/build.txt $PKG/usr/share/$name/build.txt export cvers=$(crux | awk '{ print $1 " " $3 }') sed 's,1.3-SNAPSHOT,'"$version"' - '"$cvers"',g' -i $PKG/usr/share/kotlin/build.txt # set the right $KOTLIN_HOME setconf $PKG/usr/bin/kotlinc KOTLIN_HOME "/usr/share/kotlin" }