Does nobody build documentation?
Jonathan Gibbons
Jonathan.Gibbons at Sun.COM
Thu Jan 28 23:00:22 UTC 2010
Kelly O'Hair wrote:
>
> On 1/22/10 8:36 AM, Jonathan Gibbons wrote:
>> 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
>
> Jon,
>
> This seems like the right thing to do, having javadoc ONLY see the
> classes that were built.
> If you agree, then I'm ok with it.
> Although, I can't really be sure it will work.
>
I agree with the basis of this fix (meaning the idea is correct and I
like your suggestions below.)
-- Jon
> ---
>
> Andrew,
>
> Maybe this change belongs in the jdk/make/common/Defs-java.gmk file?
> Add the "-bootclasspath" to JAVADOC_CMD?
>
> Maybe add:
> JAVADOCFLAGS += -bootclasspath $(CLASSBINDIR)
>
> Then add $(JAVADOCFLAGS) to the definitions of $(JAVADOC_CMD)?
>
> -kto
More information about the build-dev
mailing list