50 lines
1.8 KiB
Plaintext
50 lines
1.8 KiB
Plaintext
# 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.4.31
|
|
#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 PATH="${JAVA_HOME}:$PATH"
|
|
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"
|
|
}
|