public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/musl:master commit in: dev-java/icedtea/files/, dev-java/icedtea/
@ 2018-06-11  5:04 Aric Belsito
  0 siblings, 0 replies; 3+ messages in thread
From: Aric Belsito @ 2018-06-11  5:04 UTC (permalink / raw
  To: gentoo-commits

commit:     baaf9c81e54cd3c66aa866e1623cb7ae7c95cdb8
Author:     Aric Belsito <lluixhi <AT> gmail <DOT> com>
AuthorDate: Mon Jun 11 05:03:54 2018 +0000
Commit:     Aric Belsito <lluixhi <AT> gmail <DOT> com>
CommitDate: Mon Jun 11 05:03:54 2018 +0000
URL:        https://gitweb.gentoo.org/proj/musl.git/commit/?id=baaf9c81

dev-java/icedtea: refresh patch

 ...spot-musl.patch => icedtea8-hotspot-musl.patch} | 50 ++++++++++++----------
 dev-java/icedtea/icedtea-3.8.0.ebuild              |  4 +-
 2 files changed, 29 insertions(+), 25 deletions(-)

diff --git a/dev-java/icedtea/files/icedtea-hotspot-musl.patch b/dev-java/icedtea/files/icedtea8-hotspot-musl.patch
similarity index 58%
rename from dev-java/icedtea/files/icedtea-hotspot-musl.patch
rename to dev-java/icedtea/files/icedtea8-hotspot-musl.patch
index 02f8b8e..b0cfa3e 100644
--- a/dev-java/icedtea/files/icedtea-hotspot-musl.patch
+++ b/dev-java/icedtea/files/icedtea8-hotspot-musl.patch
@@ -1,5 +1,6 @@
---- openjdk.orig/hotspot/src/os/linux/vm/jvm_linux.cpp
-+++ openjdk/hotspot/src/os/linux/vm/jvm_linux.cpp
+diff -Naur openjdk.orig/hotspot/src/os/linux/vm/jvm_linux.cpp openjdk/hotspot/src/os/linux/vm/jvm_linux.cpp
+--- openjdk.orig/hotspot/src/os/linux/vm/jvm_linux.cpp	2018-06-10 21:57:47.854907734 -0700
++++ openjdk/hotspot/src/os/linux/vm/jvm_linux.cpp	2018-06-10 21:58:39.423906811 -0700
 @@ -154,7 +154,9 @@
  #ifdef SIGSTKFLT
    "STKFLT",     SIGSTKFLT,      /* Stack fault.  */
@@ -10,28 +11,42 @@
    "CHLD",       SIGCHLD,        /* Child status has changed (POSIX).  */
    "CONT",       SIGCONT,        /* Continue (POSIX).  */
    "STOP",       SIGSTOP,        /* Stop, unblockable (POSIX).  */
---- openjdk.orig/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
-+++ openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
-@@ -73,7 +73,6 @@
+diff -Naur openjdk.orig/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp
+--- openjdk.orig/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp	2018-06-10 21:57:47.861907734 -0700
++++ openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp	2018-06-10 22:02:01.895903185 -0700
+@@ -75,7 +75,7 @@
  # include <pwd.h>
  # include <poll.h>
  # include <ucontext.h>
 -# include <fpu_control.h>
++# include <linux/types.h>  /* provides __u64 */
  
- #ifdef AMD64
+ #ifdef BUILTIN_SIM
  #define REG_SP REG_RSP
-@@ -532,6 +531,9 @@
+diff -Naur openjdk.orig/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
+--- openjdk.orig/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp	2018-06-10 21:57:47.862907734 -0700
++++ openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp	2018-06-10 22:00:00.892905352 -0700
+@@ -72,7 +72,6 @@
+ # include <pwd.h>
+ # include <poll.h>
+ # include <ucontext.h>
+-# include <fpu_control.h>
  
-   ShouldNotReachHere();
+ #ifdef AMD64
+ #define REG_SP REG_RSP
+@@ -544,6 +543,9 @@
+   return true; // Mute compiler
  }
-+
+ 
 +#define _FPU_GETCW(cw) __asm__ __volatile__ ("fnstcw %0" : "=m" (*&cw))
 +#define _FPU_SETCW(cw) __asm__ __volatile__ ("fldcw %0" : : "m" (*&cw))
- 
++
  void os::Linux::init_thread_fpu_state(void) {
  #ifndef AMD64
---- openjdk.orig/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp
-+++ openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp
+   // set fpu to 53 bit precision
+diff -Naur openjdk.orig/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp
+--- openjdk.orig/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp	2018-06-10 21:57:47.862907734 -0700
++++ openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp	2018-06-10 22:01:01.766904262 -0700
 @@ -32,7 +32,9 @@
    // map stack pointer to thread pointer - see notes in threadLS_linux_x86.cpp
    #define SP_BITLENGTH  32
@@ -42,14 +57,3 @@
    static Thread* _sp_map[1UL << (SP_BITLENGTH - PAGE_SHIFT)];
  
  public:
---- openjdk.orig/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp
-+++ openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp
-@@ -75,7 +75,7 @@
- # include <pwd.h>
- # include <poll.h>
- # include <ucontext.h>
--# include <fpu_control.h>
-+# include <linux/types.h>  /* provides __u64 */
- 
- #ifdef BUILTIN_SIM
- #define REG_SP REG_RSP

diff --git a/dev-java/icedtea/icedtea-3.8.0.ebuild b/dev-java/icedtea/icedtea-3.8.0.ebuild
index 066a759..d8da548 100644
--- a/dev-java/icedtea/icedtea-3.8.0.ebuild
+++ b/dev-java/icedtea/icedtea-3.8.0.ebuild
@@ -208,7 +208,7 @@ src_unpack() {
 
 src_configure() {
 	# Link MUSL patches into icedtea build tree
-	ln -s "${FILESDIR}/${PN}-hotspot-musl.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-hotspot-musl.patch" patches || die
 	ln -s "${FILESDIR}/${PN}8-hotspot-noagent-musl.patch" patches || die
 	ln -s "${FILESDIR}/${PN}8-hotspot-uclibc-fixes.patch" patches || die
 	ln -s "${FILESDIR}/${PN}8-jdk-execinfo.patch" patches || die
@@ -230,7 +230,7 @@ src_configure() {
 	# Export MUSL patches for configure
 	DISTRIBUTION_PATCHES=""
 
-	DISTRIBUTION_PATCHES+="patches/${PN}-hotspot-musl.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-musl.patch "
 	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-noagent-musl.patch "
 	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-uclibc-fixes.patch "
 	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-execinfo.patch "


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] proj/musl:master commit in: dev-java/icedtea/files/, dev-java/icedtea/
@ 2018-12-04 12:45 Anthony G. Basile
  0 siblings, 0 replies; 3+ messages in thread
From: Anthony G. Basile @ 2018-12-04 12:45 UTC (permalink / raw
  To: gentoo-commits

commit:     6840035f005256e8e1f643cae3e7ee381d441ea8
Author:     callmetango <callmetango <AT> users <DOT> noreply <DOT> github <DOT> com>
AuthorDate: Tue Dec  4 11:29:33 2018 +0000
Commit:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Tue Dec  4 12:43:07 2018 +0000
URL:        https://gitweb.gentoo.org/proj/musl.git/commit/?id=6840035f

dev-java/icedtea: version bump to 3.9.0

* added 3.9.0 ebuild
* added PPC and getmntent patches of Alpine Linux OpenJDK
* renamed icedtea8-jdk-fix-ipv6-init.patch to be consistent with other patches

Signed-off-by: Anthony G. Basile <blueness <AT> gentoo.org>

 dev-java/icedtea/Manifest                          |  22 +-
 .../icedtea/files/icedtea8-hotspot-musl-ppc.patch  | 169 ++++++++
 ...init.patch => icedtea8-jdk-fix-ipv6-init.patch} |   0
 .../files/icedtea8-jdk-getmntent-buffer.patch      |  88 +++++
 dev-java/icedtea/icedtea-3.9.0.ebuild              | 424 +++++++++++++++++++++
 5 files changed, 692 insertions(+), 11 deletions(-)

diff --git a/dev-java/icedtea/Manifest b/dev-java/icedtea/Manifest
index 93cd640..8dc5ffb 100644
--- a/dev-java/icedtea/Manifest
+++ b/dev-java/icedtea/Manifest
@@ -1,13 +1,13 @@
-DIST icedtea-3.8-aarch32-bd08b7f27e11.tar.xz 6762428 BLAKE2B d5c6b97ad133faf21f16328e1a86fe22a1e3bdcba73d43728cceddb6341f529661202e5384f3a7bc9f0de4bac9af897b86f942cbfaa310a44b959b0be5b55fde SHA512 99715812bf7b71e2031e96e27b27745d6963ee9749886a61a982628b5d95b9491a7696cf733d06adedef75dbb8dabecf5ffb72531e6b19329121b0e4f1b08afb
-DIST icedtea-3.8-corba-75fd375dd38a.tar.xz 942152 BLAKE2B 86ca4a62d8dfe7b8fec3a90471b48e2d0711fe708654695ddddbbc400bf71f1f3a3926f28989940ff325c0e171989336082d271ab468a13e38dfd93d680437d5 SHA512 a41d53d2d6471b94878ba18caf525f1b64e72c2ae6926a9f1f5dac2e9a9366151d35156fb519cca8aeeda97d8e42cc258a93390170859b3035de4da69e48e321
-DIST icedtea-3.8-hotspot-cb5711bf53d9.tar.xz 6838240 BLAKE2B a2419e93d736458c7853800c0efbd8a5035b2baa2b239e4326bdf70c5b6f08d36a96ae53b29de978e493c40ccf146f2c2115a08413b1fbf25c51850eb83fc4c2 SHA512 8c4b060611b867c43fbe6cac3d2f06f6979950781872b387220e12c7066b3efde24160b7bd03189350a6518615b492703425c2ea67a26c6b4d187f843093a780
-DIST icedtea-3.8-jaxp-2b279bb3475b.tar.xz 2287836 BLAKE2B 3705c8137a29a706aefe3dbb32fb0042e81c50cddcc54c31448d2c6f2c5a27ab3ea7e7f03f82990c379b9f39368aaeb6d8ee8adb56ecbf21faddb35d1727be07 SHA512 3eb04788776612f0de0b058908417c4735e6b1cfb56afaf73748e1f3121b25d6eea710cd1d72ed19f8788c8e00b701265d79237da3542d0947c00d37b4308e9c
-DIST icedtea-3.8-jaxws-c54a27559acb.tar.xz 2270928 BLAKE2B 2c5adb94aabd276fb00840ef6b0dfd04a36d728c603c8281bdbcc3d13b393144fb2336d4da54085ab999ef6725b6f706d727645a36b77f4a1294177947b6059f SHA512 1431e71e2281eef893904e686c8d33587c4332ed7cfacd5fd2e278fe0a4e6f225e03d22b8ca73517b030e3e33ffba964f023bed9b9e4f4a6f14b8cced43ce0a5
-DIST icedtea-3.8-jdk-9c9ff65b03b6.tar.xz 39146448 BLAKE2B 1f9a4efcc5697ce73af9018d39c632cecbca6945c4065f089db027d1fa86b6c315ead93f3acd291615c68edc057b470abe1cd0316300f54113eada7789b3a5cd SHA512 9f6b6e42e8bea6a00c9833bd9775bfa5c63d1126e25fc376f4ba2cf5601dea8ab6a3f1d442d5fb188de3f74ce0a6410dc3a8463f798b1aa23822a272faa5aa73
-DIST icedtea-3.8-langtools-21524ad5b914.tar.xz 2070064 BLAKE2B 5a5dcc0e40e08330e29850d99810fe62fc233390347ebb21fe12f606ddc6e8b5fe2060fe181210626d1e2ddc92828779f8fc138bdfda90f7b66f88e75f80ea43 SHA512 fd57023505d69246593ed24d90ad7052a88362ef7106900eca59e61ad5cadc247215cc9e8d410f9150e33a72126247ce1bb809540985062515b3d31d77d1535e
-DIST icedtea-3.8-nashorn-bb3e3345d3ec.tar.xz 2317148 BLAKE2B 9d85532853dfde6fcbf406d52f29e3b8130e5435e38200a48aadb16b4aa8a9dfe70fe6f7f83c4bd170e25a61fbaf3a8499893ae247239594e004f1a4aa37e708 SHA512 7c6d51a6565fe8c670a59caf001b1c0821b7fb2e42b2bbe24b35e337df4fc664c87868e0c55dcaa168f9c3e973ab9e75bca93d660e242c07d0f21eff83d674b5
-DIST icedtea-3.8-openjdk-499b993b345a.tar.xz 335928 BLAKE2B bb49fd086851110e9beb993167f2cb9b217800086070a1ba04a6b96b9e130157a2d8420a056e2e71e98144cd94454aa4c3a568c038f1b282cbc06b25df49a54c SHA512 e438a7ab0eb4e4374278afdbd40cab66875c9704f80a8963f0c965ce995744bcf23814c734ffd10e95329c7b767337fff18e3478c3f03481f8e15a5a9bfc853f
-DIST icedtea-3.8-shenandoah-c44a9eef4985.tar.xz 6954776 BLAKE2B 348735f8a2ecd656c4d323dd870fa63d028757a57babe0f4ffa0977d0446f17cd80a6709147b98d6712e1b5d26719cfad1ea01536930dddcf7389947b43a7d7d SHA512 2e84c6b398f35e59d3819e5ce23dd573e76c385c47f9971d6b77def1cfc1b19a86288e3cdbd78aa6dcdab068128852f4a1c82cf13229a760b1f625095cd51514
-DIST icedtea-3.8.0.tar.xz 1496972 BLAKE2B 9a376539ca2c4c8560aeaaa2fbc65c61a90519b9c87e924e2d54ef150401676e90df0fb5143fd90e9e4c6d254db56617456a668bf886573854f299402af378d8 SHA512 6336d35c11dbe16c96bc07eaa760fd849a2cd317416aba72b0732f8f1e52c9e3fedde5398d4a7f5a3057d4b6ae229965d597b3f5df09a76b5f31bbad0ad02a9a
+DIST icedtea-3.9-aarch32-891d70e93fb0.tar.xz 6771692 BLAKE2B 915e3287b7a3f251e3f274e84c127e16c3145e550305d1f5dabae56367e3f118810fccd3be3c0f773f02556e9411812f30964bc38f6b44234f5e08b69c0362e3 SHA512 a15670f1c3593367aec89d40946115f6bc03bf4ba439cbcc0544293f46cbc5c0bbd4bb1b644fc00c29d8c82cdcabd00d993615b1852fabade097b433de0190fa
+DIST icedtea-3.9-corba-c120c4fb7b31.tar.xz 944220 BLAKE2B 545430b398f6f33591faaf436a294c11d6a1ae83ed2c4ca474407568c01709aad0ecb3f7fe2a8b84900f1257b627890439439e200322b7c7d1d410c8f25a39c6 SHA512 644203f6b951b8a6af1291f732c0c1fd5a060ba87e0e371e77e6d40c8e36a094799ce8b29cbf094dd9a53a91aaaeea38f63c7340c8adba162ceff7a2695863ff
+DIST icedtea-3.9-hotspot-d78088224b98.tar.xz 6851860 BLAKE2B 1006b9840e7e0a76fda362a47503ffdb689a0a2ed025696dd57cafc5a17167b21373b6c225d01c1d6ad8583e39d4eaac99157cea361daf193c9d992972764630 SHA512 e7e333695e5871a7ebf9d663d5c5a7d16a31e3eca33a7f974d7d6941598732bb8514cff8f0da8baffa2cff639d404f27aca23f450198e8a45262acc69d89f25f
+DIST icedtea-3.9-jaxp-55420c5cc9f3.tar.xz 2289624 BLAKE2B acdc7ec79393178b7d8a7f46605e8114858f2040e445e1c6388e9ebf21bd2367d21a65d3f1f041b316f45978fae970af1c7340679c9fefb8385a45e19564a98f SHA512 98792ceeea825c91c6642bab14f43dfa8c3aeffcf9091c1b5c9587d154c6613c24bfa9d83a362393baf1eb0a71e424baaca4302729d1a8a30c0eb17c3688b6be
+DIST icedtea-3.9-jaxws-f824de94c42e.tar.xz 2272684 BLAKE2B 150d3ced87a87096eee0d4aee40a9f055047d4af1cbfa71a77902599bcc3addc6808e99538bfec21337909a3cd4240e79ee8fa28bd946abdae0f8ba6a5b6ddfc SHA512 d97f86bc8775cf83b7931f2503fc2c824e4433be46587416b314f6fc114e5d1117071625344305eb99101576e4639c8b24afa8be9c57387c9dd12b376150e835
+DIST icedtea-3.9-jdk-7b289a33ab97.tar.xz 39194584 BLAKE2B d08416b2757847f4218412dd8854b3488c4040e782dc672d77bd556869a91d6a7c4f529c79b5d3f3c69dad9996869c3d94359514b572ede879a2b1afb2d44b01 SHA512 192093916f442cac6d7a756f831a71e13407b327bb772031a795cb4578d82215c7eb38623e26781064f049ec7532bfac09bacda1d5241aba41f675ec84aa6730
+DIST icedtea-3.9-langtools-8496472630c5.tar.xz 2071464 BLAKE2B 321bc7817d437b93ddec6e1f2167521acc1b54a33338937352c3f4c59d3fba4ea06d6fc4a67d58e14b47d7357f4bec11dd657b5731b42676ce04a62c9cd0ba96 SHA512 20f7a53701621a827f45f8ec18b3a186b4d8ec2e58c11283a253c54e1182878e6c9ca0b6004c9c487c701ead9533912b7fe0d66339cdc8a39dab12a6da909064
+DIST icedtea-3.9-nashorn-79a2c8e2babc.tar.xz 2314292 BLAKE2B 813a16728ca48c7cf9c414caab721f5ff46878d41bf05221d85c7da27dc3bdcc1c9ca4da5acde5b030fe04a466dca950fddf0f0771557bf73f7e868979365e15 SHA512 e149ee35efff265074e57351d5ba4870ec241516e4d73d23cf75a3420f07e666e610847c996f9c1f742586af49d23518776c4c60d8d1051a4e05b39be163ddd0
+DIST icedtea-3.9-openjdk-3b2d372838b9.tar.xz 338056 BLAKE2B 1118cf74d6728685b7d9dcbee8351f462ef7c19020e7596e38e4b3b080d6108966c0f280e866e8925c620292592dc39e627808cde15dea47a01a39bcd675493b SHA512 775930ee4806ddcf39d37ddf0f7fbacad1e1bb174cb2754a830bb1f7941a636e013ff5d844e431c4840c423480238fdb88a6c28d345e3c1326ec1dbb1c511c85
+DIST icedtea-3.9-shenandoah-b8b742251e42.tar.xz 6990872 BLAKE2B e3ac745923932de3e5c8e41f418234a698ad06e1d4a9256c8b9bc0b07157259afc5abafa12f015e3dc3fe117e08d469f600de74f18f68891240b6e5927bcd478 SHA512 399406402e6f7a268e5ec837b4f8d4cb0a775c177596a71a964d8a5bb2ac915fcff050a521e8342d036a1ff48e8902dc22d8c1439237073f5983fc38201d38f3
+DIST icedtea-3.9.0.tar.xz 1513688 BLAKE2B 1e983a844cc45397d2c2b238a2a788b49aeedf69e6b2c9ac8210cee135aeb06490363a7d59d047dededdde6f9f2dce4eae7d8c66605e9ba1989e6aa7f16e80aa SHA512 a35b600f7fa7ef19bf980e26e4cc22b57ad7daf363c91ffcf4ab1a52af48bfb316bb5dcba75d0d9966b799d25f71bae2d04fe89ae28103c82f7711ba1e346465
 DIST icedtea-cacao-c182f119eaad.tar.xz 3056520 BLAKE2B 6b1be66ce19f491d49f1591babcd8c088e8e327f828dca3f30b8f8b04c132140f8b9f487ef6d91aed212aebab2c7c3052d79fa3f2d76d3832341d94d48e77089 SHA512 22e8a031db5f93f82b276b310c175f1e926e48d64e1e50bebe51138e0f66391cd005501491a959d31663f338f27a29ec984ac29f77078f59472856e4d08edef7
 DIST icedtea-jamvm-ec18fb9e49e62dce16c5094ef1527eed619463aa.tar.gz 317187 BLAKE2B 1ca581a02be4cf5c09162687bbc90ec01b58b4910d866d11512cf17a1caff181fdc69e42f7498b2df9deb875ddc6efc6bc2888428f411da94bbc2313ddf5a2c9 SHA512 a31348481e1c02747f5bb9db333f855c45a1555aa187ee35de5ef553a10a8a47dfcc1beb1e69502046c1758438b91958a328e0a0015812c153221f67734a70a6

diff --git a/dev-java/icedtea/files/icedtea8-hotspot-musl-ppc.patch b/dev-java/icedtea/files/icedtea8-hotspot-musl-ppc.patch
new file mode 100644
index 0000000..eca6848
--- /dev/null
+++ b/dev-java/icedtea/files/icedtea8-hotspot-musl-ppc.patch
@@ -0,0 +1,169 @@
+--- openjdk.orig/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp
++++ openjdk/hotspot/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp
+@@ -110,11 +110,19 @@
+   //   it because the volatile registers are not needed to make setcontext() work.
+   //   Hopefully it was zero'd out beforehand.
+   guarantee(uc->uc_mcontext.regs != NULL, "only use ucontext_get_pc in sigaction context");
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+   return (address)uc->uc_mcontext.regs->nip;
++#else // Musl
++  return (address)uc->uc_mcontext.gp_regs[32];
++#endif
+ }
+ 
+ intptr_t* os::Linux::ucontext_get_sp(ucontext_t * uc) {
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+   return (intptr_t*)uc->uc_mcontext.regs->gpr[1/*REG_SP*/];
++#else // Musl
++  return (intptr_t*)uc->uc_mcontext.gp_regs[1/*REG_SP*/];
++#endif
+ }
+ 
+ intptr_t* os::Linux::ucontext_get_fp(ucontext_t * uc) {
+@@ -213,7 +221,11 @@
+   if (uc) {
+     address const pc = os::Linux::ucontext_get_pc(uc);
+     if (pc && StubRoutines::is_safefetch_fault(pc)) {
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+       uc->uc_mcontext.regs->nip = (unsigned long)StubRoutines::continuation_for_safefetch_fault(pc);
++#else // Musl
++      uc->uc_mcontext.gp_regs[32] = (unsigned long)StubRoutines::continuation_for_safefetch_fault(pc);
++#endif
+       return true;
+     }
+   }
+@@ -364,7 +376,11 @@
+           // continue at the next instruction after the faulting read. Returning
+           // garbage from this read is ok.
+           thread->set_pending_unsafe_access_error();
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+           uc->uc_mcontext.regs->nip = ((unsigned long)pc) + 4;
++#else // Musl
++          uc->uc_mcontext.gp_regs[32] = ((unsigned long)pc) + 4;
++#endif
+           return true;
+         }
+       }
+@@ -383,7 +399,11 @@
+         // continue at the next instruction after the faulting read. Returning
+         // garbage from this read is ok.
+         thread->set_pending_unsafe_access_error();
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+         uc->uc_mcontext.regs->nip = ((unsigned long)pc) + 4;
++#else // Musl
++        uc->uc_mcontext.gp_regs[32] = ((unsigned long)pc) + 4;
++#endif
+         return true;
+       }
+     }
+@@ -406,7 +426,11 @@
+   if (stub != NULL) {
+     // Save all thread context in case we need to restore it.
+     if (thread != NULL) thread->set_saved_exception_pc(pc);
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+     uc->uc_mcontext.regs->nip = (unsigned long)stub;
++#else
++    uc->uc_mcontext.gp_regs[32] = (unsigned long)stub;
++#endif
+     return true;
+   }
+ 
+@@ -564,6 +588,7 @@
+   ucontext_t* uc = (ucontext_t*)context;
+ 
+   st->print_cr("Registers:");
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+   st->print("pc =" INTPTR_FORMAT "  ", uc->uc_mcontext.regs->nip);
+   st->print("lr =" INTPTR_FORMAT "  ", uc->uc_mcontext.regs->link);
+   st->print("ctr=" INTPTR_FORMAT "  ", uc->uc_mcontext.regs->ctr);
+@@ -572,8 +597,18 @@
+     st->print("r%-2d=" INTPTR_FORMAT "  ", i, uc->uc_mcontext.regs->gpr[i]);
+     if (i % 3 == 2) st->cr();
+   }
++#else // Musl
++  st->print("pc =" INTPTR_FORMAT "  ", uc->uc_mcontext.gp_regs[32]);
++  st->print("lr =" INTPTR_FORMAT "  ", uc->uc_mcontext.gp_regs[36]);
++  st->print("ctr=" INTPTR_FORMAT "  ", uc->uc_mcontext.gp_regs[35]);
+   st->cr();
++  for (int i = 0; i < 32; i++) {
++    st->print("r%-2d=" INTPTR_FORMAT "  ", i, uc->uc_mcontext.gp_regs[i]);
++    if (i % 3 == 2) st->cr();
++  }
++#endif
+   st->cr();
++  st->cr();
+ 
+   intptr_t *sp = (intptr_t *)os::Linux::ucontext_get_sp(uc);
+   st->print_cr("Top of Stack: (sp=" PTR_FORMAT ")", p2i(sp));
+@@ -600,7 +635,11 @@
+   // this is only for the "general purpose" registers
+   for (int i = 0; i < 32; i++) {
+     st->print("r%-2d=", i);
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+     print_location(st, uc->uc_mcontext.regs->gpr[i]);
++#else // Musl
++    print_location(st, uc->uc_mcontext.gp_regs[i]);
++#endif
+   }
+   st->cr();
+ }
+--- openjdk.orig/hotspot.orig/src/cpu/ppc/vm/macroAssembler_ppc.cpp
++++ openjdk/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp
+@@ -1242,7 +1242,11 @@
+   // the safepoing polling page.
+   ucontext_t* uc = (ucontext_t*) ucontext;
+   // Set polling address.
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+   address addr = (address)uc->uc_mcontext.regs->gpr[ra] + (ssize_t)ds;
++#else // Musl
++  address addr = (address)uc->uc_mcontext.gp_regs[ra] + (ssize_t)ds;
++#endif
+   if (polling_address_ptr != NULL) {
+     *polling_address_ptr = addr;
+   }
+@@ -1263,15 +1267,24 @@
+     int rb = inv_rb_field(instruction);
+ 
+     // look up content of ra and rb in ucontext
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+     address ra_val=(address)uc->uc_mcontext.regs->gpr[ra];
+     long rb_val=(long)uc->uc_mcontext.regs->gpr[rb];
++#else // Musl
++    address ra_val=(address)uc->uc_mcontext.gp_regs[ra];
++    long rb_val=(long)uc->uc_mcontext.gp_regs[rb];
++#endif
+     return os::is_memory_serialize_page(thread, ra_val+rb_val);
+   } else if (is_stw(instruction) || is_stwu(instruction)) {
+     int ra = inv_ra_field(instruction);
+     int d1 = inv_d1_field(instruction);
+ 
+     // look up content of ra in ucontext
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+     address ra_val=(address)uc->uc_mcontext.regs->gpr[ra];
++#else // Musl
++    address ra_val=(address)uc->uc_mcontext.gp_regs[ra];
++#endif
+     return os::is_memory_serialize_page(thread, ra_val+d1);
+   } else {
+     return false;
+@@ -1334,11 +1347,20 @@
+       || (is_stdu(instruction) && rs == 1)) {
+     int ds = inv_ds_field(instruction);
+     // return banged address
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+     return ds+(address)uc->uc_mcontext.regs->gpr[ra];
++#else // Musl
++    return ds+(address)uc->uc_mcontext.gp_regs[ra];
++#endif
+   } else if (is_stdux(instruction) && rs == 1) {
+     int rb = inv_rb_field(instruction);
++#if defined(__GLIBC__) || defined(__UCLIBC__)
+     address sp = (address)uc->uc_mcontext.regs->gpr[1];
+     long rb_val = (long)uc->uc_mcontext.regs->gpr[rb];
++#else // Musl
++    address sp = (address)uc->uc_mcontext.gp_regs[1];
++    long rb_val = (long)uc->uc_mcontext.gp_regs[rb];
++#endif
+     return ra != 1 || rb_val >= 0 ? NULL         // not a stack bang
+                                   : sp + rb_val; // banged address
+   }

diff --git a/dev-java/icedtea/files/icedtea-jdk-fix-ipv6-init.patch b/dev-java/icedtea/files/icedtea8-jdk-fix-ipv6-init.patch
similarity index 100%
rename from dev-java/icedtea/files/icedtea-jdk-fix-ipv6-init.patch
rename to dev-java/icedtea/files/icedtea8-jdk-fix-ipv6-init.patch

diff --git a/dev-java/icedtea/files/icedtea8-jdk-getmntent-buffer.patch b/dev-java/icedtea/files/icedtea8-jdk-getmntent-buffer.patch
new file mode 100644
index 0000000..075a9d4
--- /dev/null
+++ b/dev-java/icedtea/files/icedtea8-jdk-getmntent-buffer.patch
@@ -0,0 +1,88 @@
+Give a much bigger buffer to getmntent_r.
+
+https://bugs.alpinelinux.org/issues/7093
+
+diff --git a/openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c b/openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c
+index c8500db..d0b85d6 100644
+--- openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c
++++ openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c
+@@ -33,6 +33,7 @@
+ #include <dlfcn.h>
+ #include <errno.h>
+ #include <mntent.h>
++#include <limits.h>
+ 
+ #include "sun_nio_fs_LinuxNativeDispatcher.h"
+ 
+@@ -173,8 +174,8 @@ Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this,
+     jlong value, jobject entry)
+ {
+     struct mntent ent;
+-    char buf[1024];
+-    int buflen = sizeof(buf);
++    char *buf = NULL;
++    const size_t buflen = PATH_MAX * 4;
+     struct mntent* m;
+     FILE* fp = jlong_to_ptr(value);
+     jsize len;
+@@ -183,10 +184,17 @@ Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this,
+     char* dir;
+     char* fstype;
+     char* options;
++    jint res = -1;
+ 
+-    m = getmntent_r(fp, &ent, (char*)&buf, buflen);
+-    if (m == NULL)
++    buf = malloc(buflen);
++    if (buf == NULL) {
++        JNU_ThrowOutOfMemoryError(env, "native heap");
+         return -1;
++    }
++    m = getmntent_r(fp, &ent, buf, buflen);
++    if (m == NULL)
++        goto out;
++
+     name = m->mnt_fsname;
+     dir = m->mnt_dir;
+     fstype = m->mnt_type;
+@@ -195,32 +203,35 @@ Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this,
+     len = strlen(name);
+     bytes = (*env)->NewByteArray(env, len);
+     if (bytes == NULL)
+-        return -1;
++        goto out;
+     (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)name);
+     (*env)->SetObjectField(env, entry, entry_name, bytes);
+ 
+     len = strlen(dir);
+     bytes = (*env)->NewByteArray(env, len);
+     if (bytes == NULL)
+-        return -1;
++        goto out;
+     (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)dir);
+     (*env)->SetObjectField(env, entry, entry_dir, bytes);
+ 
+     len = strlen(fstype);
+     bytes = (*env)->NewByteArray(env, len);
+     if (bytes == NULL)
+-        return -1;
++        goto out;
+     (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)fstype);
+     (*env)->SetObjectField(env, entry, entry_fstype, bytes);
+ 
+     len = strlen(options);
+     bytes = (*env)->NewByteArray(env, len);
+     if (bytes == NULL)
+-        return -1;
++        goto out;
+     (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)options);
+     (*env)->SetObjectField(env, entry, entry_options, bytes);
+ 
+-    return 0;
++    res = 0;
++out:
++    free(buf);
++    return res;
+ }
+ 
+ JNIEXPORT void JNICALL

