From 398a6d1309de3ee878e7e586a894c7c921a88d30 Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Sun, 24 Apr 2016 11:15:32 +0100 Subject: dev-java/icedtea: Bump to 7.2.6.6 wrt security bug #581028 Non-Zero HotSpot builds on arm are currently disabled as the JIT code behind it is currently broken. Package-Manager: portage-2.2.28 --- dev-java/icedtea/Manifest | 16 +- dev-java/icedtea/files/7-cacao-pr-157.patch | 139 ---------- dev-java/icedtea/icedtea-7.2.6.5-r1.ebuild | 408 ---------------------------- dev-java/icedtea/icedtea-7.2.6.6.ebuild | 401 +++++++++++++++++++++++++++ 4 files changed, 409 insertions(+), 555 deletions(-) delete mode 100644 dev-java/icedtea/files/7-cacao-pr-157.patch delete mode 100644 dev-java/icedtea/icedtea-7.2.6.5-r1.ebuild create mode 100644 dev-java/icedtea/icedtea-7.2.6.6.ebuild (limited to 'dev-java') diff --git a/dev-java/icedtea/Manifest b/dev-java/icedtea/Manifest index f200eb72e609..bfc60fac074a 100644 --- a/dev-java/icedtea/Manifest +++ b/dev-java/icedtea/Manifest @@ -1,11 +1,11 @@ -DIST icedtea-2.6-corba-389551542e13.tar.bz2 1072454 SHA256 427969fdd78513a11ddd9d5131a068e0b26ca2c8f14951bf8b161fecd07fe77f SHA512 b9b48e79dc183e823caa2bc8600de001618ce5c9a10671639ade9cc6515ddf90a8a4554cf76c7633632ffc71833f247b39ae184a8c625f11cdd92a393eefb201 WHIRLPOOL 0a14f7f118c4bd4623b0351f870927e08485d79ede3153b7d171f9fc303b8a8dba182185c1db9b21fd88ad094d8706890c77cbfbb5dccb8a587130e53c37d622 -DIST icedtea-2.6-hotspot-04d7046d2d41.tar.bz2 8164174 SHA256 43983232fb10abeac99478e7045c04a93fef86185e2b9ee9c7b46f2903441cfc SHA512 7ecd1880eaa3e5c5dcad9ed083bd530e13f0a13476ee4594c37d2bbb55ca816423609075e97aadb3072010163bcb9b16935b5047688315af74a2d63099323a38 WHIRLPOOL 268d38ac11f1af3648e482d8e27b327b2d2ca7fcf7f2eab1350374c2dde4afa8373ac97ed3ef9531921bae8dbe7a07114c0dc2f14dc50f04bb50e078b0197aa7 -DIST icedtea-2.6-jaxp-8a56658cb829.tar.bz2 2732669 SHA256 7bb5e1bc9f0807061e157aeb356dd0e3b9fa019fb316beee3aa0181a335ba37a SHA512 64ad347aebc763ff8f9db3821b0197a400ffb5c6c75900be9b25d2af0b090323bebb0ab44b6f43a8d5c1a13f9d779dadf07a99d245281cfbcc0673db30b063cb WHIRLPOOL 83c9773b809dd85baa637152b3bbc2d7f9c7c61c4659a16edbc883ea0efaa70dde0533395b1e8b1f17fcc8b2f9cccd85e244e773b16bcf0cc735b8f51f4c076c -DIST icedtea-2.6-jaxws-9c049d7f5adc.tar.bz2 2021930 SHA256 4e759ade7e47713f6f26afc1ffcd02f2edf967582fae2ec6b4d73dc81be926d0 SHA512 8b71f5bcdad6e2191c100d8095aa0bbffaafc79a4a4b81d495430ba6c4ea1287b407f36333def5384f646cd18d916270b900f8af475641ed8c5d3361dc613d69 WHIRLPOOL f8cbe3646698c3d8b564b700ea53c2e1cf37ce8f47498a286173cfe338330bc640844c4e0d6271e283c84c2db71f76f7bf8127fbf93145ed87a972662a3df32a -DIST icedtea-2.6-jdk-e727fe32654c.tar.bz2 32423186 SHA256 cd3810553b1066c21f2fe08a73de72e38ba7e72295cd32dec70db481a24421ba SHA512 459c0ae24f9514020d794d8acf0189c0ef9dff589f034a061cea605890ae7ed6327ab4adc1761be406bd8e3c808d3f4506b3610b8096c5045844f54aac51c994 WHIRLPOOL 861ca3d1163357e5c5562146e8940082bfbc36e7cb12ac0517d68f5d4a4e98c8ddeeabc0376d2b9db2bbfd2742c64014f7deaa8553269a798be8e5e3f399969b -DIST icedtea-2.6-langtools-f6593c32cc46.tar.bz2 1707644 SHA256 6c6c676c60af61638a0c3176f0312fcc0abad16d1d3cdbe11aeefcc3357a78d9 SHA512 d469a26381d5163998c85f9afa33facd1d46650b7097cdeb190d4b50b087abea5fb3b4caf8a72e228e5c7d012dc1e2c44c0bca6d4363be354f2923f48127aa8e WHIRLPOOL 940591f4601f00eb3ba5422a7687e148a4acb61ece99e29daa0eff145f4897750b9780af5cceb21aa1a1a951d4ce6dc84427bb76bbb42a23acab5e977cca501c -DIST icedtea-2.6-openjdk-8e728c41fec5.tar.bz2 130030 SHA256 c66f56a91a6fa9e3c889bbbc5432a4e082b7d3735188fb508fa7ec70c142abdb SHA512 10626285c0dda1fa9ba3b843cc70d61c1d417dd87e5def60d8df6d19b4ce40d2b0b0e007b6a52b4468b5a152aa50f9efc6a45dfe6f31cfbf2d47897bee3ca13f WHIRLPOOL 8f4f5e5c4e75a0d9aae89872482925a37b80a7e85d74a8d6968c28fa3dd488176ddeff9c62f81b90a4e994ac2c04d6704b6a2eba4cf734783ff106af8942ce25 -DIST icedtea-2.6.5.tar.xz 2072216 SHA256 e752304496bb11ae9952beb11e6743dd84e55b340eaca716f310c5a0f48b53f7 SHA512 8b6dd1fcec8ceaa0525872123ab9327093c5df35b322569942909a0a61e0bd4225984e2f17f30bd392b829368379cbd3efc8b14ce09a442b9d13eaa78d749d5a WHIRLPOOL 8bd4512ddbeceeda7515a4e74555243582a8201eb800f7a357cb67e9744f30d030fbadd571e4130a18d9c43cbb4f25227e453e95976ae83118e0a79f4f6f2b39 +DIST icedtea-2.6-corba-ca3e3c4c5a61.tar.bz2 1072731 SHA256 ce886c97a150465df3a36c4281d5f36ba8ee2b081b5b76ecfbefaddb723b6a2d SHA512 377893e3ff8285966cb06ca2c4b276a4241df191743b585feac9c142135ec5b74615433c5a52576206077d282683ebab5f05a7130921ff76b5b7916561d6926b WHIRLPOOL 7889d1af35038e8f213fa9213f7051d62ecaf9e8034888483947299e64a80b60fac468c36589577d1608175e71e7f5ebe7c73725a4943d99b064427a0b19211a +DIST icedtea-2.6-hotspot-3022a3d80efd.tar.bz2 8164643 SHA256 a4e8f4fef724a34e5eece3c2c1de4e60ff12e752549c8df11ddcd6f3042e0dc2 SHA512 44e99f086a16ccec2460ce8335ecabb3893f81abe64b4940ac66cd17d4651e37f6fdc1706ecd8150d5310cf240359ccac0aa77d96fab82a8216e1ddfd88ab70b WHIRLPOOL 35a7951ddf1ec416e031faa1c65210f76b58693ab41442c2eb0ad4ec631da8942feefb050dd9c173a43c9ad76ad3e1e7e9529375ada9f321e4bd876558d13002 +DIST icedtea-2.6-jaxp-683427778edf.tar.bz2 2733076 SHA256 679eb46054afea3098713beee85639c4a5a5af881e94be527409feaea4272d30 SHA512 26fe3739e85f63eb2149db4c89dbe31f4d54c1c7265802e456ad4df4212a9218b60667c6ab33e6f2874ac9b86d12630b6a9877d9a2b104f27276a564498d5678 WHIRLPOOL 9765849715ed80900e8c18a7a83e48af79c9b187bd152c294198b316c5973df7388d92c5b5653269a00fd318325571ddcd23101f8795a37be1a82c565927c244 +DIST icedtea-2.6-jaxws-63f7bf7ed2d4.tar.bz2 2022402 SHA256 f9af138096f4d11e381c3cc949dd3ee37cee5bfff15dc21cff5c16a2f9e7c218 SHA512 05c0f06f8f77c133aed646b0172cd40ffbe606f2d3e092b89f5f6f5a53dd489ef87b0abd9bb3013bf31ab2ea693c2ab627c4da7f19075628ada28a4ba1d85735 WHIRLPOOL ac19707fc39e8255762977c9b86991d8f425e18da6cbdf4fff33cb2f911bbb0ce9891c4d8c9b912aa5a13460ca188ac81388b099b7d1f4e63d98bb76927b8e6e +DIST icedtea-2.6-jdk-55c38c1ace75.tar.bz2 32434755 SHA256 1baa92ca72db1b80fff18ca26bd49e5fd5f2927df9eceebf3456cbd86a710a9f SHA512 7fe81eaa9f1f96f95276d8a4fe5c48817324d487e99c43360cbcccf48d2bef7e43be3bc0f38c9cbdaf4a63794c83d04fb362bd64a3f18e886d9f87868024d6d8 WHIRLPOOL 8b00b6c3fb18970896bd943cfee01929edb8b2c4f3e74caef7e5629b3de34aeca0cdb7ed911f9627f8bb83221ed3cfc3319a1b65159a0a2cfd4799daeb28e52d +DIST icedtea-2.6-langtools-e42dd50480d3.tar.bz2 1708918 SHA256 54bb2cee7b4fc5bbc63a4c9d7008602e12f75431c7f129ade7c405b53c2363f3 SHA512 55ad5b729fe85710089017402e575b5f5f2426c54401bb40202af2bb7af722d2b3370f12f5ba6be941b60177ee45ad15911fdca554c213c09c93d9404d85565c WHIRLPOOL 6c4d5dec34dfdcd9ffc831020790529193b665f92cc7bee33df8e5a7c97a0dc51f1adb5b675c81fb347f07ed4854bcb6bec34714935995826573c2c1464d186f +DIST icedtea-2.6-openjdk-882cfee70fe8.tar.bz2 130156 SHA256 24f813e6cb938272a4da37b46b48aa86820b13be0747747e6c8fb4aad72cadf3 SHA512 fe72b626a60e8dc7939d35069ed90e8053676e8b45a9eca78d6abb2c7e3bff15ed7f84300542e726a8cd6a8fcc73ae2f779843de79654dd6cb4ef04fb134c222 WHIRLPOOL 4cc443730734c5b3d4f57de7b3ecfaefe8029ce4143b60e80011d871f322076816edc11a39c718f0cfa6d2283315186b8fe488b1f8b5aea16736a88970af513b +DIST icedtea-2.6.6.tar.xz 2072632 SHA256 79949744436158d9ded3a758c22da7629f843ea3913afdffc65ea0f1a26d544a SHA512 ba603ec6c16b5642d1591717ea14378ebe045e4128a8eb517de94df32c3bb03b636f051e682cf5990c3a1bcbf2460a97965cdc139bf265fe5f97bedaa539092c WHIRLPOOL 7716613f6463dcaa514c980ef0850c2ad42319275b504d0ec55e0dd54e0dbff5c74af4f53b0e466dbb41c4ab5ae2694cb3a5f74b19de4913790ef9bff6554985 DIST icedtea-3.0-corba-37af47894175.tar.xz 936876 SHA256 d77480d5d0c9620562a66b01fda9be4de58c2881cec680b4f2682ef09087b3cc SHA512 21b2f069f1eaca62a46518173de3c1368963db489f436d5ad705c7cb36ecc259d342c059c4c593427e96604164f78be761e1fe4118d8517ece3630280524ad30 WHIRLPOOL ac7292f0a32cfa7b58d3616b704bfd90ead49044bb51fccc1ca87900555d15f28b3d3137512fe007b40f0a130d3e6eb9d805112725914b0f0721ac8dbad8794c DIST icedtea-3.0-hotspot-5e587a29a6aa.tar.xz 6766584 SHA256 76717fa6a84fde60075c19fbc261709bd9c3b849952c817c0ac6b46b757ac0d7 SHA512 c8a2355ef81ad1dd4a2f6be0e5cdaba9d6d66a4fd5514718cc09ed391bcce269a17a34fbc89d7c6d3e7a2632f2ffcb0028a8faaf41649055a096407a24cacd0e WHIRLPOOL 4e83ea5ee631ca76e7919a944f9f1a3a007ca951a99552ee087bd6d2d6e027c5ce9963ec3c593c8132a984dd9818fc42abfb0792b3628d44491488700b20ec09 DIST icedtea-3.0-jaxp-4ed5441e40e1.tar.xz 2296120 SHA256 4ccce5442642561cda78116a019f5c0ea690725a374ccf5695b3af00393d26e8 SHA512 47e968f674176f74706ab268098a1635a54de7282993abc46a1c72c8d24f21216ed898bbca830623f5afd11912a744138547d6d22a82f68fa1ba15ccc7a9e375 WHIRLPOOL e94f961336d1e8b176ab2486ae98852049f930af3ee31dd3f7491544244c78d6b5657334fb45b9cc863bb6c377a6b1ab5d71df1257d02bc9e79513cd41ecc2ce diff --git a/dev-java/icedtea/files/7-cacao-pr-157.patch b/dev-java/icedtea/files/7-cacao-pr-157.patch deleted file mode 100644 index 0701363cf38a..000000000000 --- a/dev-java/icedtea/files/7-cacao-pr-157.patch +++ /dev/null @@ -1,139 +0,0 @@ -diff -Naur cacao/cacao/src/vm/options.cpp cacao/cacao/src/vm/options.cpp ---- cacao/cacao/src/vm/options.cpp 2014-12-12 21:14:45.000000000 +0000 -+++ cacao/cacao/src/vm/options.cpp 2015-12-23 21:01:37.644275263 +0000 -@@ -26,6 +26,7 @@ - #include "config.h" - - #include -+#include - #include - #include - #include -@@ -60,9 +61,9 @@ - - bool opt_run = true; - --s4 opt_heapmaxsize = 0; /* maximum heap size */ --s4 opt_heapstartsize = 0; /* initial heap size */ --s4 opt_stacksize = 0; /* thread stack size */ -+size_t opt_heapmaxsize = 0; /* maximum heap size */ -+size_t opt_heapstartsize = 0; /* initial heap size */ -+size_t opt_stacksize = 0; /* thread stack size */ - - bool opt_verbose = false; - bool opt_debugcolor = false; /* use ANSI terminal sequences */ -diff -Naur cacao/cacao/src/vm/options.hpp cacao/cacao/src/vm/options.hpp ---- cacao/cacao/src/vm/options.hpp 2014-12-12 21:14:45.000000000 +0000 -+++ cacao/cacao/src/vm/options.hpp 2015-12-23 21:01:37.645275246 +0000 -@@ -26,6 +26,7 @@ - #ifndef OPTIONS_HPP_ - #define OPTIONS_HPP_ 1 - -+#include // for size_t - #include // for int64_t - #include // for FILE - #include "config.h" // for ENABLE_DEBUG_FILTER, etc -@@ -77,9 +78,9 @@ - extern bool opt_jar; - extern bool opt_run; - --extern s4 opt_heapmaxsize; --extern s4 opt_heapstartsize; --extern s4 opt_stacksize; -+extern size_t opt_heapmaxsize; -+extern size_t opt_heapstartsize; -+extern size_t opt_stacksize; - - extern bool opt_verbose; - extern bool opt_debugcolor; -diff -Naur cacao/cacao/src/vm/vm.cpp cacao/cacao/src/vm/vm.cpp ---- cacao/cacao/src/vm/vm.cpp 2014-12-12 21:14:45.000000000 +0000 -+++ cacao/cacao/src/vm/vm.cpp 2015-12-23 21:01:38.046268504 +0000 -@@ -29,9 +29,14 @@ - #include - #include - #include -+#include - #include - #include - -+#if defined(__LINUX__) -+#include -+#endif -+ - #include "md-abi.hpp" - - #include "mm/codememory.hpp" -@@ -690,6 +695,19 @@ - opt_heapstartsize = HEAP_STARTSIZE; - opt_stacksize = STACK_SIZE; - -+#if defined(__LINUX__) -+ // Calculate 1/4 of the physical memory. -+ size_t qmem = sysconf(_SC_PHYS_PAGES) * sysconf(_SC_PAGESIZE) / 4; -+ -+ if (qmem > INT32_MAX) { -+ // Allocate no more than 2GB. -+ opt_heapmaxsize = INT32_MAX; -+ } else if (qmem > HEAP_MAXSIZE) { -+ // Otherwise use this if greater than default (128MB). -+ opt_heapmaxsize = qmem; -+ } -+#endif -+ - // First of all, parse the -XX options. - options_xx(vm_args); - -@@ -896,18 +914,33 @@ - case OPT_SS: - { - char c; -- int j; -+ size_t j; - -+ errno = 0; - c = opt_arg[strlen(opt_arg) - 1]; -+ j = strtoul(opt_arg, NULL, 10); -+ -+ if (errno) -+ break; // Invalid. - - if ((c == 'k') || (c == 'K')) { -- j = atoi(opt_arg) * 1024; -+ if (j > SIZE_MAX / 1024) -+ break; // Overflow. -+ else -+ j *= 1024; - - } else if ((c == 'm') || (c == 'M')) { -- j = atoi(opt_arg) * 1024 * 1024; -- -- } else -- j = atoi(opt_arg); -+ if (j > SIZE_MAX / 1024 / 1024) -+ break; // Overflow. -+ else -+ j *= 1024 * 1024; -+ -+ } else if ((c == 'g') || (c == 'G')) { -+ if (j > SIZE_MAX / 1024 / 1024 / 1024) -+ break; // Overflow. -+ else -+ j *= 1024 * 1024 * 1024; -+ } - - if (opt == OPT_MX) - opt_heapmaxsize = j; -@@ -1498,9 +1531,9 @@ - void VM::print_run_time_config() - { - puts("Run-time variables:\n"); -- printf(" maximum heap size : %d\n", opt_heapmaxsize); -- printf(" initial heap size : %d\n", opt_heapstartsize); -- printf(" stack size : %d\n", opt_stacksize); -+ printf(" maximum heap size : %lu\n", opt_heapmaxsize); -+ printf(" initial heap size : %lu\n", opt_heapstartsize); -+ printf(" stack size : %lu\n", opt_stacksize); - - #if defined(WITH_JAVA_RUNTIME_LIBRARY_GNU_CLASSPATH) - printf(" gnu.classpath.boot.library.path: %s\n", _properties.get("gnu.classpath.boot.library.path")); diff --git a/dev-java/icedtea/icedtea-7.2.6.5-r1.ebuild b/dev-java/icedtea/icedtea-7.2.6.5-r1.ebuild deleted file mode 100644 index f1c743e23909..000000000000 --- a/dev-java/icedtea/icedtea-7.2.6.5-r1.ebuild +++ /dev/null @@ -1,408 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id$ -# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org) - -# ********************************************************* -# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-6.* AS WELL * -# ********************************************************* - -EAPI="5" -SLOT="7" - -inherit check-reqs gnome2-utils java-pkg-2 java-vm-2 multiprocessing pax-utils prefix versionator virtualx - -ICEDTEA_VER=$(get_version_component_range 2-4) -ICEDTEA_BRANCH=$(get_version_component_range 2-3) -ICEDTEA_PKG=icedtea-${ICEDTEA_VER} -ICEDTEA_PRE=$(get_version_component_range _) -CORBA_TARBALL="389551542e13.tar.bz2" -JAXP_TARBALL="8a56658cb829.tar.bz2" -JAXWS_TARBALL="9c049d7f5adc.tar.bz2" -JDK_TARBALL="e727fe32654c.tar.bz2" -LANGTOOLS_TARBALL="f6593c32cc46.tar.bz2" -OPENJDK_TARBALL="8e728c41fec5.tar.bz2" -HOTSPOT_TARBALL="04d7046d2d41.tar.bz2" - -CACAO_TARBALL="cacao-c182f119eaad.tar.gz" -JAMVM_TARBALL="jamvm-ec18fb9e49e62dce16c5094ef1527eed619463aa.tar.gz" - -CORBA_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-corba-${CORBA_TARBALL}" -JAXP_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jaxp-${JAXP_TARBALL}" -JAXWS_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jaxws-${JAXWS_TARBALL}" -JDK_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jdk-${JDK_TARBALL}" -LANGTOOLS_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-langtools-${LANGTOOLS_TARBALL}" -OPENJDK_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-openjdk-${OPENJDK_TARBALL}" -HOTSPOT_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-hotspot-${HOTSPOT_TARBALL}" - -CACAO_GENTOO_TARBALL="icedtea-${CACAO_TARBALL}" -JAMVM_GENTOO_TARBALL="icedtea-${JAMVM_TARBALL}" - -DROP_URL="http://icedtea.classpath.org/download/drops" -ICEDTEA_URL="${DROP_URL}/icedtea${SLOT}/${ICEDTEA_VER}" - -DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies" -HOMEPAGE="http://icedtea.classpath.org" -SRC_PKG="${ICEDTEA_PKG}.tar.xz" -SRC_URI=" - http://icedtea.classpath.org/download/source/${SRC_PKG} - ${ICEDTEA_URL}/openjdk.tar.bz2 -> ${OPENJDK_GENTOO_TARBALL} - ${ICEDTEA_URL}/corba.tar.bz2 -> ${CORBA_GENTOO_TARBALL} - ${ICEDTEA_URL}/jaxp.tar.bz2 -> ${JAXP_GENTOO_TARBALL} - ${ICEDTEA_URL}/jaxws.tar.bz2 -> ${JAXWS_GENTOO_TARBALL} - ${ICEDTEA_URL}/jdk.tar.bz2 -> ${JDK_GENTOO_TARBALL} - ${ICEDTEA_URL}/hotspot.tar.bz2 -> ${HOTSPOT_GENTOO_TARBALL} - ${ICEDTEA_URL}/langtools.tar.bz2 -> ${LANGTOOLS_GENTOO_TARBALL} - ${DROP_URL}/cacao/${CACAO_TARBALL} -> ${CACAO_GENTOO_TARBALL} - ${DROP_URL}/jamvm/${JAMVM_TARBALL} -> ${JAMVM_GENTOO_TARBALL}" - -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" -KEYWORDS="~amd64 ~arm ~x86" -RESTRICT="test" - -IUSE="+alsa cacao cjk +cups debug doc examples +gtk headless-awt infinality - jamvm javascript +jbootstrap kerberos libressl nsplugin nss pax_kernel - pulseaudio sctp selinux smartcard source +sunec test +webstart zero" - -REQUIRED_USE="gtk? ( !headless-awt )" - -# Ideally the following were optional at build time. -ALSA_COMMON_DEP=" - >=media-libs/alsa-lib-1.0" -CUPS_COMMON_DEP=" - >=net-print/cups-1.2.12" -X_COMMON_DEP=" - >=media-libs/giflib-4.1.6:= - >=media-libs/libpng-1.2:0= - >=x11-libs/libX11-1.1.3 - >=x11-libs/libXext-1.1.1 - >=x11-libs/libXi-1.1.3 - >=x11-libs/libXrender-0.9.4 - >=x11-libs/libXtst-1.0.3 - x11-libs/libXt - x11-libs/libXcomposite" -X_DEPEND=" - >=x11-libs/libXau-1.0.3 - >=x11-libs/libXdmcp-1.0.2 - >=x11-libs/libXinerama-1.0.2 - x11-proto/inputproto - >=x11-proto/xextproto-7.1.1 - x11-proto/xineramaproto - x11-proto/xproto" - -COMMON_DEP=" - >=dev-libs/glib-2.26:2 - >=dev-util/systemtap-1 - media-libs/fontconfig - >=media-libs/freetype-2.5.3:2=[infinality?] - >=media-libs/lcms-2.5 - >=sys-libs/zlib-1.2.3:= - virtual/jpeg:0= - gtk? ( - >=dev-libs/atk-1.30.0 - >=x11-libs/cairo-1.8.8:= - x11-libs/gdk-pixbuf:2 - >=x11-libs/gtk+-2.8:2= - >=x11-libs/pango-1.24.5 - ) - javascript? ( dev-java/rhino:1.6 ) - kerberos? ( virtual/krb5 ) - nss? ( >=dev-libs/nss-3.12.5-r1 ) - sctp? ( net-misc/lksctp-tools ) - smartcard? ( sys-apps/pcsc-lite ) - sunec? ( >=dev-libs/nss-3.16.1-r1 )" - -# gsettings-desktop-schemas is needed for native proxy support. #431972 -RDEPEND="${COMMON_DEP} - !dev-java/icedtea:0 - !dev-java/icedtea-web:7 - >=gnome-base/gsettings-desktop-schemas-3.12.2 - media-fonts/dejavu - alsa? ( ${ALSA_COMMON_DEP} ) - cjk? ( - media-fonts/arphicfonts - media-fonts/baekmuk-fonts - media-fonts/lklug - media-fonts/lohit-fonts - media-fonts/sazanami - ) - cups? ( ${CUPS_COMMON_DEP} ) - !headless-awt? ( ${X_COMMON_DEP} ) - selinux? ( sec-policy/selinux-java )" - -# Only ant-core-1.8.1 has fixed ant -diagnostics when xerces+xalan are not present. -# ca-certificates, perl and openssl are used for the cacerts keystore generation -DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} ${X_DEPEND} - || ( - >=dev-java/gcj-jdk-4.3 - dev-java/icedtea-bin:7 - dev-java/icedtea-bin:6 - dev-java/icedtea:7 - dev-java/icedtea:6 - ) - app-arch/cpio - app-arch/unzip - app-arch/zip - app-misc/ca-certificates - >=dev-java/ant-core-1.8.2 - dev-lang/perl - >=dev-libs/libxslt-1.1.26 - !libressl? ( dev-libs/openssl ) - libressl? ( dev-libs/libressl ) - sys-apps/attr - sys-apps/lsb-release - virtual/pkgconfig - pax_kernel? ( sys-apps/elfix )" - -PDEPEND="webstart? ( dev-java/icedtea-web:0[icedtea7(+)] ) - nsplugin? ( dev-java/icedtea-web:0[icedtea7(+),nsplugin] ) - pulseaudio? ( dev-java/icedtea-sound )" - -S="${WORKDIR}"/${ICEDTEA_PKG} - -icedtea_check_requirements() { - local CHECKREQS_DISK_BUILD - - if use doc; then - CHECKREQS_DISK_BUILD="9000M" - else - CHECKREQS_DISK_BUILD="8500M" - fi - - check-reqs_pkg_${EBUILD_PHASE} -} - -pkg_pretend() { - icedtea_check_requirements -} - -pkg_setup() { - icedtea_check_requirements - - JAVA_PKG_WANT_BUILD_VM=" - icedtea-7 icedtea-bin-7 - icedtea-6 icedtea-bin-6 - gcj-jdk" - JAVA_PKG_WANT_SOURCE="1.5" - JAVA_PKG_WANT_TARGET="1.5" - - java-vm-2_pkg_setup - java-pkg-2_pkg_setup -} - -src_unpack() { - unpack ${SRC_PKG} -} - -java_prepare() { - # For bootstrap builds as the sandbox control file might not yet exist. - addpredict /proc/self/coredump_filter - - # icedtea doesn't like some locales. #330433 #389717 - export LANG="C" LC_ALL="C" -} - -src_configure() { - local cacao_config config hotspot_port jamvm_config use_cacao use_jamvm use_zero zero_config - local vm=$(java-pkg_get-current-vm) - - # gcj-jdk ensures ecj is present. - if use jbootstrap || has "${vm}" gcj-jdk; then - use jbootstrap || einfo "bootstrap is necessary when building with ${vm}, ignoring USE=\"-jbootstrap\"" - config+=" --enable-bootstrap" - else - config+=" --disable-bootstrap" - fi - - # Use Zero if requested - if use zero; then - use_zero="yes" - fi - - # Use JamVM if requested - if use jamvm; then - use_jamvm="yes" - fi - - # Use CACAO if requested - if use cacao; then - use_cacao="yes" - fi - - # Are we on a architecture with a HotSpot port? - # In-tree JIT ports are available for amd64, arm, arm64, ppc64 (be&le), SPARC and x86. - if { use amd64 || use arm || use arm64 || use ppc64 || use sparc || use x86; }; then - hotspot_port="yes" - fi - - # Always use HotSpot as the primary VM if available. #389521 #368669 #357633 ... - # Otherwise use CACAO on ppc and Zero on anything else - if test "x${hotspot_port}" != "xyes"; then - if use ppc; then - use_cacao="yes" - else - use_zero="yes" - fi - fi - - # Turn on JamVM if needed (non-HS archs) or requested - if test "x${use_jamvm}" = "xyes"; then - if test "x${hotspot_port}" = "xyes"; then - ewarn 'Enabling JamVM on an architecture with HotSpot support; issues may result.' - ewarn 'If so, please rebuild with USE="-jamvm"' - fi - jamvm_config="--enable-jamvm" - fi - - # Turn on CACAO if needed (non-HS archs) or requested - if test "x${use_cacao}" = "xyes"; then - if test "x${hotspot_port}" = "xyes"; then - ewarn 'Enabling CACAO on an architecture with HotSpot support; issues may result.' - ewarn 'If so, please rebuild with USE="-cacao"' - fi - cacao_config="--enable-cacao" - - # http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2612 - export DISTRIBUTION_PATCHES="${SLOT}-cacao-pr-157.patch" - ln -snf "${FILESDIR}"/${SLOT}-cacao-pr-157.patch . || die - fi - - # Turn on Zero if needed (non-HS/CACAO archs) or requested - if test "x${use_zero}" = "xyes"; then - if test "x${hotspot_port}" = "xyes"; then - ewarn 'Enabling Zero on an architecture with HotSpot support; performance will be significantly reduced.' - fi - zero_config="--enable-zero" - fi - - config+=" --with-parallel-jobs=$(makeopts_jobs)" - - if use javascript ; then - config+=" --with-rhino=$(java-pkg_getjar rhino-1.6 js.jar)" - else - config+=" --without-rhino" - fi - - unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS - - econf ${config} \ - --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_GENTOO_TARBALL}" \ - --with-corba-src-zip="${DISTDIR}/${CORBA_GENTOO_TARBALL}" \ - --with-jaxp-src-zip="${DISTDIR}/${JAXP_GENTOO_TARBALL}" \ - --with-jaxws-src-zip="${DISTDIR}/${JAXWS_GENTOO_TARBALL}" \ - --with-jdk-src-zip="${DISTDIR}/${JDK_GENTOO_TARBALL}" \ - --with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_GENTOO_TARBALL}" \ - --with-langtools-src-zip="${DISTDIR}/${LANGTOOLS_GENTOO_TARBALL}" \ - --with-cacao-src-zip="${DISTDIR}/${CACAO_GENTOO_TARBALL}" \ - --with-jamvm-src-zip="${DISTDIR}/${JAMVM_GENTOO_TARBALL}" \ - --with-jdk-home="$(java-config -O)" \ - --prefix="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}" \ - --mandir="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}/man" \ - --docdir="${EPREFIX}/usr/share/doc/${PF}" \ - --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \ - --with-pkgversion="Gentoo ${PF}" \ - --disable-downloading --disable-Werror \ - --disable-hotspot-tests --disable-jdk-tests \ - --enable-system-lcms --enable-system-jpeg \ - --enable-system-zlib \ - $(use_enable !headless-awt system-gif) \ - $(use_enable !headless-awt system-png) \ - $(use_enable !debug optimizations) \ - $(use_enable cups system-cups) \ - $(use_enable doc docs) \ - $(use_enable gtk system-gtk) \ - $(use_enable infinality) \ - $(use_enable kerberos system-kerberos) \ - $(use_enable nss) \ - $(use_with pax_kernel pax "${EPREFIX}/usr/sbin/paxmark.sh") \ - $(use_enable sctp system-sctp) \ - $(use_enable smartcard system-pcsc) \ - $(use_enable sunec) \ - ${zero_config} ${cacao_config} ${jamvm_config} -} - -src_compile() { - # Would use GENTOO_VM otherwise. - export ANT_RESPECT_JAVA_HOME=TRUE - - # With ant >=1.8.2 all required tasks are part of ant-core - export ANT_TASKS="none" - - emake -} - -src_test() { - # Use Xvfb for tests - unset DISPLAY - - Xemake check -} - -src_install() { - default - - local dest="/usr/$(get_libdir)/icedtea${SLOT}" - local ddest="${ED}${dest#/}" - - if ! use alsa; then - rm -v "${ddest}"/jre/lib/$(get_system_arch)/libjsoundalsa.* || die - fi - - if use headless-awt; then - rm -vr "${ddest}"/jre/lib/$(get_system_arch)/{xawt,libsplashscreen.*,libjavagtk.*} \ - "${ddest}"/{,jre/}bin/policytool "${ddest}"/bin/appletviewer || die - fi - - if ! use examples; then - rm -r "${ddest}"/demo "${ddest}"/sample || die - fi - - if ! use source; then - rm -v "${ddest}"/src.zip || die - fi - - # provided by icedtea-web but we need it in JAVA_HOME to work with run-java-tool - if use webstart || use nsplugin; then - dosym /usr/libexec/icedtea-web/itweb-settings ${dest}/bin/itweb-settings - dosym /usr/libexec/icedtea-web/itweb-settings ${dest}/jre/bin/itweb-settings - fi - if use webstart; then - dosym /usr/libexec/icedtea-web/javaws ${dest}/bin/javaws - dosym /usr/libexec/icedtea-web/javaws ${dest}/jre/bin/javaws - fi - dosym /usr/share/doc/${PF} /usr/share/doc/${PN}${SLOT} - - # Fix the permissions. - find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die - - # We need to generate keystore - bug #273306 - einfo "Generating cacerts file from certificates in ${EPREFIX}/usr/share/ca-certificates/" - mkdir "${T}/certgen" && cd "${T}/certgen" || die - cp "${FILESDIR}/generate-cacerts.pl" . && chmod +x generate-cacerts.pl || die - for c in "${EPREFIX}"/usr/share/ca-certificates/*/*.crt; do - openssl x509 -text -in "${c}" >> all.crt || die - done - ./generate-cacerts.pl "${ddest}/bin/keytool" all.crt || die - cp -vRP cacerts "${ddest}/jre/lib/security/" || die - chmod 644 "${ddest}/jre/lib/security/cacerts" || die - - set_java_env "${FILESDIR}/icedtea.env" - java-vm_sandbox-predict /proc/self/coredump_filter -} - -pkg_preinst() { - if has_version "<=dev-java/icedtea-7.2.0:7"; then - # portage would preserve the symlink otherwise, related to bug #384397 - rm -f "${EROOT}/usr/lib/jvm/icedtea7" - elog "To unify the layout and simplify scripts, the identifier of Icedtea-7*" - elog "has changed from 'icedtea7' to 'icedtea-7' starting from version 7.2.0-r1" - elog "If you had icedtea7 as system VM, the change should be automatic, however" - elog "build VM settings in /etc/java-config-2/build/jdk.conf are not changed" - elog "and the same holds for any user VM settings. Sorry for the inconvenience." - fi - - gnome2_icon_savelist; -} - -pkg_postinst() { gnome2_icon_cache_update; } -pkg_postrm() { gnome2_icon_cache_update; } diff --git a/dev-java/icedtea/icedtea-7.2.6.6.ebuild b/dev-java/icedtea/icedtea-7.2.6.6.ebuild new file mode 100644 index 000000000000..02601f116d7d --- /dev/null +++ b/dev-java/icedtea/icedtea-7.2.6.6.ebuild @@ -0,0 +1,401 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ +# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org) + +EAPI="5" +SLOT="7" + +inherit check-reqs gnome2-utils java-pkg-2 java-vm-2 multiprocessing pax-utils prefix versionator virtualx + +ICEDTEA_VER=$(get_version_component_range 2-4) +ICEDTEA_BRANCH=$(get_version_component_range 2-3) +ICEDTEA_PKG=icedtea-${ICEDTEA_VER} +ICEDTEA_PRE=$(get_version_component_range _) +CORBA_TARBALL="ca3e3c4c5a61.tar.bz2" +JAXP_TARBALL="683427778edf.tar.bz2" +JAXWS_TARBALL="63f7bf7ed2d4.tar.bz2" +JDK_TARBALL="55c38c1ace75.tar.bz2" +LANGTOOLS_TARBALL="e42dd50480d3.tar.bz2" +OPENJDK_TARBALL="882cfee70fe8.tar.bz2" +HOTSPOT_TARBALL="3022a3d80efd.tar.bz2" + +CACAO_TARBALL="cacao-c182f119eaad.tar.gz" +JAMVM_TARBALL="jamvm-ec18fb9e49e62dce16c5094ef1527eed619463aa.tar.gz" + +CORBA_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-corba-${CORBA_TARBALL}" +JAXP_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jaxp-${JAXP_TARBALL}" +JAXWS_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jaxws-${JAXWS_TARBALL}" +JDK_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-jdk-${JDK_TARBALL}" +LANGTOOLS_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-langtools-${LANGTOOLS_TARBALL}" +OPENJDK_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-openjdk-${OPENJDK_TARBALL}" +HOTSPOT_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-hotspot-${HOTSPOT_TARBALL}" + +CACAO_GENTOO_TARBALL="icedtea-${CACAO_TARBALL}" +JAMVM_GENTOO_TARBALL="icedtea-${JAMVM_TARBALL}" + +DROP_URL="http://icedtea.classpath.org/download/drops" +ICEDTEA_URL="${DROP_URL}/icedtea${SLOT}/${ICEDTEA_VER}" + +DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies" +HOMEPAGE="http://icedtea.classpath.org" +SRC_PKG="${ICEDTEA_PKG}.tar.xz" +SRC_URI=" + http://icedtea.classpath.org/download/source/${SRC_PKG} + ${ICEDTEA_URL}/openjdk.tar.bz2 -> ${OPENJDK_GENTOO_TARBALL} + ${ICEDTEA_URL}/corba.tar.bz2 -> ${CORBA_GENTOO_TARBALL} + ${ICEDTEA_URL}/jaxp.tar.bz2 -> ${JAXP_GENTOO_TARBALL} + ${ICEDTEA_URL}/jaxws.tar.bz2 -> ${JAXWS_GENTOO_TARBALL} + ${ICEDTEA_URL}/jdk.tar.bz2 -> ${JDK_GENTOO_TARBALL} + ${ICEDTEA_URL}/hotspot.tar.bz2 -> ${HOTSPOT_GENTOO_TARBALL} + ${ICEDTEA_URL}/langtools.tar.bz2 -> ${LANGTOOLS_GENTOO_TARBALL} + ${DROP_URL}/cacao/${CACAO_TARBALL} -> ${CACAO_GENTOO_TARBALL} + ${DROP_URL}/jamvm/${JAMVM_TARBALL} -> ${JAMVM_GENTOO_TARBALL}" + +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" +KEYWORDS="~amd64 ~arm ~x86" +RESTRICT="test" + +IUSE="+alsa cacao cjk +cups debug doc examples +gtk headless-awt infinality + jamvm javascript +jbootstrap kerberos libressl nsplugin nss pax_kernel + pulseaudio sctp selinux smartcard source +sunec test +webstart zero" + +REQUIRED_USE="gtk? ( !headless-awt )" + +# Ideally the following were optional at build time. +ALSA_COMMON_DEP=" + >=media-libs/alsa-lib-1.0" +CUPS_COMMON_DEP=" + >=net-print/cups-1.2.12" +X_COMMON_DEP=" + >=media-libs/giflib-4.1.6:= + >=media-libs/libpng-1.2:0= + >=x11-libs/libX11-1.1.3 + >=x11-libs/libXext-1.1.1 + >=x11-libs/libXi-1.1.3 + >=x11-libs/libXrender-0.9.4 + >=x11-libs/libXtst-1.0.3 + x11-libs/libXt + x11-libs/libXcomposite" +X_DEPEND=" + >=x11-libs/libXau-1.0.3 + >=x11-libs/libXdmcp-1.0.2 + >=x11-libs/libXinerama-1.0.2 + x11-proto/inputproto + >=x11-proto/xextproto-7.1.1 + x11-proto/xineramaproto + x11-proto/xproto" + +COMMON_DEP=" + >=dev-libs/glib-2.26:2 + >=dev-util/systemtap-1 + media-libs/fontconfig + >=media-libs/freetype-2.5.3:2=[infinality?] + >=media-libs/lcms-2.5 + >=sys-libs/zlib-1.2.3:= + virtual/jpeg:0= + gtk? ( + >=dev-libs/atk-1.30.0 + >=x11-libs/cairo-1.8.8:= + x11-libs/gdk-pixbuf:2 + >=x11-libs/gtk+-2.8:2= + >=x11-libs/pango-1.24.5 + ) + javascript? ( dev-java/rhino:1.6 ) + kerberos? ( virtual/krb5 ) + nss? ( >=dev-libs/nss-3.12.5-r1 ) + sctp? ( net-misc/lksctp-tools ) + smartcard? ( sys-apps/pcsc-lite ) + sunec? ( >=dev-libs/nss-3.16.1-r1 )" + +# gsettings-desktop-schemas is needed for native proxy support. #431972 +RDEPEND="${COMMON_DEP} + !dev-java/icedtea:0 + !dev-java/icedtea-web:7 + >=gnome-base/gsettings-desktop-schemas-3.12.2 + media-fonts/dejavu + alsa? ( ${ALSA_COMMON_DEP} ) + cjk? ( + media-fonts/arphicfonts + media-fonts/baekmuk-fonts + media-fonts/lklug + media-fonts/lohit-fonts + media-fonts/sazanami + ) + cups? ( ${CUPS_COMMON_DEP} ) + !headless-awt? ( ${X_COMMON_DEP} ) + selinux? ( sec-policy/selinux-java )" + +# Only ant-core-1.8.1 has fixed ant -diagnostics when xerces+xalan are not present. +# ca-certificates, perl and openssl are used for the cacerts keystore generation +DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} ${X_DEPEND} + || ( + >=dev-java/gcj-jdk-4.3 + dev-java/icedtea-bin:7 + dev-java/icedtea-bin:6 + dev-java/icedtea:7 + dev-java/icedtea:6 + ) + app-arch/cpio + app-arch/unzip + app-arch/zip + app-misc/ca-certificates + >=dev-java/ant-core-1.8.2 + dev-lang/perl + >=dev-libs/libxslt-1.1.26 + !libressl? ( dev-libs/openssl ) + libressl? ( dev-libs/libressl ) + sys-apps/attr + sys-apps/lsb-release + virtual/pkgconfig + pax_kernel? ( sys-apps/elfix )" + +PDEPEND="webstart? ( dev-java/icedtea-web:0[icedtea7(+)] ) + nsplugin? ( dev-java/icedtea-web:0[icedtea7(+),nsplugin] ) + pulseaudio? ( dev-java/icedtea-sound )" + +S="${WORKDIR}"/${ICEDTEA_PKG} + +icedtea_check_requirements() { + local CHECKREQS_DISK_BUILD + + if use doc; then + CHECKREQS_DISK_BUILD="9000M" + else + CHECKREQS_DISK_BUILD="8500M" + fi + + check-reqs_pkg_${EBUILD_PHASE} +} + +pkg_pretend() { + icedtea_check_requirements +} + +pkg_setup() { + icedtea_check_requirements + + JAVA_PKG_WANT_BUILD_VM=" + icedtea-7 icedtea-bin-7 + icedtea-6 icedtea-bin-6 + gcj-jdk" + JAVA_PKG_WANT_SOURCE="1.5" + JAVA_PKG_WANT_TARGET="1.5" + + java-vm-2_pkg_setup + java-pkg-2_pkg_setup +} + +src_unpack() { + unpack ${SRC_PKG} +} + +java_prepare() { + # For bootstrap builds as the sandbox control file might not yet exist. + addpredict /proc/self/coredump_filter + + # icedtea doesn't like some locales. #330433 #389717 + export LANG="C" LC_ALL="C" +} + +src_configure() { + local cacao_config config hotspot_port jamvm_config use_cacao use_jamvm use_zero zero_config + local vm=$(java-pkg_get-current-vm) + + # gcj-jdk ensures ecj is present. + if use jbootstrap || has "${vm}" gcj-jdk; then + use jbootstrap || einfo "bootstrap is necessary when building with ${vm}, ignoring USE=\"-jbootstrap\"" + config+=" --enable-bootstrap" + else + config+=" --disable-bootstrap" + fi + + # Use Zero if requested + if use zero; then + use_zero="yes" + fi + + # Use JamVM if requested + if use jamvm; then + use_jamvm="yes" + fi + + # Use CACAO if requested + if use cacao; then + use_cacao="yes" + fi + + # Are we on a architecture with a HotSpot port? + # In-tree JIT ports are available for amd64, arm64, ppc64 (be&le), SPARC and x86. + # arm is broken as of 7.2.6.6. + if { use amd64 || use arm64 || use ppc64 || use sparc || use x86; }; then + hotspot_port="yes" + fi + + # Always use HotSpot as the primary VM if available. #389521 #368669 #357633 ... + # Otherwise use CACAO on ppc and Zero on anything else + if test "x${hotspot_port}" != "xyes"; then + if use ppc; then + use_cacao="yes" + else + use_zero="yes" + fi + fi + + # Turn on JamVM if needed (non-HS archs) or requested + if test "x${use_jamvm}" = "xyes"; then + if test "x${hotspot_port}" = "xyes"; then + ewarn 'Enabling JamVM on an architecture with HotSpot support; issues may result.' + ewarn 'If so, please rebuild with USE="-jamvm"' + fi + jamvm_config="--enable-jamvm" + fi + + # Turn on CACAO if needed (non-HS archs) or requested + if test "x${use_cacao}" = "xyes"; then + if test "x${hotspot_port}" = "xyes"; then + ewarn 'Enabling CACAO on an architecture with HotSpot support; issues may result.' + ewarn 'If so, please rebuild with USE="-cacao"' + fi + cacao_config="--enable-cacao" + fi + + # Turn on Zero if needed (non-HS/CACAO archs) or requested + if test "x${use_zero}" = "xyes"; then + if test "x${hotspot_port}" = "xyes"; then + ewarn 'Enabling Zero on an architecture with HotSpot support; performance will be significantly reduced.' + fi + zero_config="--enable-zero" + fi + + config+=" --with-parallel-jobs=$(makeopts_jobs)" + + if use javascript ; then + config+=" --with-rhino=$(java-pkg_getjar rhino-1.6 js.jar)" + else + config+=" --without-rhino" + fi + + unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS + + econf ${config} \ + --with-openjdk-src-zip="${DISTDIR}/${OPENJDK_GENTOO_TARBALL}" \ + --with-corba-src-zip="${DISTDIR}/${CORBA_GENTOO_TARBALL}" \ + --with-jaxp-src-zip="${DISTDIR}/${JAXP_GENTOO_TARBALL}" \ + --with-jaxws-src-zip="${DISTDIR}/${JAXWS_GENTOO_TARBALL}" \ + --with-jdk-src-zip="${DISTDIR}/${JDK_GENTOO_TARBALL}" \ + --with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_GENTOO_TARBALL}" \ + --with-langtools-src-zip="${DISTDIR}/${LANGTOOLS_GENTOO_TARBALL}" \ + --with-cacao-src-zip="${DISTDIR}/${CACAO_GENTOO_TARBALL}" \ + --with-jamvm-src-zip="${DISTDIR}/${JAMVM_GENTOO_TARBALL}" \ + --with-jdk-home="$(java-config -O)" \ + --prefix="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}" \ + --mandir="${EPREFIX}/usr/$(get_libdir)/icedtea${SLOT}/man" \ + --docdir="${EPREFIX}/usr/share/doc/${PF}" \ + --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \ + --with-pkgversion="Gentoo ${PF}" \ + --disable-downloading --disable-Werror \ + --disable-hotspot-tests --disable-jdk-tests \ + --enable-system-lcms --enable-system-jpeg \ + --enable-system-zlib \ + $(use_enable !headless-awt system-gif) \ + $(use_enable !headless-awt system-png) \ + $(use_enable !debug optimizations) \ + $(use_enable cups system-cups) \ + $(use_enable doc docs) \ + $(use_enable gtk system-gtk) \ + $(use_enable infinality) \ + $(use_enable kerberos system-kerberos) \ + $(use_enable nss) \ + $(use_with pax_kernel pax "${EPREFIX}/usr/sbin/paxmark.sh") \ + $(use_enable sctp system-sctp) \ + $(use_enable smartcard system-pcsc) \ + $(use_enable sunec) \ + ${zero_config} ${cacao_config} ${jamvm_config} +} + +src_compile() { + # Would use GENTOO_VM otherwise. + export ANT_RESPECT_JAVA_HOME=TRUE + + # With ant >=1.8.2 all required tasks are part of ant-core + export ANT_TASKS="none" + + emake +} + +src_test() { + # Use Xvfb for tests + unset DISPLAY + + Xemake check +} + +src_install() { + default + + local dest="/usr/$(get_libdir)/icedtea${SLOT}" + local ddest="${ED}${dest#/}" + + if ! use alsa; then + rm -v "${ddest}"/jre/lib/$(get_system_arch)/libjsoundalsa.* || die + fi + + if use headless-awt; then + rm -vr "${ddest}"/jre/lib/$(get_system_arch)/{xawt,libsplashscreen.*,libjavagtk.*} \ + "${ddest}"/{,jre/}bin/policytool "${ddest}"/bin/appletviewer || die + fi + + if ! use examples; then + rm -r "${ddest}"/demo "${ddest}"/sample || die + fi + + if ! use source; then + rm -v "${ddest}"/src.zip || die + fi + + # provided by icedtea-web but we need it in JAVA_HOME to work with run-java-tool + if use webstart || use nsplugin; then + dosym /usr/libexec/icedtea-web/itweb-settings ${dest}/bin/itweb-settings + dosym /usr/libexec/icedtea-web/itweb-settings ${dest}/jre/bin/itweb-settings + fi + if use webstart; then + dosym /usr/libexec/icedtea-web/javaws ${dest}/bin/javaws + dosym /usr/libexec/icedtea-web/javaws ${dest}/jre/bin/javaws + fi + dosym /usr/share/doc/${PF} /usr/share/doc/${PN}${SLOT} + + # Fix the permissions. + find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die + + # We need to generate keystore - bug #273306 + einfo "Generating cacerts file from certificates in ${EPREFIX}/usr/share/ca-certificates/" + mkdir "${T}/certgen" && cd "${T}/certgen" || die + cp "${FILESDIR}/generate-cacerts.pl" . && chmod +x generate-cacerts.pl || die + for c in "${EPREFIX}"/usr/share/ca-certificates/*/*.crt; do + openssl x509 -text -in "${c}" >> all.crt || die + done + ./generate-cacerts.pl "${ddest}/bin/keytool" all.crt || die + cp -vRP cacerts "${ddest}/jre/lib/security/" || die + chmod 644 "${ddest}/jre/lib/security/cacerts" || die + + set_java_env "${FILESDIR}/icedtea.env" + java-vm_sandbox-predict /proc/self/coredump_filter +} + +pkg_preinst() { + if has_version "<=dev-java/icedtea-7.2.0:7"; then + # portage would preserve the symlink otherwise, related to bug #384397 + rm -f "${EROOT}/usr/lib/jvm/icedtea7" + elog "To unify the layout and simplify scripts, the identifier of Icedtea-7*" + elog "has changed from 'icedtea7' to 'icedtea-7' starting from version 7.2.0-r1" + elog "If you had icedtea7 as system VM, the change should be automatic, however" + elog "build VM settings in /etc/java-config-2/build/jdk.conf are not changed" + elog "and the same holds for any user VM settings. Sorry for the inconvenience." + fi + + gnome2_icon_savelist; +} + +pkg_postinst() { gnome2_icon_cache_update; } +pkg_postrm() { gnome2_icon_cache_update; } -- cgit v1.2.3-65-gdbad