Does nobody build documentation?

Jonathan Gibbons Jonathan.Gibbons at Sun.COM
Fri Jan 22 08:36:19 PST 2010


Andrew John Hughes wrote:
> 2010/1/15 Andrew John Hughes <gnu_andrew at member.fsf.org>:
>   
>> 2010/1/15 Jonathan Gibbons <Jonathan.Gibbons at sun.com>:
>>     
>>> Andrew John Hughes wrote:
>>>
>>> 2010/1/15 Jonathan Gibbons <Jonathan.Gibbons at sun.com>:
>>>
>>>
>>> Andrew John Hughes wrote:
>>>
>>> 2010/1/15 Jonathan Gibbons <Jonathan.Gibbons at sun.com>:
>>>
>>>
>>> Andrew John Hughes wrote:
>>>
>>> 2010/1/15 Andrew John Hughes <gnu_andrew at member.fsf.org>:
>>>
>>>
>>> 2010/1/15 Jonathan Gibbons <Jonathan.Gibbons at sun.com>:
>>>
>>>
>>> Andrew John Hughes wrote:
>>>
>>> 2010/1/8 Andrew John Hughes <gnu_andrew at member.fsf.org>:
>>>
>>>
>>> 2010/1/8 Jonathan Gibbons <Jonathan.Gibbons at sun.com>:
>>>
>>>
>>> Andrew John Hughes wrote:
>>>
>>> 2010/1/8 Jonathan Gibbons <Jonathan.Gibbons at sun.com>:
>>>
>>>
>>> Joe Darcy wrote:
>>>
>>>
>>> Kelly O'Hair wrote:
>>>
>>>
>>> Not many jdk developers build the docs on a regular basis that I know of.
>>> The docs are certainly built nightly from the master area (jdk7/jdk7),
>>> and should be built as part of the promoted build process.
>>>
>>> I have not seen this problem before. I noticed that the sourcepath is a
>>> little strange:
>>>
>>>
>>> I do build docs regularly and I'm also seeing this problem in an
>>> up-to-date child of JDK 7 TL I'm working with under Linux.
>>>
>>> -Joe
>>>
>>>
>>>
>>>
>>> I have a Hudson instance that routinely builds tl using "gnumake sanity
>>> clean all SKIP_BOOT_CYCLE=false" but it is not seeing any problems.
>>> Correction: Hudson is happy, but I see that there are problems in the log.
>>> Perhaps we should work to make such issues hard failures.
>>>
>>> -- Jon
>>>
>>>
>>>
>>> This does cause the build to error out for me.  What are you using as
>>> the bootstrap JDK?
>>>
>>>
>>> I do a full (closed) and openjdk builds with
>>>     ALT_BOOTDIR=/opt/jdk/1.6.0      (1.6.0_17-b02)
>>>     ALT_JDK_IMPORT_PATH=/opt/jdk/1.7.0      (1.7.0-ea-b75)
>>>
>>> The openjdk build just does "gnumake sanity clean all" without the
>>> SKIP_BOOT_CYCLE=false.
>>>
>>> Both builds are Hudson happy.
>>>
>>>
>>>
>>> If the OpenJDK7 javadoc from /opt/jdk/1.7.0 is being used, then yes it
>>> won't fail.  IcedTea also passes because it builds the docs in the
>>> second build using the javadoc of the first build.
>>>
>>> Maybe the solution is to set the bootclasspath to point to the newly
>>> built libraries.  You should be able to build the documentation
>>> without having to have an existing 1.7 build around (there's an
>>> obvious bootstrapping problem there for one).
>>>
>>>
>>>
>>> -- Jon
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Andrew :-)
>>>
>>> Free Java Software Engineer
>>> Red Hat, Inc. (http://www.redhat.com)
>>>
>>> Support Free Java!
>>> Contribute to GNU Classpath and the OpenJDK
>>> http://www.gnu.org/software/classpath
>>> http://openjdk.java.net
>>>
>>> PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
>>> Fingerprint: F8EF F1EA 401E 2E60 15FA  7927 142C 2591 94EF D9D8
>>>
>>>
>>>
>>> I'm still getting the same error with b79.  Any ideas for solving this?
>>>
>>>
>>> Can you summarize your build environment and describe the failure, so that
>>> we can try and recreate it here?
>>>
>>> -- Jon
>>>
>>>
>>>
>>> This is on x86_64 building OpenJDK7 using OpenJDK6:
>>>
>>> LANG=C make ALT_BOOTDIR=${SYSTEM_ICEDTEA6} \
>>>    ALT_OUTPUTDIR=${WORKING_DIR}/${BUILD_DIR} \
>>>    ALT_PARALLEL_COMPILE_JOBS=$PARALLEL_JOBS \
>>>    HOTSPOT_BUILD_JOBS=$PARALLEL_JOBS \
>>>    ANT=/usr/bin/ant \
>>>    ALT_DROPS_DIR=/home/downloads/java/drops
>>>
>>> ( cd  ./jdk/make && \
>>>          make sanity HOTSPOT_IMPORT_CHECK=false
>>> JDK_TOPDIR=/home/andrew/projects/openjdk/upstream/icedtea/jdk
>>> JDK_MAKE_SHARED_DIR=/home/andrew/projects/openjdk/upstream/icedtea/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-andrew_2010_01_15_21_11-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
>>> ANT_HOME="/usr/share/ant" ALT_OUTPUTDIR=/mnt/builder/icedtea
>>> ALT_LANGTOOLS_DIST=/mnt/builder/icedtea/langtools/dist
>>> ALT_CORBA_DIST=/mnt/builder/icedtea/corba/dist
>>> ALT_JAXP_DIST=/mnt/builder/icedtea/jaxp/dist
>>> ALT_JAXWS_DIST=/mnt/builder/icedtea/jaxws/dist
>>> ALT_HOTSPOT_IMPORT_PATH=/mnt/builder/icedtea/hotspot/import
>>> BUILD_HOTSPOT=true ; )
>>>
>>> Build Machine Information:
>>>   build machine = rivendell
>>>
>>> Build Directory Structure:
>>>   CWD = /home/andrew/projects/openjdk/upstream/icedtea
>>>   TOPDIR = .
>>>   CONTROL_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  = 9
>>>      HOTSPOT_OUTPUTDIR   = /mnt/builder/icedtea/hotspot/outputdir
>>>      HOTSPOT_EXPORT_PATH = /mnt/builder/icedtea/hotspot/import
>>>
>>>
>>>
>>>
>>> Bootstrap Settings:
>>>  BOOTDIR = /usr/lib/jvm/icedtea6
>>>    ALT_BOOTDIR = /usr/lib/jvm/icedtea6
>>>  BOOT_VER = 1.6.0 [requires at least 1.5]
>>>  OUTPUTDIR = /mnt/builder/icedtea
>>>    ALT_OUTPUTDIR = /mnt/builder/icedtea
>>>  ABS_OUTPUTDIR = /mnt/builder/icedtea
>>>
>>> Build Tool Settings:
>>>  SLASH_JAVA = /NOT-SET
>>>    ALT_SLASH_JAVA =
>>>  VARIANT = OPT
>>>  JDK_DEVTOOLS_DIR = /NOT-SET/devtools
>>>    ALT_JDK_DEVTOOLS_DIR =
>>>  ANT_HOME = /usr/share/ant
>>>  UNIXCOMMAND_PATH = /bin/
>>>    ALT_UNIXCOMMAND_PATH =
>>>  COMPILER_PATH = /usr/bin/
>>>    ALT_COMPILER_PATH =
>>>  DEVTOOLS_PATH = /usr/bin/
>>>    ALT_DEVTOOLS_PATH =
>>>  UNIXCCS_PATH = /usr/ccs/bin/
>>>    ALT_UNIXCCS_PATH =
>>>  USRBIN_PATH = /usr/bin/
>>>    ALT_USRBIN_PATH =
>>>  COMPILER_NAME = GCC4
>>>  COMPILER_VERSION = GCC4
>>>  CC_VER = 4.4.2 [requires at least 4.3.0]
>>>  ZIP_VER = 3.0 [requires at least 2.2]
>>>  UNZIP_VER = 6.00 [requires at least 5.12]
>>>  ANT_VER = 1.7.1 [requires at least 1.6.3]
>>>  TEMPDIR = /mnt/builder/icedtea/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 = 9
>>>    ALT_PARALLEL_COMPILE_JOBS = 9
>>>  FASTDEBUG =
>>>  COMPILER_WARNINGS_FATAL = false
>>>  COMPILER_WARNING_LEVEL =
>>>  INCREMENTAL_BUILD = false
>>>  CC_HIGHEST_OPT =
>>>  CC_HIGHER_OPT =
>>>  CC_LOWER_OPT =
>>>  CXXFLAGS =  -O2 -fPIC -DCC_NOEX -W -Wall  -Wno-unused
>>> -Wno-parentheses -fno-omit-frame-pointer -D_LITTLE_ENDIAN
>>>  CFLAGS =  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused
>>> -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN
>>>  BOOT_JAVA_CMD = /usr/lib/jvm/icedtea6/bin/java -XX:-PrintVMOptions
>>> -XX:+UnlockDiagnosticVMOptions -XX:-LogVMOutput -Xmx896m -Xms128m
>>> -XX:PermSize=32m -XX:MaxPermSize=160m
>>>  BOOT_JAVAC_CMD = /usr/lib/jvm/icedtea6/bin/javac
>>> -J-XX:ThreadStackSize=1536 -J-XX:-PrintVMOptions
>>> -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput -J-Xmx896m
>>> -J-Xms128m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m -encoding ascii
>>> -source 6 -target 6 -XDignore.symbol.file=true
>>>  BOOT_JAR_CMD = /usr/lib/jvm/icedtea6/bin/jar
>>>  BOOT_JARSIGNER_CMD = /usr/lib/jvm/icedtea6/bin/jarsigner
>>>  JAVAC_CMD =
>>> /NOT-SET/re/jdk/1.7.0/promoted/latest/binaries/linux-amd64/bin/javac
>>>  -J-XX:ThreadStackSize=1536 -J-XX:-PrintVMOptions
>>> -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput -J-Xmx896m
>>> -J-Xms128m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m  -source 7
>>> -target 7 -encoding ascii -Xbootclasspath:/mnt/builder/icedtea/classes
>>>  JAVAH_CMD =
>>> /NOT-SET/re/jdk/1.7.0/promoted/latest/binaries/linux-amd64/bin/javah
>>> -bootclasspath /mnt/builder/icedtea/classes
>>>  JAVADOC_CMD =
>>> /NOT-SET/re/jdk/1.7.0/promoted/latest/binaries/linux-amd64/bin/javadoc
>>> -J-XX:-PrintVMOptions -J-XX:+UnlockDiagnosticVMOptions
>>> -J-XX:-LogVMOutput -J-Xmx896m -J-Xms128m -J-XX:PermSize=32m
>>> -J-XX:MaxPermSize=160m
>>>
>>> Build Platform Settings:
>>>  USER = andrew
>>>  PLATFORM = linux
>>>  ARCH = amd64
>>>  LIBARCH = amd64
>>>  ARCH_FAMILY = amd64
>>>  ARCH_DATA_MODEL = 64
>>>  ARCHPROP = amd64
>>>  ALSA_VERSION = 1.0.21
>>>  OS_VERSION = 2.6.31-gentoo-r6.rivendell [requires at least 2.6]
>>>  OS_VARIANT_NAME = Unknown
>>>  OS_VARIANT_VERSION =
>>>  TEMP_FREE_SPACE = 14969988
>>>  FREE_SPACE = 27121840
>>>  MB_OF_MEMORY = 7912
>>>
>>> GNU Make Settings:
>>>  MAKE = make
>>>  MAKE_VER = 3.81 [requires at least 3.78]
>>>  MAKECMDGOALS = sanity
>>>  MAKEFLAGS = w
>>>  SHELL = /bin/sh
>>>
>>> Target Build Versions:
>>>  JDK_VERSION = 1.7.0
>>>  MILESTONE = internal
>>>  RELEASE = 1.7.0-internal
>>>  FULL_VERSION = 1.7.0-internal-andrew_2010_01_15_21_11-b00
>>>  BUILD_NUMBER = b00
>>>
>>> External File/Binary Locations:
>>>  USRJDKINSTANCES_PATH = /opt/java
>>>  BUILD_JDK_IMPORT_PATH = /NOT-SET/re/jdk/1.7.0/promoted/latest/binaries
>>>    ALT_BUILD_JDK_IMPORT_PATH =
>>>  JDK_IMPORT_PATH =
>>> /NOT-SET/re/jdk/1.7.0/promoted/latest/binaries/linux-amd64
>>>    ALT_JDK_IMPORT_PATH =
>>>  LANGTOOLS_DIST =
>>>    ALT_LANGTOOLS_DIST = /mnt/builder/icedtea/langtools/dist
>>>  CORBA_DIST =
>>>    ALT_CORBA_DIST = /mnt/builder/icedtea/corba/dist
>>>  JAXP_DIST =
>>>    ALT_JAXP_DIST = /mnt/builder/icedtea/jaxp/dist
>>>  JAXWS_DIST =
>>>    ALT_JAXWS_DIST = /mnt/builder/icedtea/jaxws/dist
>>>  HOTSPOT_DOCS_IMPORT_PATH = /NO_DOCS_DIR
>>>    ALT_HOTSPOT_DOCS_IMPORT_PATH =
>>>  HOTSPOT_IMPORT_PATH = /mnt/builder/icedtea/hotspot/import
>>>    ALT_HOTSPOT_IMPORT_PATH = /mnt/builder/icedtea/hotspot/import
>>>  HOTSPOT_SERVER_PATH =
>>> /mnt/builder/icedtea/hotspot/import/jre/lib/amd64/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/include
>>>    ALT_FREETYPE_HEADERS_PATH =
>>>  FREETYPE_LIB_PATH = /usr/lib
>>>    ALT_FREETYPE_LIB_PATH =
>>>
>>> OPENJDK Import Binary Plug Settings:
>>>  IMPORT_BINARY_PLUGS =
>>>  BINARY_PLUGS_JARFILE =
>>> /NOT-SET/re/jdk/1.7.0/promoted/latest/openjdk/binaryplugs/linux-amd64/jre/lib/rt-closed.jar
>>>    ALT_BINARY_PLUGS_JARFILE =
>>>  BINARY_PLUGS_PATH =
>>> /NOT-SET/re/jdk/1.7.0/promoted/latest/openjdk/binaryplugs/linux-amd64
>>>    ALT_BINARY_PLUGS_PATH =
>>>  BUILD_BINARY_PLUGS_PATH =
>>> /NOT-SET/re/jdk/1.7.0/promoted/latest/openjdk/binaryplugs
>>>    ALT_BUILD_BINARY_PLUGS_PATH =
>>>  PLUG_LIBRARY_NAMES =
>>>
>>> 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 = /usr/lib/jvm/icedtea6
>>>    ALT_PREVIOUS_RELEASE_IMAGE =
>>>
>>>
>>> Sanity check passed.
>>> Control linux amd64 1.7.0-internal all_product_build build started:
>>> 10-01-15 21:11
>>> Control linux amd64 1.7.0-internal build_product_image build started:
>>> 10-01-15 21:11
>>> make \
>>>                SKIP_FASTDEBUG_BUILD=true \
>>>                SKIP_DEBUG_BUILD=true \
>>>                 \
>>>                generic_build_repo_series
>>>
>>> Joe said earlier in the thread that's he's also seen this error.  I
>>> think the reason you don't is that you are building with an earlier
>>> OpenJDK7 build available.  The failures are in APIs that have changed
>>> between 6 and 7.
>>> --
>>> Andrew :-)
>>>
>>> Free Java Software Engineer
>>> Red Hat, Inc. (http://www.redhat.com)
>>>
>>> Support Free Java!
>>> Contribute to GNU Classpath and the OpenJDK
>>> http://www.gnu.org/software/classpath
>>> http://openjdk.java.net
>>>
>>> PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
>>> Fingerprint: F8EF F1EA 401E 2E60 15FA  7927 142C 2591 94EF D9D8
>>>
>>>
>>>
>>> The following is from the second stage of an IcedTea build against the
>>> same source tree which does succeed.  Note that JAVADOC_CMD is valid
>>> in this case:
>>>
>>>
>>> Build Machine Information:
>>>    build machine = rivendell
>>>
>>> Build Directory Structure:
>>>    CWD = /mnt/builder/icedtea7/openjdk
>>>    TOPDIR = .
>>>    CONTROL_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 = true
>>>    DEBUG_BINARIES = true
>>>
>>> Hotspot Settings:
>>>       HOTSPOT_BUILD_JOBS  = 9
>>>       HOTSPOT_OUTPUTDIR   =
>>> /mnt/builder/icedtea7/openjdk/build/linux-amd64/hotspot/outputdir
>>>       HOTSPOT_EXPORT_PATH =
>>> /mnt/builder/icedtea7/openjdk/build/linux-amd64/hotspot/import
>>>
>>>
>>>
>>>
>>> Bootstrap Settings:
>>>   BOOTDIR = /mnt/builder/icedtea7/bootstrap/jdk1.6.0
>>>     ALT_BOOTDIR = /mnt/builder/icedtea7/bootstrap/jdk1.6.0
>>>   BOOT_VER = 1.7.0 [requires at least 1.5]
>>>   OUTPUTDIR = /mnt/builder/icedtea7/openjdk/build/linux-amd64
>>>     ALT_OUTPUTDIR = /mnt/builder/icedtea7/openjdk/build/linux-amd64
>>>   ABS_OUTPUTDIR = /mnt/builder/icedtea7/openjdk/build/linux-amd64
>>>
>>> Build Tool Settings:
>>>   SLASH_JAVA = /NOT-SET
>>>     ALT_SLASH_JAVA =
>>>   VARIANT = OPT
>>>   JDK_DEVTOOLS_DIR = /NOT-SET/devtools
>>>     ALT_JDK_DEVTOOLS_DIR =
>>>   ANT_HOME = /usr/share/ant
>>>   UNIXCOMMAND_PATH = /bin/
>>>     ALT_UNIXCOMMAND_PATH =
>>>   COMPILER_PATH = /usr/bin/
>>>     ALT_COMPILER_PATH =
>>>   DEVTOOLS_PATH = /usr/bin/
>>>     ALT_DEVTOOLS_PATH =
>>>   UNIXCCS_PATH = /usr/ccs/bin/
>>>     ALT_UNIXCCS_PATH =
>>>   USRBIN_PATH = /usr/bin/
>>>     ALT_USRBIN_PATH =
>>>   COMPILER_NAME = GCC4
>>>   COMPILER_VERSION = GCC4
>>>   CC_VER = 4.4.2 [requires at least 3.2]
>>>   ZIP_VER = 3.0 [requires at least 2.2]
>>>   UNZIP_VER = 6.00 [requires at least 5.12]
>>>   ANT_VER = 1.7.1 [requires at least 1.6.3]
>>>   TEMPDIR = /mnt/builder/icedtea7/openjdk/build/linux-amd64/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 = 9
>>>     ALT_PARALLEL_COMPILE_JOBS = 9
>>>   FASTDEBUG =
>>>   COMPILER_WARNINGS_FATAL = false
>>>   COMPILER_WARNING_LEVEL =
>>>   INCREMENTAL_BUILD = false
>>>   CC_HIGHEST_OPT =
>>>   CC_HIGHER_OPT =
>>>   CC_LOWER_OPT =
>>>   CXXFLAGS =  -O2 -fPIC -DCC_NOEX -W -Wall  -Wno-unused
>>> -Wno-parentheses -fno-omit-frame-pointer -D_LITTLE_ENDIAN -g
>>>   CFLAGS =  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused
>>> -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN -g
>>>   BOOT_JAVA_CMD = /mnt/builder/icedtea7/bootstrap/jdk1.6.0/bin/java
>>> -XX:-PrintVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-LogVMOutput
>>> -Xmx896m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=160m
>>>   BOOT_JAVAC_CMD = /mnt/builder/icedtea7/bootstrap/jdk1.6.0/bin/javac
>>> -J-XX:ThreadStackSize=1536 -J-XX:-PrintVMOptions
>>> -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput -J-Xmx896m
>>> -J-Xms128m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m -encoding ascii
>>> -source 6 -target 6 -XDignore.symbol.file=true
>>>   BOOT_JAR_CMD = /mnt/builder/icedtea7/bootstrap/jdk1.6.0/bin/jar
>>>   BOOT_JARSIGNER_CMD =
>>> /mnt/builder/icedtea7/bootstrap/jdk1.6.0/bin/jarsigner
>>>   JAVAC_CMD = /mnt/builder/icedtea7/bootstrap/jdk1.6.0/bin/javac
>>> -J-XX:ThreadStackSize=1536 -J-XX:-PrintVMOptions
>>> -J-XX:+UnlockDiagnosticVMOptions -J-XX:-LogVMOutput -J-Xmx896m
>>> -J-Xms128m -J-XX:PermSize=32m -J-XX:MaxPermSize=160m  -g -source 7
>>> -target 7 -encoding ascii
>>> -Xbootclasspath:/mnt/builder/icedtea7/openjdk/build/linux-amd64/classes
>>>   JAVAH_CMD = /mnt/builder/icedtea7/bootstrap/jdk1.6.0/bin/javah
>>> -bootclasspath /mnt/builder/icedtea7/openjdk/build/linux-amd64/classes
>>>   JAVADOC_CMD = /mnt/builder/icedtea7/bootstrap/jdk1.6.0/bin/javadoc
>>> -J-XX:-PrintVMOptions -J-XX:+UnlockDiagnosticVMOptions
>>> -J-XX:-LogVMOutput -J-Xmx896m -J-Xms128m -J-XX:PermSize=32m
>>> -J-XX:MaxPermSize=160m
>>>
>>> Build Platform Settings:
>>>   USER = andrew
>>>   PLATFORM = linux
>>>   ARCH = amd64
>>>   LIBARCH = amd64
>>>   ARCH_FAMILY = amd64
>>>   ARCH_DATA_MODEL = 64
>>>   ARCHPROP = amd64
>>>   ALSA_VERSION = 1.0.21
>>>   OS_VERSION = 2.6.31-gentoo-r6.rivendell [requires at least 2.6]
>>>   OS_VARIANT_NAME = Unknown
>>>   OS_VARIANT_VERSION =
>>>   TEMP_FREE_SPACE = 15192600
>>>   FREE_SPACE = 45862084
>>>   MB_OF_MEMORY = 7912
>>>
>>> GNU Make Settings:
>>>   MAKE = /usr/bin/make
>>>   MAKE_VER = 3.81 [requires at least 3.78]
>>>   MAKECMDGOALS = sanity
>>>   MAKEFLAGS = w
>>>   SHELL = /bin/sh
>>>
>>> Target Build Versions:
>>>   JDK_VERSION = 1.7.0_78
>>>   MILESTONE = fcs
>>>   RELEASE = 1.7.0_78-icedtea
>>>   FULL_VERSION = 1.7.0_78-icedtea-b78
>>>   BUILD_NUMBER = b78
>>>
>>> External File/Binary Locations:
>>>   USRJDKINSTANCES_PATH = /opt/java
>>>   BUILD_JDK_IMPORT_PATH = /NOT-SET/re/jdk/1.7.0_78/promoted/latest/binaries
>>>     ALT_BUILD_JDK_IMPORT_PATH =
>>>   JDK_IMPORT_PATH = /mnt/builder/icedtea7/bootstrap/jdk1.6.0
>>>     ALT_JDK_IMPORT_PATH = /mnt/builder/icedtea7/bootstrap/jdk1.6.0
>>>   LANGTOOLS_DIST =
>>>     ALT_LANGTOOLS_DIST =
>>> /mnt/builder/icedtea7/openjdk/build/linux-amd64/langtools/dist
>>>   CORBA_DIST =
>>>     ALT_CORBA_DIST =
>>> /mnt/builder/icedtea7/openjdk/build/linux-amd64/corba/dist
>>>   JAXP_DIST =
>>>     ALT_JAXP_DIST =
>>> /mnt/builder/icedtea7/openjdk/build/linux-amd64/jaxp/dist
>>>   JAXWS_DIST = /mnt/builder/icedtea7/openjdk/build/linux-amd64/jaxws/dist
>>>     ALT_JAXWS_DIST =
>>> /mnt/builder/icedtea7/openjdk/build/linux-amd64/jaxws/dist
>>>   HOTSPOT_DOCS_IMPORT_PATH = /NO_DOCS_DIR
>>>     ALT_HOTSPOT_DOCS_IMPORT_PATH =
>>>   HOTSPOT_IMPORT_PATH =
>>> /mnt/builder/icedtea7/openjdk/build/linux-amd64/hotspot/import
>>>     ALT_HOTSPOT_IMPORT_PATH =
>>> /mnt/builder/icedtea7/openjdk/build/linux-amd64/hotspot/import
>>>   HOTSPOT_SERVER_PATH =
>>> /mnt/builder/icedtea7/openjdk/build/linux-amd64/hotspot/import/jre/lib/amd64/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/include
>>>     ALT_FREETYPE_HEADERS_PATH =
>>>   FREETYPE_LIB_PATH = /usr/lib
>>>     ALT_FREETYPE_LIB_PATH =
>>>
>>> OPENJDK Import Binary Plug Settings:
>>>   IMPORT_BINARY_PLUGS =
>>>   BINARY_PLUGS_JARFILE =
>>> /NOT-SET/re/jdk/1.7.0_78/promoted/latest/openjdk/binaryplugs/linux-amd64/jre/lib/rt-closed.jar
>>>     ALT_BINARY_PLUGS_JARFILE =
>>>   BINARY_PLUGS_PATH =
>>> /NOT-SET/re/jdk/1.7.0_78/promoted/latest/openjdk/binaryplugs/linux-amd64
>>>     ALT_BINARY_PLUGS_PATH =
>>>   BUILD_BINARY_PLUGS_PATH =
>>> /NOT-SET/re/jdk/1.7.0_78/promoted/latest/openjdk/binaryplugs
>>>     ALT_BUILD_BINARY_PLUGS_PATH =
>>>   PLUG_LIBRARY_NAMES =
>>>
>>> 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 = /mnt/builder/icedtea7/bootstrap/jdk1.6.0
>>>     ALT_PREVIOUS_RELEASE_IMAGE =
>>>
>>>
>>> Sanity check passed.
>>> Control linux amd64 1.7.0_78-icedtea all_product_build build started:
>>> 10-01-08 23:39
>>> Control linux amd64 1.7.0_78-icedtea build_product_image build
>>> started: 10-01-08 23:39
>>> /usr/bin/make \
>>>               SKIP_FASTDEBUG_BUILD=true \
>>>               SKIP_DEBUG_BUILD=true \
>>>
>>> It appears to me that javadoc fails on the first build because it is using:
>>>
>>>   JAVADOC_CMD = $(BOOT_JAVA_CMD) \
>>>
>>> "-Xbootclasspath/p:$(JAVADOC_JAR)$(CLASSPATH_SEPARATOR)$(JAVAC_JAR)$(CLASSPATH_SEPARATOR)$(DOCLETS_JAR)"
>>> \
>>>                 -jar $(JAVADOC_JAR)
>>>
>>> where BOOT_JAVA_CMD is from OpenJDK6 and has a different version of
>>> those classes on its bootclasspath.
>>>
>>> Adding the path to the just-built classes onto the -Xbootclasspath/p
>>> may be the solution.  They would then be preferred over the bootstrap
>>> classes.
>>>
>>>
>>>
>>> I'm not sure I understand the point you are making.   BOOT_JAVA_CMD would
>>> likely not have any of those classes on its bootclasspath, and even if it
>>> did, they would be superceded by the use of -Xbootclasspath/p:. JAVADOC_JAR,
>>> JAVAC_JAR and DOCLETS_JAR should all point at newly generated jar files
>>> produced by the langtools part of the build.
>>>
>>> -- Jon
>>>
>>>
>>>
>>> BOOT_JAVA_CMD will have the runtime classes from the JDK on its
>>> bootclasspath (rt.jar) and that's where the conflict is occurring.
>>>
>>> Applying the simple change in:
>>>
>>> http://cr.openjdk.java.net/~andrew/build/webrev.03/
>>>
>>> diff -r 380b85eb2bcd make/docs/Makefile
>>> --- a/make/docs/Makefile      Fri Jan 15 17:36:16 2010 +0000
>>> +++ b/make/docs/Makefile      Fri Jan 15 21:47:30 2010 +0000
>>> @@ -52,7 +52,7 @@
>>>                  -keywords                            \
>>>               $(JAVADOC_VM_MEMORY_FLAGS)              \
>>>               $(ADDITIONAL_JAVADOCFLAGS)
>>> -ADDITIONAL_JAVADOCFLAGS =
>>> +ADDITIONAL_JAVADOCFLAGS = -bootclasspath $(OUTPUTDIR)/classes
>>>
>>>  CORE_JAVADOCFLAGS  = $(COMMON_JAVADOCFLAGS)          \
>>>               $(TAGS)                                 \
>>>
>>> fixes the problem and lets the build complete as the newly built 1.7
>>> classes take precedence over those from the bootstrap rt.jar.
>>>
>>>
>>> Aha, it looks like it's another case of the double bootclasspath problem,
>>> this time for javadoc, instead of javac where it typically crops up :-)
>>>
>>> The key point here is that you're setting the bootclasspath option for
>>> javadoc, not for the JVM running javadoc. It's a subtle but important
>>> difference. In other circumstances, it normally comes up as the difference
>>> between -Xbootclasspath and -J-Xbootclasspath.
>>>
>>>
>>>
>>> Ah, understood.  Is this fix ok to push?  If so, can I have a bug ID? :-)
>>>
>>>
>>>
>>> -- Jon
>>>
>>>
>>> I'm not one to be listed as a reviewer here, but I've created you the bug
>>> ID:
>>>
>>> 6917466 Should set bootclasspath for javadoc in jdk build
>>>
>>> -- Jon
>>>
>>>
>>>       
>> Ok, thanks.  Who is a suitable reviewer? Kelly?
>> --
>> Andrew :-)
>>
>> Free Java Software Engineer
>> Red Hat, Inc. (http://www.redhat.com)
>>
>> Support Free Java!
>> Contribute to GNU Classpath and the OpenJDK
>> http://www.gnu.org/software/classpath
>> http://openjdk.java.net
>>
>> PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
>> Fingerprint: F8EF F1EA 401E 2E60 15FA  7927 142C 2591 94EF D9D8
>>
>>     
>
> Can someone please review this officially so it can be pushed?
>   
Kelly is out of the office this week, but should be back on Monday.

-- Jon


More information about the jdk7-dev mailing list