# Description: OpenJDK 9 (minimal pkg for bootstrapping) # URL: https://openjdk.java.net/ # Maintainer: # Depends on: alsa-lib cups freetype giflib krb5 lcms2 libffi libjpeg-turbo libpng nss unzip xorg-libxrender xorg-libxt xorg-libxtst zip # OLD Depends: alsa-lib cups fontconfig freetype giflib gtk3 harfbuzz-icu krb5 lcms2 libffi libjpeg-turbo libpng libxslt nss unzip xorg-libxt xorg-libxtst xorg-libxinerama zip name=openjdk9-boot version=9.0.4+12 _boot_ver=20210207 _cert_ver=20200215 _jdkhash=1b1226687b89 release=1 source=(https://crux.ster.zone/downloads/java/openjdk-$version.tar.bz2 https://crux.ster.zone/downloads/java/corba-$version.tar.bz2 https://crux.ster.zone/downloads/java/hotspot-$version.tar.bz2 https://crux.ster.zone/downloads/java/jaxp-$version.tar.bz2 https://crux.ster.zone/downloads/java/jaxws-$version.tar.bz2 https://crux.ster.zone/downloads/java/jdk-$version.tar.bz2 https://crux.ster.zone/downloads/java/langtools-$version.tar.bz2 https://crux.ster.zone/downloads/java/nashorn-$version.tar.bz2 https://crux.ster.zone/downloads/java/openjdk8-boot-$_boot_ver.tar.xz https://crux.ster.zone/downloads/java/java_cacerts-$_cert_ver # https://raw.githubusercontent.com/void-linux/void-packages/master/srcpkgs/openjdk9-bootstrap/patches/fix-compiler-version-10%2B.patch fix-compiler-version-10+.patch make-4.3_breaks_build.patch) build() { for d in corba hotspot jaxp jaxws jdk langtools nashorn; do mv $d-* jdk9u-$_jdkhash/$d done patch -p1 -d $SRC/jdk9u-$_jdkhash -i $SRC/make-4.3_breaks_build.patch patch -p1 -d $SRC/jdk9u-$_jdkhash -i $SRC/fix-compiler-version-10+.patch cp -r jdk9u-$_jdkhash jdk9u-build-boot if [ -e '/usr/bin/ccache' ]; then PATH=$(echo ${PATH} | awk -v RS=: -v ORS=: '/ccache/ {next} {print}' | sed 's/:*$//') PKGMK_JDK9+=' --enable-ccache' fi OLD_PATH=$PATH export JAVA_HOME=$SRC/openjdk8-boot export PATH=$JAVA_HOME/bin:$OLD_PATH unset CFLAGS unset CXXFLAGS unset LDFLAGS unset MAKEFLAGS [ -z $JOBS ] && JOBS=$(nproc) export _CFLAGS+=' -fcommon' export _CXXFLAGS+=' -fcommon' local _COMMON_OPTIONS=" --disable-hotspot-gtest --disable-precompiled-headers --disable-warnings-as-errors --enable-dtrace=no --enable-headless-only --enable-unlimited-crypto --with-native-debug-symbols=none --with-debug-level=release --with-stdc++lib=dynamic --with-jvm-variants=server --with-giflib=system --with-lcms=system --with-libjpeg=system --with-libpng=system --with-zlib=system --with-cacerts-file=$SRC/java_cacerts-$_cert_ver --with-jtreg=no --with-version-opt="CRUX-r$release" --with-version-build="${version#*+}" --with-jobs=$JOBS" cd $SRC/jdk9u-build-boot LC_ALL=C /bin/bash configure $PKGMK_JDK9 \ --prefix=$SRC/jdk9u-build-boot/build/images/jdk \ $_COMMON_OPTIONS \ --with-extra-cflags="$_CFLAGS" \ --with-extra-cxxflags="$_CXXFLAGS" \ --with-boot-jdk=$JAVA_HOME # NOTE: for debugging build issues: set LOG to debug, JOBS to 1. LC_ALL=C \ make LOG=warn JOBS=$JOBS jdk-image export JAVA_HOME=$SRC/jdk9u-build-boot/build/linux-$(uname -m)-normal-server-release/jdk export PATH=$JAVA_HOME/bin:$OLD_PATH mkdir $SRC/jdk9-final cd $SRC/jdk9-final LC_ALL=C /bin/bash ../jdk9u-$_jdkhash/configure $PKGMK_JDK9 \ --prefix=/$name \ $_COMMON_OPTIONS \ --with-extra-cflags="$_CFLAGS" \ --with-extra-cxxflags="$_CXXFLAGS" \ --with-boot-jdk=$JAVA_HOME # NOTE: for debugging build issues: set LOG to debug, JOBS to 1. LC_ALL=C \ make LOG=warn JOBS=$JOBS jdk-image # i don't see those files anymore? also the dir changed rm -r images/jdk/demo rm -r images/jdk/jmods rm -r images/jdk/lib/src.zip rm -r images/jdk/lib/*.ja rm -r images/jdk/man/ja rm -r images/jdk/man/ja_JP* rm -r images/jdk/legal cp -r images/jdk $PKG/$name }