$OpenBSD: patch-hotspot_build_bsd_makefiles_gcc_make,v 1.2 2007/09/06 15:46:18 kurt Exp $
--- hotspot/build/bsd/makefiles/gcc.make.orig	Thu Aug  2 09:35:19 2007
+++ hotspot/build/bsd/makefiles/gcc.make	Thu Aug  2 09:37:28 2007
@@ -25,9 +25,10 @@
 #------------------------------------------------------------------------
 # CC, CPP & AS
 
-CPP = g++
-CC  = gcc
-AS  = $(CC) -c
+CXX ?= g++
+CPP  = $(CXX)
+CC  ?= gcc
+AS   = $(CC) -c
 
 # -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
 # prints the numbers (e.g. "2.95", "3.2.1")
@@ -50,19 +51,12 @@ PICFLAG = -fPIC
 
 VM_PICFLAG/LIBJVM = $(PICFLAG)
 VM_PICFLAG/AOUT   =
-
-ifneq ($(BUILDARCH), i486)
 VM_PICFLAG        = $(VM_PICFLAG/$(LINK_INTO))
-else
-# PIC has significant overhead on x86, build nonpic VM for now.
-# Link JVM at a "good" base location to avoid unnecessary .text patching.
-JVM_BASE_ADDR     = 0x06000000
-endif
 
 CFLAGS += $(VM_PICFLAG)
 CFLAGS += -fno-rtti
 CFLAGS += -fno-exceptions
-CFLAGS += -D_REENTRANT
+CFLAGS += -pthread
 CFLAGS += -fcheck-new
 
 ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
@@ -129,6 +123,11 @@ endif
 # Enable linker optimization
 LFLAGS += -Xlinker -O1
 
+# XXXBSD: need this until j2se is ported and libfontmanager/libjavaplugin_nscp
+# can be linked with needed libs (supc++ etc). For now it is getting some symbols
+# from libjvm.
+LDNOMAP = true
+
 # Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file.
 MAPFLAG = -Xlinker --version-script=FILENAME
 
@@ -136,7 +135,7 @@ MAPFLAG = -Xlinker --version-script=FILENAME
 SONAMEFLAG = -Xlinker -soname=SONAME
 
 # Build shared library
-SHARED_FLAG = -shared
+SHARED_FLAG = -shared $(VM_PICFLAG)
 
 # Keep symbols even they are not used
 AOUT_FLAGS += -export-dynamic
