1 |
commit: 0e7e963bf1e61e2fb4f5ba7c47e8d080e3b452f4 |
2 |
Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org> |
3 |
AuthorDate: Fri Apr 2 09:00:29 2021 +0000 |
4 |
Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org> |
5 |
CommitDate: Fri Apr 2 09:02:11 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e7e963b |
7 |
|
8 |
dev-java/icedtea: bump to 3.18.0 |
9 |
|
10 |
Package-Manager: Portage-3.0.18, Repoman-3.0.3 |
11 |
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org> |
12 |
|
13 |
dev-java/icedtea/Manifest | 11 + |
14 |
.../files/openjdk-8-hotspot-arrayallocator.patch | 16 + |
15 |
dev-java/icedtea/icedtea-3.18.0.ebuild | 386 +++++++++++++++++++++ |
16 |
3 files changed, 413 insertions(+) |
17 |
|
18 |
diff --git a/dev-java/icedtea/Manifest b/dev-java/icedtea/Manifest |
19 |
index 4dbaeda9ac6..c93595edba8 100644 |
20 |
--- a/dev-java/icedtea/Manifest |
21 |
+++ b/dev-java/icedtea/Manifest |
22 |
@@ -20,5 +20,16 @@ DIST icedtea-3.17-shenandoah-3.17.0.tar.xz 7277048 BLAKE2B 034d27ce07b48d2730218 |
23 |
DIST icedtea-3.17-shenandoah-3.17.1.tar.xz 7276688 BLAKE2B 02db748f1b87694fe0995b153211ccfeb8719a0b8e5f32396eff15012e396647294eb809b6561f1ed845cfd0f43a8b297f55f444651020ea42f1a05c2f0d4692 SHA512 a1bdda704f0331ad445143a7bd9fba33090c2cfd1a6d73a6c427378e3685ca40e0d600256c3c678820061e93d5bdc3faf9040bb11e62647d7b3f9218406405a7 |
24 |
DIST icedtea-3.17.0.tar.xz 1565156 BLAKE2B f2b5f0b0ac1de70ddd5faa1215fcb17b5b7bee726ca5dd81bc2e3948c7fd342dfe1d7c9dbd232696bf0f2d68f214b0132f386d182b1fe15ec72cdb77cc0ba67c SHA512 4183037d6829f7fdd25b970853e84bfeecb45adca7fb78e773c431e401c155c212b78bc6daf80d8479c13e9ca63ad5446122a8ec2d6e6b1bede8ee747ba7a91b |
25 |
DIST icedtea-3.17.1.tar.xz 1565996 BLAKE2B 36a92826fd7f1cda9b1b90d93b57c4fe63cdcbd3e5d6320f3b6ac9819720156943232b17c9b3a6a5ca796cb2a29ef47426e9f10491af844bfa12a99252312d69 SHA512 eaf66df177f08cf335fe795f816e4f6b70a25a402ff8db4c1a2c545dd129350e1135c45e131eab8820620de2a75fda1d56141583ec1a651218d0a02680eb1df7 |
26 |
+DIST icedtea-3.18-aarch32-3.18.0.tar.xz 7057736 BLAKE2B bd681871da038ee1eaabe5c38e830a9d80fff30f8793b81afb69803107d0ee2ae8f3dad3985ec05c86120f1e3c86101984397476a76bce30a7b1852784175521 SHA512 3bc033bb4256d6a8ee8387998fbb4b1a14d2c6882337366085ca4648eb9b2a34176003e23e420703a075fb5322a1be3547d5ed82188d97e1f12429b4a8b3671d |
27 |
+DIST icedtea-3.18-corba-3.18.0.tar.xz 948504 BLAKE2B 00deb77d5aebf19ad404bf44ac7367017f8aee6699e11b93d2cb44f7d23f17f13caba8aee9862b25e528bee3d8fbfa728260850d1aa2f66839b079b1111d3af4 SHA512 db71a9fd6288a8217a8338dda70a87eb4b97f1659c7e990eccd2774785bf1da9e35b71e231e108c610784922d1fa01cdaf115941189910ef9c68cf70746296ea |
28 |
+DIST icedtea-3.18-hotspot-3.18.0.tar.xz 7110964 BLAKE2B ac45a7271f50a93b0ee27e6096820f3f93a02db42c6fde549515c3297590c94fff349a6cec5c9caf7bda31bbe36d6609097b4f73e99cdc1fe46bcfff0330a82e SHA512 abc46441c6ea7f652ee42376425e2fdd34a18de0803a13f38aa002a57a2835f8e2995f9a762fb53f114ad7b1030fc9ab82bd00839fccf57315018519df1c5c5f |
29 |
+DIST icedtea-3.18-jaxp-3.18.0.tar.xz 2268136 BLAKE2B 6f398420e55684792020da116f8da25e1b4a59b2423d6b37ed55a567ba68aedca7a59c99ee0e3a87785a12910b518d07a9d0d248bb3ae151f81c7622ec904299 SHA512 fe8d25e38d05e0f65f91712ee7e4b6469605c9a6bd9b0cbdd29f483889b267483008fb913191ffa277047a66ad43eb397582935d984fad00e469b118532a1adf |
30 |
+DIST icedtea-3.18-jaxws-3.18.0.tar.xz 2277356 BLAKE2B f0c3123722df57346461940f41e6b394a34c9e508ab3d2fa9f75581d4d626468394e2854129671e9bd68ecd217ed3aa0933cd14e2e74acd82d1cccd897e2b209 SHA512 b6879bdab06d1706945960b64f8dcff5ee8e81b95a733807768a0c2a5f329967e671d760a64239a42d6d5f9bf55b2904bf67082a4cd01ca5656bc323b041ff19 |
31 |
+DIST icedtea-3.18-jdk-3.18.0.tar.xz 40637140 BLAKE2B de565a2ba7cdb3732a551aa513cac3f52bf330590e011c6b05d47da1cee8389315ba3eb8112ce3c3d0510a049c49c147ea3a474eaadf70535fe30f63576fa293 SHA512 022115dbfc9ab7217a74b10e347a6a3a5eaa1112fef53cb37ff9dc003ec5bd3018b5b0bf675465d1c496e57b9b177102c6fef135acc881f3db49bea51c4f7375 |
32 |
+DIST icedtea-3.18-langtools-3.18.0.tar.xz 2080068 BLAKE2B e2781cc6728594a6c5e8dd213c810ae7fbed8d365da6db600e75b5786573b3d201cb0c3ed10221de1c139fe7ed55b59e57c47927272374e32ae94e586d6f0f9d SHA512 d96ded5041e488860baf1c17346e9342fb086e999fbf5d5a4dd5be97e0db17771f594c60f584d549d7ce1b4e1aa58b165a32f0633101bb70ea5c2d77758bb42b |
33 |
+DIST icedtea-3.18-nashorn-3.18.0.tar.xz 2323912 BLAKE2B ab0c7dc3635a6eb7feb350d56c0fd5e03b36b60b107b26dbb04262291c4c0d57077bff5f7d949d95ec1de04210e06f40600d360600db09421f1dc0f801968817 SHA512 2bd488893ac33a16480cceb16fab62c11f8032e68d84818ad20aaa4c3928af6c77c60f8bd94878aa02b703e0302847272688d8641145972071c4e9a048cd5a13 |
34 |
+DIST icedtea-3.18-openjdk-3.18.0.tar.xz 364932 BLAKE2B 098ae1025f0457e14a4afc7b67ad6063f99be5fa486a2f6e187e490fe7b87efbf1cdc6fad2b33f7ae4f92817d5a0410254c723853a2519dacb5c21961c4d7558 SHA512 b4b40d19bb12ae85d68b110eb51051c089a9b7e857eceb10429b609a9f11671cbee34cfcef5c89ef23ad6aea80e4bcad1ed085fb310e09942816c5dccc8f171d |
35 |
+DIST icedtea-3.18-shenandoah-3.18.0.tar.xz 7279864 BLAKE2B 1d8cfccda9cf24a5522862634d3699a7bd9cd445da7a08ab2061da45ddb885e023d56c096813710ef4f7ddb458300737bae21a56900bfb00e3ed5ac696af2059 SHA512 f8c5d4f108a3575f154a462e8cf907c14fbcdfc95708ebabbf530a79cc66979cc7e141cd239d6603e4a47d114130b07e6f32edb9145930e573a239fa0c91e75b |
36 |
+DIST icedtea-3.18.0.tar.xz 1565468 BLAKE2B e6bffb9860ae8824a96e55970056025bc426453c26f91a7eb52f01f5ada7c0cb0bdcc4efa503186f514759f914d9053d08ba540bde7d15be81736037ce5d8db5 SHA512 e94c365513e5fa8a17d61fe7957db85018510567df9ba115c9bca98c658257ff1f4dff7967e88b73088630f07670beeaa8cbe49706d6bd02fb2804abad5d95b1 |
37 |
DIST icedtea-cacao-c182f119eaad.tar.xz 3056520 BLAKE2B 6b1be66ce19f491d49f1591babcd8c088e8e327f828dca3f30b8f8b04c132140f8b9f487ef6d91aed212aebab2c7c3052d79fa3f2d76d3832341d94d48e77089 SHA512 22e8a031db5f93f82b276b310c175f1e926e48d64e1e50bebe51138e0f66391cd005501491a959d31663f338f27a29ec984ac29f77078f59472856e4d08edef7 |
38 |
DIST icedtea-jamvm-ec18fb9e49e62dce16c5094ef1527eed619463aa.tar.gz 317187 BLAKE2B 1ca581a02be4cf5c09162687bbc90ec01b58b4910d866d11512cf17a1caff181fdc69e42f7498b2df9deb875ddc6efc6bc2888428f411da94bbc2313ddf5a2c9 SHA512 a31348481e1c02747f5bb9db333f855c45a1555aa187ee35de5ef553a10a8a47dfcc1beb1e69502046c1758438b91958a328e0a0015812c153221f67734a70a6 |
39 |
|
40 |
diff --git a/dev-java/icedtea/files/openjdk-8-hotspot-arrayallocator.patch b/dev-java/icedtea/files/openjdk-8-hotspot-arrayallocator.patch |
41 |
new file mode 100644 |
42 |
index 00000000000..ba5283f1577 |
43 |
--- /dev/null |
44 |
+++ b/dev-java/icedtea/files/openjdk-8-hotspot-arrayallocator.patch |
45 |
@@ -0,0 +1,16 @@ |
46 |
+Workarounds build error: |
47 |
+Error: dl failure on line 895 |
48 |
+Error relocating .../libjvm.so: _ZN14ArrayAllocatorImL10MemoryType7EE4freeEv: symbol not found |
49 |
+ |
50 |
+Possibly due to g++ 10.x error on not properly instantiating the template. |
51 |
+ |
52 |
+--- openjdk/hotspot/src/share/vm/utilities/bitMap.cpp.orig 2020-11-10 14:07:08.372045326 +0200 |
53 |
++++ openjdk/hotspot/src/share/vm/utilities/bitMap.cpp 2020-11-10 14:08:07.911412813 +0200 |
54 |
+@@ -42,6 +42,7 @@ |
55 |
+ # include "os_bsd.inline.hpp" |
56 |
+ #endif |
57 |
+ |
58 |
++template class ArrayAllocator<BitMap::bm_word_t, mtInternal>; |
59 |
+ |
60 |
+ BitMap::BitMap(bm_word_t* map, idx_t size_in_bits) : |
61 |
+ _map(map), _size(size_in_bits), _map_allocator(false) |
62 |
|
63 |
diff --git a/dev-java/icedtea/icedtea-3.18.0.ebuild b/dev-java/icedtea/icedtea-3.18.0.ebuild |
64 |
new file mode 100644 |
65 |
index 00000000000..0ec90737581 |
66 |
--- /dev/null |
67 |
+++ b/dev-java/icedtea/icedtea-3.18.0.ebuild |
68 |
@@ -0,0 +1,386 @@ |
69 |
+# Copyright 1999-2021 Gentoo Authors |
70 |
+# Distributed under the terms of the GNU General Public License v2 |
71 |
+ |
72 |
+# Build written by Andrew John Hughes (gnu_andrew@××××××××××.org) |
73 |
+ |
74 |
+# ********************************************************* |
75 |
+# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-6.* AS WELL * |
76 |
+# ********************************************************* |
77 |
+ |
78 |
+EAPI=6 |
79 |
+SLOT="8" |
80 |
+ |
81 |
+inherit check-reqs eapi7-ver flag-o-matic java-pkg-2 java-vm-2 multiprocessing pax-utils prefix toolchain-funcs xdg-utils |
82 |
+ |
83 |
+ICEDTEA_VER=$(ver_cut 1-3) |
84 |
+ICEDTEA_BRANCH=$(ver_cut 1-2) |
85 |
+ICEDTEA_PKG=icedtea-${ICEDTEA_VER} |
86 |
+ |
87 |
+CORBA_TARBALL="${PV}.tar.xz" |
88 |
+JAXP_TARBALL="${PV}.tar.xz" |
89 |
+JAXWS_TARBALL="${PV}.tar.xz" |
90 |
+JDK_TARBALL="${PV}.tar.xz" |
91 |
+LANGTOOLS_TARBALL="${PV}.tar.xz" |
92 |
+OPENJDK_TARBALL="${PV}.tar.xz" |
93 |
+NASHORN_TARBALL="${PV}.tar.xz" |
94 |
+HOTSPOT_TARBALL="${PV}.tar.xz" |
95 |
+SHENANDOAH_TARBALL="${PV}.tar.xz" |
96 |
+AARCH32_TARBALL="${PV}.tar.xz" |
97 |
+ |
98 |
+CACAO_TARBALL="cacao-c182f119eaad.tar.xz" |
99 |
+JAMVM_TARBALL="jamvm-ec18fb9e49e62dce16c5094ef1527eed619463aa.tar.gz" |
100 |
+ |
101 |
+CORBA_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-corba-${CORBA_TARBALL}" |
102 |
+JAXP_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jaxp-${JAXP_TARBALL}" |
103 |
+JAXWS_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jaxws-${JAXWS_TARBALL}" |
104 |
+JDK_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jdk-${JDK_TARBALL}" |
105 |
+LANGTOOLS_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-langtools-${LANGTOOLS_TARBALL}" |
106 |
+OPENJDK_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-openjdk-${OPENJDK_TARBALL}" |
107 |
+NASHORN_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-nashorn-${NASHORN_TARBALL}" |
108 |
+HOTSPOT_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-hotspot-${HOTSPOT_TARBALL}" |
109 |
+SHENANDOAH_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-shenandoah-${SHENANDOAH_TARBALL}" |
110 |
+AARCH32_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-aarch32-${AARCH32_TARBALL}" |
111 |
+ |
112 |
+CACAO_GENTOO_TARBALL="icedtea-${CACAO_TARBALL}" |
113 |
+JAMVM_GENTOO_TARBALL="icedtea-${JAMVM_TARBALL}" |
114 |
+ |
115 |
+DROP_URL="https://icedtea.classpath.org/download/drops" |
116 |
+ICEDTEA_URL="${DROP_URL}/icedtea${SLOT}/${ICEDTEA_VER}" |
117 |
+ |
118 |
+DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies" |
119 |
+HOMEPAGE="https://icedtea.classpath.org" |
120 |
+SRC_PKG="${ICEDTEA_PKG}.tar.xz" |
121 |
+SRC_URI=" |
122 |
+ https://icedtea.classpath.org/download/source/${SRC_PKG} |
123 |
+ ${ICEDTEA_URL}/openjdk.tar.xz -> ${OPENJDK_GENTOO_TARBALL} |
124 |
+ ${ICEDTEA_URL}/corba.tar.xz -> ${CORBA_GENTOO_TARBALL} |
125 |
+ ${ICEDTEA_URL}/jaxp.tar.xz -> ${JAXP_GENTOO_TARBALL} |
126 |
+ ${ICEDTEA_URL}/jaxws.tar.xz -> ${JAXWS_GENTOO_TARBALL} |
127 |
+ ${ICEDTEA_URL}/jdk.tar.xz -> ${JDK_GENTOO_TARBALL} |
128 |
+ ${ICEDTEA_URL}/hotspot.tar.xz -> ${HOTSPOT_GENTOO_TARBALL} |
129 |
+ ${ICEDTEA_URL}/nashorn.tar.xz -> ${NASHORN_GENTOO_TARBALL} |
130 |
+ ${ICEDTEA_URL}/langtools.tar.xz -> ${LANGTOOLS_GENTOO_TARBALL} |
131 |
+ shenandoah? ( ${ICEDTEA_URL}/shenandoah.tar.xz -> ${SHENANDOAH_GENTOO_TARBALL} ) |
132 |
+ arm? ( ${ICEDTEA_URL}/aarch32.tar.xz -> ${AARCH32_GENTOO_TARBALL} ) |
133 |
+ ${DROP_URL}/cacao/${CACAO_TARBALL} -> ${CACAO_GENTOO_TARBALL} |
134 |
+ ${DROP_URL}/jamvm/${JAMVM_TARBALL} -> ${JAMVM_GENTOO_TARBALL}" |
135 |
+ |
136 |
+LICENSE="Apache-1.1 Apache-2.0 GPL-1 GPL-2 GPL-2-with-linking-exception LGPL-2 MPL-1.0 MPL-1.1 public-domain W3C" |
137 |
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" |
138 |
+ |
139 |
+IUSE="+alsa cacao +cups doc examples +gtk headless-awt |
140 |
+ jamvm +jbootstrap kerberos libressl pax_kernel +pch |
141 |
+ pulseaudio sctp selinux shenandoah smartcard +source +system-lcms test zero" |
142 |
+ |
143 |
+RESTRICT="!test? ( test )" |
144 |
+REQUIRED_USE="gtk? ( !headless-awt )" |
145 |
+ |
146 |
+# Ideally the following were optional at build time. |
147 |
+ALSA_COMMON_DEP=">=media-libs/alsa-lib-1.0" |
148 |
+CUPS_COMMON_DEP=">=net-print/cups-1.2.12" |
149 |
+ |
150 |
+X_COMMON_DEP=" |
151 |
+ >=media-libs/giflib-4.1.6:0= |
152 |
+ >=media-libs/libpng-1.2:0= |
153 |
+ >=x11-libs/libX11-1.1.3 |
154 |
+ >=x11-libs/libXext-1.1.1 |
155 |
+ >=x11-libs/libXi-1.1.3 |
156 |
+ >=x11-libs/libXrender-0.9.4 |
157 |
+ >=x11-libs/libXtst-1.0.3 |
158 |
+ x11-libs/libXcomposite |
159 |
+" |
160 |
+ |
161 |
+X_DEPEND=" |
162 |
+ x11-base/xorg-proto |
163 |
+ >=x11-libs/libXau-1.0.3 |
164 |
+ >=x11-libs/libXdmcp-1.0.2 |
165 |
+ >=x11-libs/libXinerama-1.0.2 |
166 |
+" |
167 |
+ |
168 |
+# The Javascript requirement is obsolete; OpenJDK 8+ has Nashorn |
169 |
+COMMON_DEP=" |
170 |
+ >=dev-libs/glib-2.26:2= |
171 |
+ >=dev-util/systemtap-1 |
172 |
+ media-libs/fontconfig:1.0= |
173 |
+ >=media-libs/freetype-2.5.3:2= |
174 |
+ >=sys-libs/zlib-1.2.3 |
175 |
+ virtual/jpeg:0= |
176 |
+ gtk? ( |
177 |
+ >=dev-libs/atk-1.30.0 |
178 |
+ >=x11-libs/cairo-1.8.8 |
179 |
+ x11-libs/gdk-pixbuf:2 |
180 |
+ >=x11-libs/gtk+-2.8:2 |
181 |
+ >=x11-libs/pango-1.24.5 |
182 |
+ ) |
183 |
+ kerberos? ( virtual/krb5 ) |
184 |
+ sctp? ( net-misc/lksctp-tools ) |
185 |
+ smartcard? ( sys-apps/pcsc-lite ) |
186 |
+ system-lcms? ( >=media-libs/lcms-2.9:2= ) |
187 |
+" |
188 |
+ |
189 |
+RDEPEND="${COMMON_DEP} |
190 |
+ !dev-java/icedtea:0 |
191 |
+ !dev-java/icedtea-web:7 |
192 |
+ >=gnome-base/gsettings-desktop-schemas-3.12.2 |
193 |
+ >=sys-apps/baselayout-java-0.1.0-r1 |
194 |
+ virtual/ttf-fonts |
195 |
+ alsa? ( ${ALSA_COMMON_DEP} ) |
196 |
+ cups? ( ${CUPS_COMMON_DEP} ) |
197 |
+ !headless-awt? ( ${X_COMMON_DEP} ) |
198 |
+ selinux? ( sec-policy/selinux-java ) |
199 |
+" |
200 |
+ |
201 |
+# perl is needed for running the SystemTap tests and the bootstrap javac |
202 |
+# lsb-release is used to obtain distro information for the version & crash dump output |
203 |
+# attr is needed for xattr.h which defines the extended attribute syscalls used by NIO2 |
204 |
+# x11-libs/libXt is needed for headers only (Intrinsic.h, IntrinsicP.h, Shell.h, StringDefs.h) |
205 |
+# Ant is no longer needed under the new build system |
206 |
+DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} ${X_DEPEND} |
207 |
+ || ( |
208 |
+ dev-java/openjdk-bin:8 |
209 |
+ dev-java/openjdk:8 |
210 |
+ dev-java/icedtea-bin:8 |
211 |
+ dev-java/icedtea:8 |
212 |
+ ) |
213 |
+ app-arch/cpio |
214 |
+ app-arch/unzip |
215 |
+ app-arch/zip |
216 |
+ app-misc/ca-certificates |
217 |
+ dev-lang/perl |
218 |
+ !libressl? ( dev-libs/openssl:0 ) |
219 |
+ libressl? ( dev-libs/libressl:0 ) |
220 |
+ sys-apps/attr |
221 |
+ sys-apps/lsb-release |
222 |
+ x11-libs/libXt |
223 |
+ virtual/pkgconfig |
224 |
+ pax_kernel? ( sys-apps/elfix )" |
225 |
+ |
226 |
+PDEPEND="pulseaudio? ( dev-java/icedtea-sound )" |
227 |
+ |
228 |
+S="${WORKDIR}"/${ICEDTEA_PKG} |
229 |
+ |
230 |
+icedtea_check_requirements() { |
231 |
+ local CHECKREQS_DISK_BUILD |
232 |
+ |
233 |
+ if use doc; then |
234 |
+ CHECKREQS_DISK_BUILD="9000M" |
235 |
+ else |
236 |
+ CHECKREQS_DISK_BUILD="8500M" |
237 |
+ fi |
238 |
+ |
239 |
+ check-reqs_pkg_${EBUILD_PHASE} |
240 |
+} |
241 |
+ |
242 |
+pkg_pretend() { |
243 |
+ icedtea_check_requirements |
244 |
+} |
245 |
+ |
246 |
+pkg_setup() { |
247 |
+ icedtea_check_requirements |
248 |
+ |
249 |
+ JAVA_PKG_WANT_BUILD_VM=" |
250 |
+ openjdk-8 openjdk-bin-8 |
251 |
+ icedtea-8 icedtea-bin-8" |
252 |
+ JAVA_PKG_WANT_SOURCE="1.5" |
253 |
+ JAVA_PKG_WANT_TARGET="1.5" |
254 |
+ |
255 |
+ java-vm-2_pkg_setup |
256 |
+ java-pkg-2_pkg_setup |
257 |
+} |
258 |
+ |
259 |
+src_unpack() { |
260 |
+ unpack ${SRC_PKG} |
261 |
+} |
262 |
+ |
263 |
+src_configure() { |
264 |
+ # GCC10/-fno-common handling, #723102 |
265 |
+ if [[ $(gcc-major-version) -ge 10 ]]; then |
266 |
+ append-flags -fcommon |
267 |
+ append-flags -fno-delete-null-pointer-checks -fno-lifetime-dse |
268 |
+ fi |
269 |
+ # this patch helps with gcc10 as well |
270 |
+ # since build system unpacks tarballs itself, this is a way to force makefile |
271 |
+ # to apply our patch. it expects relative path inside source, so we can't specify |
272 |
+ # ${FILESDIR} directly. |
273 |
+ mkdir -v gentoo_patches || die |
274 |
+ cp -v "${FILESDIR}/openjdk-8-hotspot-arrayallocator.patch" gentoo_patches || die |
275 |
+ export DISTRIBUTION_PATCHES="gentoo_patches//openjdk-8-hotspot-arrayallocator.patch" |
276 |
+ |
277 |
+ # For bootstrap builds as the sandbox control file might not yet exist. |
278 |
+ addpredict /proc/self/coredump_filter #nowarn |
279 |
+ |
280 |
+ # icedtea doesn't like some locales. #330433 #389717 |
281 |
+ export LANG="C" LC_ALL="C" |
282 |
+ |
283 |
+ local cacao_config config hotspot_port hs_config jamvm_config use_cacao use_jamvm use_zero zero_config |
284 |
+ local vm=$(java-pkg_get-current-vm) |
285 |
+ |
286 |
+ # gcj-jdk ensures ecj is present. |
287 |
+ if use jbootstrap || has "${vm}" gcj-jdk; then |
288 |
+ use jbootstrap || einfo "bootstrap is necessary when building with ${vm}, ignoring USE=\"-jbootstrap\"" |
289 |
+ config+=" --enable-bootstrap" |
290 |
+ else |
291 |
+ config+=" --disable-bootstrap" |
292 |
+ fi |
293 |
+ |
294 |
+ # Use Zero if requested |
295 |
+ if use zero; then |
296 |
+ use_zero="yes" |
297 |
+ fi |
298 |
+ |
299 |
+ # Use JamVM if requested |
300 |
+ if use jamvm; then |
301 |
+ use_jamvm="yes" |
302 |
+ fi |
303 |
+ |
304 |
+ # Use CACAO if requested |
305 |
+ if use cacao; then |
306 |
+ use_cacao="yes" |
307 |
+ fi |
308 |
+ |
309 |
+ # Are we on a architecture with a HotSpot port? |
310 |
+ # In-tree JIT ports are available for amd64, arm, arm64, ppc64 (be&le), SPARC and x86. |
311 |
+ if { use amd64 || use arm || use arm64 || use ppc64 || use sparc || use x86; }; then |
312 |
+ hotspot_port="yes" |
313 |
+ # Work around stack alignment issue, bug #647954. |
314 |
+ use x86 && append-flags -mincoming-stack-boundary=2 |
315 |
+ fi |
316 |
+ |
317 |
+ # Always use HotSpot as the primary VM if available. #389521 #368669 #357633 ... |
318 |
+ # Otherwise use Zero for now until alternate VMs are working |
319 |
+ if test "x${hotspot_port}" != "xyes"; then |
320 |
+ use_zero="yes" |
321 |
+ fi |
322 |
+ |
323 |
+ if use shenandoah; then |
324 |
+ if { use amd64 || use arm64; }; then |
325 |
+ hs_config="--with-hotspot-build=shenandoah" |
326 |
+ hs_config+=" --with-hotspot-src-zip="${DISTDIR}/${SHENANDOAH_GENTOO_TARBALL}"" |
327 |
+ else |
328 |
+ eerror "Shenandoah is only supported on arm64 and x86_64. Please re-build with USE="-shenandoah"" |
329 |
+ fi |
330 |
+ else |
331 |
+ if use arm ; then |
332 |
+ hs_config="--with-hotspot-src-zip="${DISTDIR}/${AARCH32_GENTOO_TARBALL}"" |
333 |
+ else |
334 |
+ hs_config="--with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_GENTOO_TARBALL}"" |
335 |
+ fi |
336 |
+ fi |
337 |
+ |
338 |
+ # Turn on JamVM if needed (non-HS archs) or requested |
339 |
+ if test "x${use_jamvm}" = "xyes"; then |
340 |
+ if test "x${hotspot_port}" = "xyes"; then |
341 |
+ ewarn 'Enabling JamVM on an architecture with HotSpot support; issues may result.' |
342 |
+ ewarn 'If so, please rebuild with USE="-jamvm"' |
343 |
+ fi |
344 |
+ ewarn 'JamVM is known to still have issues with IcedTea 3.x; please rebuild with USE="-jamvm"' |
345 |
+ jamvm_config="--enable-jamvm" |
346 |
+ fi |
347 |
+ |
348 |
+ # Turn on CACAO if needed (non-HS archs) or requested |
349 |
+ if test "x${use_cacao}" = "xyes"; then |
350 |
+ if test "x${hotspot_port}" = "xyes"; then |
351 |
+ ewarn 'Enabling CACAO on an architecture with HotSpot support; issues may result.' |
352 |
+ ewarn 'If so, please rebuild with USE="-cacao"' |
353 |
+ fi |
354 |
+ ewarn 'CACAO is known to still have issues with IcedTea 3.x; please rebuild with USE="-cacao"' |
355 |
+ cacao_config="--enable-cacao" |
356 |
+ fi |
357 |
+ |
358 |
+ # Turn on Zero if needed (non-HS/CACAO archs) or requested |
359 |
+ if test "x${use_zero}" = "xyes"; then |
360 |
+ if test "x${hotspot_port}" = "xyes"; then |
361 |
+ ewarn 'Enabling Zero on an architecture with HotSpot support; performance will be significantly reduced.' |
362 |
+ fi |
363 |
+ zero_config="--enable-zero" |
364 |
+ fi |
365 |
+ |
366 |
+ # PaX breaks pch, bug #601016 |
367 |
+ if use pch && ! host-is-pax; then |
368 |
+ config+=" --enable-precompiled-headers" |
369 |
+ else |
370 |
+ config+=" --disable-precompiled-headers" |
371 |
+ fi |
372 |
+ |
373 |
+ config+=" --with-parallel-jobs=$(makeopts_jobs)" |
374 |
+ |
375 |
+ unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS |
376 |
+ |
377 |
+ # force bash for now https://bugs.gentoo.org/722292 |
378 |
+ CONFIG_SHELL="${EPREFIX}/bin/bash" econf ${config} \ |
379 |
+ --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_GENTOO_TARBALL}" \ |
380 |
+ --with-corba-src-zip="${DISTDIR}/${CORBA_GENTOO_TARBALL}" \ |
381 |
+ --with-jaxp-src-zip="${DISTDIR}/${JAXP_GENTOO_TARBALL}" \ |
382 |
+ --with-jaxws-src-zip="${DISTDIR}/${JAXWS_GENTOO_TARBALL}" \ |
383 |
+ --with-jdk-src-zip="${DISTDIR}/${JDK_GENTOO_TARBALL}" \ |
384 |
+ --with-langtools-src-zip="${DISTDIR}/${LANGTOOLS_GENTOO_TARBALL}" \ |
385 |
+ --with-nashorn-src-zip="${DISTDIR}/${NASHORN_GENTOO_TARBALL}" \ |
386 |
+ --with-cacao-src-zip="${DISTDIR}/${CACAO_GENTOO_TARBALL}" \ |
387 |
+ --with-jamvm-src-zip="${DISTDIR}/${JAMVM_GENTOO_TARBALL}" \ |
388 |
+ --with-jdk-home="$(java-config -O)" \ |
389 |
+ --prefix="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}" \ |
390 |
+ --mandir="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}/man" \ |
391 |
+ --with-pkgversion="Gentoo ${PF}" \ |
392 |
+ --disable-ccache \ |
393 |
+ --disable-downloading --disable-Werror --disable-tests \ |
394 |
+ --disable-systemtap-tests --enable-improved-font-rendering \ |
395 |
+ --enable-system-jpeg --enable-system-zlib \ |
396 |
+ $(use_enable headless-awt headless) \ |
397 |
+ $(use_enable !headless-awt system-gif) \ |
398 |
+ $(use_enable !headless-awt system-png) \ |
399 |
+ $(use_enable doc docs) \ |
400 |
+ $(use_enable kerberos system-kerberos) \ |
401 |
+ $(use_enable system-lcms) \ |
402 |
+ $(use_with pax_kernel pax "${EPREFIX}/usr/sbin/paxmark.sh") \ |
403 |
+ $(use_enable sctp system-sctp) \ |
404 |
+ $(use_enable smartcard system-pcsc) \ |
405 |
+ ${zero_config} ${cacao_config} ${jamvm_config} ${hs_config} |
406 |
+} |
407 |
+ |
408 |
+src_compile() { |
409 |
+ default |
410 |
+} |
411 |
+ |
412 |
+src_test() { |
413 |
+ default |
414 |
+} |
415 |
+ |
416 |
+src_install() { |
417 |
+ default |
418 |
+ |
419 |
+ local dest="/usr/$(get_libdir)/icedtea${SLOT}" |
420 |
+ local ddest="${ED}${dest#/}" |
421 |
+ |
422 |
+ if ! use alsa; then |
423 |
+ rm -v "${ddest}"/jre/lib/$(get_system_arch)/libjsoundalsa.* || die |
424 |
+ fi |
425 |
+ |
426 |
+ if ! use examples; then |
427 |
+ rm -r "${ddest}"/demo "${ddest}"/sample || die |
428 |
+ fi |
429 |
+ |
430 |
+ if ! use source; then |
431 |
+ rm -v "${ddest}"/src.zip || die |
432 |
+ fi |
433 |
+ |
434 |
+ dosym ../../../usr/share/doc/"${PF}" usr/share/doc/"${PN}${SLOT}" |
435 |
+ |
436 |
+ # Fix the permissions. |
437 |
+ find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die |
438 |
+ |
439 |
+ dosym ../../../../../../etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts |
440 |
+ |
441 |
+ java-vm_install-env "${FILESDIR}/icedtea.env.sh" |
442 |
+ java-vm_sandbox-predict /proc/self/coredump_filter |
443 |
+} |
444 |
+ |
445 |
+pkg_postinst() { |
446 |
+ xdg_icon_cache_update |
447 |
+ java-vm-2_pkg_postinst |
448 |
+ einfo "JavaWebStart functionality provided by icedtea-web package" |
449 |
+} |
450 |
+ |
451 |
+pkg_postrm() { |
452 |
+ xdg_icon_cache_update |
453 |
+ java-vm-2_pkg_postrm |
454 |
+} |