vp-build/srcpkgs/openjdk/template

125 lines
4.5 KiB
Plaintext

# TODO: better places for bin and man?
# TODO: make -headless versions
# TODO: config files?
# TODO: find giflib patch for --with-giflib=system
_java_ver=8
_jdk_update=25
_jdk_build=17
_repo_ver="jdk${_java_ver}u${_jdk_update}-b${_jdk_build}"
_openjdk_version="openjdk-1.8.0_${_jdk_update}"
# Template file for 'openjdk'
pkgname=openjdk
version=${_java_ver}u${_jdk_update}
revision=1
nocross=yes
wrksrc=jdk8u-jdk8u${_jdk_update}-b${_jdk_build}/
build_style=gnu-configure
configure_args="
--prefix=${XBPS_DESTDIR}/${sourcepkg}-${version}/usr/lib
--with-update-version=${_jdk_update}
--with-build-number=b${_jdk_build}
--with-milestone=fcs
--enable-unlimited-crypto
--with-zlib=system
$(vopt_if oracle_bootstrap --with-boot-jdk=/usr/lib/jvm/oracle-jdk \
--with-boot-jdk=/usr/lib/jvm/openjdk)"
make_build_args="DEBUG_BINARIES=true docs all"
hostmakedepends="pkg-config cpio unzip zip"
case "$XBPS_MACHINE" in
arm*) hostmakedepends+=" $(vopt_if oracle_bootstrap oracle-jdk-arm openjdk)";;
*) hostmakedepends+=" $(vopt_if oracle_bootstrap oracle-jdk openjdk)";;
esac
makedepends="libXrender-devel libXtst-devel libXt-devel
libjpeg-turbo-devel cups-devel freetype-devel alsa-lib-devel"
case "$XBPS_TARGET_MACHINE" in
arm*)
makedepends+=" libffi-devel"
configure_args+=" --with-jvm-variants=zero"
esac
depends="openjdk-jre-${version}_${revision}"
provides="java-environment-${version}_1"
replaces="java-environment>=0"
short_desc="OpenJDK Java Development Kit"
maintainer="Christian Neukirchen <chneukirchen@gmail.com>"
license="GPL-3"
homepage="http://openjdk.java.net/"
update_site="http://hg.openjdk.java.net/jdk8u/jdk8u/tags"
update_pattern='jdk\K8u\d+'
distfiles="
http://hg.openjdk.java.net/jdk8u/jdk8u/archive/${_repo_ver}.tar.gz>jdk8u-${_repo_ver}.tar.gz
http://hg.openjdk.java.net/jdk8u/jdk8u/corba/archive/${_repo_ver}.tar.gz>corba-${_repo_ver}.tar.gz
http://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/archive/${_repo_ver}.tar.gz>hotspot-${_repo_ver}.tar.gz
http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/archive/${_repo_ver}.tar.gz>jdk-${_repo_ver}.tar.gz
http://hg.openjdk.java.net/jdk8u/jdk8u/jaxws/archive/${_repo_ver}.tar.gz>jaxws-${_repo_ver}.tar.gz
http://hg.openjdk.java.net/jdk8u/jdk8u/jaxp/archive/${_repo_ver}.tar.gz>jaxp-${_repo_ver}.tar.gz
http://hg.openjdk.java.net/jdk8u/jdk8u/langtools/archive/${_repo_ver}.tar.gz>langtools-${_repo_ver}.tar.gz
http://hg.openjdk.java.net/jdk8u/jdk8u/nashorn/archive/${_repo_ver}.tar.gz>nashorn-${_repo_ver}.tar.gz"
checksum="
b4d129c0f50177e662b69632112563afb02a4f404975440b43b8529c1a1cb05b
ce14bda33a3a23a245dd0fb2cda6d9fda98bc16dff504756e811c70884d98950
a6480325f873a8c475bac35e4e23d388fb1619a21b0a37c78ef9a7eeed96846d
bc5463d3808136e0fc0d94443a6f3353c74328530d0782938c6ed7aadf1245d0
dbd29c10441b7308b141a2a2924f77c71afdda64294ace9ff749e84c00afb121
c3bcf90cba225ba6a3f68dcbc457c78fe06042c2d599e36baef5890f6b152d8c
c6facc858d591bf1c6372b69179ef0faee789c288da991d3dc3d706c3ad746ab
e5949f7a9732759175f465a4c929b55a2561f0c3e49ec84460f0a21f2c67ea29"
# Build is still parallel, but don't use -jN.
disable_parallel_build=yes
build_options="oracle_bootstrap"
desc_option_oracle_bootstrap="Bootstrap using Oracle JDK"
post_extract() {
chmod +x configure
for subrepo in corba hotspot jdk jaxws jaxp langtools nashorn; do
ln -s ../${subrepo}-${_repo_ver} ${subrepo}
done
cd hotspot
# https://bugs.openjdk.java.net/browse/JDK-8028407
patch -p1 < ${FILESDIR}/001_adjust-mflags-for-gmake-4.patch
# https://bugs.openjdk.java.net/browse/JDK-8041658
patch -p1 < ${FILESDIR}/002_gcc.make-4.9.patch
}
post_install() {
rm -rf ${DESTDIR}/usr/lib/bin
vlicense ASSEMBLY_EXCEPTION
vlicense LICENSE
vlicense THIRD_PARTY_README
}
openjdk-jre_package() {
short_desc="OpenJDK Java Runtime Environment"
provides="java-runtime-${version}_1"
replaces="java-runtime>=0"
pkg_install() {
vmove "usr/lib/jvm/$_openjdk_version/jre"
ln -s $_openjdk_version ${PKGDESTDIR}/usr/lib/jvm/openjdk
vmkdir etc/profile.d
cat >>${PKGDESTDIR}/etc/profile.d/10_openjdk.sh <<EOF
export JAVA_HOME=\${JAVA_HOME=/usr/lib/jvm/$_openjdk_version/jre}
export PATH="\$PATH:/usr/lib/jvm/$_openjdk_version/jre/bin:/usr/lib/jvm/$_openjdk_version/bin"
EOF
}
}
openjdk-src_package() {
short_desc+=" -- sources"
pkg_install() {
vmove "usr/lib/jvm/$_openjdk_version/src.zip"
}
}
openjdk-doc_package() {
short_desc+=" -- documentation"
pkg_install() {
cd ${wrksrc}
vmkdir usr/share/doc
cp -a build/linux-*/docs/* ${PKGDESTDIR}/usr/share/doc
}
}