$OpenBSD: patch-hotspot_make_bsd_makefiles_vm_make,v 1.3 2009/10/07 01:53:54 kurt Exp $
--- hotspot/make/bsd/makefiles/vm.make.orig	Sun Sep 27 09:39:51 2009
+++ hotspot/make/bsd/makefiles/vm.make	Sun Sep 27 10:41:35 2009
@@ -86,6 +86,10 @@ CPPFLAGS =           \
   ${JRE_VERSION}     \
   ${VM_DISTRO}
 
+ifdef DEFAULT_LIBPATH
+CPPFLAGS += -DDEFAULT_LIBPATH="\"$(DEFAULT_LIBPATH)\""
+endif
+
 # CFLAGS_WARN holds compiler options to suppress/enable warnings.
 CFLAGS += $(CFLAGS_WARN/BYFILE)
 
@@ -95,7 +99,7 @@ CFLAGS += $(CFLAGS/NOEX)
 # Extra flags from gnumake's invocation or environment
 CFLAGS += $(EXTRA_CFLAGS)
 
-LIBS += -lm -ldl -lpthread
+LIBS += -lm -pthread
 
 # By default, link the *.o into the library, not the executable.
 LINK_INTO$(LINK_INTO) = LIBJVM
@@ -110,7 +114,12 @@ include $(MAKEFILES_DIR)/dtrace.make
 # JVM
 
 JVM    = jvm$(G_SUFFIX)
-LIBJVM = lib$(JVM).so
+ifeq ($(OS_VENDOR), Darwin)
+  LIBJVM = lib$(JVM).dylib
+  CFLAGS += -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE
+else
+  LIBJVM = lib$(JVM).so
+endif
 
 JVM_OBJ_FILES = $(Obj_Files)
 
@@ -124,7 +133,7 @@ mapfile_reorder : mapfile $(REORDERFILE)
 	rm -f $@
 	cat $^ > $@
 
-STATIC_CXX = true
+STATIC_CXX = false
 
 ifeq ($(LINK_INTO),AOUT)
   LIBJVM.o                 =
@@ -142,14 +151,14 @@ else
   ifeq ($(STATIC_CXX), true)
     LFLAGS_VM              += $(STATIC_LIBGCC)
     LIBS_VM                += $(STATIC_STDCXX)
+    LINK_VM                = $(LINK_LIB.c)
   else
-    LIBS_VM                += -lstdc++
+    LINK_VM                = $(LINK_LIB.CC)
   endif
 
   LIBS_VM                  += $(LIBS)
 endif
 
-LINK_VM = $(LINK_LIB.c)
 
 # rule for building precompiled header
 $(PRECOMPILED_HEADER): $(Precompiled_Files)
@@ -177,11 +186,6 @@ $(LD_SCRIPT): $(LIBJVM_MAPFILE)
 LD_SCRIPT_FLAG = -Wl,-T,$(LD_SCRIPT)
 endif
 
-# With more recent Redhat releases (or the cutting edge version Fedora), if
-# SEBsd is configured to be enabled, the runtime linker will fail to apply
-# the text relocation to libjvm.so considering that it is built as a non-PIC
-# DSO. To workaround that, we run chcon to libjvm.so after it is built. See 
-# details in bug 6538311.
 $(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
 	$(QUIETLY) {                                                    \
 	    echo Linking vm...;                                         \
@@ -190,15 +194,6 @@ $(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
 		       $(LFLAGS_VM) -o $@ $(LIBJVM.o) $(LIBS_VM);       \
 	    $(LINK_LIB.CC/POST_HOOK)                                    \
 	    rm -f $@.1; ln -s $@ $@.1;                                  \
-	    if [ -x /usr/sbin/sebsdenabled ] ; then                   \
-	      /usr/sbin/sebsdenabled;                                 \
-              if [ $$? = 0 ] ; then					\
-		/usr/bin/chcon -t textrel_shlib_t $@;                   \
-		if [ $$? != 0 ]; then                                   \
-		  echo "ERROR: Cannot chcon $@";			\
-		fi							\
-	      fi							\
-	    fi                                                          \
 	}
 
 DEST_JVM = $(JDK_LIBDIR)/$(VM_SUBDIR)/$(LIBJVM)
