diff options
Diffstat (limited to 'libre/java8-openjdk/PKGBUILD')
-rw-r--r-- | libre/java8-openjdk/PKGBUILD | 82 |
1 files changed, 43 insertions, 39 deletions
diff --git a/libre/java8-openjdk/PKGBUILD b/libre/java8-openjdk/PKGBUILD index fba737c59..4103b469c 100644 --- a/libre/java8-openjdk/PKGBUILD +++ b/libre/java8-openjdk/PKGBUILD @@ -1,3 +1,4 @@ +# Maintainer (Arch): Levente Polyak <anthraxx[at]archlinux[dot]org> # Maintainer (Arch): Guillaume ALAUX <guillaume@archlinux.org> # Contributor (Arch): Boyan Ding <stu_dby@126.com> # Maintainer (Hyperbola): André Silva <emulatorman@hyperbola.info> @@ -14,8 +15,8 @@ pkgname=('jre8-openjdk-headless' 'jre8-openjdk' 'jdk8-openjdk') pkgbase=java8-openjdk _java_ver=8 # Found @ http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html -_jdk_update=144 -_jdk_build=01 +_jdk_update=181 +_jdk_build=13 pkgver=${_java_ver}.u${_jdk_update} _repo_ver=jdk${_java_ver}u${_jdk_update}-b${_jdk_build} pkgrel=1.parabola1 @@ -34,17 +35,17 @@ source=(jdk8u-${_repo_ver}.tar.gz::${_url_src}/archive/${_repo_ver}.tar.gz jaxp-${_repo_ver}.tar.gz::${_url_src}/jaxp/archive/${_repo_ver}.tar.gz langtools-${_repo_ver}.tar.gz::${_url_src}/langtools/archive/${_repo_ver}.tar.gz nashorn-${_repo_ver}.tar.gz::${_url_src}/nashorn/archive/${_repo_ver}.tar.gz - build_with_gcc6.patch) - -sha256sums=('85a8a8c55cda2d3bae833578d6ad6c8bf531550ac051776d47946d17858a6721' - 'f0a153807e08c79c5ce229be6eafe7951854a7d7eb496cea7b24a0a5f305ccfe' - '18d9fc6b9a6830cb8083e366b9ef31f8c8ebb80c816d7f516de8285181fb6bc1' - 'e8442fd2fcce332abdb1e34bb33655e43e6d88bb551fc67883b8cab043aba53f' - '5146841822b49e1300c6c78a88be617fd72a80b76e8e2bb8d6ed526edfe1a929' - 'd5479dde109483c81f94abb91d93d11b1a899bb5d5685e7dfdd96ba8e35adf93' - '7a3a7d2f2f6f47de876532d9ad9e3d04f0235a8d848ea958d6371dbb2535f83c' - '5d14d0e910fec1cc34e02bf25173b25619083f2afda8e73d0bb5ba456c12b89c' - 'dcf5f495620231068b0c925a33ba7246bbeb85e9ae822b30ab77a66839c2d3b6') + hotspot-jdk8u181-b13-readdir_r.patch) + +sha256sums=('2a613bc3eb3ecdb12946447e44e6c80ce80d1a7c5cbdf8127585b452f6708b66' + '3fc4793e39d2e8e9aa19707f43d61a81bef2c9de22ff47c99105e1b4a51b19ac' + '04b173f2af287c1b80aeb20b2e31563905e1e772cf5e01a25f3a985e392c7d5f' + 'c4da8f58c97c0a4d37907b099385961029482aa268331e19903c1d4738a9afa8' + 'f51a6827fd50bf29d4abb69e3a73ab13735dec45157f750b7cbfe375ebd022b9' + '2d0475ae6a925fef1f21f3fd96436ed5d11d3cb9dca5a96f96defb3040c68d3b' + '4ef19aaf1444d1d23c0f76fc6d8f55092c0b8b8e953b7c136448f6660b7165ea' + 'f2220793aa8fea31c8945566b639ea85e2d00ac68220827ba8861ca32e4aae48' + '76b176e6ec65e90b1352cb42ebf6c47a11c9a632662c31ff413965d03e3a5d41') case "${CARCH}" in 'x86_64') _JARCH=amd64 ; _DOC_ARCH=x86_64 ;; @@ -62,27 +63,32 @@ _nonheadless=(bin/policytool lib/${_JARCH}/libsplashscreen.so) prepare() { - cd "${srcdir}/jdk8u-${_repo_ver}" - - for subrepo in corba hotspot jdk jaxws jaxp langtools nashorn - do + cd jdk8u-${_repo_ver} + for subrepo in corba hotspot jdk jaxws jaxp langtools nashorn; do ln -s ../${subrepo}-${_repo_ver} ${subrepo} done - patch -p1 < ../build_with_gcc6.patch + cd ${srcdir}/hotspot-${_repo_ver} + patch -Np1 -i ../hotspot-jdk8u181-b13-readdir_r.patch } build() { # Zero makes OpenJDK build on processor families other than x86 and SPARC [ "$CARCH" = "armv7h" ] && configure_extra="--with-jvm-variants=zero" - cd "${srcdir}/jdk8u-${_repo_ver}" + cd jdk8u-${_repo_ver} unset JAVA_HOME # http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1346 export MAKEFLAGS=${MAKEFLAGS/-j*} - # https://hydra.nixos.org/build/41230444/log - export CFLAGS="-Wno-error=deprecated-declarations" + + # We filter out -O flags so that the optimization of HotSpot is not lowered from O3 to O2 + export CFLAGS="${CFLAGS//-O2/-O3} ${CPPFLAGS} -Wno-error=deprecated-declarations -Wno-error=stringop-overflow= -Wno-error=return-type -Wno-error=cpp -fno-lifetime-dse -fno-delete-null-pointer-checks" + export CXXFLAGS="${CXXFLAGS} ${CPPFLAGS}" + + if [ "$CARCH" = "i686" ]; then + CFLAGS+=" -Wno-error=deprecated" + fi install -d -m 755 "${srcdir}/${_prefix}/" sh configure \ @@ -92,24 +98,23 @@ build() { --with-milestone="fcs" \ --enable-unlimited-crypto \ --with-zlib=system \ + --with-extra-cflags="${CFLAGS}" \ + --with-extra-cxxflags="${CXXFLAGS}" \ + --with-extra-ldflags="${LDFLAGS}" \ ${configure_extra} - # TODO OpenJDK does not want last version of giflib (add 'giflib' as dependency once fixed) - #--with-giflib=system \ - - # Without 'DEBUG_BINARIES', i686 won't build - # http://mail.openjdk.java.net/pipermail/core-libs-dev/2013-July/019203.html - make \ - DEBUG_BINARIES=true - # These help to debug builds: - #LOG=trace HOTSPOT_BUILD_JOBS=1 + # TODO OpenJDK does not want last version of giflib (add 'giflib' as dependency once fixed) + #--with-giflib=system \ + # These help to debug builds: LOG=trace HOTSPOT_BUILD_JOBS=1 + # Without 'DEBUG_BINARIES', i686 won't build: http://mail.openjdk.java.net/pipermail/core-libs-dev/2013-July/019203.html + make make docs # FIXME sadly 'DESTDIR' is not used here! make install - cd "${srcdir}/${_imgdir}" + cd ../${_imgdir} # A lot of build stuff were directly taken from # http://pkgs.fedoraproject.org/cgit/java-1.8.0-openjdk.git/tree/java-1.8.0-openjdk.spec @@ -123,10 +128,10 @@ build() { find . -iname '*.debuginfo' -exec rm {} \; } -#check() { -# cd "${srcdir}/${pkgname}-${pkgver}" -# make -k check -#} +check() { + cd jdk8u-${_repo_ver} + make -k test +} package_jre8-openjdk-headless() { pkgdesc='OpenJDK Java 8 headless runtime environment (Parabola rebranded)' @@ -154,7 +159,7 @@ package_jre8-openjdk-headless() { backup=(${_backup_etc[@]}) install=install_jre8-openjdk-headless.sh - cd "${srcdir}/${_imgdir}/jre" + cd ${_imgdir}/jre install -d -m 755 "${pkgdir}${_jvmdir}/jre/" cp -a bin lib "${pkgdir}${_jvmdir}/jre" @@ -210,9 +215,8 @@ package_jre8-openjdk() { install=install_jre8-openjdk.sh replaces=('jre8-openjdk-wm') - cd "${srcdir}/${_imgdir}/jre" + cd ${_imgdir}/jre - # TODO? Should /usr/lib/jvm/java-8-openjdk/jre/lib/sound.properties belong to jre? for f in ${_nonheadless[@]}; do install -D ${f} "${pkgdir}${_jvmdir}/jre/${f}" done @@ -245,7 +249,7 @@ package_jdk8-openjdk() { replaces=('jdk8-openjdk-wm') install=install_jdk8-openjdk.sh - cd "${srcdir}/${_imgdir}" + cd ${_imgdir} # Main files install -d -m 755 "${pkgdir}${_jvmdir}" |