Skip to content

Instantly share code, notes, and snippets.

@rose00
Created October 28, 2011 23:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rose00/1323809 to your computer and use it in GitHub Desktop.
Save rose00/1323809 to your computer and use it in GitHub Desktop.
failed libsaproc handoff in JDK build on mac
JDK build from http://hg.openjdk.java.net/hsx/hotspot-main can fail. There is a mismatched pathname, when the makefiles attempt to hand off the libsaproc built by hotspot into the import directory required by the JDK makefiles.
Here's the ending part of a failed JDK build:
/bin/cp ../../../src/solaris/bin/i586/jvm.cfg /Users/jrose/Projects/davinci/sources/build/bsd-i586/lib/i386/jvm.cfg
Begin Processing SUBDIRS: fonts sajdi
make[5]: Nothing to be done for `all'.
ASSEMBLY_IMPORT: /Users/jrose/Projects/davinci/sources/build/bsd-i586/lib/sa-jdi.jar
/bin/mkdir -p /Users/jrose/Projects/davinci/sources/build/bsd-i586/lib
rm -f /Users/jrose/Projects/davinci/sources/build/bsd-i586/lib/sa-jdi.jar
/bin/cp /Users/jrose/Projects/davinci/sources/build/bsd-i586/hotspot/import/lib/sa-jdi.jar /Users/jrose/Projects/davinci/sources/build/bsd-i586/lib/sa-jdi.jar
EARLIER, hotspot/make/defs.make DID THIS:
cp /Users/jrose/Projects/davinci/sources/build/bsd-i586/hotspot/outputdir/bsd_i486_compiler1/product/libsaproc.dylib /Users/jrose/Projects/davinci/sources/build/bsd-i586/hotspot/import/jre/lib/libsaproc.dylib
INSTEAD OF THIS:
cp /Users/jrose/Projects/davinci/sources/build/bsd-i586/hotspot/outputdir/bsd_i486_compiler1/product/libsaproc.dylib /Users/jrose/Projects/davinci/sources/build/bsd-i586/hotspot/import/jre/lib/***i386***/libsaproc.dylib
make[5]: *** No rule to make target `/Users/jrose/Projects/davinci/sources/build/bsd-i586/hotspot/import/jre/lib/i386/libsaproc.dylib', needed by `/Users/jrose/Projects/davinci/sources/build/bsd-i586/lib/i386/libsaproc.dylib'. Stop.
make[4]: *** [all] Error 1
make[3]: *** [all] Error 1
make[2]: *** [all] Error 1
make[1]: *** [jdk-build] Error 2
make: *** [build_product_image] Error 2
Commenting out a new insertion into make/defs.make allows the build to finish, apparently:
+ hg diff make/defs.make
diff --git a/make/defs.make b/make/defs.make
--- a/make/defs.make
+++ b/make/defs.make
@@ -281,12 +281,13 @@
EXPORT_JRE_LIB_DIR = $(EXPORT_JRE_DIR)/lib
EXPORT_JRE_LIB_ARCH_DIR = $(EXPORT_JRE_LIB_DIR)/$(LIBARCH)
+###JROSE###
# non-universal macosx builds need to appear universal
-ifeq ($(OS_VENDOR), Darwin)
- ifneq ($(MACOSX_UNIVERSAL), true)
- EXPORT_JRE_LIB_ARCH_DIR = $(EXPORT_JRE_LIB_DIR)
- endif
-endif
+#ifeq ($(OS_VENDOR), Darwin)
+# ifneq ($(MACOSX_UNIVERSAL), true)
+# EXPORT_JRE_LIB_ARCH_DIR = $(EXPORT_JRE_LIB_DIR)
+# endif
+#endif
# Common export list of files
EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jvmti.h
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment