Wed, 28 Nov 2012 13:40:17 +0100
8003844: build-infra: docs target isn't working properly
Summary: Fixed docs and docs-clean target. Added compare support for docs.
Reviewed-by: ohair, jjg, ohrstrom
1.1 --- a/common/bin/compare.sh Wed Nov 28 13:15:56 2012 +0100 1.2 +++ b/common/bin/compare.sh Wed Nov 28 13:40:17 2012 +0100 1.3 @@ -290,6 +290,7 @@ 1.4 for f in $GENERAL_FILES 1.5 do 1.6 if [ -e $OTHER_DIR/$f ]; then 1.7 + SUFFIX="${f##*.}" 1.8 if [ "$(basename $f)" = "release" ]; then 1.9 # Ignore differences in change numbers in release file. 1.10 OTHER_FILE=$WORK_DIR/$f.other 1.11 @@ -298,6 +299,22 @@ 1.12 $MKDIR -p $(dirname $THIS_FILE) 1.13 $CAT $OTHER_DIR/$f | $SED 's/\:[0-9a-f]\{12,12\}/:CHANGE/g' > $OTHER_FILE 1.14 $CAT $THIS_DIR/$f | $SED 's/\:[0-9a-f]\{12,12\}/:CHANGE/g' > $THIS_FILE 1.15 + elif [ "x$SUFFIX" = "xhtml" ]; then 1.16 + # Ignore time stamps in docs files 1.17 + OTHER_FILE=$WORK_DIR/$f.other 1.18 + THIS_FILE=$WORK_DIR/$f.this 1.19 + $MKDIR -p $(dirname $OTHER_FILE) 1.20 + $MKDIR -p $(dirname $THIS_FILE) 1.21 + $CAT $OTHER_DIR/$f | $SED -e 's/\(-- Generated by javadoc \).*\( --\)/\1(removed)\2/' \ 1.22 + -e 's/\(<meta name="date" content="\).*\(">\)/\1(removed)\2/' \ 1.23 + -e 's/\(Monday\|Tuesday\|Wednesday\|Thursday\|Friday\|Saturday\|Sunday\), [A-Z][a-z]* [0-9][0-9]*, [12][0-9]* [0-9][0-9:]* \(AM\|PM\) [A-Z][A-Z]*/(removed)/' \ 1.24 + -e 's/^\( from \).*\(\.idl\)$/\1(removed)\2/' \ 1.25 + > $OTHER_FILE 1.26 + $CAT $THIS_DIR/$f | $SED -e 's/\(-- Generated by javadoc \).*\( --\)/\1(removed)\2/' \ 1.27 + -e 's/\(<meta name="date" content="\).*\(">\)/\1(removed)\2/' \ 1.28 + -e 's/\(Monday\|Tuesday\|Wednesday\|Thursday\|Friday\|Saturday\|Sunday\), [A-Z][a-z]* [0-9][0-9]*, [12][0-9]* [0-9][0-9:]* \(AM\|PM\) [A-Z][A-Z]*/(removed)/' \ 1.29 + -e 's/^\( from \).*\(\.idl\)$/\1(removed)\2/' \ 1.30 + > $THIS_FILE 1.31 else 1.32 OTHER_FILE=$OTHER_DIR/$f 1.33 THIS_FILE=$THIS_DIR/$f 1.34 @@ -1111,6 +1128,22 @@ 1.35 echo "Skipping bundle compare!" 1.36 fi 1.37 1.38 +if [ -d "$THIS/docs" ]; then 1.39 + THIS_DOCS="$THIS/docs" 1.40 +fi 1.41 + 1.42 +if [ -d "$OTHER/docs" ]; then 1.43 + OTHER_DOCS="$OTHER/docs" 1.44 +fi 1.45 + 1.46 +if [ -z "$THIS_DOCS" ]; then 1.47 + echo "WARNING! Docs haven't been built and won't be compared." 1.48 +fi 1.49 + 1.50 +if [ -z "$OTHER_DOCS" ]; then 1.51 + echo "WARNING! Other build doesn't contain docs, skipping doc compare." 1.52 +fi 1.53 + 1.54 ########################################################################################## 1.55 # Do the work 1.56 1.57 @@ -1148,6 +1181,12 @@ 1.58 echo -n "J2RE Bundle " 1.59 compare_files $THIS_J2RE_BUNDLE $OTHER_J2RE_BUNDLE $COMPARE_ROOT/j2re-bundle 1.60 fi 1.61 + if [ -n "$THIS_DOCS" ] && [ -n "$OTHER_DOCS" ]; then 1.62 + echo -n "Docs " 1.63 + compare_dirs $THIS_DOCS $OTHER_DOCS $COMPARE_ROOT/docs 1.64 + echo -n "Docs " 1.65 + compare_files $THIS_DOCS $OTHER_DOCS $COMPARE_ROOT/docs 1.66 + fi 1.67 fi 1.68 1.69 if [ "$CMP_PERMS" = "true" ]; then 1.70 @@ -1211,6 +1250,10 @@ 1.71 echo -n "J2RE Bundle " 1.72 compare_general_files $THIS_J2RE_BUNDLE $OTHER_J2RE_BUNDLE $COMPARE_ROOT/j2re-bundle 1.73 fi 1.74 + if [ -n "$THIS_DOCS" ] && [ -n "$OTHER_DOCS" ]; then 1.75 + echo -n "Docs " 1.76 + compare_general_files $THIS_DOCS $OTHER_DOCS $COMPARE_ROOT/docs 1.77 + fi 1.78 fi 1.79 1.80 if [ "$CMP_ZIPS" = "true" ]; then
2.1 --- a/common/makefiles/Main.gmk Wed Nov 28 13:15:56 2012 +0100 2.2 +++ b/common/makefiles/Main.gmk Wed Nov 28 13:40:17 2012 +0100 2.3 @@ -165,7 +165,7 @@ 2.4 2.5 2.6 # Remove everything, except the output from configure. 2.7 -clean: clean-langtools clean-corba clean-jaxp clean-jaxws clean-hotspot clean-jdk clean-images clean-overlay-images clean-bootcycle-build 2.8 +clean: clean-langtools clean-corba clean-jaxp clean-jaxws clean-hotspot clean-jdk clean-images clean-overlay-images clean-bootcycle-build clean-docs 2.9 @($(CD) $(OUTPUT_ROOT) && $(RM) -r tmp source_tips build.log* build-trace*.log*) 2.10 @$(ECHO) Cleaned all build artifacts. 2.11 2.12 @@ -201,6 +201,9 @@ 2.13 $(call CleanComponent,overlay-images) 2.14 clean-bootcycle-build: 2.15 $(call CleanComponent,bootcycle-build) 2.16 +clean-docs: 2.17 + $(call CleanComponent,docs) 2.18 + $(call CleanComponent,docstemp) 2.19 2.20 .PHONY: langtools corba jaxp jaxws hotspot jdk images overlay-images install 2.21 .PHONY: langtools-only corba-only jaxp-only jaxws-only hotspot-only jdk-only images-only overlay-images-only install-only
3.1 --- a/common/makefiles/javadoc/Javadoc.gmk Wed Nov 28 13:15:56 2012 +0100 3.2 +++ b/common/makefiles/javadoc/Javadoc.gmk Wed Nov 28 13:40:17 2012 +0100 3.3 @@ -50,17 +50,12 @@ 3.4 3.5 BOOT_JAVA_CMD=$(JAVA) 3.6 3.7 -# Langtools 3.8 -JAVAC_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/javac.jar 3.9 JAVADOC_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/javadoc.jar 3.10 -DOCLETS_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/doclets.jar 3.11 JAVADOC_CMD = $(BOOT_JAVA_CMD) \ 3.12 -Xmx1024m \ 3.13 -Djava.awt.headless=true \ 3.14 - "-Xbootclasspath/p:$(JAVADOC_JAR)$(CLASSPATH_SEPARATOR)$(JAVAC_JAR)$(CLASSPATH_SEPARATOR)$(DOCLETS_JAR)" \ 3.15 - -jar $(JAVADOC_JAR) 3.16 - 3.17 -JAVADOC_CMD = javadoc 3.18 + "-Xbootclasspath/p:$(JAVADOC_JAR)" \ 3.19 + -jar $(JAVADOC_JAR) -bootclasspath $(JDK_OUTPUTDIR)/classes 3.20 3.21 # Copyright year for beginning of Java and some of the apis 3.22 # (Needed when creating the javadocs) 3.23 @@ -113,7 +108,8 @@ 3.24 3.25 # Url to copyright html file 3.26 COPYRIGHT_URL-7 = $(DOCSDIR_URL)/legal/cpyr.html 3.27 -COPYRIGHT_URL-8 = $(DOCSDIR_URL)/legal/cpyr.html 3.28 +# This isn't added in old build yet. 3.29 +#COPYRIGHT_URL-8 = $(DOCSDIR_URL)/legal/cpyr.html 3.30 COPYRIGHT_URL = $(COPYRIGHT_URL-$(JDK_MINOR_VERSION)) 3.31 3.32 # Url to bug filing site 3.33 @@ -125,7 +121,8 @@ 3.34 # Url to devdocs page 3.35 # Was: http://java.sun.com/javase/6/webnotes/devdocs-vs-specs.html 3.36 DEV_DOCS_URL-7 = http://download.oracle.com/javase/7/docs/index.html 3.37 -DEV_DOCS_URL-8 = http://download.oracle.com/javase/7/docs/index.html 3.38 +# This isn't added in old build yet. 3.39 +#DEV_DOCS_URL-8 = http://download.oracle.com/javase/7/docs/index.html 3.40 DEV_DOCS_URL = $(DEV_DOCS_URL-$(JDK_MINOR_VERSION)) 3.41 DOCS_BASE_URL = http://download.oracle.com/javase/7/docs 3.42 3.43 @@ -142,9 +139,10 @@ 3.44 # Otherwise, you get "No packages or classes specified." due 3.45 # to $(CLASSPATH_SEPARATOR) being interpreted as an end of 3.46 # command (newline or shell ; character) 3.47 -ALL_SOURCE_DIRS = $(JDK_IMPSRC) \ 3.48 +ALL_SOURCE_DIRS = $(JDK_SHARE_CLASSES) \ 3.49 + $(JDK_IMPSRC) \ 3.50 $(JDK_GENSRC) \ 3.51 - $(JDK_SHARE_CLASSES) \ 3.52 + $(JDK_OUTPUTDIR)/gendocsrc_rmic \ 3.53 $(JDK_TOPDIR)/src/solaris/classes \ 3.54 $(JDK_TOPDIR)/src/windows/classes \ 3.55 $(JDK_SHARE_SRC)/doc/stub 3.56 @@ -440,7 +438,7 @@ 3.57 $(DOCLETAPI_INDEX_FILE): GET2DOCSDIR=$(DOCLETAPI2COREAPI)/.. 3.58 3.59 # Run javadoc if the index file is out of date or missing 3.60 -$(DOCLETAPI_INDEX_FILE): $(DOCLETAPI_OPTIONS_FILE) $(DOCLETAPI_PACKAGES_FILE) 3.61 +$(DOCLETAPI_INDEX_FILE): $(DOCLETAPI_OPTIONS_FILE) $(DOCLETAPI_PACKAGES_FILE) coredocs 3.62 $(prep-javadoc) 3.63 $(call JavadocSummary,$(DOCLETAPI_OPTIONS_FILE),$(DOCLETAPI_PACKAGES_FILE)) 3.64 $(JAVADOC_CMD) -d $(@D) \ 3.65 @@ -481,7 +479,7 @@ 3.66 TAGLETAPI_TEMPDIR = $(DOCSTMPDIR)/taglets_temp 3.67 3.68 # The index.html, options, and packages files 3.69 -TAGLETAPI_INDEX_FILE = $(TAGLETAPI_DOCDIR)/com/sun/tools/doclets/Taglet.html 3.70 +TAGLETAPI_INDEX_FILE = $(TAGLETAPI_DOCDIR)/index.html 3.71 TAGLETAPI_OPTIONS_FILE = $(DOCSTMPDIR)/tagletapi.options 3.72 TAGLETAPI_PACKAGES_FILE = $(DOCSTMPDIR)/tagletapi.packages 3.73 3.74 @@ -491,7 +489,7 @@ 3.75 $(TAGLETAPI_INDEX_FILE): GET2DOCSDIR=$(TAGLETAPI2COREAPI)/.. 3.76 3.77 # Run javadoc if the index file is out of date or missing 3.78 -$(TAGLETAPI_INDEX_FILE): $(TAGLETAPI_OPTIONS_FILE) $(TAGLETAPI_PACKAGES_FILE) 3.79 +$(TAGLETAPI_INDEX_FILE): $(TAGLETAPI_OPTIONS_FILE) $(TAGLETAPI_PACKAGES_FILE) coredocs 3.80 $(prep-javadoc) 3.81 $(RM) -r $(TAGLETAPI_TEMPDIR) 3.82 $(MKDIR) -p $(TAGLETAPI_TEMPDIR) 3.83 @@ -517,9 +515,7 @@ 3.84 # Create a file with the package names in it 3.85 $(TAGLETAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(TAGLETAPI_PKGS)) 3.86 $(prep-target) 3.87 - $(call PackageFilter,$(TAGLETAPI_PKGS)) 3.88 - $(GREP) "$(TAGLETAPI_FILE)" $@ > $@.tmp 3.89 - $(MV) $@.tmp $@ 3.90 + @($(ECHO) "$(JDK_IMPSRC)/$(TAGLETAPI_FILE)" ) > $@ 3.91 3.92 ############################################################# 3.93 # 3.94 @@ -549,7 +545,7 @@ 3.95 $(DOMAPI_INDEX_FILE): GET2DOCSDIR=$(DOMAPI2COREAPI)/.. 3.96 3.97 # Run javadoc if the index file is out of date or missing 3.98 -$(DOMAPI_INDEX_FILE): $(DOMAPI_OPTIONS_FILE) $(DOMAPI_PACKAGES_FILE) 3.99 +$(DOMAPI_INDEX_FILE): $(DOMAPI_OPTIONS_FILE) $(DOMAPI_PACKAGES_FILE) coredocs 3.100 $(prep-javadoc) 3.101 $(call JavadocSummary,$(DOMAPI_OPTIONS_FILE),$(DOMAPI_PACKAGES_FILE)) 3.102 $(JAVADOC_CMD) -d $(@D) \ 3.103 @@ -611,7 +607,7 @@ 3.104 $(JDI_INDEX_FILE): GET2DOCSDIR=$(JDI2COREAPI)/.. 3.105 3.106 # Run javadoc if the index file is out of date or missing 3.107 -$(JDI_INDEX_FILE): $(JDI_OPTIONS_FILE) $(JDI_PACKAGES_FILE) 3.108 +$(JDI_INDEX_FILE): $(JDI_OPTIONS_FILE) $(JDI_PACKAGES_FILE) coredocs 3.109 $(prep-javadoc) 3.110 $(call JavadocSummary,$(JDI_OPTIONS_FILE),$(JDI_PACKAGES_FILE)) 3.111 $(JAVADOC_CMD) -d $(@D) \ 3.112 @@ -698,7 +694,7 @@ 3.113 $(JAAS_INDEX_FILE): GET2DOCSDIR=$(JAAS2COREAPI)/.. 3.114 3.115 # Run javadoc if the index file is out of date or missing 3.116 -$(JAAS_INDEX_FILE): $(JAAS_OPTIONS_FILE) $(JAAS_PACKAGES_FILE) 3.117 +$(JAAS_INDEX_FILE): $(JAAS_OPTIONS_FILE) $(JAAS_PACKAGES_FILE) coredocs 3.118 $(prep-javadoc) 3.119 $(call JavadocSummary,$(JAAS_OPTIONS_FILE),$(JAAS_PACKAGES_FILE)) 3.120 $(JAVADOC_CMD) -d $(@D) \ 3.121 @@ -750,7 +746,7 @@ 3.122 $(JGSS_INDEX_FILE): GET2DOCSDIR=$(JGSS2COREAPI)/.. 3.123 3.124 # Run javadoc if the index file is out of date or missing 3.125 -$(JGSS_INDEX_FILE): $(JGSS_OPTIONS_FILE) $(JGSS_PACKAGES_FILE) 3.126 +$(JGSS_INDEX_FILE): $(JGSS_OPTIONS_FILE) $(JGSS_PACKAGES_FILE) coredocs 3.127 $(prep-javadoc) 3.128 $(call JavadocSummary,$(JGSS_OPTIONS_FILE),$(JGSS_PACKAGES_FILE)) 3.129 $(JAVADOC_CMD) -d $(@D) \ 3.130 @@ -802,7 +798,7 @@ 3.131 $(SMARTCARDIO_INDEX_FILE): GET2DOCSDIR=$(SMARTCARDIO2COREAPI)/.. 3.132 3.133 # Run javadoc if the index file is out of date or missing 3.134 -$(SMARTCARDIO_INDEX_FILE): $(SMARTCARDIO_OPTIONS_FILE) $(SMARTCARDIO_PACKAGES_FILE) 3.135 +$(SMARTCARDIO_INDEX_FILE): $(SMARTCARDIO_OPTIONS_FILE) $(SMARTCARDIO_PACKAGES_FILE) coredocs 3.136 $(prep-javadoc) 3.137 $(call JavadocSummary,$(SMARTCARDIO_OPTIONS_FILE),$(SMARTCARDIO_PACKAGES_FILE)) 3.138 $(JAVADOC_CMD) -d $(@D) \ 3.139 @@ -852,7 +848,7 @@ 3.140 $(HTTPSERVER_INDEX_HTML): GET2DOCSDIR=$(HTTPSERVER2COREAPI)/.. 3.141 3.142 # Run javadoc if the index file is out of date or missing 3.143 -$(HTTPSERVER_INDEX_HTML): $(HTTPSERVER_OPTIONS_FILE) $(HTTPSERVER_PACKAGES_FILE) 3.144 +$(HTTPSERVER_INDEX_HTML): $(HTTPSERVER_OPTIONS_FILE) $(HTTPSERVER_PACKAGES_FILE) coredocs 3.145 $(prep-javadoc) 3.146 $(call JavadocSummary,$(HTTPSERVER_OPTIONS_FILE),$(HTTPSERVER_PACKAGES_FILE)) 3.147 $(JAVADOC_CMD) -d $(@D) \ 3.148 @@ -887,7 +883,7 @@ 3.149 MGMT_DOCDIR := $(JRE_API_DOCSDIR)/management/extension 3.150 MGMT2COREAPI := ../../$(JDKJRE2COREAPI) 3.151 JVM_MIB_NAME := JVM-MANAGEMENT-MIB.mib 3.152 -JVM_MIB_SRC := $(CLOSED_SRC)/share/classes/sun/management/snmp/$(JVM_MIB_NAME) 3.153 +JVM_MIB_SRC := $(JDK_TOPDIR)/src/closed/share/classes/sun/management/snmp/$(JVM_MIB_NAME) 3.154 MGMT_DOCTITLE := Monitoring and Management Interface for the Java$(TRADEMARK) Platform 3.155 MGMT_WINDOWTITLE := Monitoring and Management Interface for the Java Platform 3.156 MGMT_HEADER := <strong>Monitoring and Management Interface for the Java Platform</strong> 3.157 @@ -906,7 +902,7 @@ 3.158 $(MGMT_INDEX_FILE): GET2DOCSDIR=$(MGMT2COREAPI)/.. 3.159 3.160 # Run javadoc if the index file is out of date or missing 3.161 -$(MGMT_INDEX_FILE): $(MGMT_OPTIONS_FILE) $(MGMT_PACKAGES_FILE) 3.162 +$(MGMT_INDEX_FILE): $(MGMT_OPTIONS_FILE) $(MGMT_PACKAGES_FILE) coredocs 3.163 $(prep-javadoc) 3.164 @if [ -f $(JVM_MIB_SRC) ] ; then \ 3.165 $(ECHO) "$(CP) $(JVM_MIB_SRC) $(@D)/.."; \ 3.166 @@ -963,7 +959,7 @@ 3.167 $(ATTACH_INDEX_HTML): GET2DOCSDIR=$(ATTACH2COREAPI)/.. 3.168 3.169 # Run javadoc if the index file is out of date or missing 3.170 -$(ATTACH_INDEX_HTML): $(ATTACH_OPTIONS_FILE) $(ATTACH_PACKAGES_FILE) 3.171 +$(ATTACH_INDEX_HTML): $(ATTACH_OPTIONS_FILE) $(ATTACH_PACKAGES_FILE) coredocs 3.172 $(prep-javadoc) 3.173 $(call JavadocSummary,$(ATTACH_OPTIONS_FILE),$(ATTACH_PACKAGES_FILE)) 3.174 $(JAVADOC_CMD) -d $(@D) \ 3.175 @@ -1013,7 +1009,7 @@ 3.176 $(JCONSOLE_INDEX_HTML): GET2DOCSDIR=$(JCONSOLE2COREAPI)/.. 3.177 3.178 # Run javadoc if the index file is out of date or missing 3.179 -$(JCONSOLE_INDEX_HTML): $(JCONSOLE_OPTIONS_FILE) $(JCONSOLE_PACKAGES_FILE) 3.180 +$(JCONSOLE_INDEX_HTML): $(JCONSOLE_OPTIONS_FILE) $(JCONSOLE_PACKAGES_FILE) coredocs 3.181 $(prep-javadoc) 3.182 $(call JavadocSummary,$(JCONSOLE_OPTIONS_FILE),$(JCONSOLE_PACKAGES_FILE)) 3.183 $(JAVADOC_CMD) -d $(@D) \ 3.184 @@ -1065,7 +1061,7 @@ 3.185 $(TREEAPI_INDEX_HTML): GET2DOCSDIR=$(TREEAPI2COREAPI)/.. 3.186 3.187 # Run javadoc if the index file is out of date or missing 3.188 -$(TREEAPI_INDEX_HTML): $(TREEAPI_OPTIONS_FILE) $(TREEAPI_PACKAGES_FILE) 3.189 +$(TREEAPI_INDEX_HTML): $(TREEAPI_OPTIONS_FILE) $(TREEAPI_PACKAGES_FILE) coredocs 3.190 $(prep-javadoc) 3.191 $(call JavadocSummary,$(TREEAPI_OPTIONS_FILE),$(TREEAPI_PACKAGES_FILE)) 3.192 $(JAVADOC_CMD) -d $(@D) \ 3.193 @@ -1116,7 +1112,7 @@ 3.194 $(SCTPAPI_INDEX_HTML): GET2DOCSDIR=$(SCTPAPI2COREAPI)/.. 3.195 3.196 # Run javadoc if the index file is out of date or missing 3.197 -$(SCTPAPI_INDEX_HTML): $(SCTPAPI_OPTIONS_FILE) $(SCTPAPI_PACKAGES_FILE) 3.198 +$(SCTPAPI_INDEX_HTML): $(SCTPAPI_OPTIONS_FILE) $(SCTPAPI_PACKAGES_FILE) coredocs 3.199 $(prep-javadoc) 3.200 $(call JavadocSummary,$(SCTPAPI_OPTIONS_FILE),$(SCTPAPI_PACKAGES_FILE)) 3.201 $(JAVADOC_CMD) -d $(@D) \