Success. I found this post from Arun Gupta: https://blogs.oracle.com/arungupta/entry/build_open_jdk_7_on
which specifies this make ALLOW_DOWNLOADS=true SA_APPLE_BOOT_JAVA=true ALWAYS_PASS_TEST_GAMMA=true ALT_BOOTDIR=`/usr/libexec/java_home -v1.6` HOTSPOT_BUILD_JOBS=`sysctl -n hw.ncpu` rather than this CPATH="/usr/X11/include" LANG=C make ALLOW_DOWNLOADS=true ALT_BOOTDIR=`/usr/libexec/java_home -v 1.7+` HOTSPOT_BUILD_JOBS=`sysctl -n hw.ncpu` at https://wiki.openjdk.java.net/display/MacOSXPort/Main The differences are: - At the front, remove: CPATH="/usr/X11/include" LANG=C - Add this: SA_APPLE_BOOT_JAVA=true ALWAYS_PASS_TEST_GAMMA=true I didn't yet investigate if there is a subset of the changes that would be successful. Pete On 4/18/14 1:43 PM, Pete Brunet wrote: > I see Mac downloads for 7u55 so I should be able to build 7u. But the > instructions at > https://wiki.openjdk.java.net/display/MacOSXPort/Main > are for 8 so maybe the instructions are different for 7? The > instuctions in the 7 section of > http://openjdk.java.net/groups/build/ > have no mention of mac os x. > > Pete > > On 4/18/14 11:59 AM, Pete Brunet wrote: >> Maybe 7 is not supported? The reason I am trying to build it is to back >> port two bugs from 9, but maybe that's not needed. >> >> On 4/18/14 11:39 AM, Pete Brunet wrote: >>> Hi, It's been a long time since I built 7 on macosx. Refering to >>> >>> https://wiki.openjdk.java.net/display/MacOSXPort/Main >>> >>> I see these instructions >>> >>> CPATH="/usr/X11/include" LANG=C make ALLOW_DOWNLOADS=true >>> ALT_BOOTDIR=`/usr/libexec/java_home -v 1.7+` HOTSPOT_BUILD_JOBS=`sysctl >>> -n hw.ncpu` >>> >>> but that fails. See the log below. >>> >>> Are the instructions still OK? >>> >>> Pete >>> >>> ptb-mbp-2:jdk7 petebrunet$ CPATH="/usr/X11/include" LANG=C make >>> ALLOW_DOWNLOADS=true ALT_BOOTDIR=`/usr/libexec/java_home -v 1.7+` >>> HOTSPOT_BUILD_JOBS=`sysctl -n hw.ncpu` >>> ( cd ./jdk/make && \ >>> make sanity HOTSPOT_IMPORT_CHECK=false >>> JDK_TOPDIR=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/jdk >>> JDK_MAKE_SHARED_DIR=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/jdk/make/common/shared >>> EXTERNALSANITYCONTROL=true SOURCE_LANGUAGE_VERSION=7 >>> TARGET_CLASS_VERSION=7 MILESTONE=internal BUILD_NUMBER=b00 >>> JDK_BUILD_NUMBER=b00 >>> FULL_VERSION=1.7.0-internal-petebrunet_2014_04_18_11_07-b00 >>> PREVIOUS_JDK_VERSION=1.6.0 JDK_VERSION=1.7.0 JDK_MKTG_VERSION=7 >>> JDK_MAJOR_VERSION=1 JDK_MINOR_VERSION=7 JDK_MICRO_VERSION=0 >>> PREVIOUS_MAJOR_VERSION=1 PREVIOUS_MINOR_VERSION=6 >>> PREVIOUS_MICRO_VERSION=0 ARCH_DATA_MODEL=64 COOKED_BUILD_NUMBER=0 >>> ALT_OUTPUTDIR=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64 >>> ALT_LANGTOOLS_DIST=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/dist >>> ALT_CORBA_DIST=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/corba/dist >>> ALT_JAXP_DIST=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/jaxp/dist >>> ALT_JAXWS_DIST=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/jaxws/dist >>> ALT_HOTSPOT_IMPORT_PATH=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/hotspot/import >>> BUILD_HOTSPOT=true ; ) >>> >>> Build Machine Information: >>> build machine = ptb-mbp-2.local >>> >>> Build Directory Structure: >>> CWD = /Users/petebrunet/JDK7u/JDK-8041112/jdk7 >>> TOPDIR = . >>> LANGTOOLS_TOPDIR = ./langtools >>> JAXP_TOPDIR = ./jaxp >>> JAXWS_TOPDIR = ./jaxws >>> CORBA_TOPDIR = ./corba >>> HOTSPOT_TOPDIR = ./hotspot >>> JDK_TOPDIR = ./jdk >>> >>> Build Directives: >>> BUILD_LANGTOOLS = true >>> BUILD_JAXP = true >>> BUILD_JAXWS = true >>> BUILD_CORBA = true >>> BUILD_HOTSPOT = true >>> BUILD_JDK = true >>> DEBUG_CLASSFILES = >>> DEBUG_BINARIES = >>> >>> Hotspot Settings: >>> HOTSPOT_BUILD_JOBS = 8 >>> HOTSPOT_OUTPUTDIR = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/hotspot/outputdir >>> >>> HOTSPOT_EXPORT_PATH = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/hotspot/import >>> >>> >>> >>> >>> Bootstrap Settings: >>> BOOTDIR = /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home >>> ALT_BOOTDIR = >>> /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home >>> BOOT_VER = 1.8.0 [requires at least 1.6] >>> OUTPUTDIR = /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64 >>> ALT_OUTPUTDIR = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64 >>> ABS_OUTPUTDIR = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64 >>> >>> Build Tool Settings: >>> SLASH_JAVA = /java >>> ALT_SLASH_JAVA = >>> VARIANT = OPT >>> JDK_DEVTOOLS_DIR = /java/devtools >>> ALT_JDK_DEVTOOLS_DIR = >>> ANT_HOME = >>> UNIXCOMMAND_PATH = /bin/ >>> ALT_UNIXCOMMAND_PATH = >>> COMPILER_PATH = /Applications/Xcode.app/Contents/Developer/usr/bin/ >>> ALT_COMPILER_PATH = >>> DEVTOOLS_PATH = /opt/local/bin/ >>> ALT_DEVTOOLS_PATH = >>> COMPILER_NAME = LLVM-GCC4 >>> COMPILER_VERSION = LLVM-GCC4 >>> CC_VER = 4.2.1 [requires at least 4.2.1] >>> ZIP_VER = 3.0 [requires at least 2.2] >>> UNZIP_VER = 5.52 [requires at least 5.12] >>> ANT_VER = 1.8.2 [requires at least 1.7.1] >>> TEMPDIR = /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/tmp >>> >>> Build Directives: >>> OPENJDK = true >>> USE_HOTSPOT_INTERPRETER_MODE = >>> PEDANTIC = >>> DEV_ONLY = >>> NO_DOCS = >>> NO_IMAGES = >>> TOOLS_ONLY = >>> INSANE = >>> COMPILE_APPROACH = parallel >>> PARALLEL_COMPILE_JOBS = 2 >>> ALT_PARALLEL_COMPILE_JOBS = >>> FASTDEBUG = >>> COMPILER_WARNINGS_FATAL = false >>> COMPILER_WARNING_LEVEL = >>> SHOW_ALL_WARNINGS = >>> INCREMENTAL_BUILD = false >>> CC_HIGHEST_OPT = >>> CC_HIGHER_OPT = >>> CC_LOWER_OPT = >>> CXXFLAGS = -Os -fPIC -DCC_NOEX -W -Wall -Wno-unused -Wno-parentheses >>> -m64 -fno-omit-frame-pointer -D_LITTLE_ENDIAN -I/usr/X11R6/include >>> -D_DARWIN_UNLIMITED_SELECT >>> CFLAGS = -Os -fno-strict-aliasing -fPIC -W -Wall -Wno-unused >>> -Wno-parentheses -pipe -m64 -fno-omit-frame-pointer -D_LITTLE_ENDIAN >>> -F/System/Library/Frameworks/JavaVM.framework/Frameworks >>> -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks >>> -I/usr/X11R6/include -D_DARWIN_UNLIMITED_SELECT >>> BOOT_JAVA_CMD = >>> /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/bin/java >>> -XX:-PrintVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-LogVMOutput >>> -Djava.awt.headless=true -Xmx512m -Xms512m -XX:PermSize=32m >>> -XX:MaxPermSize=160m >>> BOOT_JAVAC_CMD = >>> /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/bin/javac >>> -J-XX:ThreadStackSize=1536 -J-XX:-PrintVMOptions >>> -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput >>> -J-Djava.awt.headless=true -J-Xmx512m -J-Xms512m -J-XX:PermSize=32m >>> -J-XX:MaxPermSize=160m -encoding ascii -source 6 -target 6 >>> -XDignore.symbol.file=true >>> BOOT_JAR_CMD = >>> /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/bin/jar >>> BOOT_JARSIGNER_CMD = >>> /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/bin/jarsigner >>> JAVAC_CMD = >>> /java/re/jdk/1.7.0/promoted/latest/binaries/macosx-x86_64/bin/javac >>> -J-XX:ThreadStackSize=1536 -J-XX:-PrintVMOptions >>> -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput >>> -J-Djava.awt.headless=true -J-Xmx512m -J-Xms512m -J-XX:PermSize=32m >>> -J-XX:MaxPermSize=160m -source 7 -target 7 -encoding ascii >>> -Xbootclasspath:/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/classes >>> >>> JAVAH_CMD = >>> /java/re/jdk/1.7.0/promoted/latest/binaries/macosx-x86_64/bin/javah >>> -bootclasspath >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/classes >>> JAVADOC_CMD = >>> /java/re/jdk/1.7.0/promoted/latest/binaries/macosx-x86_64/bin/javadoc >>> -J-XX:-PrintVMOptions -J-XX:+UnlockDiagnosticVMOptions >>> -J-XX:-LogVMOutput -J-Djava.awt.headless=true -J-Xmx512m -J-Xms512m >>> -J-XX:PermSize=32m -J-XX:MaxPermSize=160m -bootclasspath >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/classes >>> >>> Build Platform Settings: >>> USER = petebrunet >>> PLATFORM = macosx >>> ARCH = x86_64 >>> LIBARCH = x86_64 >>> ARCH_FAMILY = x86_64 >>> ARCH_DATA_MODEL = 64 >>> ARCHPROP = x86_64 >>> OS_VERSION = 11.4.2 [requires at least 11.2] >>> OS_VARIANT_NAME = MacOSX >>> OS_VARIANT_VERSION = 10.7.5 >>> MB_OF_MEMORY = 8192 >>> >>> GNU Make Settings: >>> MAKE = make >>> MAKE_VER = 3.81 [requires at least 3.81] >>> MAKECMDGOALS = sanity >>> MAKEFLAGS = >>> SHELL = /bin/sh >>> >>> Target Build Versions: >>> JDK_VERSION = 1.7.0 >>> MILESTONE = internal >>> RELEASE = 1.7.0-internal >>> FULL_VERSION = 1.7.0-internal-petebrunet_2014_04_18_11_07-b00 >>> BUILD_NUMBER = b00 >>> >>> External File/Binary Locations: >>> USRJDKINSTANCES_PATH = /opt/local >>> BUILD_JDK_IMPORT_PATH = /java/re/jdk/1.7.0/promoted/latest/binaries >>> ALT_BUILD_JDK_IMPORT_PATH = >>> JDK_IMPORT_PATH = >>> /java/re/jdk/1.7.0/promoted/latest/binaries/macosx-x86_64 >>> ALT_JDK_IMPORT_PATH = >>> LANGTOOLS_DIST = >>> ALT_LANGTOOLS_DIST = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/dist >>> CORBA_DIST = >>> ALT_CORBA_DIST = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/corba/dist >>> JAXP_DIST = >>> ALT_JAXP_DIST = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/jaxp/dist >>> JAXWS_DIST = >>> ALT_JAXWS_DIST = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/jaxws/dist >>> HOTSPOT_DOCS_IMPORT_PATH = /NO_DOCS_DIR >>> ALT_HOTSPOT_DOCS_IMPORT_PATH = >>> HOTSPOT_IMPORT_PATH = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/hotspot/import >>> ALT_HOTSPOT_IMPORT_PATH = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/hotspot/import >>> HOTSPOT_SERVER_PATH = >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/hotspot/import/jre/lib/server >>> ALT_HOTSPOT_SERVER_PATH = >>> CACERTS_FILE = ./../src/share/lib/security/cacerts >>> ALT_CACERTS_FILE = >>> CUPS_HEADERS_PATH = /usr/include >>> ALT_CUPS_HEADERS_PATH = >>> >>> OpenJDK-specific settings: >>> FREETYPE_HEADERS_PATH = /usr/X11R6/include >>> ALT_FREETYPE_HEADERS_PATH = >>> FREETYPE_LIB_PATH = /usr/X11R6/lib >>> ALT_FREETYPE_LIB_PATH = >>> >>> Previous JDK Settings: >>> PREVIOUS_RELEASE_PATH = USING-PREVIOUS_RELEASE_IMAGE >>> ALT_PREVIOUS_RELEASE_PATH = >>> PREVIOUS_JDK_VERSION = 1.6.0 >>> ALT_PREVIOUS_JDK_VERSION = >>> PREVIOUS_JDK_FILE = >>> ALT_PREVIOUS_JDK_FILE = >>> PREVIOUS_JRE_FILE = >>> ALT_PREVIOUS_JRE_FILE = >>> PREVIOUS_RELEASE_IMAGE = >>> /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home >>> ALT_PREVIOUS_RELEASE_IMAGE = >>> >>> >>> Sanity check passed. >>> make \ >>> SKIP_FASTDEBUG_BUILD=true \ >>> SKIP_DEBUG_BUILD=true \ >>> \ >>> generic_build_repo_series >>> /bin/mkdir -p ./build/macosx-x86_64/j2sdk-image >>> /bin/mkdir -p >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools >>> >>> >>> ######################################################################## >>> ######################################################################## >>> ##### Entering langtools for target(s) all ##### >>> ######################################################################## >>> >>> (cd ./langtools/make && \ >>> make JDK_TOPDIR=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/jdk >>> JDK_MAKE_SHARED_DIR=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/jdk/make/common/shared >>> EXTERNALSANITYCONTROL=true SOURCE_LANGUAGE_VERSION=7 >>> TARGET_CLASS_VERSION=7 MILESTONE=internal BUILD_NUMBER=b00 >>> JDK_BUILD_NUMBER=b00 >>> FULL_VERSION=1.7.0-internal-petebrunet_2014_04_18_11_07-b00 >>> PREVIOUS_JDK_VERSION=1.6.0 JDK_VERSION=1.7.0 JDK_MKTG_VERSION=7 >>> JDK_MAJOR_VERSION=1 JDK_MINOR_VERSION=7 JDK_MICRO_VERSION=0 >>> PREVIOUS_MAJOR_VERSION=1 PREVIOUS_MINOR_VERSION=6 >>> PREVIOUS_MICRO_VERSION=0 ARCH_DATA_MODEL=64 COOKED_BUILD_NUMBER=0 >>> ALT_OUTPUTDIR=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools >>> ALT_BOOTDIR=/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home >>> all) >>> JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home >>> ANT_OPTS=-Djava.io.tmpdir='/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/build/ant-tmp' >>> ant -Djdk.version=1.7.0 >>> -Dfull.version='1.7.0-internal-petebrunet_2014_04_18_11_07-b00' >>> -Dmilestone=internal -Dbuild.number=b00 -Djavac.target=7 >>> -Djavac.source=7 >>> -Dboot.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home >>> -Dimport.jdk=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/jdk >>> -Dbuild.dir=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/build >>> -Ddist.dir=/Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/dist >>> build >>> Buildfile: /Users/petebrunet/JDK7u/JDK-8041112/jdk7/langtools/make/build.xml >>> >>> -def-pcompile: >>> [mkdir] Created dir: >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/build/toolclasses >>> [javac] Compiling 2 source files to >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/build/toolclasses >>> [javac] warning: [options] bootstrap class path not set in >>> conjunction with -source 1.6 >>> [javac] 1 warning >>> >>> -def-build-classes: >>> >>> -def-build-bootstrap-classes: >>> >>> -def-build-jar: >>> >>> -def-build-bootstrap-jar: >>> >>> -def-check: >>> >>> -check-boot.java.home: >>> >>> -def-build-tool: >>> >>> -def-build-bootstrap-tool: >>> >>> build-bootstrap-javac: >>> [mkdir] Created dir: >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/build/bootstrap/gensrc >>> [mkdir] Created dir: >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/build/bootstrap/classes >>> [pcompile] Generating 7 resource files to >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/build/bootstrap/gensrc >>> [copy] Copying 1 file to >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/build/bootstrap/gensrc >>> [pcompile] Generating 1 resource files to >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/build/bootstrap/gensrc >>> [javac] Compiling 298 source files to >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/build/macosx-x86_64/langtools/build/bootstrap/classes >>> [javac] >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java:2182: >>> warning: [overrides] Class Resolve.InapplicableSymbolsError.Candidate >>> overrides equals, but neither it nor any superclass overrides hashCode >>> method >>> [javac] private class Candidate { >>> [javac] ^ >>> [javac] error: warnings found and -Werror specified >>> [javac] 1 error >>> [javac] 1 warning >>> >>> BUILD FAILED >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/langtools/make/build.xml:452: >>> The following error occurred while executing this line: >>> /Users/petebrunet/JDK7u/JDK-8041112/jdk7/langtools/make/build.xml:795: >>> Compile failed; see the compiler error output for details.