diff --git a/dev-java/icedtea/icedtea-3.9.0.ebuild b/dev-java/icedtea/icedtea-3.9.0.ebuild
new file mode 100644
index 0000000..7318589
--- /dev/null
+++ b/dev-java/icedtea/icedtea-3.9.0.ebuild
@@ -0,0 +1,424 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org)
+
+EAPI="6"
+SLOT="8"
+
+inherit check-reqs flag-o-matic gnome2-utils java-pkg-2 java-vm-2 multiprocessing pax-utils prefix versionator
+
+ICEDTEA_VER=$(get_version_component_range 1-3)
+ICEDTEA_BRANCH=$(get_version_component_range 1-2)
+ICEDTEA_PKG=icedtea-${ICEDTEA_VER}
+ICEDTEA_PRE=$(get_version_component_range _)
+
+CORBA_TARBALL="c120c4fb7b31.tar.xz"
+JAXP_TARBALL="55420c5cc9f3.tar.xz"
+JAXWS_TARBALL="f824de94c42e.tar.xz"
+JDK_TARBALL="7b289a33ab97.tar.xz"
+LANGTOOLS_TARBALL="8496472630c5.tar.xz"
+OPENJDK_TARBALL="3b2d372838b9.tar.xz"
+NASHORN_TARBALL="79a2c8e2babc.tar.xz"
+HOTSPOT_TARBALL="d78088224b98.tar.xz"
+SHENANDOAH_TARBALL="b8b742251e42.tar.xz"
+AARCH32_TARBALL="891d70e93fb0.tar.xz"
+
+CACAO_TARBALL="cacao-c182f119eaad.tar.xz"
+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}"
+NASHORN_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-nashorn-${NASHORN_TARBALL}"
+HOTSPOT_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-hotspot-${HOTSPOT_TARBALL}"
+SHENANDOAH_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-shenandoah-${SHENANDOAH_TARBALL}"
+AARCH32_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-aarch32-${AARCH32_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.xz -> ${OPENJDK_GENTOO_TARBALL}
+	${ICEDTEA_URL}/corba.tar.xz -> ${CORBA_GENTOO_TARBALL}
+	${ICEDTEA_URL}/jaxp.tar.xz -> ${JAXP_GENTOO_TARBALL}
+	${ICEDTEA_URL}/jaxws.tar.xz -> ${JAXWS_GENTOO_TARBALL}
+	${ICEDTEA_URL}/jdk.tar.xz -> ${JDK_GENTOO_TARBALL}
+	${ICEDTEA_URL}/hotspot.tar.xz -> ${HOTSPOT_GENTOO_TARBALL}
+	${ICEDTEA_URL}/nashorn.tar.xz -> ${NASHORN_GENTOO_TARBALL}
+	${ICEDTEA_URL}/langtools.tar.xz -> ${LANGTOOLS_GENTOO_TARBALL}
+	shenandoah? ( ${ICEDTEA_URL}/shenandoah.tar.xz -> ${SHENANDOAH_GENTOO_TARBALL} )
+	arm? ( ${ICEDTEA_URL}/aarch32.tar.xz -> ${AARCH32_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 ~arm64 ~ppc64 ~x86"
+
+IUSE="+alsa cacao +cups doc examples +gtk headless-awt
+	jamvm +jbootstrap kerberos libressl nsplugin pax_kernel +pch
+	pulseaudio sctp selinux shenandoah smartcard +source +sunec +system-lcms 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:0=
+	>=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/libXcomposite"
+X_DEPEND="
+	x11-base/xorg-proto
+	>=x11-libs/libXau-1.0.3
+	>=x11-libs/libXdmcp-1.0.2
+	>=x11-libs/libXinerama-1.0.2"
+
+# The Javascript requirement is obsolete; OpenJDK 8+ has Nashorn
+COMMON_DEP="
+	>=dev-libs/glib-2.26:2=
+	>=dev-util/systemtap-1
+	media-libs/fontconfig:1.0=
+	>=media-libs/freetype-2.5.3:2=
+	>=sys-libs/zlib-1.2.3
+	virtual/jpeg:0=
+	kerberos? ( virtual/krb5 )
+	sctp? ( net-misc/lksctp-tools )
+	smartcard? ( sys-apps/pcsc-lite )
+	sunec? ( >=dev-libs/nss-3.16.1-r1 )
+	system-lcms? ( >=media-libs/lcms-2.9:2= )"
+
+# Gtk+ will move to COMMON_DEP in time; PR1982
+# gsettings-desktop-schemas will be needed for native proxy support; PR1976
+RDEPEND="${COMMON_DEP}
+	!dev-java/icedtea:0
+	!dev-java/icedtea-web:7
+	>=gnome-base/gsettings-desktop-schemas-3.12.2
+	virtual/ttf-fonts
+	alsa? ( ${ALSA_COMMON_DEP} )
+	cups? ( ${CUPS_COMMON_DEP} )
+	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
+	)
+	!headless-awt? ( ${X_COMMON_DEP} )
+	selinux? ( sec-policy/selinux-java )"
+
+# ca-certificates, perl and openssl are used for the cacerts keystore generation
+# perl is needed for running the SystemTap tests and the bootstrap javac
+# lsb-release is used to obtain distro information for the version & crash dump output
+# attr is needed for xattr.h which defines the extended attribute syscalls used by NIO2
+# x11-libs/libXt is needed for headers only (Intrinsic.h, IntrinsicP.h, Shell.h, StringDefs.h)
+# Ant is no longer needed under the new build system
+DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} ${X_DEPEND}
+	|| (
+		dev-java/icedtea-bin:8
+		dev-java/icedtea:8
+	)
+	app-arch/cpio
+	app-arch/unzip
+	app-arch/zip
+	app-misc/ca-certificates
+	dev-lang/perl
+	!libressl? ( dev-libs/openssl:0 )
+	libressl? ( dev-libs/libressl:0 )
+	sys-apps/attr
+	sys-apps/lsb-release
+	x11-libs/libXt
+	virtual/pkgconfig
+	pax_kernel? ( sys-apps/elfix )"
+
+PDEPEND="webstart? ( >=dev-java/icedtea-web-1.6.1:0 )
+	nsplugin? ( >=dev-java/icedtea-web-1.6.1:0[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-8 icedtea-bin-8
+		icedtea-7 icedtea-bin-7"
+	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}
+}
+
+src_configure() {
+	# Link MUSL patches into icedtea build tree
+	ln -s "${FILESDIR}/${PN}8-autoconf-config.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-gcc-triple.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-hotspot-musl-ppc.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-hotspot-musl.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-hotspot-noagent-musl.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-hotspot-uclibc-fixes.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-jdk-execinfo.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-jdk-fix-ipv6-init.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-jdk-fix-libjvm-load.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-jdk-getmntent-buffer.patch" patches || die
+	ln -s "${FILESDIR}/${PN}8-jdk-musl.patch" patches || die
+
+	# 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"
+
+	local cacao_config config hotspot_port hs_config jamvm_config use_cacao use_jamvm use_zero zero_config
+	local vm=$(java-pkg_get-current-vm)
+
+	# Export MUSL patches for configure
+	DISTRIBUTION_PATCHES=""
+
+	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-musl-ppc.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-musl.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-noagent-musl.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-uclibc-fixes.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-execinfo.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-fix-ipv6-init.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-fix-libjvm-load.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-getmntent-buffer.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-musl.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-autoconf-config.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}8-gcc-triple.patch "
+
+	export DISTRIBUTION_PATCHES
+
+	# 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"
+
+		# Work around stack alignment issue, bug #647954.
+		use x86 && append-flags -mincoming-stack-boundary=2
+	fi
+
+	# Always use HotSpot as the primary VM if available. #389521 #368669 #357633 ...
+	# Otherwise use Zero for now until alternate VMs are working
+	if test "x${hotspot_port}" != "xyes"; then
+			use_zero="yes"
+	fi
+
+	if use shenandoah; then
+		if { use amd64 || use arm64; }; then
+			hs_config="--with-hotspot-build=shenandoah"
+			hs_config+=" --with-hotspot-src-zip="${DISTDIR}/${SHENANDOAH_GENTOO_TARBALL}""
+		else
+			eerror "Shenandoah is only supported on arm64 and x86_64. Please re-build with USE="-shenandoah""
+		fi
+	else
+		if use arm ; then
+			hs_config="--with-hotspot-src-zip="${DISTDIR}/${AARCH32_GENTOO_TARBALL}""
+		else
+			hs_config="--with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_GENTOO_TARBALL}""
+		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
+		ewarn 'JamVM is known to still have issues with IcedTea 3.x; please rebuild with USE="-jamvm"'
+		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
+		ewarn 'CACAO is known to still have issues with IcedTea 3.x; please rebuild with USE="-cacao"'
+		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
+
+	# PaX breaks pch, bug #601016
+	if use pch && ! host-is-pax; then
+		config+=" --enable-precompiled-headers"
+	else
+		config+=" --disable-precompiled-headers"
+	fi
+
+	config+=" --with-parallel-jobs=$(makeopts_jobs)"
+
+	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-langtools-src-zip="${DISTDIR}/${LANGTOOLS_GENTOO_TARBALL}" \
+		--with-nashorn-src-zip="${DISTDIR}/${NASHORN_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-ccache \
+		--disable-downloading --disable-Werror --disable-tests \
+		--disable-systemtap-tests --enable-improved-font-rendering \
+		--enable-system-jpeg --enable-system-zlib \
+		$(use_enable headless-awt headless) \
+		$(use_enable !headless-awt system-gif) \
+		$(use_enable !headless-awt system-png) \
+		$(use_enable doc docs) \
+		$(use_enable kerberos system-kerberos) \
+		$(use_enable system-lcms) \
+		$(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} ${hs_config}
+}
+
+src_compile() {
+	default
+}
+
+src_test() {
+	default
+}
+
+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 examples; then
+		rm -r "${ddest}"/demo "${ddest}"/sample || die
+	fi
+
+	if ! use source; then
+		rm -v "${ddest}"/src.zip || die
+	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
+
+	java-vm_install-env "${FILESDIR}/icedtea.env.sh"
+	java-vm_sandbox-predict /proc/self/coredump_filter
+}
+
+pkg_preinst() {
+	# From 3.4.0 onwards, the arm directory is a symlink to the aarch32
+	# directory. We need to clear the old directory for a clean upgrade.
+	if use arm; then
+		local dir
+		for dir in "${EROOT}usr/$(get_libdir)/icedtea${SLOT}"/{lib,jre/lib}/arm; do
+			if [[ -d ${dir} && ! -L ${dir} ]]; then
+				rm -r "${dir}" || die
+			fi
+		done
+	fi
+
+	gnome2_icon_savelist
+}
+
+pkg_postinst() {
+	gnome2_icon_cache_update
+	java-vm-2_pkg_postinst
+}
+
+pkg_postrm() {
+	gnome2_icon_cache_update
+	java-vm-2_pkg_postrm
+}


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] proj/musl:master commit in: dev-java/icedtea/files/, dev-java/icedtea/
@ 2020-07-17 12:40 Anthony G. Basile
  0 siblings, 0 replies; 3+ messages in thread
From: Anthony G. Basile @ 2020-07-17 12:40 UTC (permalink / raw
  To: gentoo-commits

commit:     be6963f90107d30c9d95d5a23f178204ddb950c3
Author:     callmetango <callmetango <AT> users <DOT> noreply <DOT> github <DOT> com>
AuthorDate: Sun Jul 12 06:56:17 2020 +0000
Commit:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Fri Jul 17 12:40:16 2020 +0000
URL:        https://gitweb.gentoo.org/proj/musl.git/commit/?id=be6963f9

dev-java/icedtea: version bump to 3.16.0

* bump to 3.16.0 using patches from Alpine Linux and smaeul overlay
* remove insecure IcedTea version 3.8.0

Signed-off-by: Anthony G. Basile <blueness <AT> gentoo.org>

 dev-java/icedtea/Manifest                          |  33 +-
 ...patch => icedtea-3.12.0-hotspot-musl-ppc.patch} |   0
 ...3.12.0-jdk-fix-awt-inputmethod-mbstr-null.patch |  14 +
 ...atch => icedtea-3.12.0-jdk-fix-ipv6-init.patch} |   0
 .../files/icedtea-3.16.0-gcc-name-pattern.patch    |  11 +
 .../files/icedtea-3.16.0-hotspot-musl.patch        | 147 +++++++
 .../files/icedtea-3.16.0-jdk-includes.patch        | 167 ++++++++
 ...ch => icedtea-3.2.0-hotspot-noagent-musl.patch} |  35 +-
 ...info.patch => icedtea-3.2.0-jdk-execinfo.patch} |   0
 ...tch => icedtea-3.2.0-jdk-fix-libjvm-load.patch} |   0
 .../icedtea/files/icedtea-3.4.0-jdk-globals.patch  | 104 +++++
 ...g.patch => icedtea-3.8.0-autoconf-config.patch} |   0
 ...jdk-musl.patch => icedtea-3.8.0-jdk-musl.patch} |  68 +---
 dev-java/icedtea/files/icedtea8-gcc-triple.patch   |  11 -
 dev-java/icedtea/files/icedtea8-hotspot-musl.patch |  59 ---
 .../files/icedtea8-hotspot-uclibc-fixes.patch      | 102 -----
 .../files/icedtea8-jdk-getmntent-buffer.patch      |  88 ----
 ...{icedtea-3.9.0.ebuild => icedtea-3.16.0.ebuild} | 133 +++---
 dev-java/icedtea/icedtea-3.8.0.ebuild              | 452 ---------------------
 19 files changed, 546 insertions(+), 878 deletions(-)

