File create_kit.sh of Package gradle
GRADLE_MAIN=8.14
GRADLE_MINOR=2
if ${GRADLE_MINOR} -gt 0; then
GRADLE_NULL=""
else
GRADLE_NULL=".${GRADLE_MINOR}"
fi
JAVA_VERSIONS="1.8.0 11 17"
src_dir=$(pwd)
# update version in _service
#em _service
# download src
#osc service mr
# prep build env (GRADLE_HOME doesn't want paths with ":" like security:logging/gradle)
BUILD_DIR=/tmp/gradle-build
rm -rf ${BUILD_DIR}
mkdir -p ${BUILD_DIR}
pushd ${BUILD_DIR}
unzip ${src_dir}/gradle-${GRADLE_MAIN}${GRADLE_NULL}-bin.zip
mv gradle-${GRADLE_MAIN}${GRADLE_NULL} gradle-bin
GRADLE_HOME=${BUILD_DIR}/gradle-bin
GRADLE_USER_HOME=${BUILD_DIR}/gradle-user
GRADLE_CACHE=${BUILD_DIR}/gradle-cache
GRADLE_OPTS="-Xmx1024m"
YARN_CACHE_FOLDER=${GRADLE_USER_HOME}/yarn
LANG=en_US.UTF-8
tar xf ${src_dir}/gradle-${GRADLE_MAIN}.${GRADLE_MINOR}.tar.gz
pushd gradle-${GRADLE_MAIN}.${GRADLE_MINOR}
# remove vendor (was not documented patch 0001-drop-setVendor-for-Java.patch).
for i in $(grep -r "vendor =.*ADOPTIUM" | sed "s;: .*;;g"); do sed -i -r "s:(vendor =.*ADOPTIUM$):// openSUSE-disabled -> \1:g" $i; done
# remove android-studio
sed -i '/<component group="android-studio" name="android-studio".*">/,/<\/component>/d' gradle/verification-metadata.xml
# adapt javaparser to fix build error
sed -i 's:val javaParserVersion.*:val javaParserVersion = "3.25.6":g' build-logic-commons/build-platform/build.gradle.kts
rm -rf build
mkdir build
cp ${src_dir}/all-released-versions.json build
JAVA_VER=$(java --version | grep openjdk | sed -r "s:^[^[0-9]*([0-9]*).*:\1:g")
echo "Start building with Java ${JAVA_VER}"
JAVA_HOMES=""
for ver in ${JAVA_VERSIONS}; do
JAVA_HOMES=,/usr/lib64/jvm/java-${ver}-openjdk-${ver}
done
JAVA_HOMES=${JAVA_HOMES} \
${GRADLE_HOME}/bin/gradle \
--gradle-user-home ${GRADLE_USER_HOME} \
--project-cache-dir ${GRADLE_CACHE} \
-Dfile.encoding=UTF-8 \
--project-prop finalRelease=true \
--project-prop org.gradle.java.installations.fromEnv=${JAVA_HOMES} \
--write-verification-metadata pgp,sha256 \
:distributions-full:binDistributionZip
# gradle cache can be shared
# https://docs.gradle.org/current/userguide/dependency_resolution.html#sub:shared-readonly-cache
rm -rf ${GRADLE_USER_HOME}/caches/modules-2/files-2.1/android-studio
rm -rf ${GRADLE_USER_HOME}/caches/modules-2/modules-2.lock
if test -d ${GRADLE_USER_HOME}/caches/modules-2; then
echo "Compressing cache"
tar c -C ${BUILD_DIR} gradle-user/caches/modules-2 | xz -e -9 > gradle-kit.tar.xz
mv gradle-kit.tar.xz ${src_dir}
cp gradle/verification-metadata.xml ${src_dir}
cp gradle/verification-keyring.keys ${src_dir}
else
echo "${GRADLE_USER_HOME}/modules-2 doesn't exist"
fi
popd
popd
#rm -rf ${BUILD_DIR}