commit: c79be6d69533e45fb077c952085eb2dd38b3a745
Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 25 01:44:54 2021 +0000
Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
CommitDate: Thu Mar 25 01:46:32 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c79be6d6
dev-java/openjdk: revbump 8, fix build with gcc10
_ZN14ArrayAllocatorImL10MemoryType7EE4freeEv: symbol not found
Package-Manager: Portage-3.0.17, Repoman-3.0.2
Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
.../files/openjdk-8-insantiate-arrayallocator.patch | 16 ++++++++++++++++
...njdk-8.282_p08.ebuild => openjdk-8.282_p08-r1.ebuild} | 2 ++
2 files changed, 18 insertions(+)
diff --git a/dev-java/openjdk/files/openjdk-8-insantiate-arrayallocator.patch
b/dev-java/openjdk/files/openjdk-8-insantiate-arrayallocator.patch
new file mode 100644
index 00000000000..ba5283f1577
--- /dev/null
+++ b/dev-java/openjdk/files/openjdk-8-insantiate-arrayallocator.patch
@@ -0,0 +1,16 @@
+Workarounds build error:
+Error: dl failure on line 895
+Error relocating .../libjvm.so: _ZN14ArrayAllocatorImL10MemoryType7EE4freeEv:
symbol not found
+
+Possibly due to g++ 10.x error on not properly instantiating the template.
+
+--- openjdk/hotspot/src/share/vm/utilities/bitMap.cpp.orig 2020-11-10
14:07:08.372045326 +0200
++++ openjdk/hotspot/src/share/vm/utilities/bitMap.cpp 2020-11-10
14:08:07.911412813 +0200
+@@ -42,6 +42,7 @@
+ # include "os_bsd.inline.hpp"
+ #endif
+
++template class ArrayAllocator<BitMap::bm_word_t, mtInternal>;
+
+ BitMap::BitMap(bm_word_t* map, idx_t size_in_bits) :
+ _map(map), _size(size_in_bits), _map_allocator(false)
diff --git a/dev-java/openjdk/openjdk-8.282_p08.ebuild
b/dev-java/openjdk/openjdk-8.282_p08-r1.ebuild
similarity index 99%
rename from dev-java/openjdk/openjdk-8.282_p08.ebuild
rename to dev-java/openjdk/openjdk-8.282_p08-r1.ebuild
index 093a181abbf..88eb48ba9b1 100644
--- a/dev-java/openjdk/openjdk-8.282_p08.ebuild
+++ b/dev-java/openjdk/openjdk-8.282_p08-r1.ebuild
@@ -91,6 +91,8 @@ DEPEND="
PDEPEND="javafx? ( dev-java/openjfx:${SLOT} )"
+PATCHES=( "${FILESDIR}/openjdk-8-insantiate-arrayallocator.patch" )
+
# The space required to build varies wildly depending on USE flags,
# ranging from 2GB to 16GB. This function is certainly not exact but
# should be close enough to be useful.