diff --git a/dev-java/icedtea/Manifest b/dev-java/icedtea/Manifest
index 48538dc..03a1503 100644
--- a/dev-java/icedtea/Manifest
+++ b/dev-java/icedtea/Manifest
@@ -1,24 +1,13 @@
-DIST icedtea-3.8-aarch32-bd08b7f27e11.tar.xz 6762428 BLAKE2B d5c6b97ad133faf21f16328e1a86fe22a1e3bdcba73d43728cceddb6341f529661202e5384f3a7bc9f0de4bac9af897b86f942cbfaa310a44b959b0be5b55fde SHA512 99715812bf7b71e2031e96e27b27745d6963ee9749886a61a982628b5d95b9491a7696cf733d06adedef75dbb8dabecf5ffb72531e6b19329121b0e4f1b08afb
-DIST icedtea-3.8-corba-75fd375dd38a.tar.xz 942152 BLAKE2B 86ca4a62d8dfe7b8fec3a90471b48e2d0711fe708654695ddddbbc400bf71f1f3a3926f28989940ff325c0e171989336082d271ab468a13e38dfd93d680437d5 SHA512 a41d53d2d6471b94878ba18caf525f1b64e72c2ae6926a9f1f5dac2e9a9366151d35156fb519cca8aeeda97d8e42cc258a93390170859b3035de4da69e48e321
-DIST icedtea-3.8-hotspot-cb5711bf53d9.tar.xz 6838240 BLAKE2B a2419e93d736458c7853800c0efbd8a5035b2baa2b239e4326bdf70c5b6f08d36a96ae53b29de978e493c40ccf146f2c2115a08413b1fbf25c51850eb83fc4c2 SHA512 8c4b060611b867c43fbe6cac3d2f06f6979950781872b387220e12c7066b3efde24160b7bd03189350a6518615b492703425c2ea67a26c6b4d187f843093a780
-DIST icedtea-3.8-jaxp-2b279bb3475b.tar.xz 2287836 BLAKE2B 3705c8137a29a706aefe3dbb32fb0042e81c50cddcc54c31448d2c6f2c5a27ab3ea7e7f03f82990c379b9f39368aaeb6d8ee8adb56ecbf21faddb35d1727be07 SHA512 3eb04788776612f0de0b058908417c4735e6b1cfb56afaf73748e1f3121b25d6eea710cd1d72ed19f8788c8e00b701265d79237da3542d0947c00d37b4308e9c
-DIST icedtea-3.8-jaxws-c54a27559acb.tar.xz 2270928 BLAKE2B 2c5adb94aabd276fb00840ef6b0dfd04a36d728c603c8281bdbcc3d13b393144fb2336d4da54085ab999ef6725b6f706d727645a36b77f4a1294177947b6059f SHA512 1431e71e2281eef893904e686c8d33587c4332ed7cfacd5fd2e278fe0a4e6f225e03d22b8ca73517b030e3e33ffba964f023bed9b9e4f4a6f14b8cced43ce0a5
-DIST icedtea-3.8-jdk-9c9ff65b03b6.tar.xz 39146448 BLAKE2B 1f9a4efcc5697ce73af9018d39c632cecbca6945c4065f089db027d1fa86b6c315ead93f3acd291615c68edc057b470abe1cd0316300f54113eada7789b3a5cd SHA512 9f6b6e42e8bea6a00c9833bd9775bfa5c63d1126e25fc376f4ba2cf5601dea8ab6a3f1d442d5fb188de3f74ce0a6410dc3a8463f798b1aa23822a272faa5aa73
-DIST icedtea-3.8-langtools-21524ad5b914.tar.xz 2070064 BLAKE2B 5a5dcc0e40e08330e29850d99810fe62fc233390347ebb21fe12f606ddc6e8b5fe2060fe181210626d1e2ddc92828779f8fc138bdfda90f7b66f88e75f80ea43 SHA512 fd57023505d69246593ed24d90ad7052a88362ef7106900eca59e61ad5cadc247215cc9e8d410f9150e33a72126247ce1bb809540985062515b3d31d77d1535e
-DIST icedtea-3.8-nashorn-bb3e3345d3ec.tar.xz 2317148 BLAKE2B 9d85532853dfde6fcbf406d52f29e3b8130e5435e38200a48aadb16b4aa8a9dfe70fe6f7f83c4bd170e25a61fbaf3a8499893ae247239594e004f1a4aa37e708 SHA512 7c6d51a6565fe8c670a59caf001b1c0821b7fb2e42b2bbe24b35e337df4fc664c87868e0c55dcaa168f9c3e973ab9e75bca93d660e242c07d0f21eff83d674b5
-DIST icedtea-3.8-openjdk-499b993b345a.tar.xz 335928 BLAKE2B bb49fd086851110e9beb993167f2cb9b217800086070a1ba04a6b96b9e130157a2d8420a056e2e71e98144cd94454aa4c3a568c038f1b282cbc06b25df49a54c SHA512 e438a7ab0eb4e4374278afdbd40cab66875c9704f80a8963f0c965ce995744bcf23814c734ffd10e95329c7b767337fff18e3478c3f03481f8e15a5a9bfc853f
-DIST icedtea-3.8-shenandoah-c44a9eef4985.tar.xz 6954776 BLAKE2B 348735f8a2ecd656c4d323dd870fa63d028757a57babe0f4ffa0977d0446f17cd80a6709147b98d6712e1b5d26719cfad1ea01536930dddcf7389947b43a7d7d SHA512 2e84c6b398f35e59d3819e5ce23dd573e76c385c47f9971d6b77def1cfc1b19a86288e3cdbd78aa6dcdab068128852f4a1c82cf13229a760b1f625095cd51514
-DIST icedtea-3.8.0.tar.xz 1496972 BLAKE2B 9a376539ca2c4c8560aeaaa2fbc65c61a90519b9c87e924e2d54ef150401676e90df0fb5143fd90e9e4c6d254db56617456a668bf886573854f299402af378d8 SHA512 6336d35c11dbe16c96bc07eaa760fd849a2cd317416aba72b0732f8f1e52c9e3fedde5398d4a7f5a3057d4b6ae229965d597b3f5df09a76b5f31bbad0ad02a9a
-DIST icedtea-3.9-aarch32-891d70e93fb0.tar.xz 6771692 BLAKE2B 915e3287b7a3f251e3f274e84c127e16c3145e550305d1f5dabae56367e3f118810fccd3be3c0f773f02556e9411812f30964bc38f6b44234f5e08b69c0362e3 SHA512 a15670f1c3593367aec89d40946115f6bc03bf4ba439cbcc0544293f46cbc5c0bbd4bb1b644fc00c29d8c82cdcabd00d993615b1852fabade097b433de0190fa
-DIST icedtea-3.9-corba-c120c4fb7b31.tar.xz 944220 BLAKE2B 545430b398f6f33591faaf436a294c11d6a1ae83ed2c4ca474407568c01709aad0ecb3f7fe2a8b84900f1257b627890439439e200322b7c7d1d410c8f25a39c6 SHA512 644203f6b951b8a6af1291f732c0c1fd5a060ba87e0e371e77e6d40c8e36a094799ce8b29cbf094dd9a53a91aaaeea38f63c7340c8adba162ceff7a2695863ff
-DIST icedtea-3.9-hotspot-d78088224b98.tar.xz 6851860 BLAKE2B 1006b9840e7e0a76fda362a47503ffdb689a0a2ed025696dd57cafc5a17167b21373b6c225d01c1d6ad8583e39d4eaac99157cea361daf193c9d992972764630 SHA512 e7e333695e5871a7ebf9d663d5c5a7d16a31e3eca33a7f974d7d6941598732bb8514cff8f0da8baffa2cff639d404f27aca23f450198e8a45262acc69d89f25f
-DIST icedtea-3.9-jaxp-55420c5cc9f3.tar.xz 2289624 BLAKE2B acdc7ec79393178b7d8a7f46605e8114858f2040e445e1c6388e9ebf21bd2367d21a65d3f1f041b316f45978fae970af1c7340679c9fefb8385a45e19564a98f SHA512 98792ceeea825c91c6642bab14f43dfa8c3aeffcf9091c1b5c9587d154c6613c24bfa9d83a362393baf1eb0a71e424baaca4302729d1a8a30c0eb17c3688b6be
-DIST icedtea-3.9-jaxws-f824de94c42e.tar.xz 2272684 BLAKE2B 150d3ced87a87096eee0d4aee40a9f055047d4af1cbfa71a77902599bcc3addc6808e99538bfec21337909a3cd4240e79ee8fa28bd946abdae0f8ba6a5b6ddfc SHA512 d97f86bc8775cf83b7931f2503fc2c824e4433be46587416b314f6fc114e5d1117071625344305eb99101576e4639c8b24afa8be9c57387c9dd12b376150e835
-DIST icedtea-3.9-jdk-7b289a33ab97.tar.xz 39194584 BLAKE2B d08416b2757847f4218412dd8854b3488c4040e782dc672d77bd556869a91d6a7c4f529c79b5d3f3c69dad9996869c3d94359514b572ede879a2b1afb2d44b01 SHA512 192093916f442cac6d7a756f831a71e13407b327bb772031a795cb4578d82215c7eb38623e26781064f049ec7532bfac09bacda1d5241aba41f675ec84aa6730
-DIST icedtea-3.9-langtools-8496472630c5.tar.xz 2071464 BLAKE2B 321bc7817d437b93ddec6e1f2167521acc1b54a33338937352c3f4c59d3fba4ea06d6fc4a67d58e14b47d7357f4bec11dd657b5731b42676ce04a62c9cd0ba96 SHA512 20f7a53701621a827f45f8ec18b3a186b4d8ec2e58c11283a253c54e1182878e6c9ca0b6004c9c487c701ead9533912b7fe0d66339cdc8a39dab12a6da909064
-DIST icedtea-3.9-nashorn-79a2c8e2babc.tar.xz 2314292 BLAKE2B 813a16728ca48c7cf9c414caab721f5ff46878d41bf05221d85c7da27dc3bdcc1c9ca4da5acde5b030fe04a466dca950fddf0f0771557bf73f7e868979365e15 SHA512 e149ee35efff265074e57351d5ba4870ec241516e4d73d23cf75a3420f07e666e610847c996f9c1f742586af49d23518776c4c60d8d1051a4e05b39be163ddd0
-DIST icedtea-3.9-openjdk-3b2d372838b9.tar.xz 338056 BLAKE2B 1118cf74d6728685b7d9dcbee8351f462ef7c19020e7596e38e4b3b080d6108966c0f280e866e8925c620292592dc39e627808cde15dea47a01a39bcd675493b SHA512 775930ee4806ddcf39d37ddf0f7fbacad1e1bb174cb2754a830bb1f7941a636e013ff5d844e431c4840c423480238fdb88a6c28d345e3c1326ec1dbb1c511c85
-DIST icedtea-3.9-shenandoah-b8b742251e42.tar.xz 6990872 BLAKE2B e3ac745923932de3e5c8e41f418234a698ad06e1d4a9256c8b9bc0b07157259afc5abafa12f015e3dc3fe117e08d469f600de74f18f68891240b6e5927bcd478 SHA512 399406402e6f7a268e5ec837b4f8d4cb0a775c177596a71a964d8a5bb2ac915fcff050a521e8342d036a1ff48e8902dc22d8c1439237073f5983fc38201d38f3
-DIST icedtea-3.9.0.tar.xz 1513688 BLAKE2B 1e983a844cc45397d2c2b238a2a788b49aeedf69e6b2c9ac8210cee135aeb06490363a7d59d047dededdde6f9f2dce4eae7d8c66605e9ba1989e6aa7f16e80aa SHA512 a35b600f7fa7ef19bf980e26e4cc22b57ad7daf363c91ffcf4ab1a52af48bfb316bb5dcba75d0d9966b799d25f71bae2d04fe89ae28103c82f7711ba1e346465
+DIST icedtea-3.16-aarch32-ecc1eb1dc760.tar.xz 6854900 BLAKE2B a4b0a4fec267f0dd64618aa83a2cf487e83bfa133e03914a079d451abb6be573e4d157f12372d6d2eaa66f834d4a1ec0bad8f1a65d2619468bb3de8567863036 SHA512 20ba1980a4f4161c632e8ec02330c3b0c971a5eff19456a568b2df4622fcfedb18594c7e350318a15a31a5395c0544899160d71805f0a3d3886ae7a16019c010
+DIST icedtea-3.16-corba-ea3169880d70.tar.xz 947604 BLAKE2B 22e7fdab5168b01501791c9537b72f884cdd008ec912e1e7afb05c410e47ab9fffc37aeeab78400a39b6216612927eb63bdc6ba2169fc7e74fe8d6c60b1af978 SHA512 bf90c95f401d4628e32b9a7ea78b7d43944f82882818a81d2ff368f09e49148091bf823d78ed56c343c175fe6d25492d9b78e25b725f218592ea94c4ae285e56
+DIST icedtea-3.16-hotspot-eeb08cfebded.tar.xz 6906968 BLAKE2B 78bd9ecef9801a190ce2993d1023d6eb3db8276cc7fc726cccbf406e630a4bc62401299885de42df85f92611da10c732ae50600af9e337dcf3014472777ba38a SHA512 19490ccc377fde5dc3d4396425e945f32e121ad0cc4be394b07f8698a7e3805b16fc41e427bab5fa290cb84efc7edb62acf8ca98072176343f5584d692592d2d
+DIST icedtea-3.16-jaxp-883803235596.tar.xz 2293880 BLAKE2B c749477661d9e492ab15e0b773d641f68865196c8d2897eceeafd341cacf143e73c6b55face57d528ca5d1a648798db4533e7b924daa918c2ce62d26b407bf5b SHA512 86e8c18741c1f4baca27d784b068765e404a5c2ee6ecb172c826fc1d6192b5776133f103b749839c39154fcaec87a0df95e8fd5bcb56b1e9b811711b296a4836
+DIST icedtea-3.16-jaxws-e5d96dc9988a.tar.xz 2276192 BLAKE2B 79c33b530f95ab098297d0cdb5844660df4330555195c366611cadde8478711cc4a0fef3b68a23bbd710d4213298cd4293cdec3d12a07c0682f6e264489e9d11 SHA512 824ef15aa70ec629406fd9b98a69e5699fe8f6a8ab06be00ac546bcda1daf485b20de6ea0310064e000efbaf35b1cebee25bf69033634fdce8434efb3bb16f1d
+DIST icedtea-3.16-jdk-bb9b9a0ad162.tar.xz 39849832 BLAKE2B 2b9b3ca3988955015760c82481a86af73c13b37b0c26714fbdac33de73b70ecf2fb3abcd908406dfe7dc202b02c70d66ba6b64f838b8e0b2ecb55a46944998c3 SHA512 9202f88b360637ad474920d8a6f85740e6a425679617ef713efd67778b4c7ca0b3eba7e4fc9d33de0bbd5dacda4862c8a9b63a13880204388b01af29d5fb6a55
+DIST icedtea-3.16-langtools-e47d37e5fe0b.tar.xz 2078808 BLAKE2B 2f7286c15c90607e67eea8b8ca560cc83a21e4a3ebbb5846afeb79ccfefe0713fe27ebe56a505f263276476e0a99c470171030cbaa406fbbc7cdef13acbf89b1 SHA512 1858bb3b7dd37edd817a52c67a878b48bc9b790623e77d9a6107f54b141638cb101ae3b8df560e3352c9ca2925aa5d493b4924e36a238be5a9628c714cc23642
+DIST icedtea-3.16-nashorn-1d70dcb4ab53.tar.xz 2319492 BLAKE2B c328c3a99fbd49be1efbecbb12e46be57d4cb78c65ca778f95644e2d193a4390ed1ad1ce3cddc6f737241d5e02b18b50adbc37748907db3eabe406a4880a6afb SHA512 4bf87e7441ac747f133612e1fba5c06946c6731bae76132ffc614b41fcb689fda9d9ceb1e1fee3765765c6109894c85cf0f6e6fa9eb301f9a2d640ea6cd1c16c
+DIST icedtea-3.16-openjdk-bca1f7228ce8.tar.xz 363112 BLAKE2B aff804d5b5d58dcb25f9a576aa0a23355d2229f89d5dc69142580d5fab3bdd688225d2e33090714a3d292d9d98758867feaef9c179a4c77b5cab37c21c5f0610 SHA512 76b32457958c2cdbb0006629bb41652286a1a9bfbda862665eddf822d4653d4858f9f2565e849b0e49f031b7667be73be8fe8c71abc65e1795eb570a96d1fd1e
+DIST icedtea-3.16-shenandoah-e4e81ae21643.tar.xz 7081200 BLAKE2B bbbd4f3cc7f3adb34a3c3497c62eeb1336d554f7396b952b94ad8f573295c1537e9c3416fc2d2881efef6d6a1750bd069da0fac37a0d556eeb55a0ace9b7b385 SHA512 adbb279d59d4978403b222caf9f0823b3ae2a0d6e27911a38243fe6ef9b1a7f0d8640d71b67fa510c341dc175031e52b4b6aa6187a37ac467372a55946ae37d3
+DIST icedtea-3.16.0.tar.xz 1534432 BLAKE2B ef8ffc6773c2ea1d71a2bad1f425f891edd65cb61fd22b1c36b06539b9656f211422d897e35b707bac1b0005eaa95d31bab3079c5e31454383be01d9750394ba SHA512 67964f283b5a220ded7c86141ac359fc51f41077686d3e68568a9f303d2e5e6d62472bef2d6f5f9d53897a55589c84d3212983194607b9a6704192752f8ad2ac
 DIST icedtea-cacao-c182f119eaad.tar.xz 3056520 BLAKE2B 6b1be66ce19f491d49f1591babcd8c088e8e327f828dca3f30b8f8b04c132140f8b9f487ef6d91aed212aebab2c7c3052d79fa3f2d76d3832341d94d48e77089 SHA512 22e8a031db5f93f82b276b310c175f1e926e48d64e1e50bebe51138e0f66391cd005501491a959d31663f338f27a29ec984ac29f77078f59472856e4d08edef7
 DIST icedtea-jamvm-ec18fb9e49e62dce16c5094ef1527eed619463aa.tar.gz 317187 BLAKE2B 1ca581a02be4cf5c09162687bbc90ec01b58b4910d866d11512cf17a1caff181fdc69e42f7498b2df9deb875ddc6efc6bc2888428f411da94bbc2313ddf5a2c9 SHA512 a31348481e1c02747f5bb9db333f855c45a1555aa187ee35de5ef553a10a8a47dfcc1beb1e69502046c1758438b91958a328e0a0015812c153221f67734a70a6

diff --git a/dev-java/icedtea/files/icedtea8-hotspot-musl-ppc.patch b/dev-java/icedtea/files/icedtea-3.12.0-hotspot-musl-ppc.patch
similarity index 100%
rename from dev-java/icedtea/files/icedtea8-hotspot-musl-ppc.patch
rename to dev-java/icedtea/files/icedtea-3.12.0-hotspot-musl-ppc.patch

diff --git a/dev-java/icedtea/files/icedtea-3.12.0-jdk-fix-awt-inputmethod-mbstr-null.patch b/dev-java/icedtea/files/icedtea-3.12.0-jdk-fix-awt-inputmethod-mbstr-null.patch
new file mode 100644
index 0000000..d1d405a
--- /dev/null
+++ b/dev-java/icedtea/files/icedtea-3.12.0-jdk-fix-awt-inputmethod-mbstr-null.patch
@@ -0,0 +1,14 @@
+--- openjdk/jdk/src/solaris/native/sun/awt/awt_InputMethod.c
++++ openjdk/jdk/src/solaris/native/sun/awt/awt_InputMethod.c
+@@ -1239,7 +1239,11 @@ StatusDrawCallback(XIC ic, XPointer client_data,
+           }
+           else{
+               char *mbstr = wcstombsdmp(text->string.wide_char, text->length);
++              if (mbstr == NULL) {
++                  goto finally;
++              }
+               strcpy(statusWindow->status, mbstr);
++              free(mbstr);
+           }
+           statusWindow->on = True;
+           onoffStatusWindow(pX11IMData, statusWindow->parent, True);

diff --git a/dev-java/icedtea/files/icedtea8-jdk-fix-ipv6-init.patch b/dev-java/icedtea/files/icedtea-3.12.0-jdk-fix-ipv6-init.patch
similarity index 100%
rename from dev-java/icedtea/files/icedtea8-jdk-fix-ipv6-init.patch
rename to dev-java/icedtea/files/icedtea-3.12.0-jdk-fix-ipv6-init.patch

diff --git a/dev-java/icedtea/files/icedtea-3.16.0-gcc-name-pattern.patch b/dev-java/icedtea/files/icedtea-3.16.0-gcc-name-pattern.patch
new file mode 100644
index 0000000..e74df06
--- /dev/null
+++ b/dev-java/icedtea/files/icedtea-3.16.0-gcc-name-pattern.patch
@@ -0,0 +1,11 @@
+--- openjdk.orig/common/autoconf/toolchain.m4	2020-04-22 00:47:13.000000000 +0200
++++ openjdk/common/autoconf/toolchain.m4	2020-07-11 08:55:02.018260076 +0200
+@@ -422,7 +422,7 @@
+     #     warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+     COMPILER_VERSION_OUTPUT=`$COMPILER --version 2>&1`
+     # Check that this is likely to be GCC.
+-    $ECHO "$COMPILER_VERSION_OUTPUT" | $GREP -E "^(gcc|g\+\+|distcc)" >&AS_MESSAGE_LOG_FD 2>&1
++    $ECHO "$COMPILER_VERSION_OUTPUT" | $GREP -E "(gcc|g\+\+|distcc)" >&AS_MESSAGE_LOG_FD 2>&1
+     if test $? -ne 0; then
+       AC_MSG_NOTICE([The $COMPILER_NAME compiler (located as $COMPILER) does not seem to be the required $TOOLCHAIN_TYPE compiler.])
+       AC_MSG_NOTICE([The result from running with --version was: "$COMPILER_VERSION"])

