summaryrefslogtreecommitdiff
path: root/openjdk11-jdk/Pkgfile
blob: ed5760e41cb77a9046b8e9999ff904e6f4865bcf (plain)
    1 # Description: OpenJDK 11 Java Development Kit
    2 # URL: https://openjdk.java.net/
    3 # Maintainer: Tim Biermann, tbier at posteo dot de
    4 # Co-Maintainer: Danny Rawlins, crux at romster dot me
    5 # Depends on: alsa-lib cups giflib harfbuzz lcms2 libxslt nss unzip xorg-libxrandr xorg-libxt xorg-libxtst zip
    6 
    7 name=openjdk11-jdk
    8 version=11.0.15+10
    9 _boot_ver=20210620
   10 _cert_ver=20210916
   11 release=1
   12 source=(#http://hg.openjdk.java.net/jdk-updates/jdk11u/archive/jdk-$version.tar.bz2
   13   https://github.com/openjdk/jdk11u/archive/refs/tags/jdk-$version.tar.gz
   14   https://crux.ster.zone/downloads/java/openjdk11-boot-$_boot_ver.tar.xz
   15   https://crux.ster.zone/downloads/java/java_cacerts-${_cert_ver})
   16 
   17 build() {
   18   if [ -e '/usr/bin/ccache' ]; then
   19     PATH=$(echo ${PATH} | awk -v RS=: -v ORS=: '/ccache/ {next} {print}' | sed 's/:*$//')
   20     PKGMK_JDK11+=' --enable-ccache'
   21   fi
   22 
   23   OLD_PATH=$PATH
   24   export JAVA_HOME=$SRC/openjdk11-boot
   25   export PATH=$JAVA_HOME/bin:$OLD_PATH
   26 
   27   export MAKEFLAGS=${MAKEFLAGS/-j${MAKEFLAG_J}/}
   28   # Avoid optimization of HotSpot being lowered from O3 to O2
   29   local _CFLAGS+=" ${CFLAGS//-O2/-O3} ${CPPFLAGS} -fcommon"
   30   local _CXXFLAGS+=" ${CXXFLAGS//-O2/-O3} ${CPPFLAGS} -fcommon"
   31   local _LDFLAGS="${LDFLAGS}"
   32 
   33   [ -z $JOBS ] && JOBS=$(nproc)
   34 
   35   # CFLAGS, CXXFLAGS and LDFLAGS are ignored as shown by a warning
   36   # in the output of ./configure unless used like such:
   37   # --with-extra-cflags="${CFLAGS}"
   38   # --with-extra-cxxflags="${CXXFLAGS}"
   39   # --with-extra-ldflags="${LDFLAGS}"
   40   # See also paragraph "Configure Control Variables" from common/doc/building.md
   41   unset CFLAGS
   42   unset CXXFLAGS
   43   unset LDFLAGS
   44 
   45   mkdir $SRC/build
   46   cd $SRC/build
   47 
   48   LC_ALL=C
   49   /bin/bash ../jdk11u-jdk-${version/+/-}/configure $PKGMK_JDK11 \
   50     --prefix=/usr/lib/java/$name \
   51     --disable-hotspot-gtest \
   52     --disable-precompiled-headers \
   53     --disable-warnings-as-errors \
   54     --enable-dtrace=no \
   55     --enable-unlimited-crypto \
   56     --with-native-debug-symbols=internal \
   57     --with-debug-level=release \
   58     --with-stdc++lib=dynamic \
   59     --with-jvm-variants=server \
   60     --with-cacerts-file=$SRC/java_cacerts-$_cert_ver \
   61     --with-jtreg=no \
   62     --with-boot-jdk=$JAVA_HOME \
   63     --with-version-opt="CRUX-r$release" \
   64     --with-version-build="${version#*+}" \
   65     --with-vendor-name="CRUX" \
   66     --with-jobs=$JOBS \
   67     --with-num-cores=$JOBS \
   68     --with-libjpeg=system \
   69     --with-giflib=system \
   70     --with-libpng=system \
   71     --with-zlib=system \
   72     --with-lcms=system \
   73     --with-harfbuzz=system \
   74     --with-jvm-features=zgc \
   75     --with-extra-cflags="${_CFLAGS}" \
   76     --with-extra-cxxflags="${_CXXFLAGS}" \
   77     --with-extra-ldflags="${_LDFLAGS}"
   78 
   79   # NOTE: for debugging build issues: set LOG to debug, JOBS to 1.
   80   LC_ALL=C \
   81   make LOG=warn JOBS=$JOBS jdk-image
   82 
   83   rm -r images/jdk/demo
   84   rm -r images/jdk/lib/src.zip
   85   rm -r images/jdk/lib/*.ja
   86   rm -r images/jdk/man/ja
   87   rm -r images/jdk/man/ja_JP*
   88   rm -r images/jdk/legal
   89   rm images/jdk/conf/security/policy/README.txt
   90 
   91   install -d -m 0755 $PKG/usr/lib/java/$name
   92   cp -r images/jdk/* $PKG/usr/lib/java/$name/
   93 
   94   install -d -m 0755 $PKG/etc/revdep.d
   95   echo "/usr/lib/java/$name/lib" > $PKG/etc/revdep.d/$name
   96   echo "/usr/lib/java/$name/lib/jli" >> $PKG/etc/revdep.d/$name
   97   echo "/usr/lib/java/$name/lib/server" >> $PKG/etc/revdep.d/$name
   98 }

Generated by cgit