Gentoo Archives: gentoo-commits

From: James Le Cuirot <chewi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-java/icedtea-bin/
Date: Sun, 05 Mar 2017 11:52:33
Message-Id: 1488714744.04bebaeddab30853c0529edf81fb11c4f7916d36.chewi@gentoo
1 commit: 04bebaeddab30853c0529edf81fb11c4f7916d36
2 Author: James Le Cuirot <chewi <AT> gentoo <DOT> org>
3 AuthorDate: Sun Mar 5 11:51:51 2017 +0000
4 Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org>
5 CommitDate: Sun Mar 5 11:52:24 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=04bebaed
7
8 dev-java/icedtea-bin: Use OpenJDK EC code instead of NSS, bug #605430
9
10 IcedTea links both dynamically and statically to NSS in a way that
11 causes breakages even between minor NSS versions. Linking it entirely
12 statically was proving awkward so I'm using OpenJDK's own EC code,
13 which is largely duplicated from NSS anyway. This deals with
14 3.3.0. I'll deal with 7.2 when I bump it soon.
15
16 Package-Manager: Portage-2.3.4, Repoman-2.3.1
17
18 dev-java/icedtea-bin/Manifest | 4 +
19 dev-java/icedtea-bin/icedtea-bin-3.3.0-r1.ebuild | 153 +++++++++++++++++++++++
20 2 files changed, 157 insertions(+)
21
22 diff --git a/dev-java/icedtea-bin/Manifest b/dev-java/icedtea-bin/Manifest
23 index e98524d2d94..a86c1b453cc 100644
24 --- a/dev-java/icedtea-bin/Manifest
25 +++ b/dev-java/icedtea-bin/Manifest
26 @@ -14,3 +14,7 @@ DIST icedtea-bin-examples-7.2.6.8-amd64.tar.xz 1796596 SHA256 115bc46dcd307ca9ab
27 DIST icedtea-bin-examples-7.2.6.8-x86.tar.xz 1796976 SHA256 50c9601c379d51d732ad7e349d2b873973ff2b1f383d7fade4fb2139eee15e8f SHA512 ab3101a86fcc62c2ca159830dffaff561f54cf1dc75ebce45efd72341881c97b078b8213040f70e41b421b17d81c3fa093371be2e160bcfaca7d5ef6ad2dfd31 WHIRLPOOL e2ebfc5fc099e03eab164d09d7ad13db8b97fcb6514961e5b0203bcb42f4ba28a45aadcbcbccf9d6933beb98c6929cecd6f61a51e5260d7c1a078d8d5535f921
28 DIST icedtea-bin-src-3.3.0.tar.xz 45698204 SHA256 47aca8467e1b5baf61ba59d80786a54d2f5b2f4651de2d87604ecab0318117a2 SHA512 668d8fa653d2e773c633e74f9043c7ee0a67f04775c8e317f2515c47a85a0cb2732e2d7a30ad0ce05521c32e6d1de19ccfbc7558b4b3d4b60b73765e1a854eaa WHIRLPOOL 0fd4dd6a7483dbd5826938922a339364b006324f01da7d39eba7d38eb73010abd47f9cfe5b16d419163c34e302973e4c5eba0c1fcf759f584dd3d7947c3a59ad
29 DIST icedtea-bin-src-7.2.6.8.tar.xz 40105456 SHA256 9fcc1ebcfa3518804c45215f4e83ea282a87dff2b4b52461cd878c77a5812b2d SHA512 3ba29db8f6edeb3433d03a1b679ea21ead501c7e343fdee15531ff0e86061bca3e37498c75362aaee319424dc6464803659c24089def3f3c579bcf86fe7a6ba6 WHIRLPOOL d0ab4d61ba741b9955deb958927efff871c8941127707dee860a4317c1fdf17301b456739591a81f998d9a2bdaf55eccdd26717df228e9c70960b101e8dd7ab3
30 +DIST icedtea-bin-sunec-3.3.0-amd64.tar.xz 58104 SHA256 4a6a621b8fe4375e4bb8b5af40b05601ed51e7afa2a487cd58f0f3da1d634f09 SHA512 0753b3880f2337c60c34b31d60ffbd98e3f11da130771301a6fa01ae4d407705f41f99d53740bcce7972e62df3f277a1c8d4b6c8c5127c349bf0e78daac0b36c WHIRLPOOL 500fcbd2dca3e652804f04b0fc1dc57974d44e1556fdfa7cead513228765cf4f5e664a3771316fb85612efbdbe0eda2302042dda05f43a868c6cb68bcc6d713d
31 +DIST icedtea-bin-sunec-3.3.0-arm.tar.xz 54160 SHA256 17551c0f12d9769ec5a94c33aac4f8feba71b7c9ed6ce2ddc22d2b9165cae062 SHA512 4e53cbd500bcfc62a491c2e1f7a3bf1e75080e4e5694406d2fe2eea983b506893d6d076262af196ea728f0a15963d6219c3745b32b2e8501a5ac5239b047eaff WHIRLPOOL 2aeb9f1841839ba58c14bc5be2c9a43dcede9b4ecf200d20338977d94c99a5d9fdb972af51176cc2496189f1fbfaf438f138db7e9787bbe0ce924c75acf9fce6
32 +DIST icedtea-bin-sunec-3.3.0-ppc64.tar.xz 52984 SHA256 796d90328f9ae45eabf0d1f18a3be69468433dfc742c21469a092f5933559fbb SHA512 55ce61e02381bab6951acc652e57a0870ac31076f23a3ab53bf8b6facb3357dba50d93f3cc7f40eed15e17adb91ebc6f4d944a680ff5bfc7d343caf14014dc18 WHIRLPOOL 8f7f217025d9eb20042fdb0adae03fc34fca21ff59c9c9adb61982da785eab64cb2f87bc7e9fb5c7d9012e27f4a11198c5fa0f1b08dc086c42ed4b55315b2ee5
33 +DIST icedtea-bin-sunec-3.3.0-x86.tar.xz 68916 SHA256 9805096afc88877ec906eac355962324a621c13256c4bb57753dfaaa0ccff2da SHA512 66b333d84d7b365f53a9c4aba7c0f848d39cdd3580a0065afeff18a3f57701f2ea8ca4342dc48d49b41e837cb1b4f79ead2d85dad4a3293fa128373f100b9009 WHIRLPOOL 17b73389a4c175b7238da8553b79e98a87774212ba413a2f64178717df36432e1b1bdd0f56b2e96177f5257d8e9f433e9b08a3b23096a05179676f480f4d3a8f
34
35 diff --git a/dev-java/icedtea-bin/icedtea-bin-3.3.0-r1.ebuild b/dev-java/icedtea-bin/icedtea-bin-3.3.0-r1.ebuild
36 new file mode 100644
37 index 00000000000..80e7bd7d99f
38 --- /dev/null
39 +++ b/dev-java/icedtea-bin/icedtea-bin-3.3.0-r1.ebuild
40 @@ -0,0 +1,153 @@
41 +# Copyright 1999-2017 Gentoo Foundation
42 +# Distributed under the terms of the GNU General Public License v2
43 +
44 +EAPI=6
45 +
46 +# Don't block arm. See bug #600134.
47 +#MULTILIB_COMPAT=( abi_ppc_64 abi_x86_{32,64} )
48 +KEYWORDS="-* ~amd64 ~arm ~ppc64 ~x86"
49 +
50 +inherit java-vm-2 multilib-build toolchain-funcs
51 +
52 +BASE_URI="https://dev.gentoo.org/~chewi/distfiles"
53 +SRC_URI="doc? ( ${BASE_URI}/${PN}-doc-${PV}.tar.xz )
54 + source? ( ${BASE_URI}/${PN}-src-${PV}.tar.xz )
55 + multilib? ( amd64? ( abi_x86_32? ( ${BASE_URI}/${PN}-core-${PV}-x86.tar.xz ${BASE_URI}/${PN}-sunec-${PV}-x86.tar.xz ) ) )"
56 +
57 +for abi in amd64 arm ppc64 x86; do
58 + SRC_URI+="
59 + ${abi}? (
60 + ${BASE_URI}/${PN}-core-${PV}-${abi}.tar.xz
61 + ${BASE_URI}/${PN}-sunec-${PV}-${abi}.tar.xz
62 + examples? ( ${BASE_URI}/${PN}-examples-${PV}-${abi}.tar.xz )
63 + )"
64 +done
65 +
66 +DESCRIPTION="A Gentoo-made binary build of the IcedTea JDK"
67 +HOMEPAGE="http://icedtea.classpath.org"
68 +LICENSE="GPL-2-with-classpath-exception"
69 +SLOT="8"
70 +
71 +IUSE="+alsa +cups doc examples +gtk headless-awt multilib nsplugin pulseaudio selinux source +webstart"
72 +REQUIRED_USE="gtk? ( !headless-awt ) nsplugin? ( !headless-awt )"
73 +
74 +RESTRICT="preserve-libs strip"
75 +QA_PREBUILT="opt/.*"
76 +
77 +RDEPEND=">=dev-libs/glib-2.42:2%
78 + >=media-libs/fontconfig-2.11:1.0%
79 + >=media-libs/freetype-2.5.5:2%
80 + >=media-libs/lcms-2.6:2%
81 + >=sys-libs/zlib-1.2.8-r1%
82 + virtual/jpeg:62%
83 + alsa? ( >=media-libs/alsa-lib-1.0% )
84 + cups? ( >=net-print/cups-2.0% )
85 + gtk? (
86 + >=dev-libs/atk-2.16.0%
87 + >=x11-libs/cairo-1.14.2%
88 + x11-libs/gdk-pixbuf:2%
89 + >=x11-libs/gtk+-2.24:2%
90 + >=x11-libs/pango-1.36%
91 + )
92 + !headless-awt? (
93 + media-libs/giflib:0/7%
94 + =media-libs/libpng-1.6*%
95 + >=x11-libs/libX11-1.6%
96 + >=x11-libs/libXcomposite-0.4%
97 + >=x11-libs/libXext-1.3%
98 + >=x11-libs/libXi-1.7%
99 + >=x11-libs/libXrender-0.9.8%
100 + >=x11-libs/libXtst-1.2%
101 + )"
102 +
103 +RDEPEND=">=sys-devel/gcc-4.9.4[multilib?]
104 + >=sys-libs/glibc-2.22[multilib?]
105 + virtual/ttf-fonts
106 + selinux? ( sec-policy/selinux-java )
107 + multilib? ( ${RDEPEND//%/[${MULTILIB_USEDEP}]} )
108 + !multilib? ( ${RDEPEND//%/} )"
109 +
110 +PDEPEND="webstart? ( >=dev-java/icedtea-web-1.6.1:0 )
111 + nsplugin? ( >=dev-java/icedtea-web-1.6.1:0[nsplugin] )
112 + pulseaudio? ( dev-java/icedtea-sound )"
113 +
114 +S="${WORKDIR}"
115 +
116 +pkg_pretend() {
117 + if [[ "$(tc-is-softfloat)" != "no" ]]; then
118 + die "These binaries require a hardfloat system."
119 + fi
120 +}
121 +
122 +src_prepare() {
123 + default
124 +
125 + if ! use alsa; then
126 + rm -v */jre/lib/*/libjsoundalsa.* || die
127 + fi
128 +
129 + if use headless-awt; then
130 + rm -vr */jre/lib/*/lib*{[jx]awt,splashscreen}* \
131 + */{,jre/}bin/policytool */bin/appletviewer || die
132 + fi
133 +}
134 +
135 +multilib_src_install() {
136 + local dest="/opt/${P}-${ABI}"
137 + dest="${dest/%-${DEFAULT_ABI}/}"
138 + local ddest="${ED}${dest#/}"
139 + dodir "${dest}"
140 +
141 + if multilib_is_native_abi; then
142 + dodoc ${P}-${ABI}/doc/{ASSEMBLY_EXCEPTION,AUTHORS,NEWS,README,THIRD_PARTY_README}
143 + use doc && dodoc -r ${P}/doc/html
144 +
145 + # doins doesn't preserve executable bits.
146 + cp -pRP ${P}-${ABI}/{bin,include,jre,lib,man} "${ddest}" || die
147 +
148 + if use examples; then
149 + cp -pRP ${P}-${ABI}/{demo,sample} "${ddest}" || die
150 + fi
151 +
152 + if use source; then
153 + cp ${P}/src.zip "${ddest}" || die
154 + fi
155 +
156 + # Use default VMHANDLE.
157 + java-vm_install-env "${FILESDIR}/icedtea-bin.env.sh"
158 + else
159 + local x native=$(get_system_arch ${DEFAULT_ABI})
160 +
161 + for x in {,/jre}/{bin,lib/$(get_system_arch)} /jre/lib/rt.jar; do
162 + dodir "${dest}"${x%/*}
163 + cp -pRP ${P}-${ABI}${x} "${ddest}"${x} || die
164 + done
165 +
166 + for x in ${P}-${DEFAULT_ABI}{,/jre}/lib/*; do
167 + [[ ${x##*/} = ${native} ]] && continue
168 + [[ -e "${ddest}"/${x#*/} ]] && continue
169 + dosym "${EPREFIX}"/opt/${P}/${x#*/} "${dest}"/${x#*/}
170 + done
171 +
172 + # Use ABI-suffixed VMHANDLE.
173 + VMHANDLE+="-${ABI}" java-vm_install-env "${FILESDIR}/icedtea-bin.env.sh"
174 + fi
175 +
176 + # Both icedtea itself and the icedtea ebuild set PAX markings but we
177 + # disable them for the icedtea-bin build because the line below will
178 + # respect end-user settings when icedtea-bin is actually installed.
179 + java-vm_set-pax-markings "${ddest}"
180 +
181 + # Each invocation appends to the config.
182 + java-vm_revdep-mask "${EPREFIX}${dest}"
183 +}
184 +
185 +src_install() {
186 + if use multilib; then
187 + multilib_foreach_abi multilib_src_install
188 + else
189 + multilib_src_install
190 + fi
191 +
192 + java-vm_sandbox-predict /proc/self/coredump_filter
193 +}