diff --git a/dev-java/icedtea/files/icedtea-3.16.0-hotspot-musl.patch b/dev-java/icedtea/files/icedtea-3.16.0-hotspot-musl.patch
new file mode 100644
index 0000000..839e990
--- /dev/null
+++ b/dev-java/icedtea/files/icedtea-3.16.0-hotspot-musl.patch
@@ -0,0 +1,147 @@
+diff --git icedtea/hotspot/src/os/linux/vm/jvm_linux.cpp icedtea/hotspot/src/os/linux/vm/jvm_linux.cpp
+index ba84788..c22281f 100644
+--- openjdk/hotspot/src/os/linux/vm/jvm_linux.cpp
++++ openjdk/hotspot/src/os/linux/vm/jvm_linux.cpp
+@@ -154,7 +154,9 @@ struct siglabel siglabels[] = {
+ #ifdef SIGSTKFLT
+   "STKFLT",     SIGSTKFLT,      /* Stack fault.  */
+ #endif
++#ifdef SIGCLD
+   "CLD",        SIGCLD,         /* Same as SIGCHLD (System V).  */
++#endif
+   "CHLD",       SIGCHLD,        /* Child status has changed (POSIX).  */
+   "CONT",       SIGCONT,        /* Continue (POSIX).  */
+   "STOP",       SIGSTOP,        /* Stop, unblockable (POSIX).  */
+diff --git icedtea/hotspot/src/os/linux/vm/os_linux.cpp icedtea/hotspot/src/os/linux/vm/os_linux.cpp
+index 89ba0ff..e84837a 100644
+--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp
++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp
+@@ -94,7 +94,9 @@
+ # include <string.h>
+ # include <syscall.h>
+ # include <sys/sysinfo.h>
++#ifdef __GLIBC__
+ # include <gnu/libc-version.h>
++#endif
+ # include <sys/ipc.h>
+ # include <sys/shm.h>
+ # include <link.h>
+@@ -530,6 +529,12 @@ void os::Linux::hotspot_sigmask(Thread* thread) {
+ // detecting pthread library
+ 
+ void os::Linux::libpthread_init() {
++#ifndef __GLIBC__
++  os::Linux::set_glibc_version("glibc 2.9");
++  os::Linux::set_libpthread_version("NPTL");
++  os::Linux::set_is_NPTL();
++  os::Linux::set_is_floating_stack();
++#else
+   // Save glibc and pthread version strings. Note that _CS_GNU_LIBC_VERSION
+   // and _CS_GNU_LIBPTHREAD_VERSION are supported in glibc >= 2.3.2. Use a
+   // generic name for earlier versions.
+@@ -588,6 +594,7 @@ void os::Linux::libpthread_init() {
+   if (os::Linux::is_NPTL() || os::Linux::supports_variable_stack_size()) {
+      os::Linux::set_is_floating_stack();
+   }
++#endif
+ }
+ 
+ /////////////////////////////////////////////////////////////////////////////
+@@ -2834,6 +2841,11 @@ extern "C" JNIEXPORT void numa_warn(int number, char *where, ...) { }
+ extern "C" JNIEXPORT void numa_error(char *where) { }
+ extern "C" JNIEXPORT int fork1() { return fork(); }
+ 
++static void *dlvsym(void *handle, const char *name, const char *ver)
++{
++  return dlsym(handle, name);
++}
++
+ // Handle request to load libnuma symbol version 1.1 (API v1). If it fails
+ // load symbol from base version instead.
+ void* os::Linux::libnuma_dlsym(void* handle, const char *name) {
+diff --git openjdk/hotspot/src/os/linux/vm/os_linux.inline.hpp openjdk/hotspot/src/os/linux/vm/os_linux.inline.hpp
+index 10d56d8..b9b2b77 100644
+--- openjdk/hotspot/src/os/linux/vm/os_linux.inline.hpp
++++ openjdk/hotspot/src/os/linux/vm/os_linux.inline.hpp
+@@ -33,7 +33,7 @@
+ 
+ #include <unistd.h>
+ #include <sys/socket.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <netdb.h>
+ 
+ inline void* os::thread_local_storage_at(int index) {
+diff --git openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp
+index d2c10e0..20f657f 100644
+--- openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp
++++ openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp
+@@ -75,7 +75,7 @@
+ # include <pwd.h>
+ # include <poll.h>
+ # include <ucontext.h>
+-# include <fpu_control.h>
++# include <linux/types.h>  /* provides __u64 */
+ 
+ #define REG_FP 29
+
+diff --git openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
+index 38388cb..2505ba8 100644
+--- openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
++++ openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
+@@ -72,7 +72,6 @@
+ # include <pwd.h>
+ # include <poll.h>
+ # include <ucontext.h>
+-# include <fpu_control.h>
+ 
+ #ifdef AMD64
+ #define REG_SP REG_RSP
+@@ -544,6 +543,9 @@ JVM_handle_linux_signal(int sig,
+   return true; // Mute compiler
+ }
+ 
++#define _FPU_GETCW(cw) __asm__ __volatile__ ("fnstcw %0" : "=m" (*&cw))
++#define _FPU_SETCW(cw) __asm__ __volatile__ ("fldcw %0" : : "m" (*&cw))
++
+ void os::Linux::init_thread_fpu_state(void) {
+ #ifndef AMD64
+   // set fpu to 53 bit precision
+diff --git openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp
+index f3f2f26..6b50cfa 100644
+--- openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp
++++ openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp
+@@ -32,7 +32,9 @@
+   // map stack pointer to thread pointer - see notes in threadLS_linux_x86.cpp
+   #define SP_BITLENGTH  32
+   #define PAGE_SHIFT    12
++  #ifndef PAGE_SIZE
+   #define PAGE_SIZE     (1UL << PAGE_SHIFT)
++  #endif
+   static Thread* _sp_map[1UL << (SP_BITLENGTH - PAGE_SHIFT)];
+ 
+ public:
+diff --git openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp
+index efa0b4e..6df2302 100644
+--- openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp
++++ openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp
+@@ -235,7 +235,7 @@ inline int g_isnan(double f) { return isnand(f); }
+ #elif defined(__APPLE__)
+ inline int g_isnan(double f) { return isnan(f); }
+ #elif defined(LINUX) || defined(_ALLBSD_SOURCE)
+-inline int g_isnan(float  f) { return isnanf(f); }
++inline int g_isnan(float  f) { return isnan(f); }
+ inline int g_isnan(double f) { return isnan(f); }
+ #else
+ #error "missing platform-specific definition here"
+ @@ -249,8 +249,8 @@
+ 
+ // Checking for finiteness
+ 
+-inline int g_isfinite(jfloat  f)                 { return finite(f); }
+-inline int g_isfinite(jdouble f)                 { return finite(f); }
++inline int g_isfinite(jfloat  f)                 { return isfinite(f); }
++inline int g_isfinite(jdouble f)                 { return isfinite(f); }
+ 
+ 
+ // Wide characters

diff --git a/dev-java/icedtea/files/icedtea-3.16.0-jdk-includes.patch b/dev-java/icedtea/files/icedtea-3.16.0-jdk-includes.patch
new file mode 100644
index 0000000..6198a35
--- /dev/null
+++ b/dev-java/icedtea/files/icedtea-3.16.0-jdk-includes.patch
@@ -0,0 +1,167 @@
+diff -Naur openjdk.orig/jdk/src/aix/native/java/net/aix_close.c openjdk/jdk/src/aix/native/java/net/aix_close.c
+--- openjdk.orig/jdk/src/aix/native/java/net/aix_close.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/aix/native/java/net/aix_close.c	2020-07-11 11:27:09.067892057 +0200
+@@ -65,7 +65,7 @@
+ #include <unistd.h>
+ #include <errno.h>
+ 
+-#include <sys/poll.h>
++#include <poll.h>
+ 
+ /*
+  * Stack allocated by thread when doing blocking operation
+diff -Naur openjdk.orig/jdk/src/aix/native/sun/nio/ch/AixNativeThread.c openjdk/jdk/src/aix/native/sun/nio/ch/AixNativeThread.c
+--- openjdk.orig/jdk/src/aix/native/sun/nio/ch/AixNativeThread.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/aix/native/sun/nio/ch/AixNativeThread.c	2020-07-11 11:27:26.311893251 +0200
+@@ -32,7 +32,7 @@
+ #include "sun_nio_ch_NativeThread.h"
+ 
+ #include <pthread.h>
+-#include <sys/signal.h>
++#include <signal.h>
+ 
+ /* Also defined in src/aix/native/java/net/aix_close.c */
+ #define INTERRUPT_SIGNAL (SIGRTMAX - 1)
+diff -Naur openjdk.orig/jdk/src/aix/native/sun/nio/ch/AixPollPort.c openjdk/jdk/src/aix/native/sun/nio/ch/AixPollPort.c
+--- openjdk.orig/jdk/src/aix/native/sun/nio/ch/AixPollPort.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/aix/native/sun/nio/ch/AixPollPort.c	2020-07-11 11:27:44.675894522 +0200
+@@ -34,7 +34,7 @@
+ #include <unistd.h>
+ #include <sys/types.h>
+ #include <sys/socket.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <sys/pollset.h>
+ #include <fcntl.h>
+ #include <stddef.h>
+diff -Naur openjdk.orig/jdk/src/macosx/javavm/export/jvm_md.h openjdk/jdk/src/macosx/javavm/export/jvm_md.h
+--- openjdk.orig/jdk/src/macosx/javavm/export/jvm_md.h	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/macosx/javavm/export/jvm_md.h	2020-07-11 11:28:01.659895698 +0200
+@@ -60,7 +60,7 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <errno.h>
+-#include <sys/signal.h>
++#include <signal.h>
+ 
+ /* O Flags */
+ 
+diff -Naur openjdk.orig/jdk/src/solaris/javavm/export/jvm_md.h openjdk/jdk/src/solaris/javavm/export/jvm_md.h
+--- openjdk.orig/jdk/src/solaris/javavm/export/jvm_md.h	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/javavm/export/jvm_md.h	2020-07-11 11:28:15.215896637 +0200
+@@ -65,7 +65,7 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <errno.h>
+-#include <sys/signal.h>
++#include <signal.h>
+ 
+ /* O Flags */
+ 
+diff -Naur openjdk.orig/jdk/src/solaris/native/java/net/bsd_close.c openjdk/jdk/src/solaris/native/java/net/bsd_close.c
+--- openjdk.orig/jdk/src/solaris/native/java/net/bsd_close.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/native/java/net/bsd_close.c	2020-07-11 11:28:49.367899002 +0200
+@@ -38,7 +38,7 @@
+ #include <sys/uio.h>
+ #include <unistd.h>
+ #include <errno.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ 
+ /*
+  * Stack allocated by thread when doing blocking operation
+diff -Naur openjdk.orig/jdk/src/solaris/native/java/net/linux_close.c openjdk/jdk/src/solaris/native/java/net/linux_close.c
+--- openjdk.orig/jdk/src/solaris/native/java/net/linux_close.c	2020-07-11 11:26:15.378888339 +0200
++++ openjdk/jdk/src/solaris/native/java/net/linux_close.c	2020-07-11 11:29:10.275900449 +0200
+@@ -36,7 +36,7 @@
+ #include <sys/uio.h>
+ #include <unistd.h>
+ #include <errno.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ 
+ /*
+  * Stack allocated by thread when doing blocking operation
+diff -Naur openjdk.orig/jdk/src/solaris/native/java/net/net_util_md.h openjdk/jdk/src/solaris/native/java/net/net_util_md.h
+--- openjdk.orig/jdk/src/solaris/native/java/net/net_util_md.h	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/native/java/net/net_util_md.h	2020-07-11 11:29:27.031901609 +0200
+@@ -27,7 +27,7 @@
+ #define NET_UTILS_MD_H
+ 
+ #include <netdb.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <sys/socket.h>
+ 
+ int NET_Timeout(int s, long timeout);
+diff -Naur openjdk.orig/jdk/src/solaris/native/sun/nio/ch/DevPollArrayWrapper.c openjdk/jdk/src/solaris/native/sun/nio/ch/DevPollArrayWrapper.c
+--- openjdk.orig/jdk/src/solaris/native/sun/nio/ch/DevPollArrayWrapper.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/native/sun/nio/ch/DevPollArrayWrapper.c	2020-07-11 11:29:40.127902516 +0200
+@@ -28,7 +28,7 @@
+ #include "jvm.h"
+ #include "jlong.h"
+ #include "sun_nio_ch_DevPollArrayWrapper.h"
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <unistd.h>
+ #include <sys/time.h>
+ 
+diff -Naur openjdk.orig/jdk/src/solaris/native/sun/nio/ch/NativeThread.c openjdk/jdk/src/solaris/native/sun/nio/ch/NativeThread.c
+--- openjdk.orig/jdk/src/solaris/native/sun/nio/ch/NativeThread.c	2020-07-11 11:26:15.379888339 +0200
++++ openjdk/jdk/src/solaris/native/sun/nio/ch/NativeThread.c	2020-07-11 11:30:02.027904033 +0200
+@@ -34,7 +34,7 @@
+ 
+ #ifdef __linux__
+   #include <pthread.h>
+-  #include <sys/signal.h>
++  #include <signal.h>
+   /* Also defined in net/linux_close.c */
+   #define INTERRUPT_SIGNAL (SIGRTMAX - 2)
+ #elif __solaris__
+diff -Naur openjdk.orig/jdk/src/solaris/native/sun/nio/ch/Net.c openjdk/jdk/src/solaris/native/sun/nio/ch/Net.c
+--- openjdk.orig/jdk/src/solaris/native/sun/nio/ch/Net.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/native/sun/nio/ch/Net.c	2020-07-11 11:30:16.005905001 +0200
+@@ -23,7 +23,7 @@
+  * questions.
+  */
+ 
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <string.h>
+diff -Naur openjdk.orig/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c
+--- openjdk.orig/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c	2020-07-11 11:31:27.956909983 +0200
+@@ -29,6 +29,7 @@
+ #include "jlong.h"
+ 
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <string.h>
+ #include <dlfcn.h>
+ #include <errno.h>
+diff -Naur openjdk.orig/jdk/src/solaris/native/sun/nio/fs/LinuxWatchService.c openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxWatchService.c
+--- openjdk.orig/jdk/src/solaris/native/sun/nio/fs/LinuxWatchService.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxWatchService.c	2020-07-11 11:30:38.592906565 +0200
+@@ -32,7 +32,7 @@
+ #include <dlfcn.h>
+ #include <sys/types.h>
+ #include <sys/socket.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <sys/inotify.h>
+ 
+ #include "sun_nio_fs_LinuxWatchService.h"
+diff -Naur openjdk.orig/jdk/src/solaris/transport/socket/socket_md.c openjdk/jdk/src/solaris/transport/socket/socket_md.c
+--- openjdk.orig/jdk/src/solaris/transport/socket/socket_md.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/transport/socket/socket_md.c	2020-07-11 11:30:50.239907371 +0200
+@@ -37,7 +37,7 @@
+ #include <thread.h>
+ #else
+ #include <pthread.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #endif
+ 
+ #include "socket_md.h"

diff --git a/dev-java/icedtea/files/icedtea8-hotspot-noagent-musl.patch b/dev-java/icedtea/files/icedtea-3.2.0-hotspot-noagent-musl.patch
similarity index 56%
rename from dev-java/icedtea/files/icedtea8-hotspot-noagent-musl.patch
rename to dev-java/icedtea/files/icedtea-3.2.0-hotspot-noagent-musl.patch
index 6467d05..25bdb1c 100644
--- a/dev-java/icedtea/files/icedtea8-hotspot-noagent-musl.patch
+++ b/dev-java/icedtea/files/icedtea-3.2.0-hotspot-noagent-musl.patch
@@ -1,7 +1,6 @@
-diff -Naurw openjdk.orig/common/autoconf/configure openjdk/common/autoconf/configure
---- openjdk.orig/common/autoconf/configure	2016-02-02 13:31:48.655932240 -0800
-+++ openjdk/common/autoconf/configure	2016-02-02 13:36:24.860924385 -0800
-@@ -96,7 +96,7 @@
+--- openjdk.orig/common/autoconf/configure
++++ openjdk/common/autoconf/configure
+@@ -103,7 +103,7 @@
  }
  
  # Check for local changes
@@ -10,10 +9,9 @@ diff -Naurw openjdk.orig/common/autoconf/configure openjdk/common/autoconf/confi
  
  if test -e $conf_custom_script_dir/generated-configure.sh; then
    # Test if open configure is newer than custom configure, if so, custom needs to
-diff -Naurw openjdk.orig/common/autoconf/jdk-options.m4 openjdk/common/autoconf/jdk-options.m4
---- openjdk.orig/common/autoconf/jdk-options.m4	2016-02-02 13:31:48.657932240 -0800
-+++ openjdk/common/autoconf/jdk-options.m4	2016-02-02 13:36:24.860924385 -0800
-@@ -151,7 +151,7 @@
+--- openjdk.orig/common/autoconf/jdk-options.m4
++++ openjdk/common/autoconf/jdk-options.m4
+@@ -159,7 +159,7 @@
    AC_SUBST(JVM_VARIANT_ZEROSHARK)
    AC_SUBST(JVM_VARIANT_CORE)
  
@@ -22,10 +20,9 @@ diff -Naurw openjdk.orig/common/autoconf/jdk-options.m4 openjdk/common/autoconf/
    if test "x$JVM_VARIANT_ZERO" = xtrue ; then
      INCLUDE_SA=false
    fi
-diff -Naurw openjdk.orig/hotspot/make/linux/makefiles/defs.make openjdk/hotspot/make/linux/makefiles/defs.make
---- openjdk.orig/hotspot/make/linux/makefiles/defs.make	2016-02-02 13:31:53.410932105 -0800
-+++ openjdk/hotspot/make/linux/makefiles/defs.make	2016-02-02 13:36:24.861924385 -0800
-@@ -309,6 +309,9 @@
+--- openjdk.orig/hotspot/make/linux/makefiles/defs.make
++++ openjdk/hotspot/make/linux/makefiles/defs.make
+@@ -305,6 +305,9 @@
  
  # Serviceability Binaries
  # No SA Support for PPC, IA64, ARM or zero
@@ -35,10 +32,10 @@ diff -Naurw openjdk.orig/hotspot/make/linux/makefiles/defs.make openjdk/hotspot/
  ADD_SA_BINARIES/x86   = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
                          $(EXPORT_LIB_DIR)/sa-jdi.jar
  ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
-@@ -326,6 +329,11 @@
+@@ -322,6 +322,11 @@
+     endif
    endif
  endif
- endif
 +else
 +ADD_SA_BINARIES/x86     =
 +ADD_SA_BINARIES/sparc   =
@@ -47,9 +44,8 @@ diff -Naurw openjdk.orig/hotspot/make/linux/makefiles/defs.make openjdk/hotspot/
  ADD_SA_BINARIES/ppc   =
  ADD_SA_BINARIES/ia64  =
  ADD_SA_BINARIES/arm   =
-diff -Naurw openjdk.orig/hotspot/make/linux/makefiles/sa.make openjdk/hotspot/make/linux/makefiles/sa.make
---- openjdk.orig/hotspot/make/linux/makefiles/sa.make	2016-02-02 13:31:53.414932105 -0800
-+++ openjdk/hotspot/make/linux/makefiles/sa.make	2016-02-02 13:36:24.861924385 -0800
+--- openjdk.orig/hotspot/make/linux/makefiles/sa.make
++++ openjdk/hotspot/make/linux/makefiles/sa.make
 @@ -59,9 +59,11 @@
  
  # if $(AGENT_DIR) does not exist, we don't build SA
@@ -63,9 +59,8 @@ diff -Naurw openjdk.orig/hotspot/make/linux/makefiles/sa.make openjdk/hotspot/ma
               -a "$(SRCARCH)" != "zero" ] ; then \
  	   $(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \
  	fi
-diff -Naurw openjdk.orig/hotspot/make/linux/makefiles/saproc.make openjdk/hotspot/make/linux/makefiles/saproc.make
---- openjdk.orig/hotspot/make/linux/makefiles/saproc.make	2016-02-02 13:31:53.745932095 -0800
-+++ openjdk/hotspot/make/linux/makefiles/saproc.make	2016-02-02 13:36:24.861924385 -0800
+--- openjdk.orig/hotspot/make/linux/makefiles/saproc.make
++++ openjdk/hotspot/make/linux/makefiles/saproc.make
 @@ -61,12 +61,15 @@
  
  # if $(AGENT_DIR) does not exist, we don't build SA

diff --git a/dev-java/icedtea/files/icedtea8-jdk-execinfo.patch b/dev-java/icedtea/files/icedtea-3.2.0-jdk-execinfo.patch
similarity index 100%
rename from dev-java/icedtea/files/icedtea8-jdk-execinfo.patch
rename to dev-java/icedtea/files/icedtea-3.2.0-jdk-execinfo.patch

diff --git a/dev-java/icedtea/files/icedtea8-jdk-fix-libjvm-load.patch b/dev-java/icedtea/files/icedtea-3.2.0-jdk-fix-libjvm-load.patch
similarity index 100%
rename from dev-java/icedtea/files/icedtea8-jdk-fix-libjvm-load.patch
rename to dev-java/icedtea/files/icedtea-3.2.0-jdk-fix-libjvm-load.patch

diff --git a/dev-java/icedtea/files/icedtea-3.4.0-jdk-globals.patch b/dev-java/icedtea/files/icedtea-3.4.0-jdk-globals.patch
new file mode 100644
index 0000000..9a59d61
--- /dev/null
+++ b/dev-java/icedtea/files/icedtea-3.4.0-jdk-globals.patch
@@ -0,0 +1,104 @@
+diff --git openjdk/jdk/src/solaris/native/java/lang/childproc.h.orig openjdk/jdk/src/solaris/native/java/lang/childproc.h
+index 75352a7..58368fd 100644
+--- openjdk/jdk/src/solaris/native/java/lang/childproc.h.orig
++++ openjdk/jdk/src/solaris/native/java/lang/childproc.h
+@@ -119,7 +119,7 @@ typedef struct _SpawnInfo {
+  * The cached and split version of the JDK's effective PATH.
+  * (We don't support putenv("PATH=...") in native code)
+  */
+-const char * const *parentPathv;
++extern const char * const *parentPathv;
+ 
+ ssize_t restartableWrite(int fd, const void *buf, size_t count);
+ int restartableDup2(int fd_from, int fd_to);
+diff --git openjdk/jdk/src/solaris/native/java/lang/childproc.c.orig openjdk/jdk/src/solaris/native/java/lang/childproc.c
+index 1d183cf..0b3d343 100644
+--- openjdk/jdk/src/solaris/native/java/lang/childproc.c.orig
++++ openjdk/jdk/src/solaris/native/java/lang/childproc.c
+@@ -33,6 +33,7 @@
+ 
+ #include "childproc.h"
+ 
++const char * const *parentPathv;
+ 
+ ssize_t
+ restartableWrite(int fd, const void *buf, size_t count)
+diff --git openjdk/jdk/src/solaris/native/sun/nio/ch/sctp/Sctp.h
+index 040409a..2585fe7 100644
+--- openjdk/jdk/src/solaris/native/sun/nio/ch/sctp/Sctp.h.orig
++++ openjdk/jdk/src/solaris/native/sun/nio/ch/sctp/Sctp.h
+@@ -324,22 +324,6 @@ typedef int sctp_peeloff_func(int sock, sctp_assoc_t id);
+ 
+ #endif /* __linux__ */
+ 
+-#ifdef USE_SYSTEM_SCTP
+-#define nio_sctp_getladdrs sctp_getladdrs
+-#define nio_sctp_freeladdrs sctp_freeladdrs
+-#define nio_sctp_getpaddrs sctp_getpaddrs
+-#define nio_sctp_freepaddrs sctp_freepaddrs
+-#define nio_sctp_bindx sctp_bindx
+-#define nio_sctp_peeloff sctp_peeloff
+-#else
+-sctp_getladdrs_func* nio_sctp_getladdrs;
+-sctp_freeladdrs_func* nio_sctp_freeladdrs;
+-sctp_getpaddrs_func* nio_sctp_getpaddrs;
+-sctp_freepaddrs_func* nio_sctp_freepaddrs;
+-sctp_bindx_func* nio_sctp_bindx;
+-sctp_peeloff_func* nio_sctp_peeloff;
+-#endif
+-
+ jboolean loadSocketExtensionFuncs(JNIEnv* env);
+ 
+ #endif /* !SUN_NIO_CH_SCTP_H */
+diff --git openjdk/jdk/src/solaris/native/sun/nio/ch/sctp/SctpNet.c
+index 531c511..2aefdf7 100644
+--- openjdk/jdk/src/solaris/native/sun/nio/ch/sctp/SctpNet.c.orig
++++ openjdk/jdk/src/solaris/native/sun/nio/ch/sctp/SctpNet.c
+@@ -40,6 +40,22 @@
+ #include "sun_nio_ch_sctp_SctpNet.h"
+ #include "sun_nio_ch_sctp_SctpStdSocketOption.h"
+ 
++#ifdef USE_SYSTEM_SCTP
++#define nio_sctp_getladdrs sctp_getladdrs
++#define nio_sctp_freeladdrs sctp_freeladdrs
++#define nio_sctp_getpaddrs sctp_getpaddrs
++#define nio_sctp_freepaddrs sctp_freepaddrs
++#define nio_sctp_bindx sctp_bindx
++#define nio_sctp_peeloff sctp_peeloff
++#else
++static sctp_getladdrs_func* nio_sctp_getladdrs;
++static sctp_freeladdrs_func* nio_sctp_freeladdrs;
++static sctp_getpaddrs_func* nio_sctp_getpaddrs;
++static sctp_freepaddrs_func* nio_sctp_freepaddrs;
++static sctp_bindx_func* nio_sctp_bindx;
++static sctp_peeloff_func* nio_sctp_peeloff;
++#endif
++
+ static jclass isaCls = 0;
+ static jmethodID isaCtrID = 0;
+ 
+diff --git openjdk/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.h.orig openjdk/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.h
+index ea704b7..582382e 100644
+--- openjdk/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.h.orig
++++ openjdk/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.h
+@@ -265,6 +265,6 @@ typedef struct GSS_FUNCTION_TABLE {
+ typedef GSS_FUNCTION_TABLE *GSS_FUNCTION_TABLE_PTR;
+ 
+ /* global GSS function table */
+-GSS_FUNCTION_TABLE_PTR ftab;
++extern GSS_FUNCTION_TABLE_PTR ftab;
+ 
+ #endif
+diff --git openjdk/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c.orig openjdk/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c
+index 8a1d0ee..1d86255 100644
+--- openjdk/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c.orig
++++ openjdk/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c
+@@ -28,6 +28,8 @@
+ #include <dlfcn.h>
+ #include "NativeFunc.h"
+ 
++GSS_FUNCTION_TABLE_PTR ftab;
++
+ /* standard GSS method names (ordering is from mapfile) */
+ static const char RELEASE_NAME[]                = "gss_release_name";
+ static const char IMPORT_NAME[]                 = "gss_import_name";

diff --git a/dev-java/icedtea/files/icedtea8-autoconf-config.patch b/dev-java/icedtea/files/icedtea-3.8.0-autoconf-config.patch
similarity index 100%
rename from dev-java/icedtea/files/icedtea8-autoconf-config.patch
rename to dev-java/icedtea/files/icedtea-3.8.0-autoconf-config.patch

diff --git a/dev-java/icedtea/files/icedtea8-jdk-musl.patch b/dev-java/icedtea/files/icedtea-3.8.0-jdk-musl.patch
similarity index 55%
rename from dev-java/icedtea/files/icedtea8-jdk-musl.patch
rename to dev-java/icedtea/files/icedtea-3.8.0-jdk-musl.patch
index 03bd89f..e9b5767 100644
--- a/dev-java/icedtea/files/icedtea8-jdk-musl.patch
+++ b/dev-java/icedtea/files/icedtea-3.8.0-jdk-musl.patch
@@ -1,6 +1,6 @@
 diff -Naur openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp
---- openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp	2017-01-30 11:02:07.890400844 -0800
-+++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp	2017-01-30 11:03:01.814883550 -0800
+--- openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp	2020-07-11 11:13:20.580834690 +0200
 @@ -46,6 +46,8 @@
  
  #include "zip.h"
@@ -11,8 +11,8 @@ diff -Naur openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp
  
  inline bool jar::deflate_bytes(bytes& head, bytes& tail) {
 diff -Naur openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h
---- openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h	2017-01-30 11:02:07.890400844 -0800
-+++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h	2017-01-30 11:03:59.025407650 -0800
+--- openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h	2020-07-11 11:13:55.648837118 +0200
 @@ -23,9 +23,7 @@
   * questions.
   */
@@ -25,32 +25,20 @@ diff -Naur openjdk.orig/jdk/src/share/native/com/sun/java/util/jar/pack/zip.h op
  struct unpacker;
  
 diff -Naur openjdk.orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h openjdk/jdk/src/share/native/sun/awt/medialib/mlib_types.h
---- openjdk.orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h	2017-01-30 11:02:07.946401345 -0800
-+++ openjdk/jdk/src/share/native/sun/awt/medialib/mlib_types.h	2017-01-30 11:04:50.032877774 -0800
+--- openjdk.orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/share/native/sun/awt/medialib/mlib_types.h	2020-07-11 11:14:35.436839873 +0200
 @@ -27,6 +27,7 @@
  #ifndef MLIB_TYPES_H
  #define MLIB_TYPES_H
  
-+#include <stddef.h>                     /* for NULL */
++#include <stddef.h>			/* for NULL */
  #include <limits.h>
  #if defined(_MSC_VER)
  #include <float.h>                      /* for FLT_MAX and DBL_MAX */
-diff -Naur openjdk.orig/jdk/src/solaris/native/common/jdk_util_md.h openjdk/jdk/src/solaris/native/common/jdk_util_md.h
---- openjdk.orig/jdk/src/solaris/native/common/jdk_util_md.h	2017-01-30 11:02:08.134403028 -0800
-+++ openjdk/jdk/src/solaris/native/common/jdk_util_md.h	2017-01-30 11:05:23.910190013 -0800
-@@ -37,7 +37,7 @@
- #define ISNAND(d) isnan(d)
- #elif defined(__linux__) || defined(_ALLBSD_SOURCE)
- #include <math.h>
--#define ISNANF(f) isnanf(f)
-+#define ISNANF(f) isnan(f)
- #define ISNAND(d) isnan(d)
- #elif defined(_AIX)
- #include <math.h>
 diff -Naur openjdk.orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c openjdk/jdk/src/solaris/native/java/net/Inet4AddressImpl.c
---- openjdk.orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c	2017-01-30 11:02:08.137403055 -0800
-+++ openjdk/jdk/src/solaris/native/java/net/Inet4AddressImpl.c	2017-01-30 11:05:52.541453901 -0800
-@@ -47,7 +47,7 @@
+--- openjdk.orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/native/java/net/Inet4AddressImpl.c	2020-07-11 11:15:22.965843164 +0200
+@@ -37,7 +37,7 @@
  
  #include "java_net_Inet4AddressImpl.h"
  
@@ -59,32 +47,10 @@ diff -Naur openjdk.orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c openj
  #define HAS_GLIBC_GETHOSTBY_R   1
  #endif
  
-diff -Naur openjdk.orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c openjdk/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c
---- openjdk.orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c	2017-01-30 11:02:08.137403055 -0800
-+++ openjdk/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c	2017-01-30 11:06:33.725833488 -0800
-@@ -41,7 +41,6 @@
- #endif
- #ifdef __linux__
- #include <unistd.h>
--#include <sys/sysctl.h>
- #include <sys/utsname.h>
- #include <netinet/ip.h>
- 
-diff -Naur openjdk.orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c openjdk/jdk/src/solaris/native/java/net/PlainSocketImpl.c
---- openjdk.orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c	2017-01-30 11:02:08.138403064 -0800
-+++ openjdk/jdk/src/solaris/native/java/net/PlainSocketImpl.c	2017-01-30 11:06:42.985918836 -0800
-@@ -43,7 +43,6 @@
- #endif
- #ifdef __linux__
- #include <unistd.h>
--#include <sys/sysctl.h>
- #endif
- 
- #include "jvm.h"
 diff -Naur openjdk.orig/jdk/src/solaris/native/java/net/linux_close.c openjdk/jdk/src/solaris/native/java/net/linux_close.c
---- openjdk.orig/jdk/src/solaris/native/java/net/linux_close.c	2017-01-30 11:02:08.139403072 -0800
-+++ openjdk/jdk/src/solaris/native/java/net/linux_close.c	2017-01-30 11:07:52.952560164 -0800
-@@ -56,7 +56,7 @@
+--- openjdk.orig/jdk/src/solaris/native/java/net/linux_close.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/native/java/net/linux_close.c	2020-07-11 11:19:51.138861733 +0200
+@@ -58,7 +58,7 @@
  /*
   * Signal to unblock thread
   */
@@ -92,8 +58,8 @@ diff -Naur openjdk.orig/jdk/src/solaris/native/java/net/linux_close.c openjdk/jd
 +static int sigWakeup;
  
  /*
-  * The fd table and the number of file descriptors
-@@ -95,6 +95,9 @@
+  * fdTable holds one entry per file descriptor, up to a certain
+@@ -147,6 +147,9 @@
      /*
       * Setup the signal handler
       */
@@ -104,8 +70,8 @@ diff -Naur openjdk.orig/jdk/src/solaris/native/java/net/linux_close.c openjdk/jd
      sa.sa_flags   = 0;
      sigemptyset(&sa.sa_mask);
 diff -Naur openjdk.orig/jdk/src/solaris/native/sun/nio/ch/NativeThread.c openjdk/jdk/src/solaris/native/sun/nio/ch/NativeThread.c
---- openjdk.orig/jdk/src/solaris/native/sun/nio/ch/NativeThread.c	2017-01-30 11:02:08.172403368 -0800
-+++ openjdk/jdk/src/solaris/native/sun/nio/ch/NativeThread.c	2017-01-30 11:08:20.559810213 -0800
+--- openjdk.orig/jdk/src/solaris/native/sun/nio/ch/NativeThread.c	2020-04-29 14:33:10.000000000 +0200
++++ openjdk/jdk/src/solaris/native/sun/nio/ch/NativeThread.c	2020-07-11 11:20:42.069865260 +0200
 @@ -36,7 +36,7 @@
    #include <pthread.h>
    #include <sys/signal.h>

diff --git a/dev-java/icedtea/files/icedtea8-gcc-triple.patch b/dev-java/icedtea/files/icedtea8-gcc-triple.patch
deleted file mode 100644
index ad971ee..0000000
--- a/dev-java/icedtea/files/icedtea8-gcc-triple.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- openjdk.orig/common/autoconf/toolchain.m4	2017-05-22 17:47:00.836442251 -0700
-+++ openjdk/common/autoconf/toolchain.m4	2017-05-22 17:47:20.029658125 -0700
-@@ -122,7 +122,7 @@
-   else
-     COMPILER_VERSION_TEST=`$COMPILER --version 2>&1 | $HEAD -n 1`
-     # Check that this is GCC or the compatible distcc.
--    $COMPILER --version 2>&1 | $GREP -E "^(gcc|g\+\+|distcc)" >&AS_MESSAGE_LOG_FD 2>&1
-+    $COMPILER --version 2>&1 | $GREP -E "(gcc|g\+\+|distcc)" >&AS_MESSAGE_LOG_FD 2>&1
-     if test $? -ne 0; then
-       AC_MSG_NOTICE([The $COMPILER_NAME compiler (located as $COMPILER) does not seem to be the recommended GCC compiler.])
-       AC_MSG_NOTICE([The result from running with --version was: "$COMPILER_VERSION_TEST"])

diff --git a/dev-java/icedtea/files/icedtea8-hotspot-musl.patch b/dev-java/icedtea/files/icedtea8-hotspot-musl.patch
deleted file mode 100644
index b0cfa3e..0000000
--- a/dev-java/icedtea/files/icedtea8-hotspot-musl.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-diff -Naur openjdk.orig/hotspot/src/os/linux/vm/jvm_linux.cpp openjdk/hotspot/src/os/linux/vm/jvm_linux.cpp
---- openjdk.orig/hotspot/src/os/linux/vm/jvm_linux.cpp	2018-06-10 21:57:47.854907734 -0700
-+++ openjdk/hotspot/src/os/linux/vm/jvm_linux.cpp	2018-06-10 21:58:39.423906811 -0700
-@@ -154,7 +154,9 @@
- #ifdef SIGSTKFLT
-   "STKFLT",     SIGSTKFLT,      /* Stack fault.  */
- #endif
-+#ifdef SIGCLD
-   "CLD",        SIGCLD,         /* Same as SIGCHLD (System V).  */
-+#endif
-   "CHLD",       SIGCHLD,        /* Child status has changed (POSIX).  */
-   "CONT",       SIGCONT,        /* Continue (POSIX).  */
-   "STOP",       SIGSTOP,        /* Stop, unblockable (POSIX).  */
-diff -Naur openjdk.orig/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp
---- openjdk.orig/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp	2018-06-10 21:57:47.861907734 -0700
-+++ openjdk/hotspot/src/os_cpu/linux_aarch64/vm/os_linux_aarch64.cpp	2018-06-10 22:02:01.895903185 -0700
-@@ -75,7 +75,7 @@
- # include <pwd.h>
- # include <poll.h>
- # include <ucontext.h>
--# include <fpu_control.h>
-+# include <linux/types.h>  /* provides __u64 */
- 
- #ifdef BUILTIN_SIM
- #define REG_SP REG_RSP
-diff -Naur openjdk.orig/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
---- openjdk.orig/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp	2018-06-10 21:57:47.862907734 -0700
-+++ openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp	2018-06-10 22:00:00.892905352 -0700
-@@ -72,7 +72,6 @@
- # include <pwd.h>
- # include <poll.h>
- # include <ucontext.h>
--# include <fpu_control.h>
- 
- #ifdef AMD64
- #define REG_SP REG_RSP
-@@ -544,6 +543,9 @@
-   return true; // Mute compiler
- }
- 
-+#define _FPU_GETCW(cw) __asm__ __volatile__ ("fnstcw %0" : "=m" (*&cw))
-+#define _FPU_SETCW(cw) __asm__ __volatile__ ("fldcw %0" : : "m" (*&cw))
-+
- void os::Linux::init_thread_fpu_state(void) {
- #ifndef AMD64
-   // set fpu to 53 bit precision
-diff -Naur openjdk.orig/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp
---- openjdk.orig/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp	2018-06-10 21:57:47.862907734 -0700
-+++ openjdk/hotspot/src/os_cpu/linux_x86/vm/threadLS_linux_x86.hpp	2018-06-10 22:01:01.766904262 -0700
-@@ -32,7 +32,9 @@
-   // map stack pointer to thread pointer - see notes in threadLS_linux_x86.cpp
-   #define SP_BITLENGTH  32
-   #define PAGE_SHIFT    12
-+  #ifndef PAGE_SIZE
-   #define PAGE_SIZE     (1UL << PAGE_SHIFT)
-+  #endif
-   static Thread* _sp_map[1UL << (SP_BITLENGTH - PAGE_SHIFT)];
- 
- public:

diff --git a/dev-java/icedtea/files/icedtea8-hotspot-uclibc-fixes.patch b/dev-java/icedtea/files/icedtea8-hotspot-uclibc-fixes.patch
deleted file mode 100644
index 5ba6646..0000000
--- a/dev-java/icedtea/files/icedtea8-hotspot-uclibc-fixes.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-diff -Naur openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp openjdk/hotspot/src/os/linux/vm/os_linux.cpp
---- openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp	2017-07-25 17:17:16.777812565 -0700
-+++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp	2017-07-25 17:20:23.263840744 -0700
-@@ -94,7 +94,6 @@
- # include <string.h>
- # include <syscall.h>
- # include <sys/sysinfo.h>
--# include <gnu/libc-version.h>
- # include <sys/ipc.h>
- # include <sys/shm.h>
- # include <link.h>
-@@ -530,6 +529,13 @@
- // detecting pthread library
- 
- void os::Linux::libpthread_init() {
-+# if 1
-+  // Hardcode Alpine Linux supported uclibc/musl compatible settings
-+  os::Linux::set_glibc_version("glibc 2.9");
-+  os::Linux::set_libpthread_version("NPTL");
-+  os::Linux::set_is_NPTL();
-+  os::Linux::set_is_floating_stack();
-+#else
-   // Save glibc and pthread version strings. Note that _CS_GNU_LIBC_VERSION
-   // and _CS_GNU_LIBPTHREAD_VERSION are supported in glibc >= 2.3.2. Use a
-   // generic name for earlier versions.
-@@ -588,6 +594,7 @@
-   if (os::Linux::is_NPTL() || os::Linux::supports_variable_stack_size()) {
-      os::Linux::set_is_floating_stack();
-   }
-+#endif
- }
- 
- /////////////////////////////////////////////////////////////////////////////
-@@ -2833,17 +2840,13 @@
- // Handle request to load libnuma symbol version 1.1 (API v1). If it fails
- // load symbol from base version instead.
- void* os::Linux::libnuma_dlsym(void* handle, const char *name) {
--  void *f = dlvsym(handle, name, "libnuma_1.1");
--  if (f == NULL) {
--    f = dlsym(handle, name);
--  }
--  return f;
-+  return dlsym(handle, name);
- }
- 
- // Handle request to load libnuma symbol version 1.2 (API v2) only.
- // Return NULL if the symbol is not defined in this particular version.
- void* os::Linux::libnuma_v2_dlsym(void* handle, const char* name) {
--  return dlvsym(handle, name, "libnuma_1.2");
-+  return NULL;
- }
- 
- bool os::Linux::libnuma_init() {
-@@ -5701,7 +5704,25 @@
- // Linux doesn't yet have a (official) notion of processor sets,
- // so just return the system wide load average.
- int os::loadavg(double loadavg[], int nelem) {
-+#ifdef __UCLIBC__
-+  FILE *LOADAVG;
-+  double avg[3] = { 0.0, 0.0, 0.0 };
-+  int i, res = -1;
-+
-+  if ((LOADAVG = fopen("/proc/loadavg", "r"))) {
-+    fscanf(LOADAVG, "%lf %lf %lf", &avg[0], &avg[1], &avg[2]);
-+    res = 0;
-+    fclose(LOADAVG);
-+  }
-+
-+  for (i = 0; (i < nelem) && (i < 3); i++) {
-+    loadavg[i] = avg[i];
-+  }
-+
-+  return res;
-+#else
-   return ::getloadavg(loadavg, nelem);
-+#endif
- }
- 
- void os::pause() {
-diff -Naur openjdk.orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp
---- openjdk.orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp	2017-07-25 17:17:16.701811724 -0700
-+++ openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp	2017-07-25 17:17:47.708149321 -0700
-@@ -235,7 +235,7 @@
- #elif defined(__APPLE__)
- inline int g_isnan(double f) { return isnan(f); }
- #elif defined(LINUX) || defined(_ALLBSD_SOURCE)
--inline int g_isnan(float  f) { return isnanf(f); }
-+inline int g_isnan(float  f) { return isnan(f); }
- inline int g_isnan(double f) { return isnan(f); }
- #else
- #error "missing platform-specific definition here"
-@@ -249,8 +249,8 @@
- 
- // Checking for finiteness
- 
--inline int g_isfinite(jfloat  f)                 { return finite(f); }
--inline int g_isfinite(jdouble f)                 { return finite(f); }
-+inline int g_isfinite(jfloat  f)                 { return isfinite(f); }
-+inline int g_isfinite(jdouble f)                 { return isfinite(f); }
- 
- 
- // Wide characters

diff --git a/dev-java/icedtea/files/icedtea8-jdk-getmntent-buffer.patch b/dev-java/icedtea/files/icedtea8-jdk-getmntent-buffer.patch
deleted file mode 100644
index 075a9d4..0000000
--- a/dev-java/icedtea/files/icedtea8-jdk-getmntent-buffer.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-Give a much bigger buffer to getmntent_r.
-
-https://bugs.alpinelinux.org/issues/7093
-
-diff --git a/openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c b/openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c
-index c8500db..d0b85d6 100644
---- openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c
-+++ openjdk/jdk/src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c
-@@ -33,6 +33,7 @@
- #include <dlfcn.h>
- #include <errno.h>
- #include <mntent.h>
-+#include <limits.h>
- 
- #include "sun_nio_fs_LinuxNativeDispatcher.h"
- 
-@@ -173,8 +174,8 @@ Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this,
-     jlong value, jobject entry)
- {
-     struct mntent ent;
--    char buf[1024];
--    int buflen = sizeof(buf);
-+    char *buf = NULL;
-+    const size_t buflen = PATH_MAX * 4;
-     struct mntent* m;
-     FILE* fp = jlong_to_ptr(value);
-     jsize len;
-@@ -183,10 +184,17 @@ Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this,
-     char* dir;
-     char* fstype;
-     char* options;
-+    jint res = -1;
- 
--    m = getmntent_r(fp, &ent, (char*)&buf, buflen);
--    if (m == NULL)
-+    buf = malloc(buflen);
-+    if (buf == NULL) {
-+        JNU_ThrowOutOfMemoryError(env, "native heap");
-         return -1;
-+    }
-+    m = getmntent_r(fp, &ent, buf, buflen);
-+    if (m == NULL)
-+        goto out;
-+
-     name = m->mnt_fsname;
-     dir = m->mnt_dir;
-     fstype = m->mnt_type;
-@@ -195,32 +203,35 @@ Java_sun_nio_fs_LinuxNativeDispatcher_getmntent(JNIEnv* env, jclass this,
-     len = strlen(name);
-     bytes = (*env)->NewByteArray(env, len);
-     if (bytes == NULL)
--        return -1;
-+        goto out;
-     (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)name);
-     (*env)->SetObjectField(env, entry, entry_name, bytes);
- 
-     len = strlen(dir);
-     bytes = (*env)->NewByteArray(env, len);
-     if (bytes == NULL)
--        return -1;
-+        goto out;
-     (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)dir);
-     (*env)->SetObjectField(env, entry, entry_dir, bytes);
- 
-     len = strlen(fstype);
-     bytes = (*env)->NewByteArray(env, len);
-     if (bytes == NULL)
--        return -1;
-+        goto out;
-     (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)fstype);
-     (*env)->SetObjectField(env, entry, entry_fstype, bytes);
- 
-     len = strlen(options);
-     bytes = (*env)->NewByteArray(env, len);
-     if (bytes == NULL)
--        return -1;
-+        goto out;
-     (*env)->SetByteArrayRegion(env, bytes, 0, len, (jbyte*)options);
-     (*env)->SetObjectField(env, entry, entry_options, bytes);
- 
--    return 0;
-+    res = 0;
-+out:
-+    free(buf);
-+    return res;
- }
- 
- JNIEXPORT void JNICALL

diff --git a/dev-java/icedtea/icedtea-3.9.0.ebuild b/dev-java/icedtea/icedtea-3.16.0.ebuild
similarity index 76%
rename from dev-java/icedtea/icedtea-3.9.0.ebuild
rename to dev-java/icedtea/icedtea-3.16.0.ebuild
index 7318589..21026b9 100644
--- a/dev-java/icedtea/icedtea-3.9.0.ebuild
+++ b/dev-java/icedtea/icedtea-3.16.0.ebuild
@@ -1,28 +1,32 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # Build written by Andrew John Hughes (gnu_andrew@member.fsf.org)
 
+# *********************************************************
+# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-6.* AS WELL *
+# *********************************************************
+
 EAPI="6"
 SLOT="8"
 
-inherit check-reqs flag-o-matic gnome2-utils java-pkg-2 java-vm-2 multiprocessing pax-utils prefix versionator
+inherit check-reqs flag-o-matic java-pkg-2 java-vm-2 multiprocessing pax-utils prefix toolchain-funcs versionator xdg-utils
 
 ICEDTEA_VER=$(get_version_component_range 1-3)
 ICEDTEA_BRANCH=$(get_version_component_range 1-2)
 ICEDTEA_PKG=icedtea-${ICEDTEA_VER}
 ICEDTEA_PRE=$(get_version_component_range _)
 
-CORBA_TARBALL="c120c4fb7b31.tar.xz"
-JAXP_TARBALL="55420c5cc9f3.tar.xz"
-JAXWS_TARBALL="f824de94c42e.tar.xz"
-JDK_TARBALL="7b289a33ab97.tar.xz"
-LANGTOOLS_TARBALL="8496472630c5.tar.xz"
-OPENJDK_TARBALL="3b2d372838b9.tar.xz"
-NASHORN_TARBALL="79a2c8e2babc.tar.xz"
-HOTSPOT_TARBALL="d78088224b98.tar.xz"
-SHENANDOAH_TARBALL="b8b742251e42.tar.xz"
-AARCH32_TARBALL="891d70e93fb0.tar.xz"
+CORBA_TARBALL="ea3169880d70.tar.xz"
+JAXP_TARBALL="883803235596.tar.xz"
+JAXWS_TARBALL="e5d96dc9988a.tar.xz"
+JDK_TARBALL="bb9b9a0ad162.tar.xz"
+LANGTOOLS_TARBALL="e47d37e5fe0b.tar.xz"
+OPENJDK_TARBALL="bca1f7228ce8.tar.xz"
+NASHORN_TARBALL="1d70dcb4ab53.tar.xz"
+HOTSPOT_TARBALL="eeb08cfebded.tar.xz"
+SHENANDOAH_TARBALL="e4e81ae21643.tar.xz"
+AARCH32_TARBALL="ecc1eb1dc760.tar.xz"
 
 CACAO_TARBALL="cacao-c182f119eaad.tar.xz"
 JAMVM_TARBALL="jamvm-ec18fb9e49e62dce16c5094ef1527eed619463aa.tar.gz"
@@ -41,14 +45,14 @@ AARCH32_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-aarch32-${AARCH32_TARBALL}"
 CACAO_GENTOO_TARBALL="icedtea-${CACAO_TARBALL}"
 JAMVM_GENTOO_TARBALL="icedtea-${JAMVM_TARBALL}"
 
-DROP_URL="http://icedtea.classpath.org/download/drops"
+DROP_URL="https://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"
+HOMEPAGE="https://icedtea.classpath.org"
 SRC_PKG="${ICEDTEA_PKG}.tar.xz"
 SRC_URI="
-	http://icedtea.classpath.org/download/source/${SRC_PKG}
+	https://icedtea.classpath.org/download/source/${SRC_PKG}
 	${ICEDTEA_URL}/openjdk.tar.xz -> ${OPENJDK_GENTOO_TARBALL}
 	${ICEDTEA_URL}/corba.tar.xz -> ${CORBA_GENTOO_TARBALL}
 	${ICEDTEA_URL}/jaxp.tar.xz -> ${JAXP_GENTOO_TARBALL}
@@ -67,8 +71,9 @@ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
 
 IUSE="+alsa cacao +cups doc examples +gtk headless-awt
 	jamvm +jbootstrap kerberos libressl nsplugin pax_kernel +pch
-	pulseaudio sctp selinux shenandoah smartcard +source +sunec +system-lcms test +webstart zero"
+	pulseaudio sctp selinux shenandoah smartcard +source +system-lcms test webstart zero"
 
+RESTRICT="!test? ( test )"
 REQUIRED_USE="gtk? ( !headless-awt )"
 
 # Ideally the following were optional at build time.
@@ -102,7 +107,6 @@ COMMON_DEP="
 	kerberos? ( virtual/krb5 )
 	sctp? ( net-misc/lksctp-tools )
 	smartcard? ( sys-apps/pcsc-lite )
-	sunec? ( >=dev-libs/nss-3.16.1-r1 )
 	system-lcms? ( >=media-libs/lcms-2.9:2= )"
 
 # Gtk+ will move to COMMON_DEP in time; PR1982
@@ -111,6 +115,7 @@ RDEPEND="${COMMON_DEP}
 	!dev-java/icedtea:0
 	!dev-java/icedtea-web:7
 	>=gnome-base/gsettings-desktop-schemas-3.12.2
+	>=sys-apps/baselayout-java-0.1.0-r1
 	virtual/ttf-fonts
 	alsa? ( ${ALSA_COMMON_DEP} )
 	cups? ( ${CUPS_COMMON_DEP} )
@@ -134,6 +139,8 @@ DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} ${X_
 	|| (
 		dev-java/icedtea-bin:8
 		dev-java/icedtea:8
+		dev-java/openjdk:8
+		dev-java/openjdk-bin:8
 	)
 	app-arch/cpio
 	app-arch/unzip
@@ -175,7 +182,7 @@ pkg_setup() {
 
 	JAVA_PKG_WANT_BUILD_VM="
 		icedtea-8 icedtea-bin-8
-		icedtea-7 icedtea-bin-7"
+		openjdk-8 openjdk-bin-8"
 	JAVA_PKG_WANT_SOURCE="1.5"
 	JAVA_PKG_WANT_TARGET="1.5"
 
@@ -189,20 +196,27 @@ src_unpack() {
 
 src_configure() {
 	# Link MUSL patches into icedtea build tree
-	ln -s "${FILESDIR}/${PN}8-autoconf-config.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-gcc-triple.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-hotspot-musl-ppc.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-hotspot-musl.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-hotspot-noagent-musl.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-hotspot-uclibc-fixes.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-jdk-execinfo.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-jdk-fix-ipv6-init.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-jdk-fix-libjvm-load.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-jdk-getmntent-buffer.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-jdk-musl.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.8.0-autoconf-config.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.16.0-gcc-name-pattern.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.2.0-hotspot-noagent-musl.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.12.0-hotspot-musl-ppc.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.16.0-hotspot-musl.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.2.0-jdk-execinfo.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.2.0-jdk-fix-libjvm-load.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.4.0-jdk-globals.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.8.0-jdk-musl.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.12.0-jdk-fix-awt-inputmethod-mbstr-null.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.12.0-jdk-fix-ipv6-init.patch" patches || die
+	ln -s "${FILESDIR}/${PN}-3.16.0-jdk-includes.patch" patches || die
+
+	# GCC10/-fno-common handling, #723102
+	if [[ $(gcc-major-version) -ge 10 ]]; then
+		append-flags -fcommon
+		append-flags -fno-delete-null-pointer-checks -fno-lifetime-dse
+	fi
 
 	# For bootstrap builds as the sandbox control file might not yet exist.
-	addpredict /proc/self/coredump_filter
+	addpredict /proc/self/coredump_filter #nowarn
 
 	# icedtea doesn't like some locales. #330433 #389717
 	export LANG="C" LC_ALL="C"
@@ -213,17 +227,18 @@ src_configure() {
 	# Export MUSL patches for configure
 	DISTRIBUTION_PATCHES=""
 
-	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-musl-ppc.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-musl.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-noagent-musl.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-uclibc-fixes.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-execinfo.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-fix-ipv6-init.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-fix-libjvm-load.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-getmntent-buffer.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-musl.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-autoconf-config.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-gcc-triple.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.8.0-autoconf-config.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.16.0-gcc-name-pattern.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.2.0-hotspot-noagent-musl.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.12.0-hotspot-musl-ppc.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.16.0-hotspot-musl.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.2.0-jdk-execinfo.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.2.0-jdk-fix-libjvm-load.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.4.0-jdk-globals.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.8.0-jdk-musl.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.12.0-jdk-fix-awt-inputmethod-mbstr-null.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.12.0-jdk-fix-ipv6-init.patch "
+	DISTRIBUTION_PATCHES+="patches/${PN}-3.16.0-jdk-includes.patch "
 
 	export DISTRIBUTION_PATCHES
 
@@ -254,7 +269,6 @@ src_configure() {
 	# 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"
-
 		# Work around stack alignment issue, bug #647954.
 		use x86 && append-flags -mincoming-stack-boundary=2
 	fi
@@ -332,8 +346,6 @@ src_configure() {
 		--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-ccache \
 		--disable-downloading --disable-Werror --disable-tests \
@@ -348,7 +360,6 @@ src_configure() {
 		$(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} ${hs_config}
 }
 
@@ -378,47 +389,23 @@ src_install() {
 		rm -v "${ddest}"/src.zip || die
 	fi
 
-	dosym /usr/share/doc/${PF} /usr/share/doc/${PN}${SLOT}
+	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
+	dosym ../../../../../../etc/ssl/certs/java/cacerts "${dest}"/jre/lib/security/cacerts
 
 	java-vm_install-env "${FILESDIR}/icedtea.env.sh"
 	java-vm_sandbox-predict /proc/self/coredump_filter
 }
 
-pkg_preinst() {
-	# From 3.4.0 onwards, the arm directory is a symlink to the aarch32
-	# directory. We need to clear the old directory for a clean upgrade.
-	if use arm; then
-		local dir
-		for dir in "${EROOT}usr/$(get_libdir)/icedtea${SLOT}"/{lib,jre/lib}/arm; do
-			if [[ -d ${dir} && ! -L ${dir} ]]; then
-				rm -r "${dir}" || die
-			fi
-		done
-	fi
-
-	gnome2_icon_savelist
-}
-
 pkg_postinst() {
-	gnome2_icon_cache_update
+	xdg_icon_cache_update
 	java-vm-2_pkg_postinst
 }
 
 pkg_postrm() {
-	gnome2_icon_cache_update
+	xdg_icon_cache_update
 	java-vm-2_pkg_postrm
 }

diff --git a/dev-java/icedtea/icedtea-3.8.0.ebuild b/dev-java/icedtea/icedtea-3.8.0.ebuild
deleted file mode 100644
index d8da548..0000000
--- a/dev-java/icedtea/icedtea-3.8.0.ebuild
+++ /dev/null
@@ -1,452 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org)
-
-EAPI="6"
-SLOT="8"
-
-inherit check-reqs gnome2-utils java-pkg-2 java-vm-2 multiprocessing pax-utils prefix versionator
-
-ICEDTEA_VER=$(get_version_component_range 1-3)
-ICEDTEA_BRANCH=$(get_version_component_range 1-2)
-ICEDTEA_PKG=icedtea-${ICEDTEA_VER}
-ICEDTEA_PRE=$(get_version_component_range _)
-
-CORBA_TARBALL="75fd375dd38a.tar.xz"
-JAXP_TARBALL="2b279bb3475b.tar.xz"
-JAXWS_TARBALL="c54a27559acb.tar.xz"
-JDK_TARBALL="9c9ff65b03b6.tar.xz"
-LANGTOOLS_TARBALL="21524ad5b914.tar.xz"
-OPENJDK_TARBALL="499b993b345a.tar.xz"
-NASHORN_TARBALL="bb3e3345d3ec.tar.xz"
-HOTSPOT_TARBALL="cb5711bf53d9.tar.xz"
-SHENANDOAH_TARBALL="c44a9eef4985.tar.xz"
-AARCH32_TARBALL="bd08b7f27e11.tar.xz"
-
-CACAO_TARBALL="cacao-c182f119eaad.tar.xz"
-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}"
-NASHORN_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-nashorn-${NASHORN_TARBALL}"
-HOTSPOT_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-hotspot-${HOTSPOT_TARBALL}"
-SHENANDOAH_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-shenandoah-${SHENANDOAH_TARBALL}"
-AARCH32_GENTOO_TARBALL="icedtea-${ICEDTEA_BRANCH}-aarch32-${AARCH32_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.xz -> ${OPENJDK_GENTOO_TARBALL}
-	${ICEDTEA_URL}/corba.tar.xz -> ${CORBA_GENTOO_TARBALL}
-	${ICEDTEA_URL}/jaxp.tar.xz -> ${JAXP_GENTOO_TARBALL}
-	${ICEDTEA_URL}/jaxws.tar.xz -> ${JAXWS_GENTOO_TARBALL}
-	${ICEDTEA_URL}/jdk.tar.xz -> ${JDK_GENTOO_TARBALL}
-	${ICEDTEA_URL}/hotspot.tar.xz -> ${HOTSPOT_GENTOO_TARBALL}
-	${ICEDTEA_URL}/nashorn.tar.xz -> ${NASHORN_GENTOO_TARBALL}
-	${ICEDTEA_URL}/langtools.tar.xz -> ${LANGTOOLS_GENTOO_TARBALL}
-	shenandoah? ( ${ICEDTEA_URL}/shenandoah.tar.xz -> ${SHENANDOAH_GENTOO_TARBALL} )
-	arm? ( ${ICEDTEA_URL}/aarch32.tar.xz -> ${AARCH32_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 ~arm64 ~ppc64 ~x86"
-
-IUSE="+alsa cacao +cups doc examples +gtk headless-awt
-	jamvm +jbootstrap kerberos libressl nsplugin pax_kernel +pch
-	pulseaudio sctp selinux shenandoah smartcard +source +sunec +system-lcms 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:0=
-	>=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/libXcomposite"
-X_DEPEND="
-	x11-base/xorg-proto
-	>=x11-libs/libXau-1.0.3
-	>=x11-libs/libXdmcp-1.0.2
-	>=x11-libs/libXinerama-1.0.2"
-
-# The Javascript requirement is obsolete; OpenJDK 8+ has Nashorn
-COMMON_DEP="
-	>=dev-libs/glib-2.26:2=
-	>=dev-util/systemtap-1
-	media-libs/fontconfig:1.0=
-	>=media-libs/freetype-2.5.3:2=
-	>=sys-libs/zlib-1.2.3
-	virtual/jpeg:0=
-	kerberos? ( virtual/krb5 )
-	sctp? ( net-misc/lksctp-tools )
-	smartcard? ( sys-apps/pcsc-lite )
-	sunec? ( >=dev-libs/nss-3.16.1-r1 )
-	system-lcms? ( >=media-libs/lcms-2.9:2= )"
-
-# Gtk+ will move to COMMON_DEP in time; PR1982
-# gsettings-desktop-schemas will be needed for native proxy support; PR1976
-RDEPEND="${COMMON_DEP}
-	!dev-java/icedtea:0
-	!dev-java/icedtea-web:7
-	>=gnome-base/gsettings-desktop-schemas-3.12.2
-	virtual/ttf-fonts
-	alsa? ( ${ALSA_COMMON_DEP} )
-	cups? ( ${CUPS_COMMON_DEP} )
-	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
-	)
-	!headless-awt? ( ${X_COMMON_DEP} )
-	selinux? ( sec-policy/selinux-java )"
-
-# ca-certificates, perl and openssl are used for the cacerts keystore generation
-# perl is needed for running the SystemTap tests and the bootstrap javac
-# lsb-release is used to obtain distro information for the version & crash dump output
-# attr is needed for xattr.h which defines the extended attribute syscalls used by NIO2
-# x11-libs/libXt is needed for headers only (Intrinsic.h, IntrinsicP.h, Shell.h, StringDefs.h)
-# Ant is no longer needed under the new build system
-DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP} ${X_DEPEND}
-	|| (
-		dev-java/icedtea-bin:8
-		dev-java/icedtea-bin:7
-		dev-java/icedtea:8
-		dev-java/icedtea:7
-	)
-	app-arch/cpio
-	app-arch/unzip
-	app-arch/zip
-	app-misc/ca-certificates
-	dev-lang/perl
-	!libressl? ( dev-libs/openssl:0 )
-	libressl? ( dev-libs/libressl:0 )
-	sys-apps/attr
-	sys-apps/lsb-release
-	x11-libs/libXt
-	virtual/pkgconfig
-	pax_kernel? ( sys-apps/elfix )"
-
-PDEPEND="webstart? ( >=dev-java/icedtea-web-1.6.1:0 )
-	nsplugin? ( >=dev-java/icedtea-web-1.6.1:0[nsplugin] )
-	pulseaudio? ( dev-java/icedtea-sound )"
-
-S="${WORKDIR}"/${ICEDTEA_PKG}
-
-# @FUNCTION: get_systemtap_arch
-# @DESCRIPTION:
-# Get arch name used in /usr/share/systemtap/tapset so we can
-# install OpenJDK tapsets.
-
-get_systemtap_arch() {
-	local abi=${1-${ABI}}
-
-	case ${abi} in
-		*_fbsd) get_systemtap_arch ${abi%_fbsd} ;;
-		amd64*) echo x86_64 ;;
-		ppc*) echo powerpc ;;
-		x86*) echo i386 ;;
-		*) echo ${abi} ;;
-	esac
-}
-
-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-8 icedtea-bin-8
-		icedtea-7 icedtea-bin-7"
-	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}
-}
-
-src_configure() {
-	# Link MUSL patches into icedtea build tree
-	ln -s "${FILESDIR}/${PN}8-hotspot-musl.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-hotspot-noagent-musl.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-hotspot-uclibc-fixes.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-jdk-execinfo.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-jdk-fix-libjvm-load.patch" patches || die
-	ln -s "${FILESDIR}/${PN}-jdk-fix-ipv6-init.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-jdk-musl.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-autoconf-config.patch" patches || die
-	ln -s "${FILESDIR}/${PN}8-gcc-triple.patch" patches || die
-
-	# 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"
-
-	local cacao_config config hotspot_port hs_config jamvm_config use_cacao use_jamvm use_zero zero_config
-	local vm=$(java-pkg_get-current-vm)
-
-	# Export MUSL patches for configure
-	DISTRIBUTION_PATCHES=""
-
-	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-musl.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-noagent-musl.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-hotspot-uclibc-fixes.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-execinfo.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-fix-libjvm-load.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}-jdk-fix-ipv6-init.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-jdk-musl.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-autoconf-config.patch "
-	DISTRIBUTION_PATCHES+="patches/${PN}8-gcc-triple.patch "
-
-	export DISTRIBUTION_PATCHES
-
-	# 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 Zero for now until alternate VMs are working
-	if test "x${hotspot_port}" != "xyes"; then
-			use_zero="yes"
-	fi
-
-	if use shenandoah; then
-		if { use amd64 || use arm64; }; then
-			hs_config="--with-hotspot-build=shenandoah"
-			hs_config+=" --with-hotspot-src-zip="${DISTDIR}/${SHENANDOAH_GENTOO_TARBALL}""
-		else
-			eerror "Shenandoah can only be built on arm64 and x86_64. Please re-build with USE="-shenandoah""
-		fi
-	else
-		if use arm ; then
-			hs_config="--with-hotspot-src-zip="${DISTDIR}/${AARCH32_GENTOO_TARBALL}""
-		else
-			hs_config="--with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_GENTOO_TARBALL}""
-		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
-		ewarn 'JamVM is known to still have issues with IcedTea 3.x; please rebuild with USE="-jamvm"'
-		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
-		ewarn 'CACAO is known to still have issues with IcedTea 3.x; please rebuild with USE="-cacao"'
-		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
-
-	# Warn about potential problems with ccache enabled
-	if has ccache ${FEATURES}; then
-		ewarn 'ccache has been known to break IcedTea. Disable it before filing bugs.'
-		config+=" --enable-ccache"
-	else
-		config+=" --disable-ccache"
-	fi
-
-	# PaX breaks pch, bug #601016
-	if use pch && ! host-is-pax; then
-		config+=" --enable-precompiled-headers"
-	else
-		config+=" --disable-precompiled-headers"
-	fi
-
-	config+=" --with-parallel-jobs=$(makeopts_jobs)"
-
-	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-langtools-src-zip="${DISTDIR}/${LANGTOOLS_GENTOO_TARBALL}" \
-		--with-nashorn-src-zip="${DISTDIR}/${NASHORN_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-tests \
-		--disable-systemtap-tests --enable-improved-font-rendering \
-		--enable-system-jpeg --enable-system-zlib \
-		$(use_enable headless-awt headless) \
-		$(use_enable !headless-awt system-gif) \
-		$(use_enable !headless-awt system-png) \
-		$(use_enable doc docs) \
-		$(use_enable kerberos system-kerberos) \
-		$(use_enable system-lcms) \
-		$(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} ${hs_config}
-}
-
-src_compile() {
-	default
-}
-
-src_test() {
-	default
-}
-
-src_install() {
-	default
-
-	local dest="/usr/$(get_libdir)/icedtea${SLOT}"
-	local ddest="${ED}${dest#/}"
-	local stapdest="/usr/share/systemtap/tapset/$(get_systemtap_arch)"
-
-	if ! use alsa; then
-		rm -v "${ddest}"/jre/lib/$(get_system_arch)/libjsoundalsa.* || 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
-
-	dosym /usr/share/doc/${PF} /usr/share/doc/${PN}${SLOT}
-
-	# Link SystemTap tapsets into SystemTap installation directory
-	mkdir -p "${ED}/${stapdest}"
-	for tapsets in "${ddest}"/tapset/*.stp; do
-		tapname=$(basename ${tapsets})
-		destname=${tapname/./-${SLOT}.}
-		dosym "${dest}"/tapset/${tapname} ${stapdest}/${destname}
-	done
-
-	# 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
-
-	java-vm_install-env "${FILESDIR}/icedtea.env.sh"
-	java-vm_sandbox-predict /proc/self/coredump_filter
-}
-
-pkg_preinst() {
-	# From 3.4.0 onwards, the arm directory is a symlink to the aarch32
-	# directory. We need to clear the old directory for a clean upgrade.
-	if use arm; then
-		local dir
-		for dir in "${EROOT}usr/$(get_libdir)/icedtea${SLOT}"/{lib,jre/lib}/arm; do
-			if [[ -d ${dir} && ! -L ${dir} ]]; then
-				rm -r "${dir}" || die
-			fi
-		done
-	fi
-
-	gnome2_icon_savelist
-}
-
-pkg_postinst() {
-	gnome2_icon_cache_update
-	java-vm-2_pkg_postinst
-}
-
-pkg_postrm() {
-	gnome2_icon_cache_update
-	java-vm-2_pkg_postrm
-}


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-07-17 12:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-04 12:45 [gentoo-commits] proj/musl:master commit in: dev-java/icedtea/files/, dev-java/icedtea/ Anthony G. Basile
  -- strict thread matches above, loose matches on Subject: below --
2020-07-17 12:40 Anthony G. Basile
2018-06-11  5:04 Aric Belsito

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox