pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pkg/48693: openjdk7 does not build with clang-3.5trunk201163 from NetBSD base
The following reply was made to PR pkg/48693; it has been noted by GNATS.
From: Joerg Sonnenberger <joerg%britannica.bec.de@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: pkg/48693: openjdk7 does not build with clang-3.5trunk201163
from NetBSD base
Date: Mon, 31 Mar 2014 11:59:24 +0200
--jRHKVT23PllUwdXP
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
See attached patch.
--jRHKVT23PllUwdXP
Content-Type: text/x-diff; charset=us-ascii
Content-Disposition: attachment; filename="openjdk.diff"
Index: lang/openjdk7/Makefile
==================================================================
--- lang/openjdk7/Makefile
+++ lang/openjdk7/Makefile
@@ -170,10 +170,12 @@
${LN} -s ${JDK_BOOTDIR}/include ${ALT_BOOTDIR}/include
${LN} -s ${JDK_BOOTDIR}/lib ${ALT_BOOTDIR}/lib
printf '#!/bin/sh\nexec %s/bin/java -mx256m "$$@"\n' \
${JDK_BOOTDIR} > ${ALT_BOOTDIR}/bin/java
.else
+ cp ${.CURDIR}/hacks/libgcc_s.so.1.0
${ALT_BOOTDIR}/jre/lib/amd64/libgcc_s.so.1
+ cp ${.CURDIR}/hacks/libstdc++.so.7.1
${ALT_BOOTDIR}/jre/lib/amd64/libstdc++.so.7
mv ${ALT_BOOTDIR}/bin/java ${ALT_BOOTDIR}/bin/java-real
printf '#!/bin/sh\nexec %s/bin/java-real -mx256m "$$@"\n' \
${ALT_BOOTDIR} > ${ALT_BOOTDIR}/bin/java
.endif
chmod a+x ${ALT_BOOTDIR}/bin/java
Index: lang/openjdk7/distinfo
==================================================================
--- lang/openjdk7/distinfo
+++ lang/openjdk7/distinfo
@@ -65,11 +65,11 @@
Size (openjdk7/rhino1_7R3.zip) = 4651597 bytes
SHA1 (patch-Makefile) = a9e415d19c2a8edb96a60ffdf81c804476a8e2f6
SHA1 (patch-aa) = 69da3f571d37bb461f1d3edb342a56e63a2872af
SHA1 (patch-ab) = 35d5a4a4aa32f8b92ba82f583a2d31f2b7af7998
SHA1 (patch-ac) = 7a7853d8d0fd451e64a6fc39c28bd2bd8173adc6
-SHA1 (patch-ae) = 0bc7f2cf43835ce7d1e30e09a570e46a952a03e8
+SHA1 (patch-ae) = 3957e011819bf49adc4bb1bb6d1c00b7afad6beb
SHA1 (patch-ag) = 83ec8015b8e0f2657f4289cea84bdc9b6d0c5e88
SHA1 (patch-ah) = 2d358879d2851fb2fb8161c5a1ac5a93aa7a69c2
SHA1 (patch-ai) = bee1b592401d15a91e7d926c9011bcd0d83fb5ec
SHA1 (patch-ak) = 45beaba484a74fb47f74bec786c418781dc478e2
SHA1 (patch-al) = d174343a5baa8a73d18ff1020cb0cc19e6714175
@@ -115,12 +115,17 @@
SHA1 (patch-hotspot_src_os__cpu_solaris__x86_vm_threadLS__solaris__x86.hpp) =
062a3cf87793867b68d497b75f5fef55ed6e1666
SHA1 (patch-hotspot_src_os_posix_vm_os__posix.cpp) =
da6017447c5537048fcf04198c400f96568dc6e2
SHA1 (patch-hotspot_src_os_solaris_dtrace_jhelper.d) =
43ae9934ce7cf477f7968bcf9ba3c57e98f65cc8
SHA1 (patch-hotspot_src_os_solaris_vm_decoder__solaris.cpp) =
3be8a96525ead1df18a40b18dccfad4ef2765d47
SHA1 (patch-hotspot_src_os_solaris_vm_os__solaris.cpp) =
ea09ffd080fcf4c12b0b69cb622ee3945000cb68
+SHA1 (patch-hotspot_src_share_vm_code_nmethod.cpp) =
ed3a768e71d48263bd5ff8c2d2d9318e4c200325
SHA1 (patch-hotspot_src_share_vm_code_relocInfo.hpp) =
c02b2bb64129113b5812feb02033e12969bafe04
+SHA1 (patch-hotspot_src_share_vm_memory_allocation.cpp) =
29f0189545e0c352705338fea965d3d6aa5f5d08
+SHA1 (patch-hotspot_src_share_vm_oops_klass.cpp) =
afc7a3bb320d33e1c209e27ff3573264b2f841b9
SHA1 (patch-hotspot_src_share_vm_opto_node.cpp) =
869d8ec9dc6dae6e0b8a23fe44f2583747059553
+SHA1 (patch-hotspot_src_share_vm_services_memRecorder.hpp) =
4c06319b1a050e80514dcd915d19049b3c317a2e
+SHA1 (patch-hotspot_src_share_vm_services_memTrackWorker.cpp) =
6206c862a3c73f5f8dbb809ccea5512a34cd3fd6
SHA1 (patch-hotspot_src_share_vm_utilities_globalDefinitions__gcc.hpp) =
fe40909864fc561495b1e15a5bc6c7c6373830b2
SHA1 (patch-hotspot_src_share_vm_utilities_hashtable.cpp) =
30084c64570e420fbda8fbd36fcd4aa2641eab8e
SHA1 (patch-jdk_make_com_sun_Makefile) =
5826c64eb1971d69e8b874d6b8a60d25e0d02c5b
SHA1 (patch-jdk_make_com_sun_java_pack_Makefile) =
bb258d4c2235ea780810d980b84b90a0380f3b46
SHA1 (patch-jdk_make_com_sun_jmx_Makefile) =
65fa2d6191311766cdb5d9933d760cae7955f664
Index: lang/openjdk7/patches/patch-ae
==================================================================
--- lang/openjdk7/patches/patch-ae
+++ lang/openjdk7/patches/patch-ae
@@ -1,22 +1,34 @@
$NetBSD: patch-ae,v 1.5 2013/06/15 09:31:05 jperkin Exp $
Additional BSD support.
---- hotspot/make/bsd/makefiles/gcc.make.orig 2013-05-29 03:57:57.000000000
+0000
+--- hotspot/make/bsd/makefiles/gcc.make.orig 2014-01-01 05:50:04.000000000
+0000
+++ hotspot/make/bsd/makefiles/gcc.make
-@@ -242,6 +242,15 @@ MAPFLAG = -Xlinker --version-script=FILE
+@@ -116,7 +116,6 @@ CFLAGS += $(VM_PICFLAG)
+ CFLAGS += -fno-rtti
+ CFLAGS += -fno-exceptions
+ CFLAGS += -pthread
+-CFLAGS += -fcheck-new
+ # version 4 and above support fvisibility=hidden (matches jni_x86.h file)
+ # except 4.1.2 gives pointless warnings that can't be disabled (afaik)
+ ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4
\) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
+@@ -214,7 +213,7 @@ endif
+
+ # Flags for generating make dependency flags.
+ ifneq ("${CC_VER_MAJOR}", "2")
+-DEPFLAGS = -fpch-deps -MMD -MP -MF $(DEP_DIR)/$(@:%=%.d)
++DEPFLAGS = -MMD -MP -MF $(DEP_DIR)/$(@:%=%.d)
+ endif
+
+ # -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
+@@ -243,6 +242,10 @@ MAPFLAG = -Xlinker --version-script=FILE
#
# Shared Library
#
+
-+ifeq ($(OS_VENDOR), NetBSD)
-+# XXX tnn fixme: -lgcc_s seems to be needed on NetBSD.
-+LFLAGS += -lgcc_s
-+endif
-+
+# XXX tnn fixme: this probably should go someplace else.
+CFLAGS += -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
+
ifeq ($(OS_VENDOR), Darwin)
# Standard linker flags
LFLAGS +=
ADDED lang/openjdk7/patches/patch-hotspot_src_share_vm_code_nmethod.cpp
Index: lang/openjdk7/patches/patch-hotspot_src_share_vm_code_nmethod.cpp
==================================================================
--- lang/openjdk7/patches/patch-hotspot_src_share_vm_code_nmethod.cpp
+++ lang/openjdk7/patches/patch-hotspot_src_share_vm_code_nmethod.cpp
@@ -0,0 +1,12 @@
+$NetBSD$
+
+--- hotspot/src/share/vm/code/nmethod.cpp.orig 2014-02-10
21:07:15.000000000 +0000
++++ hotspot/src/share/vm/code/nmethod.cpp
+@@ -787,6 +787,7 @@ nmethod::nmethod(
+ }
+ #endif // def HAVE_DTRACE_H
+
++#pragma GCC diagnostic ignored "-Wnew-returns-null"
+ void* nmethod::operator new(size_t size, int nmethod_size) {
+ // Always leave some room in the CodeCache for I2C/C2I adapters
+ if (CodeCache::largest_free_block() < CodeCacheMinimumFreeSpace) return
NULL;
ADDED lang/openjdk7/patches/patch-hotspot_src_share_vm_memory_allocation.cpp
Index: lang/openjdk7/patches/patch-hotspot_src_share_vm_memory_allocation.cpp
==================================================================
--- lang/openjdk7/patches/patch-hotspot_src_share_vm_memory_allocation.cpp
+++ lang/openjdk7/patches/patch-hotspot_src_share_vm_memory_allocation.cpp
@@ -0,0 +1,31 @@
+$NetBSD$
+
+--- hotspot/src/share/vm/memory/allocation.cpp.orig 2014-01-25
07:34:05.000000000 +0000
++++ hotspot/src/share/vm/memory/allocation.cpp
+@@ -46,9 +46,9 @@
+ # include "os_bsd.inline.hpp"
+ #endif
+
+-void* StackObj::operator new(size_t size) { ShouldNotCallThis(); return 0;
};
++void* StackObj::operator new(size_t size) { ShouldNotCallThis();
__builtin_unreachable(); };
+ void StackObj::operator delete(void* p) { ShouldNotCallThis(); };
+-void* _ValueObj::operator new(size_t size) { ShouldNotCallThis(); return 0;
};
++void* _ValueObj::operator new(size_t size) { ShouldNotCallThis();
__builtin_unreachable(); };
+ void _ValueObj::operator delete(void* p) { ShouldNotCallThis(); };
+
+ void* ResourceObj::operator new(size_t size, allocation_type type, MEMFLAGS
flags) {
+@@ -414,12 +414,12 @@ Arena::~Arena() {
+
+ void* Arena::operator new(size_t size) {
+ assert(false, "Use dynamic memory type binding");
+- return NULL;
++ __builtin_unreachable();
+ }
+
+ void* Arena::operator new (size_t size, const std::nothrow_t&
nothrow_constant) {
+ assert(false, "Use dynamic memory type binding");
+- return NULL;
++ __builtin_unreachable();
+ }
+
+ // dynamic memory type binding
ADDED lang/openjdk7/patches/patch-hotspot_src_share_vm_oops_klass.cpp
Index: lang/openjdk7/patches/patch-hotspot_src_share_vm_oops_klass.cpp
==================================================================
--- lang/openjdk7/patches/patch-hotspot_src_share_vm_oops_klass.cpp
+++ lang/openjdk7/patches/patch-hotspot_src_share_vm_oops_klass.cpp
@@ -0,0 +1,13 @@
+$NetBSD$
+
+--- hotspot/src/share/vm/oops/klass.cpp.orig 2014-02-10 20:57:51.000000000
+0000
++++ hotspot/src/share/vm/oops/klass.cpp
+@@ -189,7 +189,7 @@ void* Klass_vtbl::operator new(size_t ig
+ // after the return of permanent_obj_allocate().
+ klassOop k =
+ (klassOop) CollectedHeap::permanent_obj_allocate_no_klass_install(klass,
+- size, CHECK_NULL);
++ size, THREAD);
+ return k->klass_part();
+ }
+
ADDED
lang/openjdk7/patches/patch-hotspot_src_share_vm_services_memRecorder.hpp
Index:
lang/openjdk7/patches/patch-hotspot_src_share_vm_services_memRecorder.hpp
==================================================================
--- lang/openjdk7/patches/patch-hotspot_src_share_vm_services_memRecorder.hpp
+++ lang/openjdk7/patches/patch-hotspot_src_share_vm_services_memRecorder.hpp
@@ -0,0 +1,15 @@
+$NetBSD$
+
+--- hotspot/src/share/vm/services/memRecorder.hpp.orig 2014-01-25
07:34:05.000000000 +0000
++++ hotspot/src/share/vm/services/memRecorder.hpp
+@@ -61,7 +61,9 @@ template <class E, int SIZE> class Fixed
+
+ void* operator new(size_t size) {
+ assert(false, "use nothrow version");
+- return NULL;
++#ifdef __clang__
++ __builtin_unreachable();
++#endif
+ }
+
+ void operator delete(void* p) {
ADDED
lang/openjdk7/patches/patch-hotspot_src_share_vm_services_memTrackWorker.cpp
Index:
lang/openjdk7/patches/patch-hotspot_src_share_vm_services_memTrackWorker.cpp
==================================================================
---
lang/openjdk7/patches/patch-hotspot_src_share_vm_services_memTrackWorker.cpp
+++
lang/openjdk7/patches/patch-hotspot_src_share_vm_services_memTrackWorker.cpp
@@ -0,0 +1,14 @@
+$NetBSD$
+
+--- hotspot/src/share/vm/services/memTrackWorker.cpp.orig 2014-02-10
21:02:48.000000000 +0000
++++ hotspot/src/share/vm/services/memTrackWorker.cpp
+@@ -64,8 +64,7 @@ MemTrackWorker::~MemTrackWorker() {
+ }
+
+ void* MemTrackWorker::operator new(size_t size) {
+- assert(false, "use nothrow version");
+- return NULL;
++ abort();
+ }
+
+ void* MemTrackWorker::operator new(size_t size, const std::nothrow_t&
nothrow_constant) {
--jRHKVT23PllUwdXP--
Home |
Main Index |
Thread Index |
Old Index