common/makefiles/javadoc/Javadoc.gmk

changeset 478
2ba6f4da4bf3
child 518
6ff2e1280dc3
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/common/makefiles/javadoc/Javadoc.gmk	Tue Sep 18 11:29:16 2012 -0700
     1.3 @@ -0,0 +1,1184 @@
     1.4 +# Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
     1.5 +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.6 +#
     1.7 +# This code is free software; you can redistribute it and/or modify it
     1.8 +# under the terms of the GNU General Public License version 2 only, as
     1.9 +# published by the Free Software Foundation.  Oracle designates this
    1.10 +# particular file as subject to the "Classpath" exception as provided
    1.11 +# by Oracle in the LICENSE file that accompanied this code.
    1.12 +#
    1.13 +# This code is distributed in the hope that it will be useful, but WITHOUT
    1.14 +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    1.15 +# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    1.16 +# version 2 for more details (a copy is included in the LICENSE file that
    1.17 +# accompanied this code).
    1.18 +#
    1.19 +# You should have received a copy of the GNU General Public License version
    1.20 +# 2 along with this work; if not, write to the Free Software Foundation,
    1.21 +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    1.22 +#
    1.23 +# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    1.24 +# or visit www.oracle.com if you need additional information or have any
    1.25 +# questions.
    1.26 +#
    1.27 +
    1.28 +include $(SPEC)
    1.29 +include MakeBase.gmk
    1.30 +
    1.31 +.SUFFIXES: # Delete the default suffixes
    1.32 +.SUFFIXES: .java
    1.33 +
    1.34 +#
    1.35 +# Definitions for $(DOCSDIR), $(MKDIR), $(BINDIR), etc.
    1.36 +#
    1.37 +
    1.38 +CLASSPATH_SEPARATOR = :
    1.39 +
    1.40 +DOCSDIR=$(OUTPUT_ROOT)/docs
    1.41 +TEMPDIR=$(OUTPUT_ROOT)/docstemp
    1.42 +
    1.43 +JDK_SHARE_SRC=$(JDK_TOPDIR)/src/share
    1.44 +JDK_SHARE_CLASSES=$(JDK_SHARE_SRC)/classes
    1.45 +
    1.46 +JDK_IMPSRC = $(JDK_OUTPUTDIR)/impsrc
    1.47 +
    1.48 +JDK_GENSRC = $(JDK_OUTPUTDIR)/gensrc
    1.49 +
    1.50 +HOTSPOT_DOCS_IMPORT_PATH=$(HOTSPOT_OUTPUTDIR)/docs
    1.51 +
    1.52 +BUILD_NUMBER=$(JDK_BUILD_NUMBER)
    1.53 +
    1.54 +BOOT_JAVA_CMD=$(JAVA)
    1.55 +
    1.56 +# Langtools
    1.57 +JAVAC_JAR   = $(LANGTOOLS_DIST)/bootstrap/lib/javac.jar
    1.58 +JAVADOC_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/javadoc.jar
    1.59 +DOCLETS_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/doclets.jar
    1.60 +JAVADOC_CMD = $(BOOT_JAVA_CMD) \
    1.61 +              -Xmx1024m \
    1.62 +	      -Djava.awt.headless=true \
    1.63 +              "-Xbootclasspath/p:$(JAVADOC_JAR)$(CLASSPATH_SEPARATOR)$(JAVAC_JAR)$(CLASSPATH_SEPARATOR)$(DOCLETS_JAR)" \
    1.64 +              -jar $(JAVADOC_JAR)
    1.65 +
    1.66 +JAVADOC_CMD = javadoc 
    1.67 +
    1.68 +# Copyright year for beginning of Java and some of the apis
    1.69 +#   (Needed when creating the javadocs)
    1.70 +FIRST_COPYRIGHT_YEAR                = 1993
    1.71 +DOMAPI_FIRST_COPYRIGHT_YEAR         = 2005
    1.72 +MIRROR_FIRST_COPYRIGHT_YEAR         = 2004
    1.73 +DOCLETAPI_FIRST_COPYRIGHT_YEAR      = 1993
    1.74 +TAGLETAPI_FIRST_COPYRIGHT_YEAR      = 1993
    1.75 +JDI_FIRST_COPYRIGHT_YEAR            = 1999
    1.76 +JAAS_FIRST_COPYRIGHT_YEAR           = 1998
    1.77 +JGSS_FIRST_COPYRIGHT_YEAR           = 2000
    1.78 +SMARTCARDIO_FIRST_COPYRIGHT_YEAR    = 2005
    1.79 +HTTPSERVER_FIRST_COPYRIGHT_YEAR     = 2005
    1.80 +MGMT_FIRST_COPYRIGHT_YEAR           = 2003
    1.81 +ATTACH_FIRST_COPYRIGHT_YEAR         = 2005
    1.82 +JCONSOLE_FIRST_COPYRIGHT_YEAR       = 2006
    1.83 +SCTPAPI_FIRST_COPYRIGHT_YEAR        = 2009
    1.84 +TRACING_FIRST_COPYRIGHT_YEAR        = 2008
    1.85 +TREEAPI_FIRST_COPYRIGHT_YEAR        = 2005
    1.86 +JNLP_FIRST_COPYRIGHT_YEAR           = 1998
    1.87 +PLUGIN2_FIRST_COPYRIGHT_YEAR        = 2007
    1.88 +
    1.89 +# Oracle name
    1.90 +FULL_COMPANY_NAME = Oracle and/or its affiliates
    1.91 +
    1.92 +# Copyright address
    1.93 +COMPANY_ADDRESS = 500 Oracle Parkway<br>Redwood Shores, CA 94065 USA.
    1.94 +
    1.95 +# The trademark symbol
    1.96 +TRADEMARK = &trade;
    1.97 +
    1.98 +# Common copyright lines used
    1.99 +#   The word "Copyright" might optionally be a link to the file cpyr.html.
   1.100 +#   The first year of copyright may vary or not be available.
   1.101 +#   The address to the company might be optional.
   1.102 +COMMA:= ,
   1.103 +EMPTY:=
   1.104 +SPACE:=$(EMPTY) $(EMPTY)
   1.105 +COPYRIGHT_SYMBOL = &\#x00a9;
   1.106 +# Macro to construct the copyright line
   1.107 +#   (The GNU make 3.78.1 "if" conditional is broken, fixed in GNU make 3.81)
   1.108 +define CopyrightLine # optionalurl optionalfirstyear optionaladdress
   1.109 +$(if $(strip $1),<a href="$(strip $1)">Copyright</a>,Copyright) \
   1.110 +$(COPYRIGHT_SYMBOL) $(if $2,$2${COMMA},) $(COPYRIGHT_YEAR),\
   1.111 +$(FULL_COMPANY_NAME). $3 All rights reserved.
   1.112 +endef
   1.113 +
   1.114 +# Url to root of documents
   1.115 +DOCSDIR_URL = {@docroot}/$(GET2DOCSDIR)
   1.116 +
   1.117 +# Url to copyright html file
   1.118 +COPYRIGHT_URL-7 = $(DOCSDIR_URL)/legal/cpyr.html
   1.119 +COPYRIGHT_URL-8 = $(DOCSDIR_URL)/legal/cpyr.html
   1.120 +COPYRIGHT_URL = $(COPYRIGHT_URL-$(JDK_MINOR_VERSION))
   1.121 +
   1.122 +# Url to bug filing site
   1.123 +BUG_SUBMIT_URL = http://bugreport.sun.com/bugreport/
   1.124 +
   1.125 +# Common line for how to submit a bug or rfe
   1.126 +BUG_SUBMIT_LINE = <a href="$(BUG_SUBMIT_URL)">Submit a bug or feature</a>
   1.127 +
   1.128 +# Url to devdocs page
   1.129 +#   Was: http://java.sun.com/javase/6/webnotes/devdocs-vs-specs.html
   1.130 +DEV_DOCS_URL-7 = http://download.oracle.com/javase/7/docs/index.html
   1.131 +DEV_DOCS_URL-8 = http://download.oracle.com/javase/7/docs/index.html
   1.132 +DEV_DOCS_URL = $(DEV_DOCS_URL-$(JDK_MINOR_VERSION))
   1.133 +DOCS_BASE_URL = http://download.oracle.com/javase/7/docs
   1.134 +
   1.135 +# Common Java trademark line
   1.136 +JAVA_TRADEMARK_LINE = Java is a trademark or registered trademark of \
   1.137 +$(FULL_COMPANY_NAME) in the US and other countries.
   1.138 +
   1.139 +#################################################################
   1.140 +# Macros:
   1.141 +
   1.142 +
   1.143 +# List of all possible directories for javadoc to look for sources
   1.144 +#    NOTE: Quotes are required around sourcepath argument only on Windows.
   1.145 +#          Otherwise, you get "No packages or classes specified." due 
   1.146 +#          to $(CLASSPATH_SEPARATOR) being interpreted as an end of 
   1.147 +#          command (newline or shell ; character)
   1.148 +ALL_SOURCE_DIRS = $(JDK_IMPSRC) \
   1.149 +                  $(JDK_GENSRC) \
   1.150 +                  $(JDK_SHARE_CLASSES) \
   1.151 +                  $(JDK_TOPDIR)/src/solaris/classes \
   1.152 +                  $(JDK_TOPDIR)/src/windows/classes \
   1.153 +		  $(JDK_SHARE_SRC)/doc/stub
   1.154 +
   1.155 +# List of directories that actually exist
   1.156 +ALL_EXISTING_SOURCE_DIRS := $(wildcard $(ALL_SOURCE_DIRS))
   1.157 +
   1.158 +# List with classpath separator between them
   1.159 +EMPTY:=
   1.160 +SPACE:= $(EMPTY) $(EMPTY)
   1.161 +RELEASEDOCS_SOURCEPATH = \
   1.162 +    $(subst $(SPACE),$(CLASSPATH_SEPARATOR),$(strip $(ALL_SOURCE_DIRS)))
   1.163 +
   1.164 +define prep-target
   1.165 +$(MKDIR) -p $(@D)
   1.166 +$(RM) $@
   1.167 +endef
   1.168 +
   1.169 +# Prep for javadoc creation, assumes $@ is an index.html file
   1.170 +define prep-javadoc
   1.171 +@if [ -f "$@" -a "$?" != "" ] ; then \
   1.172 +  $(ECHO) "# Dependencies have changed: $?"; \
   1.173 +fi
   1.174 +$(RM) -r $(@D)
   1.175 +$(MKDIR) -p $(@D)
   1.176 +endef
   1.177 +
   1.178 +# A cache of the directories in ALL_SOURCE_DIRS
   1.179 +DIRECTORY_CACHE = $(DOCSTMPDIR)/directory.cache
   1.180 +
   1.181 +# Given a list of packages, return a list of files or dirs to be dependent on
   1.182 +#   (Currently only returning a list of directories)
   1.183 +define PackageDependencies # packages
   1.184 +$(shell							\
   1.185 +  if [ "$1" != "" -a -f $(DIRECTORY_CACHE) ] ; then	\
   1.186 +    for p in $1 ; do 					\
   1.187 +      pd=`$(ECHO) $${p} | $(SED) -e 's@[.]@/@g'`;	\
   1.188 +      $(CAT) $(DIRECTORY_CACHE) | $(GREP) "/$${pd}/" ; 	\
   1.189 +    done; 						\
   1.190 +  fi							\
   1.191 +)
   1.192 +endef
   1.193 +
   1.194 +# Given a list of packages, add packages that exist to $@, print summary
   1.195 +define PackageFilter # packages
   1.196 +@if [ "$1" != "" ] ; then 				\
   1.197 +  for p in $1 ; do 					\
   1.198 +    pd=`$(ECHO) $${p} | $(SED) -e 's@[.]@/@g'`; 	\
   1.199 +    found="false"; 					\
   1.200 +    for cp in $(ALL_SOURCE_DIRS) ; do 			\
   1.201 +      if [ -d $${cp}/$${pd} ] ; then 			\
   1.202 +        $(ECHO) "$${p}" >> $@; 				\
   1.203 +	found="true";					\
   1.204 +	break; 						\
   1.205 +      fi; 						\
   1.206 +    done; 						\
   1.207 +    if [ "$${found}" = "false" ] ; then 		\
   1.208 +      $(ECHO) "WARNING: Package not found: $${p}"; 	\
   1.209 +    fi; 						\
   1.210 +  done; 						\
   1.211 +fi
   1.212 +endef
   1.213 +
   1.214 +# Print out a summary of the javadoc command about to be run
   1.215 +define JavadocSummary # optionsfile packagesfile
   1.216 +@$(ECHO) "# Summary for $@";\
   1.217 + $(ECHO) "# Options (`$(BASENAME) $1`):"; $(SED) -e 's@^@#   @' $1; \
   1.218 + $(ECHO) "# Packages (`$(BASENAME) $2`):";$(SED) -e 's@^@#   @' $2
   1.219 +endef
   1.220 +
   1.221 +#
   1.222 +# Temporary directory for javadoc creation
   1.223 +#
   1.224 +DOCSTMPDIR = $(TEMPDIR)/doctmp
   1.225 +
   1.226 +#
   1.227 +# Different api directories created from root directory
   1.228 +#
   1.229 +COREAPI_DOCSDIR   = $(DOCSDIR)/api
   1.230 +JDK_API_DOCSDIR   = $(DOCSDIR)/jdk/api
   1.231 +JRE_API_DOCSDIR   = $(DOCSDIR)/jre/api
   1.232 +PLATFORM_DOCSDIR  = $(DOCSDIR)/platform
   1.233 +
   1.234 +# The non-core api javadocs need to be able to access the root of the core
   1.235 +#   api directory, so for jdk/api or jre/api to get to the core api/
   1.236 +#   directory we would use this:
   1.237 +JDKJRE2COREAPI    = ../../api
   1.238 +
   1.239 +# Common bottom argument
   1.240 +define CommonBottom # year
   1.241 +<font size="-1"><br> $(call CopyrightLine,,$1,)</font>
   1.242 +endef
   1.243 +
   1.244 +# Common trademark bottom argument (Not sure why this is used sometimes)
   1.245 +define CommonTrademarkBottom # year
   1.246 +<font size="-1">\
   1.247 +$(BUG_SUBMIT_LINE)<br>$(JAVA_TRADEMARK_LINE)<br>\
   1.248 +$(call CopyrightLine,,$1,$(COMPANY_ADDRESS))\
   1.249 +</font>
   1.250 +endef
   1.251 +
   1.252 +# Common echo of option
   1.253 +define OptionOnly # opt
   1.254 +$(PRINTF) "%s\n" "$1"
   1.255 +endef
   1.256 +define OptionPair # opt arg
   1.257 +$(PRINTF) "%s '%s'\n" "$1" '$2'
   1.258 +endef
   1.259 +define OptionTrip # opt arg arg
   1.260 +$(PRINTF) "%s '%s' '%s'\n" "$1" '$2' '$3'
   1.261 +endef
   1.262 +
   1.263 +# Core api bottom argument (with special sauce)
   1.264 +COREAPI_BOTTOM = <font size="-1"> $(BUG_SUBMIT_LINE)\
   1.265 +<br>For further API reference and developer documentation, \
   1.266 +see <a href="$(DEV_DOCS_URL)" target="_blank">Java SE Documentation</a>. \
   1.267 +That documentation contains more detailed, developer-targeted descriptions, \
   1.268 +with conceptual overviews, definitions of terms, workarounds, \
   1.269 +and working code examples.<br>\
   1.270 +$(call CopyrightLine,$(COPYRIGHT_URL),$(FIRST_COPYRIGHT_YEAR),)\
   1.271 +</font>
   1.272 +
   1.273 +# Common javadoc options used by all
   1.274 +COMMON_JAVADOCFLAGS =					\
   1.275 +                -XDignore.symbol.file=true              \
   1.276 +		-quiet					\
   1.277 +                -use					\
   1.278 +                -keywords				\
   1.279 +		$(ADDITIONAL_JAVADOCFLAGS)
   1.280 +
   1.281 +ifdef OPENJDK
   1.282 +  ADDITIONAL_JAVADOCFLAGS =				\
   1.283 +                -Xdocrootparent $(DOCS_BASE_URL)
   1.284 +else
   1.285 +  ADDITIONAL_JAVADOCFLAGS =
   1.286 +endif
   1.287 +
   1.288 +# Draft used for non-fcs documents
   1.289 +DRAFT_HEADER =
   1.290 +ifneq ($(MILESTONE), fcs)
   1.291 +    DRAFT_HEADER = <br><strong>DRAFT&nbsp;$(MILESTONE)-$(BUILD_NUMBER)</strong>
   1.292 +    DRAFT_BOTTOM = <br><strong>DRAFT&nbsp;$(MILESTONE)-$(BUILD_NUMBER)</strong>
   1.293 +    DRAFT_WINTITLE = $(BUILD_NUMBER)
   1.294 +    # Early access top text (not used in FCS releases)
   1.295 +    COREAPI_TOP_EARLYACCESS = \
   1.296 +<div style="background-color: \#EEEEEE"> \
   1.297 +<div style="padding: 6px; margin-top: 2px; margin-bottom: 6px; \
   1.298 +margin-left: 6px; margin-right: 6px; text-align: justify; \
   1.299 +font-size: 80%; font-family: Helvetica, Arial, sans-serif; \
   1.300 +font-weight: normal;"> \
   1.301 +Please note that the specifications and other information \
   1.302 +contained herein are not final and are subject to change. \
   1.303 +The information is being made available to you solely for purpose of \
   1.304 +evaluation. \
   1.305 +</div> </div>
   1.306 +endif
   1.307 +
   1.308 +#################################################################
   1.309 +
   1.310 +#
   1.311 +# CORE_PKGS environment variable has been moved to the following file
   1.312 +#
   1.313 +include CORE_PKGS.gmk
   1.314 +
   1.315 +#
   1.316 +# Load environment variables for API package names that are not part of
   1.317 +# the Java SE platform
   1.318 +#
   1.319 +include NON_CORE_PKGS.gmk
   1.320 +
   1.321 +#################################################################
   1.322 +
   1.323 +#
   1.324 +# Default target is same as docs target, create core api and all others it can
   1.325 +#
   1.326 +
   1.327 +all: docs
   1.328 +docs: coredocs otherdocs
   1.329 +
   1.330 +#################################################################
   1.331 +# Production Targets -- USE THESE TARGETS WHEN:
   1.332 +#    a) You're generating docs outside of release engineering's
   1.333 +#       standard control build.
   1.334 +#    b) The docs will be pushed to the web and/or included in
   1.335 +#       the downloaded doc bundle.
   1.336 +#
   1.337 +# See:  Notes.html#releaseTargets
   1.338 +# Note: Spaces precede ifdef/ifndef indents. Tabs precede target commands (!)
   1.339 +#
   1.340 +
   1.341 +sanitycheckcoredocs:
   1.342 +	@$(ECHO) ""
   1.343 +	@$(ECHO) "Building core api docs with these values:"
   1.344 +	@$(ECHO) "    BUILD_NUMBER = $(BUILD_NUMBER)"
   1.345 +	@$(ECHO) "    MILESTONE = $(MILESTONE)"
   1.346 +	@$(ECHO) ""
   1.347 +  ifeq ($(BUILD_NUMBER), b00)
   1.348 +	@$(ECHO) "ERROR: Build number must be defined"
   1.349 +	@$(ECHO) "MILESTONE is set to $(MILESTONE)"
   1.350 +	@$(ECHO) ""
   1.351 +	exit 1
   1.352 +  endif
   1.353 +
   1.354 +#############################################################
   1.355 +#
   1.356 +# coredocs
   1.357 +#
   1.358 +COREAPI_DOCTITLE  = Java$(TRADEMARK) Platform, Standard Edition \
   1.359 +$(JDK_MINOR_VERSION)<br>API Specification
   1.360 +COREAPI_WINDOWTITLE  = Java Platform SE $(JDK_MINOR_VERSION)
   1.361 +COREAPI_HEADER = \
   1.362 +<strong>Java$(TRADEMARK)&nbsp;Platform<br>Standard&nbsp;Ed.&nbsp;$(JDK_MINOR_VERSION)</strong>
   1.363 +
   1.364 +# Java language specification cite
   1.365 +TAG_JLS = jls:a:See <cite> \
   1.366 +The Java&trade; Language Specification</cite>:
   1.367 +
   1.368 +# Overview file for core apis
   1.369 +COREAPI_OVERVIEW = $(JDK_SHARE_CLASSES)/overview-core.html
   1.370 +
   1.371 +# The index.html, options, and packages files
   1.372 +COREAPI_INDEX_FILE    = $(COREAPI_DOCSDIR)/index.html
   1.373 +COREAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/coredocs.options
   1.374 +COREAPI_PACKAGES_FILE = $(DOCSTMPDIR)/coredocs.packages
   1.375 +
   1.376 +coredocs: $(COREAPI_INDEX_FILE)
   1.377 +
   1.378 +# Set relative location to core api document root
   1.379 +$(COREAPI_INDEX_FILE): GET2DOCSDIR=..
   1.380 +
   1.381 +# Run javadoc if the index file is out of date or missing
   1.382 +$(COREAPI_INDEX_FILE): $(COREAPI_OPTIONS_FILE) $(COREAPI_PACKAGES_FILE)
   1.383 +	$(prep-javadoc)
   1.384 +	$(call JavadocSummary,$(COREAPI_OPTIONS_FILE),$(COREAPI_PACKAGES_FILE))
   1.385 +	$(JAVADOC_CMD) -d $(@D) \
   1.386 +	  @$(COREAPI_OPTIONS_FILE) @$(COREAPI_PACKAGES_FILE)
   1.387 +
   1.388 +# Create file with javadoc options in it
   1.389 +$(COREAPI_OPTIONS_FILE): $(COREAPI_OVERVIEW)
   1.390 +	$(prep-target)
   1.391 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.392 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.393 +	  $(call OptionPair,-encoding,ISO-8859-1)			; \
   1.394 +	  $(call OptionPair,-tag,beaninfo:X)				; \
   1.395 +	  $(call OptionPair,-tag,revised:X)				; \
   1.396 +	  $(call OptionPair,-tag,since.unbundled:X)			; \
   1.397 +	  $(call OptionPair,-tag,spec:X)				; \
   1.398 +	  $(call OptionPair,-tag,specdefault:X)				; \
   1.399 +	  $(call OptionPair,-tag,Note:X)				; \
   1.400 +	  $(call OptionPair,-tag,ToDo:X)				; \
   1.401 +          $(call OptionPair,-tag,$(TAG_JLS)) 				; \
   1.402 +	  $(call OptionOnly,-splitIndex)				; \
   1.403 +	  $(call OptionPair,-overview,$(COREAPI_OVERVIEW))		; \
   1.404 +	  $(call OptionPair,-doctitle,$(COREAPI_DOCTITLE))		; \
   1.405 +	  $(call OptionPair,-windowtitle,$(COREAPI_WINDOWTITLE) $(DRAFT_WINTITLE)) ;\
   1.406 +	  $(call OptionPair,-header,$(COREAPI_HEADER)$(DRAFT_HEADER))	; \
   1.407 +	  $(call OptionPair,-bottom,$(COREAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
   1.408 +        ) >> $@
   1.409 +ifdef COREAPI_TOP_EARLYACCESS
   1.410 +	@$(call OptionPair,-top,$(COREAPI_TOP_EARLYACCESS)) >> $@
   1.411 +endif
   1.412 +
   1.413 +# Create a file with the package names in it
   1.414 +$(COREAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(CORE_PKGS))
   1.415 +	$(prep-target)
   1.416 +	$(call PackageFilter,$(CORE_PKGS))
   1.417 +
   1.418 +#############################################################
   1.419 +#
   1.420 +# docletapidocs
   1.421 +#
   1.422 +
   1.423 +ALL_OTHER_TARGETS += docletapidocs
   1.424 +
   1.425 +DOCLETAPI_DOCDIR       := $(JDK_API_DOCSDIR)/javadoc/doclet
   1.426 +DOCLETAPI2COREAPI      := ../../$(JDKJRE2COREAPI)
   1.427 +DOCLETAPI_DOCTITLE     := Doclet API
   1.428 +DOCLETAPI_WINDOWTITLE  := Doclet API
   1.429 +DOCLETAPI_HEADER       := <strong>Doclet API</strong>
   1.430 +DOCLETAPI_BOTTOM       := $(call CommonTrademarkBottom,$(DOCLETAPI_FIRST_COPYRIGHT_YEAR))
   1.431 +DOCLETAPI_GROUPNAME    := Packages
   1.432 +DOCLETAPI_REGEXP       := com.sun.javadoc
   1.433 +# DOCLETAPI_PKGS is located in NON_CORE_PKGS.gmk
   1.434 +
   1.435 +# The index.html, options, and packages files
   1.436 +DOCLETAPI_INDEX_FILE    = $(DOCLETAPI_DOCDIR)/index.html
   1.437 +DOCLETAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/docletapi.options
   1.438 +DOCLETAPI_PACKAGES_FILE = $(DOCSTMPDIR)/docletapi.packages
   1.439 +
   1.440 +docletapidocs: $(DOCLETAPI_INDEX_FILE)
   1.441 +
   1.442 +# Set relative location to core api document root
   1.443 +$(DOCLETAPI_INDEX_FILE): GET2DOCSDIR=$(DOCLETAPI2COREAPI)/..
   1.444 +
   1.445 +# Run javadoc if the index file is out of date or missing
   1.446 +$(DOCLETAPI_INDEX_FILE): $(DOCLETAPI_OPTIONS_FILE) $(DOCLETAPI_PACKAGES_FILE)
   1.447 +	$(prep-javadoc)
   1.448 +	$(call JavadocSummary,$(DOCLETAPI_OPTIONS_FILE),$(DOCLETAPI_PACKAGES_FILE))
   1.449 +	$(JAVADOC_CMD) -d $(@D) \
   1.450 +	  @$(DOCLETAPI_OPTIONS_FILE) @$(DOCLETAPI_PACKAGES_FILE)
   1.451 +
   1.452 +# Create file with javadoc options in it
   1.453 +$(DOCLETAPI_OPTIONS_FILE):
   1.454 +	$(prep-target)
   1.455 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.456 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.457 +	  $(call OptionPair,-encoding,ascii)				; \
   1.458 +	  $(call OptionOnly,-breakiterator)				; \
   1.459 +	  $(call OptionPair,-doctitle,$(DOCLETAPI_DOCTITLE))		; \
   1.460 +	  $(call OptionPair,-windowtitle,$(DOCLETAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
   1.461 +	  $(call OptionPair,-header,$(DOCLETAPI_HEADER)$(DRAFT_HEADER))	; \
   1.462 +	  $(call OptionPair,-bottom,$(DOCLETAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
   1.463 +	  $(call OptionTrip,-group,$(DOCLETAPI_GROUPNAME),$(DOCLETAPI_REGEXP)); \
   1.464 +	  $(call OptionTrip,-linkoffline,$(DOCLETAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
   1.465 +        ) >> $@
   1.466 +
   1.467 +# Create a file with the package names in it
   1.468 +$(DOCLETAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(DOCLETAPI_PKGS))
   1.469 +	$(prep-target)
   1.470 +	$(call PackageFilter,$(DOCLETAPI_PKGS))
   1.471 +
   1.472 +#############################################################
   1.473 +#
   1.474 +# tagletapidocs
   1.475 +#
   1.476 +
   1.477 +ALL_OTHER_TARGETS += tagletapidocs
   1.478 +TAGLETAPI_DOCDIR   := $(JDK_API_DOCSDIR)/javadoc/taglet
   1.479 +TAGLETAPI2COREAPI  := ../../$(JDKJRE2COREAPI)
   1.480 +TAGLETAPI_BOTTOM   := $(call CommonTrademarkBottom,$(TAGLETAPI_FIRST_COPYRIGHT_YEAR))
   1.481 +# TAGLETAPI_FILE is located in NON_CORE_PKGS.gmk
   1.482 +
   1.483 +# Temporary directory (special generation rules)
   1.484 +TAGLETAPI_TEMPDIR       = $(DOCSTMPDIR)/taglets_temp
   1.485 +
   1.486 +# The index.html, options, and packages files
   1.487 +TAGLETAPI_INDEX_FILE    = $(TAGLETAPI_DOCDIR)/com/sun/tools/doclets/Taglet.html
   1.488 +TAGLETAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/tagletapi.options
   1.489 +TAGLETAPI_PACKAGES_FILE = $(DOCSTMPDIR)/tagletapi.packages
   1.490 +
   1.491 +tagletapidocs: $(TAGLETAPI_INDEX_FILE)
   1.492 +
   1.493 +# Set relative location to core api document root
   1.494 +$(TAGLETAPI_INDEX_FILE): GET2DOCSDIR=$(TAGLETAPI2COREAPI)/..
   1.495 +
   1.496 +# Run javadoc if the index file is out of date or missing
   1.497 +$(TAGLETAPI_INDEX_FILE): $(TAGLETAPI_OPTIONS_FILE) $(TAGLETAPI_PACKAGES_FILE)
   1.498 +	$(prep-javadoc)
   1.499 +	$(RM) -r $(TAGLETAPI_TEMPDIR)
   1.500 +	$(MKDIR) -p $(TAGLETAPI_TEMPDIR)
   1.501 +	$(call JavadocSummary,$(TAGLETAPI_OPTIONS_FILE),$(TAGLETAPI_PACKAGES_FILE))
   1.502 +	$(JAVADOC_CMD) -d $(TAGLETAPI_TEMPDIR) \
   1.503 +	  @$(TAGLETAPI_OPTIONS_FILE) @$(TAGLETAPI_PACKAGES_FILE)
   1.504 +	cp -r $(TAGLETAPI_TEMPDIR)/com $(@D)
   1.505 +	cp $(TAGLETAPI_TEMPDIR)/stylesheet.css $(@D)
   1.506 +	$(RM) -r $(TAGLETAPI_TEMPDIR)
   1.507 +
   1.508 +# Create file with javadoc options in it
   1.509 +$(TAGLETAPI_OPTIONS_FILE):
   1.510 +	$(prep-target)
   1.511 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.512 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.513 +	  $(call OptionPair,-encoding,ascii)				; \
   1.514 +	  $(call OptionOnly,-nonavbar)					; \
   1.515 +          $(call OptionOnly,-noindex)                                   ; \
   1.516 +	  $(call OptionPair,-bottom,$(TAGLETAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
   1.517 +	  $(call OptionTrip,-linkoffline,$(TAGLETAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
   1.518 +        ) >> $@
   1.519 +
   1.520 +# Create a file with the package names in it
   1.521 +$(TAGLETAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(TAGLETAPI_PKGS))
   1.522 +	$(prep-target)
   1.523 +	$(call PackageFilter,$(TAGLETAPI_PKGS))
   1.524 +	$(GREP) "$(TAGLETAPI_FILE)" $@ > $@.tmp
   1.525 +	$(MV) $@.tmp $@
   1.526 +
   1.527 +#############################################################
   1.528 +#
   1.529 +# domapidocs
   1.530 +#
   1.531 +
   1.532 +ALL_OTHER_TARGETS += domapidocs
   1.533 +
   1.534 +DOMAPI_DOCDIR       := $(JRE_API_DOCSDIR)/plugin/dom
   1.535 +DOMAPI2COREAPI      := ../../$(JDKJRE2COREAPI)
   1.536 +DOMAPI_DOCTITLE     := Common DOM API
   1.537 +DOMAPI_WINDOWTITLE  := Common DOM API
   1.538 +DOMAPI_HEADER       := <strong>Common DOM API</strong>
   1.539 +DOMAPI_BOTTOM       := $(call CommonTrademarkBottom,$(DOMAPI_FIRST_COPYRIGHT_YEAR))
   1.540 +DOMAPI_GROUPNAME    := Packages
   1.541 +DOMAPI_REGEXP       := com.sun.java.browser.dom:org.w3c.dom*
   1.542 +# DOMAPI_PKGS is located in NON_CORE_PKGS.gmk
   1.543 +
   1.544 +# The index.html, options, and packages files
   1.545 +DOMAPI_INDEX_FILE    = $(DOMAPI_DOCDIR)/index.html
   1.546 +DOMAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/domapi.options
   1.547 +DOMAPI_PACKAGES_FILE = $(DOCSTMPDIR)/domapi.packages
   1.548 +
   1.549 +domapidocs: $(DOMAPI_INDEX_FILE)
   1.550 +
   1.551 +# Set relative location to core api document root
   1.552 +$(DOMAPI_INDEX_FILE): GET2DOCSDIR=$(DOMAPI2COREAPI)/..
   1.553 +
   1.554 +# Run javadoc if the index file is out of date or missing
   1.555 +$(DOMAPI_INDEX_FILE): $(DOMAPI_OPTIONS_FILE) $(DOMAPI_PACKAGES_FILE)
   1.556 +	$(prep-javadoc)
   1.557 +	$(call JavadocSummary,$(DOMAPI_OPTIONS_FILE),$(DOMAPI_PACKAGES_FILE))
   1.558 +	$(JAVADOC_CMD) -d $(@D) \
   1.559 +	  @$(DOMAPI_OPTIONS_FILE) @$(DOMAPI_PACKAGES_FILE)
   1.560 +
   1.561 +# Create file with javadoc options in it
   1.562 +$(DOMAPI_OPTIONS_FILE):
   1.563 +	$(prep-target)
   1.564 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.565 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.566 +	  $(call OptionPair,-encoding,ascii)				; \
   1.567 +	  $(call OptionOnly,-splitIndex)				; \
   1.568 +	  $(call OptionPair,-doctitle,$(DOMAPI_DOCTITLE))		; \
   1.569 +	  $(call OptionPair,-windowtitle,$(DOMAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
   1.570 +	  $(call OptionPair,-header,$(DOMAPI_HEADER)$(DRAFT_HEADER))	; \
   1.571 +	  $(call OptionPair,-bottom,$(DOMAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
   1.572 +	  $(call OptionTrip,-group,$(DOMAPI_GROUPNAME),$(DOMAPI_REGEXP)); \
   1.573 +	  $(call OptionTrip,-linkoffline,$(DOMAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
   1.574 +        ) >> $@
   1.575 +
   1.576 +# Create a file with the package names in it
   1.577 +$(DOMAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(DOMAPI_PKGS))
   1.578 +	$(prep-target)
   1.579 +	$(call PackageFilter,$(DOMAPI_PKGS))
   1.580 +
   1.581 +#############################################################
   1.582 +#
   1.583 +# jpdadocs
   1.584 +#
   1.585 +
   1.586 +ALL_OTHER_TARGETS += jpdadocs
   1.587 +
   1.588 +jpdadocs: jdidocs jdwpdocs jvmtidocs
   1.589 +
   1.590 +#############################################################
   1.591 +#
   1.592 +# jdidocs
   1.593 +#
   1.594 +
   1.595 +ALL_OTHER_TARGETS += jdidocs
   1.596 +
   1.597 +JDI_DOCDIR      := $(JDK_API_DOCSDIR)/jpda/jdi
   1.598 +JDI2COREAPI     := ../../$(JDKJRE2COREAPI)
   1.599 +JDI_DOCTITLE    := Java$(TRADEMARK) Debug Interface
   1.600 +JDI_WINDOWTITLE := Java Debug Interface
   1.601 +JDI_HEADER      := <strong>Java Debug Interface</strong>
   1.602 +JDI_BOTTOM      := $(call CommonBottom,$(JDI_FIRST_COPYRIGHT_YEAR))
   1.603 +JDI_OVERVIEW    := $(JDK_SHARE_CLASSES)/jdi-overview.html
   1.604 +# JDI_PKGS is located in NON_CORE_PKGS.gmk
   1.605 +
   1.606 +# The index.html, options, and packages files
   1.607 +JDI_INDEX_FILE    = $(JDI_DOCDIR)/index.html
   1.608 +JDI_OPTIONS_FILE  = $(DOCSTMPDIR)/jdi.options
   1.609 +JDI_PACKAGES_FILE = $(DOCSTMPDIR)/jdi.packages
   1.610 +
   1.611 +jdidocs: $(JDI_INDEX_FILE)
   1.612 +
   1.613 +# Set relative location to core api document root
   1.614 +$(JDI_INDEX_FILE): GET2DOCSDIR=$(JDI2COREAPI)/..
   1.615 +
   1.616 +# Run javadoc if the index file is out of date or missing
   1.617 +$(JDI_INDEX_FILE): $(JDI_OPTIONS_FILE) $(JDI_PACKAGES_FILE)
   1.618 +	$(prep-javadoc)
   1.619 +	$(call JavadocSummary,$(JDI_OPTIONS_FILE),$(JDI_PACKAGES_FILE))
   1.620 +	$(JAVADOC_CMD) -d $(@D) \
   1.621 +	  @$(JDI_OPTIONS_FILE) @$(JDI_PACKAGES_FILE)
   1.622 +
   1.623 +# Create file with javadoc options in it
   1.624 +$(JDI_OPTIONS_FILE): $(JDI_OVERVIEW)
   1.625 +	$(prep-target)
   1.626 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.627 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.628 +	  $(call OptionPair,-encoding,ascii)				; \
   1.629 +	  $(call OptionPair,-overview,$(JDI_OVERVIEW))			; \
   1.630 +	  $(call OptionPair,-doctitle,$(JDI_DOCTITLE))			; \
   1.631 +	  $(call OptionPair,-windowtitle,$(JDI_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   1.632 +	  $(call OptionPair,-header,$(JDI_HEADER)$(DRAFT_HEADER))	; \
   1.633 +	  $(call OptionPair,-bottom,$(JDI_BOTTOM)$(DRAFT_BOTTOM))	; \
   1.634 +	  $(call OptionTrip,-linkoffline,$(JDI2COREAPI),$(COREAPI_DOCSDIR)/); \
   1.635 +        ) >> $@
   1.636 +
   1.637 +# Create a file with the package names in it
   1.638 +$(JDI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JDI_PKGS))
   1.639 +	$(prep-target)
   1.640 +	$(call PackageFilter,$(JDI_PKGS))
   1.641 +
   1.642 +#############################################################
   1.643 +#
   1.644 +# jdwpdocs
   1.645 +#
   1.646 +
   1.647 +ALL_OTHER_TARGETS += jdwpdocs
   1.648 +
   1.649 +JDWP_DOCDIR     = $(PLATFORM_DOCSDIR)/jpda/jdwp
   1.650 +
   1.651 +jdwpdocs: $(JDWP_DOCDIR)/jdwp-protocol.html
   1.652 +$(JDWP_DOCDIR)/jdwp-protocol.html : $(JDK_OUTPUTDIR)/gensrc_jdwp_doc/jdwp-protocol.html
   1.653 +	$(MKDIR) -p $(@D)
   1.654 +	$(RM) $@
   1.655 +	$(CP) $< $@
   1.656 +
   1.657 +#############################################################
   1.658 +#
   1.659 +# jvmtidocs
   1.660 +#
   1.661 +
   1.662 +ALL_OTHER_TARGETS += jvmtidocs
   1.663 +
   1.664 +JVMTI_DOCDIR      = $(PLATFORM_DOCSDIR)/jvmti
   1.665 +JVMTI_HTML        = $(HOTSPOT_DIST)/docs/platform/jvmti/jvmti.html
   1.666 +
   1.667 +jvmtidocs:  $(JVMTI_DOCDIR)/jvmti.html
   1.668 +$(JVMTI_DOCDIR)/jvmti.html:
   1.669 +	@$(prep-javadoc)
   1.670 +	@if [ -f $(JVMTI_HTML) ] ; then		                           \
   1.671 +	  $(ECHO) "$(CP) $(JVMTI_HTML) $@";                 	           \
   1.672 +	  $(CP) $(JVMTI_HTML) $@; 	                 	           \
   1.673 +	else 						                   \
   1.674 +	  $(ECHO) "WARNING: Generated file does not exist: $(JVMTI_HTML)"; \
   1.675 +	fi
   1.676 +
   1.677 +#############################################################
   1.678 +#
   1.679 +# jaasdocs
   1.680 +#
   1.681 +
   1.682 +ALL_OTHER_TARGETS += jaasdocs
   1.683 +
   1.684 +JAAS_DOCDIR	 := $(JRE_API_DOCSDIR)/security/jaas/spec
   1.685 +JAAS2COREAPI     := ../../../$(JDKJRE2COREAPI)
   1.686 +JAAS_DOCTITLE    := Java$(TRADEMARK) Authentication and Authorization Service
   1.687 +JAAS_WINDOWTITLE := Java Authentication and Authorization Service
   1.688 +JAAS_HEADER      := <strong>Java Authentication and Authorization Service</strong>
   1.689 +JAAS_BOTTOM      := $(call CommonBottom,$(JAAS_FIRST_COPYRIGHT_YEAR))
   1.690 +# JAAS_PKGS is located in NON_CORE_PKGS.gmk
   1.691 +JAAS_OVERVIEW    := $(JDK_SHARE_CLASSES)/com/sun/security/auth/jaas-overview.html
   1.692 +
   1.693 +# The index.html, options, and packages files
   1.694 +JAAS_INDEX_FILE    = $(JAAS_DOCDIR)/index.html
   1.695 +JAAS_OPTIONS_FILE  = $(DOCSTMPDIR)/jaas.options
   1.696 +JAAS_PACKAGES_FILE = $(DOCSTMPDIR)/jaas.packages
   1.697 +
   1.698 +jaasdocs: $(JAAS_INDEX_FILE)
   1.699 +
   1.700 +# Set relative location to core api document root
   1.701 +$(JAAS_INDEX_FILE): GET2DOCSDIR=$(JAAS2COREAPI)/..
   1.702 +
   1.703 +# Run javadoc if the index file is out of date or missing
   1.704 +$(JAAS_INDEX_FILE): $(JAAS_OPTIONS_FILE) $(JAAS_PACKAGES_FILE)
   1.705 +	$(prep-javadoc)
   1.706 +	$(call JavadocSummary,$(JAAS_OPTIONS_FILE),$(JAAS_PACKAGES_FILE))
   1.707 +	$(JAVADOC_CMD) -d $(@D) \
   1.708 +	  @$(JAAS_OPTIONS_FILE) @$(JAAS_PACKAGES_FILE)
   1.709 +
   1.710 +# Create file with javadoc options in it
   1.711 +$(JAAS_OPTIONS_FILE): $(JAAS_OVERVIEW)
   1.712 +	$(prep-target)
   1.713 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.714 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.715 +	  $(call OptionPair,-encoding,ascii)				; \
   1.716 +	  $(call OptionPair,-overview,$(JAAS_OVERVIEW))			; \
   1.717 +	  $(call OptionPair,-doctitle,$(JAAS_DOCTITLE))			; \
   1.718 +	  $(call OptionPair,-windowtitle,$(JAAS_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   1.719 +	  $(call OptionPair,-header,$(JAAS_HEADER)$(DRAFT_HEADER))	; \
   1.720 +	  $(call OptionPair,-bottom,$(JAAS_BOTTOM)$(DRAFT_BOTTOM))	; \
   1.721 +	  $(call OptionTrip,-linkoffline,$(JAAS2COREAPI),$(COREAPI_DOCSDIR)/); \
   1.722 +        ) >> $@
   1.723 +
   1.724 +# Create a file with the package names in it
   1.725 +$(JAAS_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JAAS_PKGS))
   1.726 +	$(prep-target)
   1.727 +	$(call PackageFilter,$(JAAS_PKGS))
   1.728 +
   1.729 +#############################################################
   1.730 +#
   1.731 +# jgssdocs
   1.732 +#
   1.733 +
   1.734 +ALL_OTHER_TARGETS += jgssdocs
   1.735 +
   1.736 +JGSS_DOCDIR	 := $(JRE_API_DOCSDIR)/security/jgss/spec
   1.737 +JGSS2COREAPI     := ../../../$(JDKJRE2COREAPI)
   1.738 +JGSS_DOCTITLE    := Java$(TRADEMARK) GSS-API Utilities
   1.739 +JGSS_WINDOWTITLE := Java GSS-API Utilities
   1.740 +JGSS_HEADER      := <strong>Java GSS-API Utilities</strong>
   1.741 +JGSS_BOTTOM      := $(call CommonBottom,$(JGSS_FIRST_COPYRIGHT_YEAR))
   1.742 +JGSS_OVERVIEW    := $(JDK_SHARE_CLASSES)/com/sun/security/jgss/jgss-overview.html
   1.743 +# JGSS_PKGS is located in NON_CORE_PKGS.gmk
   1.744 +
   1.745 +# The index.html, options, and packages files
   1.746 +JGSS_INDEX_FILE    = $(JGSS_DOCDIR)/index.html
   1.747 +JGSS_OPTIONS_FILE  = $(DOCSTMPDIR)/jgss.options
   1.748 +JGSS_PACKAGES_FILE = $(DOCSTMPDIR)/jgss.packages
   1.749 +
   1.750 +jgssdocs: $(JGSS_INDEX_FILE)
   1.751 +
   1.752 +# Set relative location to core api document root
   1.753 +$(JGSS_INDEX_FILE): GET2DOCSDIR=$(JGSS2COREAPI)/..
   1.754 +
   1.755 +# Run javadoc if the index file is out of date or missing
   1.756 +$(JGSS_INDEX_FILE): $(JGSS_OPTIONS_FILE) $(JGSS_PACKAGES_FILE)
   1.757 +	$(prep-javadoc)
   1.758 +	$(call JavadocSummary,$(JGSS_OPTIONS_FILE),$(JGSS_PACKAGES_FILE))
   1.759 +	$(JAVADOC_CMD) -d $(@D) \
   1.760 +	  @$(JGSS_OPTIONS_FILE) @$(JGSS_PACKAGES_FILE)
   1.761 +
   1.762 +# Create file with javadoc options in it
   1.763 +$(JGSS_OPTIONS_FILE): $(JGSS_OVERVIEW)
   1.764 +	$(prep-target)
   1.765 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.766 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.767 +	  $(call OptionPair,-encoding,ascii)				; \
   1.768 +	  $(call OptionOnly,-nodeprecatedlist)				; \
   1.769 +	  $(call OptionPair,-overview,$(JGSS_OVERVIEW))			; \
   1.770 +	  $(call OptionPair,-doctitle,$(JGSS_DOCTITLE))			; \
   1.771 +	  $(call OptionPair,-windowtitle,$(JGSS_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   1.772 +	  $(call OptionPair,-header,$(JGSS_HEADER)$(DRAFT_HEADER))	; \
   1.773 +	  $(call OptionPair,-bottom,$(JGSS_BOTTOM)$(DRAFT_BOTTOM))	; \
   1.774 +	  $(call OptionTrip,-linkoffline,$(JGSS2COREAPI),$(COREAPI_DOCSDIR)/); \
   1.775 +        ) >> $@
   1.776 +
   1.777 +# Create a file with the package names in it
   1.778 +$(JGSS_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JGSS_PKGS))
   1.779 +	$(prep-target)
   1.780 +	$(call PackageFilter,$(JGSS_PKGS))
   1.781 +
   1.782 +#############################################################
   1.783 +#
   1.784 +# smartcardiodocs
   1.785 +#
   1.786 +
   1.787 +ALL_OTHER_TARGETS += smartcardiodocs
   1.788 +
   1.789 +SMARTCARDIO_DOCDIR	:= $(JRE_API_DOCSDIR)/security/smartcardio/spec
   1.790 +SMARTCARDIO2COREAPI     := ../../../$(JDKJRE2COREAPI)
   1.791 +SMARTCARDIO_DOCTITLE    := Java$(TRADEMARK) Smart Card I/O
   1.792 +SMARTCARDIO_WINDOWTITLE := Java Smart Card I/O
   1.793 +SMARTCARDIO_HEADER      := <strong>Java Smart Card I/O</strong>
   1.794 +SMARTCARDIO_BOTTOM      := $(call CommonBottom,$(SMARTCARDIO_FIRST_COPYRIGHT_YEAR))
   1.795 +# SMARTCARDIO_PKGS is located in NON_CORE_PKGS.gmk
   1.796 +
   1.797 +# The index.html, options, and packages files
   1.798 +SMARTCARDIO_INDEX_FILE    = $(SMARTCARDIO_DOCDIR)/index.html
   1.799 +SMARTCARDIO_OPTIONS_FILE  = $(DOCSTMPDIR)/smartcardio.options
   1.800 +SMARTCARDIO_PACKAGES_FILE = $(DOCSTMPDIR)/smartcardio.packages
   1.801 +
   1.802 +smartcardiodocs: $(SMARTCARDIO_INDEX_FILE)
   1.803 +
   1.804 +# Set relative location to core api document root
   1.805 +$(SMARTCARDIO_INDEX_FILE): GET2DOCSDIR=$(SMARTCARDIO2COREAPI)/..
   1.806 +
   1.807 +# Run javadoc if the index file is out of date or missing
   1.808 +$(SMARTCARDIO_INDEX_FILE): $(SMARTCARDIO_OPTIONS_FILE) $(SMARTCARDIO_PACKAGES_FILE)
   1.809 +	$(prep-javadoc)
   1.810 +	$(call JavadocSummary,$(SMARTCARDIO_OPTIONS_FILE),$(SMARTCARDIO_PACKAGES_FILE))
   1.811 +	$(JAVADOC_CMD) -d $(@D) \
   1.812 +	  @$(SMARTCARDIO_OPTIONS_FILE) @$(SMARTCARDIO_PACKAGES_FILE)
   1.813 +
   1.814 +# Create file with javadoc options in it
   1.815 +$(SMARTCARDIO_OPTIONS_FILE):
   1.816 +	$(prep-target)
   1.817 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.818 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.819 +	  $(call OptionPair,-encoding,ascii)				; \
   1.820 +	  $(call OptionOnly,-nodeprecatedlist)				; \
   1.821 +	  $(call OptionPair,-doctitle,$(SMARTCARDIO_DOCTITLE))		; \
   1.822 +	  $(call OptionPair,-windowtitle,$(SMARTCARDIO_WINDOWTITLE) $(DRAFT_WINTITLE));\
   1.823 +	  $(call OptionPair,-header,$(SMARTCARDIO_HEADER)$(DRAFT_HEADER)); \
   1.824 +	  $(call OptionPair,-bottom,$(SMARTCARDIO_BOTTOM)$(DRAFT_BOTTOM)); \
   1.825 +	  $(call OptionTrip,-linkoffline,$(SMARTCARDIO2COREAPI),$(COREAPI_DOCSDIR)/); \
   1.826 +        ) >> $@
   1.827 +
   1.828 +# Create a file with the package names in it
   1.829 +$(SMARTCARDIO_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(SMARTCARDIO_PKGS))
   1.830 +	$(prep-target)
   1.831 +	$(call PackageFilter,$(SMARTCARDIO_PKGS))
   1.832 +
   1.833 +#############################################################
   1.834 +#
   1.835 +# httpserverdocs
   1.836 +#
   1.837 +
   1.838 +ALL_OTHER_TARGETS += httpserverdocs
   1.839 +
   1.840 +HTTPSERVER_DOCDIR      := $(JRE_API_DOCSDIR)/net/httpserver/spec
   1.841 +HTTPSERVER2COREAPI     := ../../../$(JDKJRE2COREAPI)
   1.842 +HTTPSERVER_DOCTITLE    := Java$(TRADEMARK) HTTP Server
   1.843 +HTTPSERVER_WINDOWTITLE := Java HTTP Server
   1.844 +HTTPSERVER_HEADER      := <strong>Java HTTP Server</strong>
   1.845 +HTTPSERVER_BOTTOM      := $(call CommonBottom,$(HTTPSERVER_FIRST_COPYRIGHT_YEAR))
   1.846 +# HTTPSERVER_PKGS is located in NON_CORE_PKGS.gmk
   1.847 +
   1.848 +HTTPSERVER_INDEX_HTML    = $(HTTPSERVER_DOCDIR)/index.html
   1.849 +HTTPSERVER_OPTIONS_FILE  = $(DOCSTMPDIR)/httpserver.options
   1.850 +HTTPSERVER_PACKAGES_FILE = $(DOCSTMPDIR)/httpserver.packages
   1.851 +
   1.852 +httpserverdocs: $(HTTPSERVER_INDEX_HTML)
   1.853 +
   1.854 +# Set relative location to core api document root
   1.855 +$(HTTPSERVER_INDEX_HTML): GET2DOCSDIR=$(HTTPSERVER2COREAPI)/..
   1.856 +
   1.857 +# Run javadoc if the index file is out of date or missing
   1.858 +$(HTTPSERVER_INDEX_HTML): $(HTTPSERVER_OPTIONS_FILE) $(HTTPSERVER_PACKAGES_FILE)
   1.859 +	$(prep-javadoc)
   1.860 +	$(call JavadocSummary,$(HTTPSERVER_OPTIONS_FILE),$(HTTPSERVER_PACKAGES_FILE))
   1.861 +	$(JAVADOC_CMD) -d $(@D) \
   1.862 +	  @$(HTTPSERVER_OPTIONS_FILE) @$(HTTPSERVER_PACKAGES_FILE)
   1.863 +
   1.864 +# Create file with javadoc options in it
   1.865 +$(HTTPSERVER_OPTIONS_FILE):
   1.866 +	$(prep-target)
   1.867 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.868 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.869 +	  $(call OptionPair,-encoding,ascii)				; \
   1.870 +	  $(call OptionOnly,-nodeprecatedlist)				; \
   1.871 +	  $(call OptionPair,-doctitle,$(HTTPSERVER_DOCTITLE))		; \
   1.872 +	  $(call OptionPair,-windowtitle,$(HTTPSERVER_WINDOWTITLE) $(DRAFT_WINTITLE));\
   1.873 +	  $(call OptionPair,-header,$(HTTPSERVER_HEADER)$(DRAFT_HEADER)); \
   1.874 +	  $(call OptionPair,-bottom,$(HTTPSERVER_BOTTOM)$(DRAFT_BOTTOM)); \
   1.875 +	  $(call OptionTrip,-linkoffline,$(HTTPSERVER2COREAPI),$(COREAPI_DOCSDIR)/); \
   1.876 +        ) >> $@
   1.877 +
   1.878 +# Create a file with the package names in it
   1.879 +$(HTTPSERVER_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(HTTPSERVER_PKGS))
   1.880 +	$(prep-target)
   1.881 +	$(call PackageFilter,$(HTTPSERVER_PKGS))
   1.882 +
   1.883 +#############################################################
   1.884 +#
   1.885 +# mgmtdocs
   1.886 +#
   1.887 +
   1.888 +ALL_OTHER_TARGETS += mgmtdocs
   1.889 +
   1.890 +MGMT_DOCDIR	 := $(JRE_API_DOCSDIR)/management/extension
   1.891 +MGMT2COREAPI     := ../../$(JDKJRE2COREAPI)
   1.892 +JVM_MIB_NAME     := JVM-MANAGEMENT-MIB.mib
   1.893 +JVM_MIB_SRC      := $(CLOSED_SRC)/share/classes/sun/management/snmp/$(JVM_MIB_NAME)
   1.894 +MGMT_DOCTITLE    := Monitoring and Management Interface for the Java$(TRADEMARK) Platform
   1.895 +MGMT_WINDOWTITLE := Monitoring and Management Interface for the Java Platform
   1.896 +MGMT_HEADER      := <strong>Monitoring and Management Interface for the Java Platform</strong>
   1.897 +MGMT_BOTTOM      := $(call CommonBottom,$(MGMT_FIRST_COPYRIGHT_YEAR))
   1.898 +MGMT_OVERVIEW    := $(JDK_SHARE_CLASSES)/com/sun/management/mgmt-overview.html
   1.899 +# MGMT_PKGS is located in NON_CORE_PKGS.gmk
   1.900 +
   1.901 +# The index.html, options, and packages files
   1.902 +MGMT_INDEX_FILE    = $(MGMT_DOCDIR)/index.html
   1.903 +MGMT_OPTIONS_FILE  = $(DOCSTMPDIR)/mgmt.options
   1.904 +MGMT_PACKAGES_FILE = $(DOCSTMPDIR)/mgmt.packages
   1.905 +
   1.906 +mgmtdocs: $(MGMT_INDEX_FILE)
   1.907 +
   1.908 +# Set relative location to core api document root
   1.909 +$(MGMT_INDEX_FILE): GET2DOCSDIR=$(MGMT2COREAPI)/..
   1.910 +
   1.911 +# Run javadoc if the index file is out of date or missing
   1.912 +$(MGMT_INDEX_FILE): $(MGMT_OPTIONS_FILE) $(MGMT_PACKAGES_FILE)
   1.913 +	$(prep-javadoc)
   1.914 +	@if [ -f $(JVM_MIB_SRC) ] ; then 				\
   1.915 +	  $(ECHO) "$(CP) $(JVM_MIB_SRC) $(@D)/.."; 			\
   1.916 +	  $(CP) $(JVM_MIB_SRC) $(@D)/.. ; 				\
   1.917 +	else 								\
   1.918 +	  $(ECHO) "WARNING: File $(JVM_MIB_NAME) not available."; 	\
   1.919 +	fi
   1.920 +	$(call JavadocSummary,$(MGMT_OPTIONS_FILE),$(MGMT_PACKAGES_FILE))
   1.921 +	$(JAVADOC_CMD) -d $(@D) \
   1.922 +	  @$(MGMT_OPTIONS_FILE) @$(MGMT_PACKAGES_FILE)
   1.923 +
   1.924 +# Create file with javadoc options in it
   1.925 +$(MGMT_OPTIONS_FILE): $(MGMT_OVERVIEW)
   1.926 +	$(prep-target)
   1.927 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.928 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.929 +	  $(call OptionPair,-encoding,ascii)				; \
   1.930 +	  $(call OptionOnly,-nodeprecatedlist)				; \
   1.931 +	  $(call OptionPair,-overview,$(MGMT_OVERVIEW))			; \
   1.932 +	  $(call OptionPair,-doctitle,$(MGMT_DOCTITLE))			; \
   1.933 +	  $(call OptionPair,-windowtitle,$(MGMT_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   1.934 +	  $(call OptionPair,-header,$(MGMT_HEADER)$(DRAFT_HEADER))	; \
   1.935 +	  $(call OptionPair,-bottom,$(MGMT_BOTTOM)$(DRAFT_BOTTOM))	; \
   1.936 +	  $(call OptionTrip,-linkoffline,$(MGMT2COREAPI),$(COREAPI_DOCSDIR)/); \
   1.937 +        ) >> $@
   1.938 +
   1.939 +# Create a file with the package names in it
   1.940 +$(MGMT_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(MGMT_PKGS))
   1.941 +	$(prep-target)
   1.942 +	$(call PackageFilter,$(MGMT_PKGS))
   1.943 +
   1.944 +#############################################################
   1.945 +#
   1.946 +# attachdocs
   1.947 +#
   1.948 +
   1.949 +ALL_OTHER_TARGETS += attachdocs
   1.950 +
   1.951 +ATTACH_DOCDIR      := $(JDK_API_DOCSDIR)/attach/spec
   1.952 +ATTACH2COREAPI     := ../../$(JDKJRE2COREAPI)
   1.953 +ATTACH_DOCTITLE    := Attach API
   1.954 +ATTACH_WINDOWTITLE := Attach API
   1.955 +ATTACH_HEADER      := <strong>Attach API</strong>
   1.956 +ATTACH_BOTTOM      := $(call CommonBottom,$(ATTACH_FIRST_COPYRIGHT_YEAR))
   1.957 +# ATTACH_PKGS is located in NON_CORE_PKGS.gmk
   1.958 +
   1.959 +ATTACH_INDEX_HTML    = $(ATTACH_DOCDIR)/index.html
   1.960 +ATTACH_OPTIONS_FILE  = $(DOCSTMPDIR)/attach.options
   1.961 +ATTACH_PACKAGES_FILE = $(DOCSTMPDIR)/attach.packages
   1.962 +
   1.963 +attachdocs: $(ATTACH_INDEX_HTML)
   1.964 +
   1.965 +# Set relative location to core api document root
   1.966 +$(ATTACH_INDEX_HTML): GET2DOCSDIR=$(ATTACH2COREAPI)/..
   1.967 +
   1.968 +# Run javadoc if the index file is out of date or missing
   1.969 +$(ATTACH_INDEX_HTML): $(ATTACH_OPTIONS_FILE) $(ATTACH_PACKAGES_FILE)
   1.970 +	$(prep-javadoc)
   1.971 +	$(call JavadocSummary,$(ATTACH_OPTIONS_FILE),$(ATTACH_PACKAGES_FILE))
   1.972 +	$(JAVADOC_CMD) -d $(@D) \
   1.973 +	  @$(ATTACH_OPTIONS_FILE) @$(ATTACH_PACKAGES_FILE)
   1.974 +
   1.975 +# Create file with javadoc options in it
   1.976 +$(ATTACH_OPTIONS_FILE):
   1.977 +	$(prep-target)
   1.978 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
   1.979 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
   1.980 +	  $(call OptionPair,-encoding,ascii)				; \
   1.981 +	  $(call OptionOnly,-nodeprecatedlist)				; \
   1.982 +	  $(call OptionPair,-doctitle,$(ATTACH_DOCTITLE))		; \
   1.983 +	  $(call OptionPair,-windowtitle,$(ATTACH_WINDOWTITLE) $(DRAFT_WINTITLE));\
   1.984 +	  $(call OptionPair,-header,$(ATTACH_HEADER)$(DRAFT_HEADER))	; \
   1.985 +	  $(call OptionPair,-bottom,$(ATTACH_BOTTOM)$(DRAFT_BOTTOM))	; \
   1.986 +	  $(call OptionTrip,-linkoffline,$(ATTACH2COREAPI),$(COREAPI_DOCSDIR)/); \
   1.987 +        ) >> $@
   1.988 +
   1.989 +# Create a file with the package names in it
   1.990 +$(ATTACH_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(ATTACH_PKGS))
   1.991 +	$(prep-target)
   1.992 +	$(call PackageFilter,$(ATTACH_PKGS))
   1.993 +
   1.994 +#############################################################
   1.995 +#
   1.996 +# jconsoledocs
   1.997 +#
   1.998 +
   1.999 +ALL_OTHER_TARGETS += jconsoledocs
  1.1000 +
  1.1001 +JCONSOLE_DOCDIR      := $(JDK_API_DOCSDIR)/jconsole/spec
  1.1002 +JCONSOLE2COREAPI     := ../../$(JDKJRE2COREAPI)
  1.1003 +JCONSOLE_DOCTITLE    := JConsole API
  1.1004 +JCONSOLE_WINDOWTITLE := JConsole API
  1.1005 +JCONSOLE_HEADER      := <strong>JConsole API</strong>
  1.1006 +JCONSOLE_BOTTOM      := $(call CommonBottom,$(JCONSOLE_FIRST_COPYRIGHT_YEAR))
  1.1007 +# JCONSOLE_PKGS is located in NON_CORE_PKGS.gmk
  1.1008 +
  1.1009 +JCONSOLE_INDEX_HTML    = $(JCONSOLE_DOCDIR)/index.html
  1.1010 +JCONSOLE_OPTIONS_FILE  = $(DOCSTMPDIR)/jconsole.options
  1.1011 +JCONSOLE_PACKAGES_FILE = $(DOCSTMPDIR)/jconsole.packages
  1.1012 +
  1.1013 +jconsoledocs: $(JCONSOLE_INDEX_HTML)
  1.1014 +
  1.1015 +# Set relative location to core api document root
  1.1016 +$(JCONSOLE_INDEX_HTML): GET2DOCSDIR=$(JCONSOLE2COREAPI)/..
  1.1017 +
  1.1018 +# Run javadoc if the index file is out of date or missing
  1.1019 +$(JCONSOLE_INDEX_HTML): $(JCONSOLE_OPTIONS_FILE) $(JCONSOLE_PACKAGES_FILE)
  1.1020 +	$(prep-javadoc)
  1.1021 +	$(call JavadocSummary,$(JCONSOLE_OPTIONS_FILE),$(JCONSOLE_PACKAGES_FILE))
  1.1022 +	$(JAVADOC_CMD) -d $(@D) \
  1.1023 +	  @$(JCONSOLE_OPTIONS_FILE) @$(JCONSOLE_PACKAGES_FILE)
  1.1024 +
  1.1025 +# Create file with javadoc options in it
  1.1026 +$(JCONSOLE_OPTIONS_FILE):
  1.1027 +	$(prep-target)
  1.1028 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
  1.1029 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
  1.1030 +	  $(call OptionPair,-encoding,ascii)				; \
  1.1031 +	  $(call OptionOnly,-nodeprecatedlist)				; \
  1.1032 +	  $(call OptionPair,-doctitle,$(JCONSOLE_DOCTITLE))		; \
  1.1033 +	  $(call OptionPair,-windowtitle,$(JCONSOLE_WINDOWTITLE) $(DRAFT_WINTITLE));\
  1.1034 +	  $(call OptionPair,-header,$(JCONSOLE_HEADER)$(DRAFT_HEADER))	; \
  1.1035 +	  $(call OptionPair,-bottom,$(JCONSOLE_BOTTOM)$(DRAFT_BOTTOM))	; \
  1.1036 +	  $(call OptionTrip,-linkoffline,$(JCONSOLE2COREAPI),$(COREAPI_DOCSDIR)/); \
  1.1037 +        ) >> $@
  1.1038 +
  1.1039 +# Create a file with the package names in it
  1.1040 +$(JCONSOLE_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JCONSOLE_PKGS))
  1.1041 +	$(prep-target)
  1.1042 +	$(call PackageFilter,$(JCONSOLE_PKGS))
  1.1043 +
  1.1044 +#############################################################
  1.1045 +#
  1.1046 +# treeapidocs
  1.1047 +#
  1.1048 +
  1.1049 +ALL_OTHER_TARGETS += treeapidocs
  1.1050 +
  1.1051 +TREEAPI_DOCDIR       := $(JDK_API_DOCSDIR)/javac/tree
  1.1052 +TREEAPI2COREAPI      := ../../$(JDKJRE2COREAPI)
  1.1053 +TREEAPI_DOCTITLE     := Compiler Tree API
  1.1054 +TREEAPI_WINDOWTITLE  := Compiler Tree API
  1.1055 +TREEAPI_HEADER       := <strong>Compiler Tree API</strong>
  1.1056 +TREEAPI_BOTTOM       := $(call CommonBottom,$(TREEAPI_FIRST_COPYRIGHT_YEAR))
  1.1057 +TREEAPI_GROUPNAME    := Packages
  1.1058 +TREEAPI_REGEXP       := com.sun.source.*
  1.1059 +# TREEAPI_PKGS is located in NON_CORE_PKGS.gmk
  1.1060 +
  1.1061 +TREEAPI_INDEX_HTML    = $(TREEAPI_DOCDIR)/index.html
  1.1062 +TREEAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/treeapi.options
  1.1063 +TREEAPI_PACKAGES_FILE = $(DOCSTMPDIR)/treeapi.packages
  1.1064 +
  1.1065 +treeapidocs: $(TREEAPI_INDEX_HTML)
  1.1066 +
  1.1067 +# Set relative location to core api document root
  1.1068 +$(TREEAPI_INDEX_HTML): GET2DOCSDIR=$(TREEAPI2COREAPI)/..
  1.1069 +
  1.1070 +# Run javadoc if the index file is out of date or missing
  1.1071 +$(TREEAPI_INDEX_HTML): $(TREEAPI_OPTIONS_FILE) $(TREEAPI_PACKAGES_FILE)
  1.1072 +	$(prep-javadoc)
  1.1073 +	$(call JavadocSummary,$(TREEAPI_OPTIONS_FILE),$(TREEAPI_PACKAGES_FILE))
  1.1074 +	$(JAVADOC_CMD) -d $(@D) \
  1.1075 +	  @$(TREEAPI_OPTIONS_FILE) @$(TREEAPI_PACKAGES_FILE)
  1.1076 +
  1.1077 +# Create file with javadoc options in it
  1.1078 +$(TREEAPI_OPTIONS_FILE):
  1.1079 +	$(prep-target)
  1.1080 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
  1.1081 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
  1.1082 +	  $(call OptionPair,-encoding,ascii)				; \
  1.1083 +	  $(call OptionPair,-doctitle,$(TREEAPI_DOCTITLE))		; \
  1.1084 +	  $(call OptionPair,-windowtitle,$(TREEAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
  1.1085 +	  $(call OptionPair,-header,$(TREEAPI_HEADER)$(DRAFT_HEADER))	; \
  1.1086 +          $(call OptionPair,-tag,$(TAG_JLS)) 				; \
  1.1087 +	  $(call OptionPair,-bottom,$(TREEAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
  1.1088 +	  $(call OptionTrip,-group,$(TREEAPI_GROUPNAME),$(TREEAPI_REGEXP)); \
  1.1089 +	  $(call OptionTrip,-linkoffline,$(TREEAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
  1.1090 +        ) >> $@
  1.1091 +
  1.1092 +# Create a file with the package names in it
  1.1093 +$(TREEAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(TREEAPI_PKGS))
  1.1094 +	$(prep-target)
  1.1095 +	$(call PackageFilter,$(TREEAPI_PKGS))
  1.1096 +
  1.1097 +#############################################################
  1.1098 +#
  1.1099 +# sctpdocs
  1.1100 +#
  1.1101 +
  1.1102 +ALL_OTHER_TARGETS += sctpdocs
  1.1103 +
  1.1104 +SCTPAPI_DOCDIR      := $(JRE_API_DOCSDIR)/nio/sctp/spec
  1.1105 +SCTPAPI2COREAPI     := ../../../$(JDKJRE2COREAPI)
  1.1106 +SCTPAPI_DOCTITLE    := SCTP API
  1.1107 +SCTPAPI_WINDOWTITLE := SCTP API
  1.1108 +SCTPAPI_HEADER      := <strong>SCTP API</strong>
  1.1109 +SCTPAPI_BOTTOM      := $(call CommonBottom,$(SCTPAPI_FIRST_COPYRIGHT_YEAR))
  1.1110 +# SCTPAPI_PKGS is located in NON_CORE_PKGS.gmk
  1.1111 +
  1.1112 +SCTPAPI_INDEX_HTML    = $(SCTPAPI_DOCDIR)/index.html
  1.1113 +SCTPAPI_OPTIONS_FILE  = $(DOCSTMPDIR)/sctp.options
  1.1114 +SCTPAPI_PACKAGES_FILE = $(DOCSTMPDIR)/sctp.packages
  1.1115 +
  1.1116 +sctpdocs: $(SCTPAPI_INDEX_HTML)
  1.1117 +
  1.1118 +# Set relative location to core api document root
  1.1119 +$(SCTPAPI_INDEX_HTML): GET2DOCSDIR=$(SCTPAPI2COREAPI)/..
  1.1120 +
  1.1121 +# Run javadoc if the index file is out of date or missing
  1.1122 +$(SCTPAPI_INDEX_HTML): $(SCTPAPI_OPTIONS_FILE) $(SCTPAPI_PACKAGES_FILE)
  1.1123 +	$(prep-javadoc)
  1.1124 +	$(call JavadocSummary,$(SCTPAPI_OPTIONS_FILE),$(SCTPAPI_PACKAGES_FILE))
  1.1125 +	$(JAVADOC_CMD) -d $(@D) \
  1.1126 +	  @$(SCTPAPI_OPTIONS_FILE) @$(SCTPAPI_PACKAGES_FILE)
  1.1127 +
  1.1128 +# Create file with javadoc options in it
  1.1129 +$(SCTPAPI_OPTIONS_FILE):
  1.1130 +	$(prep-target)
  1.1131 +	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS))			; \
  1.1132 +	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH))	; \
  1.1133 +	  $(call OptionPair,-encoding,ascii)				; \
  1.1134 +	  $(call OptionOnly,-nodeprecatedlist)				; \
  1.1135 +	  $(call OptionPair,-doctitle,$(SCTPAPI_DOCTITLE))		; \
  1.1136 +	  $(call OptionPair,-windowtitle,$(SCTPAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
  1.1137 +	  $(call OptionPair,-header,$(SCTPAPI_HEADER)$(DRAFT_HEADER))	; \
  1.1138 +	  $(call OptionPair,-bottom,$(SCTPAPI_BOTTOM)$(DRAFT_BOTTOM))	; \
  1.1139 +	  $(call OptionTrip,-linkoffline,$(SCTPAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
  1.1140 +        ) >> $@
  1.1141 +
  1.1142 +# Create a file with the package names in it
  1.1143 +$(SCTPAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(SCTPAPI_PKGS))
  1.1144 +	$(prep-target)
  1.1145 +	$(call PackageFilter,$(SCTPAPI_PKGS))
  1.1146 +
  1.1147 +#############################################################
  1.1148 +#
  1.1149 +# Get a cache of all the directories
  1.1150 +
  1.1151 +$(DIRECTORY_CACHE): $(ALL_EXISTING_SOURCE_DIRS)
  1.1152 +	$(prep-target)
  1.1153 +	@for cp in $(ALL_EXISTING_SOURCE_DIRS) ; do 	\
  1.1154 +	  $(ECHO) "$(FIND) $${cp} -type f >> $@"; 	\
  1.1155 +	  $(FIND) $${cp} -type f >> $@; 		\
  1.1156 +	done
  1.1157 +
  1.1158 +#############################################################
  1.1159 +#release version of core packages ########
  1.1160 +# Maximize performance and ensure that build number & milestone are set.
  1.1161 +
  1.1162 +rel-coredocs: sanitycheckcoredocs
  1.1163 +	$(MAKE) coredocs
  1.1164 +
  1.1165 +rel-docs: rel-coredocs $(ALL_OTHER_TARGETS)
  1.1166 +#
  1.1167 +# end of production targets
  1.1168 +
  1.1169 +otherdocs: $(ALL_OTHER_TARGETS)
  1.1170 +
  1.1171 +clean:
  1.1172 +	$(RM) -r $(DOCSDIR) $(DOCSTMPDIR)
  1.1173 +
  1.1174 +#############################################################
  1.1175 +# DEBUG TARGET
  1.1176 +# List the values defined in the makefile hierarchy, to make sure everything
  1.1177 +# is set properly, and to help identify values we can use instead of making new ones.
  1.1178 +# (Most of them come from common/shared/Defs.gmk)
  1.1179 +#
  1.1180 +#  Notes:
  1.1181 +#    * BUILD_NUMBER defaults to b00 if not set on command line with BUILD_NUMBER=<value>
  1.1182 +#    * MILESTONE defaults to internal unless set to beta, rc, or fcs on command line
  1.1183 +#
  1.1184 +
  1.1185 +#############################################################
  1.1186 +.PHONY: all docs coredocs rel-docs otherdocs rel-coredocs \
  1.1187 +        sanitycheckcoredocs $(ALL_OTHER_TARGETS)

mercurial