Gentoo Archives: gentoo-commits

From: Georgy Yakovlev <gyakovlev@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-java/openjdk-jre-bin/, dev-java/openjdk-jre-bin/files/
Date: Wed, 17 Apr 2019 17:39:07
Message-Id: 1555521832.bfaae762285c3a259478035ad71b4b9c497717da.gyakovlev@gentoo
1 commit: bfaae762285c3a259478035ad71b4b9c497717da
2 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
3 AuthorDate: Wed Apr 17 17:10:35 2019 +0000
4 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
5 CommitDate: Wed Apr 17 17:23:52 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bfaae762
7
8 dev-java/openjdk-jre-bin: new package
9
10 Package-Manager: Portage-2.3.63, Repoman-2.3.12
11 Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
12
13 dev-java/openjdk-jre-bin/Manifest | 1 +
14 .../openjdk-jre-bin/files/openjdk-jre-bin-8.env.sh | 16 ++++
15 dev-java/openjdk-jre-bin/metadata.xml | 21 +++++
16 .../openjdk-jre-bin-8.202_p08.ebuild | 94 ++++++++++++++++++++++
17 4 files changed, 132 insertions(+)
18
19 diff --git a/dev-java/openjdk-jre-bin/Manifest b/dev-java/openjdk-jre-bin/Manifest
20 new file mode 100644
21 index 00000000000..cb18026f0a4
22 --- /dev/null
23 +++ b/dev-java/openjdk-jre-bin/Manifest
24 @@ -0,0 +1 @@
25 +DIST OpenJDK8U-jre_x64_linux_hotspot_8u202b08.tar.gz 40856726 BLAKE2B d9d4599989a0232bcc145aaf58b20dbfcedbe33adb2b3ee65b7e726dea350210f66eb81b321268a29d3234244c517642cfe908531242afb220509666e02c0617 SHA512 f9bb03cd0876f6b3b36d8ba821a14648b5ac2ec6dc6eefb95dc333aae77b55c940153cdd1715b21feaf7d7f2148bf8c272777c8afab911965e514f9792287962
26
27 diff --git a/dev-java/openjdk-jre-bin/files/openjdk-jre-bin-8.env.sh b/dev-java/openjdk-jre-bin/files/openjdk-jre-bin-8.env.sh
28 new file mode 100644
29 index 00000000000..fabc13c4091
30 --- /dev/null
31 +++ b/dev-java/openjdk-jre-bin/files/openjdk-jre-bin-8.env.sh
32 @@ -0,0 +1,16 @@
33 +# Copyright 1999-2019 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +VERSION="AdoptOpenJDK JRE ${PV}"
37 +JAVA_HOME="${EPREFIX}/opt/${P}"
38 +JDK_HOME="${EPREFIX}/opt/${P}"
39 +JAVAC="\${JAVA_HOME}/bin/javac"
40 +PATH="\${JAVA_HOME}/bin"
41 +ROOTPATH="\${JAVA_HOME}/bin"
42 +LDPATH="\${JAVA_HOME}/lib/:\${JAVA_HOME}/lib/server/"
43 +MANPATH="\${JAVA_HOME}/man"
44 +PROVIDES_TYPE="JRE"
45 +PROVIDES_VERSION="1.${SLOT}"
46 +BOOTCLASSPATH="\${JAVA_HOME}/jre/lib/resources.jar:\${JAVA_HOME}/jre/lib/rt.jar:\${JAVA_HOME}/jre/lib/jsse.jar:\${JAVA_HOME}/jre/lib/jce.jar:\${JAVA_HOME}/jre/lib/charsets.jar"
47 +GENERATION="2"
48 +ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
49
50 diff --git a/dev-java/openjdk-jre-bin/metadata.xml b/dev-java/openjdk-jre-bin/metadata.xml
51 new file mode 100644
52 index 00000000000..1194887e156
53 --- /dev/null
54 +++ b/dev-java/openjdk-jre-bin/metadata.xml
55 @@ -0,0 +1,21 @@
56 +<?xml version="1.0" encoding="UTF-8"?>
57 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
58 +<pkgmetadata>
59 + <maintainer type="person">
60 + <email>gyakovlev@g.o</email>
61 + <name>Georgy Yakovlev</name>
62 + </maintainer>
63 + <maintainer type="project">
64 + <email>java@g.o</email>
65 + <name>Java</name>
66 + </maintainer>
67 + <longdescription>
68 + Java™ is the world's leading programming language and platform. The code for Java is open source and available at OpenJDK™.
69 + AdoptOpenJDK provides prebuilt OpenJDK JRE binaries from a fully open source set of build scripts and infrastructure.
70 + </longdescription>
71 + <use>
72 + <flag name="headless-awt">Don't install the X backend for AWT, needed by some GUIs (used to be X flag)</flag>
73 + <flag name="gentoo-vm">Allow this JDK to be recognised by Gentoo (package manager, eselect, java-config, EXPERIMENTAL!)</flag>
74 + <flag name="webstart">Provide javaws command through symlink to icedtea-web</flag>
75 + </use>
76 +</pkgmetadata>
77
78 diff --git a/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.202_p08.ebuild b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.202_p08.ebuild
79 new file mode 100644
80 index 00000000000..89b46c77533
81 --- /dev/null
82 +++ b/dev-java/openjdk-jre-bin/openjdk-jre-bin-8.202_p08.ebuild
83 @@ -0,0 +1,94 @@
84 +# Copyright 1999-2019 Gentoo Authors
85 +# Distributed under the terms of the GNU General Public License v2
86 +
87 +EAPI=6
88 +
89 +inherit eapi7-ver java-vm-2
90 +
91 +abi_uri() {
92 + echo "${2-$1}? (
93 + https://github.com/AdoptOpenJDK/openjdk${SLOT}-binaries/releases/download/jdk${MY_PV}/OpenJDK8U-jre_${1}_linux_hotspot_${MY_PV/-/}.tar.gz
94 + )"
95 +}
96 +
97 +MY_PV=$(ver_rs 1 'u' 2 '-' ${PV//p/b})
98 +SLOT="$(ver_cut 1)"
99 +
100 +DESCRIPTION="Prebuilt Java JRE binaries provided by AdoptOpenJDK"
101 +HOMEPAGE="https://adoptopenjdk.net"
102 +SRC_URI="
103 + $(abi_uri x64 amd64)
104 +"
105 +
106 +LICENSE="GPL-2-with-classpath-exception"
107 +KEYWORDS="~amd64"
108 +
109 +IUSE="alsa cups +gentoo-vm headless-awt nsplugin selinux +webstart"
110 +
111 +RDEPEND="
112 + media-libs/fontconfig:1.0
113 + media-libs/freetype:2
114 + >net-libs/libnet-1.1
115 + >=sys-libs/glibc-2.2.5:*
116 + sys-libs/zlib
117 + alsa? ( media-libs/alsa-lib )
118 + cups? ( net-print/cups )
119 + selinux? ( sec-policy/selinux-java )
120 + !headless-awt? (
121 + x11-libs/libX11
122 + x11-libs/libXext
123 + x11-libs/libXi
124 + x11-libs/libXrender
125 + x11-libs/libXtst
126 + )"
127 +
128 +PDEPEND="
129 + webstart? ( >=dev-java/icedtea-web-1.6.1:0 )
130 + nsplugin? ( >=dev-java/icedtea-web-1.6.1:0[nsplugin] )"
131 +
132 +RESTRICT="preserve-libs splitdebug"
133 +QA_PREBUILT="*"
134 +
135 +S="${WORKDIR}/jdk${MY_PV}-jre"
136 +
137 +src_install() {
138 + local dest="/opt/${P}"
139 + local ddest="${ED}${dest#/}"
140 +
141 + rm ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README || die
142 +
143 + # this does not exist on arm64 hence -f
144 + rm -fv lib/*/libfreetype.so* || die
145 +
146 + if ! use alsa ; then
147 + rm -v lib/*/libjsoundalsa.so* || die
148 + fi
149 +
150 + if use headless-awt ; then
151 + rm -fvr lib/*/lib*{[jx]awt,splashscreen}* \
152 + bin/policytool || die
153 + fi
154 +
155 + dodir "${dest}"
156 + cp -pPR * "${ddest}" || die
157 +
158 + use gentoo-vm && java-vm_install-env "${FILESDIR}"/${PN}-${SLOT}.env.sh
159 + java-vm_set-pax-markings "${ddest}"
160 + java-vm_revdep-mask
161 + java-vm_sandbox-predict /dev/random /proc/self/coredump_filter
162 +}
163 +
164 +pkg_postinst() {
165 + java-vm-2_pkg_postinst
166 +
167 + if use gentoo-vm ; then
168 + ewarn "WARNING! You have enabled the gentoo-vm USE flag, making this JDK"
169 + ewarn "recognised by the system. This will almost certainly break things."
170 + else
171 + ewarn "The experimental gentoo-vm USE flag has not been enabled so this JDK"
172 + ewarn "will not be recognised by the system. For example, simply calling"
173 + ewarn "\"java\" will launch a different JVM. This is necessary until Gentoo"
174 + ewarn "fully supports OpenJDK 8. This JRE must therefore be invoked using its"
175 + ewarn "absolute location under ${EPREFIX}/opt/${P}."
176 + fi
177 +}