--- a/hotspot/make/bsd/makefiles/saproc.make Tue Jun 17 12:54:01 2014 -0700
+++ b/hotspot/make/bsd/makefiles/saproc.make Tue Jun 17 11:18:10 2014 -0700
@@ -64,9 +64,23 @@
else
ifeq ($(OS_VENDOR), Darwin)
SASRCFILES = $(DARWIN_NON_STUB_SASRCFILES)
- SALIBS = -g -framework Foundation -F/System/Library/Frameworks/JavaVM.framework/Frameworks -framework JavaNativeFoundation -framework Security -framework CoreFoundation
+ SALIBS = -g \
+ -framework Foundation \
+ -framework JavaNativeFoundation \
+ -framework Security \
+ -framework CoreFoundation
#objc compiler blows up on -march=i586, perhaps it should not be included in the macosx intel 32-bit C++ compiles?
SAARCH = $(subst -march=i586,,$(ARCHFLAG))
+
+ # This is needed to locate JavaNativeFoundation.framework
+ ifeq ($(SYSROOT_CFLAGS),)
+ # this will happen when building without spec.gmk, set SDKROOT to a valid SDK
+ # path if your system does not have headers installed in the system frameworks
+ SA_SYSROOT_FLAGS = -F"$(SDKROOT)/System/Library/Frameworks/JavaVM.framework/Frameworks"
+ else
+ # Just use SYSROOT_CFLAGS
+ SA_SYSROOT_FLAGS=$(SYSROOT_CFLAGS)
+ endif
else
SASRCFILES = $(SASRCDIR)/StubDebuggerLocal.c
SALIBS =
@@ -100,14 +114,8 @@
endif
SA_LFLAGS += $(LDFLAGS_HASH_STYLE)
-ifeq ($(OS_VENDOR), Darwin)
- BOOT_JAVA_INCLUDES = -I$(BOOT_JAVA_HOME)/include \
- -I$(BOOT_JAVA_HOME)/include/$(shell uname -s | tr "[:upper:]" "[:lower:]") \
- -I/System/Library/Frameworks/JavaVM.framework/Headers
-else
- BOOT_JAVA_INCLUDES = -I$(BOOT_JAVA_HOME)/include \
- -I$(BOOT_JAVA_HOME)/include/$(shell uname -s | tr "[:upper:]" "[:lower:]")
-endif
+BOOT_JAVA_INCLUDES = -I$(BOOT_JAVA_HOME)/include \
+ -I$(BOOT_JAVA_HOME)/include/$(shell uname -s | tr "[:upper:]" "[:lower:]")
$(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE)
$(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \
@@ -116,6 +124,7 @@
fi
@echo Making SA debugger back-end...
$(QUIETLY) $(CC) -D$(BUILDARCH) -D_GNU_SOURCE \
+ $(SA_SYSROOT_FLAGS) \
$(SYMFLAG) $(SAARCH) $(SHARED_FLAG) $(PICFLAG) \
-I$(SASRCDIR) \
-I$(GENERATED) \