make/Javadoc.gmk

Mon, 14 Sep 2020 16:42:03 +0100

author
andrew
date
Mon, 14 Sep 2020 16:42:03 +0100
changeset 2554
7f60c2d9823e
parent 2542
741aff26fe61
child 2556
76a0f827e163
permissions
-rw-r--r--

Added tag jdk8u272-b08 for changeset 34c6baf21464

     1 # Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
     2 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3 #
     4 # This code is free software; you can redistribute it and/or modify it
     5 # under the terms of the GNU General Public License version 2 only, as
     6 # published by the Free Software Foundation.  Oracle designates this
     7 # particular file as subject to the "Classpath" exception as provided
     8 # by Oracle in the LICENSE file that accompanied this code.
     9 #
    10 # This code is distributed in the hope that it will be useful, but WITHOUT
    11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    12 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    13 # version 2 for more details (a copy is included in the LICENSE file that
    14 # accompanied this code).
    15 #
    16 # You should have received a copy of the GNU General Public License version
    17 # 2 along with this work; if not, write to the Free Software Foundation,
    18 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    19 #
    20 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    21 # or visit www.oracle.com if you need additional information or have any
    22 # questions.
    23 #
    25 include $(SPEC)
    26 include MakeBase.gmk
    28 .SUFFIXES: # Delete the default suffixes
    29 .SUFFIXES: .java
    31 #
    32 # Definitions for $(DOCSDIR), $(MKDIR), $(BINDIR), etc.
    33 #
    35 DOCSDIR=$(OUTPUT_ROOT)/docs
    36 TEMPDIR=$(OUTPUT_ROOT)/docstemp
    38 JDK_SHARE_SRC=$(JDK_TOPDIR)/src/share
    39 JDK_SHARE_CLASSES=$(JDK_SHARE_SRC)/classes
    41 JDK_IMPSRC = $(JDK_OUTPUTDIR)/impsrc
    43 JDK_GENSRC = $(JDK_OUTPUTDIR)/gensrc
    45 HOTSPOT_DOCS_IMPORT_PATH=$(HOTSPOT_OUTPUTDIR)/docs
    47 BUILD_NUMBER=$(JDK_BUILD_NUMBER)
    49 JAVADOC_CMD = $(JAVA) \
    50     -Xmx1024m \
    51     -Djava.awt.headless=true \
    52     $(NEW_JAVADOC) \
    53     -bootclasspath $(JDK_OUTPUTDIR)/classes
    55 # Copyright year for beginning of Java and some of the apis
    56 # (Needed when creating the javadocs)
    57 FIRST_COPYRIGHT_YEAR = 1993
    58 DOMAPI_FIRST_COPYRIGHT_YEAR = 2005
    59 MIRROR_FIRST_COPYRIGHT_YEAR = 2004
    60 DOCLETAPI_FIRST_COPYRIGHT_YEAR = 1993
    61 TAGLETAPI_FIRST_COPYRIGHT_YEAR = 1993
    62 JDI_FIRST_COPYRIGHT_YEAR = 1999
    63 JAAS_FIRST_COPYRIGHT_YEAR = 1998
    64 JGSS_FIRST_COPYRIGHT_YEAR = 2000
    65 SMARTCARDIO_FIRST_COPYRIGHT_YEAR = 2005
    66 HTTPSERVER_FIRST_COPYRIGHT_YEAR = 2005
    67 MGMT_FIRST_COPYRIGHT_YEAR = 2003
    68 ATTACH_FIRST_COPYRIGHT_YEAR = 2005
    69 JCONSOLE_FIRST_COPYRIGHT_YEAR = 2006
    70 SCTPAPI_FIRST_COPYRIGHT_YEAR = 2009
    71 TRACING_FIRST_COPYRIGHT_YEAR = 2008
    72 TREEAPI_FIRST_COPYRIGHT_YEAR = 2005
    73 NASHORNAPI_FIRST_COPYRIGHT_YEAR = 2014
    74 JNLP_FIRST_COPYRIGHT_YEAR = 1998
    75 PLUGIN2_FIRST_COPYRIGHT_YEAR = 2007
    76 JDKNET_FIRST_COPYRIGHT_YEAR = 2014
    77 JACCESSAPI_FIRST_COPYRIGHT_YEAR = 2002
    79 # Oracle name
    80 FULL_COMPANY_NAME = Oracle and/or its affiliates
    82 # Copyright address
    83 COMPANY_ADDRESS = 500 Oracle Parkway<br>Redwood Shores, CA 94065 USA.
    85 # The trademark symbol
    86 TRADEMARK = &trade;
    88 # Common copyright lines used
    89 # The word "Copyright" might optionally be a link to the file cpyr.html.
    90 # The first year of copyright may vary or not be available.
    91 # The address to the company might be optional.
    92 COMMA:= ,
    93 EMPTY:=
    94 SPACE:=$(EMPTY) $(EMPTY)
    95 COPYRIGHT_SYMBOL = &\#x00a9;
    96 # Macro to construct the copyright line
    97 # (The GNU make 3.78.1 "if" conditional is broken, fixed in GNU make 3.81)
    98 define CopyrightLine # optionalurl optionalfirstyear optionaladdress
    99 $(if $(strip $1),<a href="$(strip $1)">Copyright</a>,Copyright) \
   100 $(COPYRIGHT_SYMBOL) $(if $2,$2${COMMA},) $(COPYRIGHT_YEAR),\
   101 $(FULL_COMPANY_NAME). $3 All rights reserved.
   102 endef
   104 # Url to root of documents
   105 DOCSDIR_URL = {@docroot}/$(GET2DOCSDIR)
   107 # Url to copyright html file
   108 COPYRIGHT_URL = $(DOCSDIR_URL)/legal/cpyr.html
   110 # Url to bug filing site
   111 BUG_SUBMIT_URL = http://bugreport.sun.com/bugreport/
   113 # Common line for how to submit a bug or rfe
   114 BUG_SUBMIT_LINE = <a href="$(BUG_SUBMIT_URL)">Submit a bug or feature</a>
   116 # Url to devdocs page
   117 # Was: http://java.sun.com/javase/6/webnotes/devdocs-vs-specs.html
   118 DEV_DOCS_URL-7 = https://docs.oracle.com/javase/7/docs/index.html
   119 DEV_DOCS_URL-8 = https://docs.oracle.com/javase/8/docs/index.html
   120 DEV_DOCS_URL = $(DEV_DOCS_URL-$(JDK_MINOR_VERSION))
   121 DOCS_BASE_URL = https://docs.oracle.com/javase/7/docs
   123 # Common Java trademark line
   124 JAVA_TRADEMARK_LINE = Java is a trademark or registered trademark of \
   125 $(FULL_COMPANY_NAME) in the US and other countries.
   127 #################################################################
   128 # Macros:
   131 # List of all possible directories for javadoc to look for sources
   132 # NOTE: Quotes are required around sourcepath argument only on Windows.
   133 # Otherwise, you get "No packages or classes specified." due
   134 # to $(PATH_SEP) being interpreted as an end of
   135 # command (newline or shell ; character)
   136 ALL_SOURCE_DIRS = $(JDK_SHARE_CLASSES) \
   137     $(JDK_IMPSRC) \
   138     $(JDK_GENSRC) \
   139     $(JDK_OUTPUTDIR)/gendocsrc_rmic \
   140     $(JDK_TOPDIR)/src/solaris/classes \
   141     $(JDK_TOPDIR)/src/windows/classes \
   142     $(NASHORN_TOPDIR)/src/ \
   143     $(JDK_SHARE_SRC)/doc/stub
   145 # List of directories that actually exist
   146 ALL_EXISTING_SOURCE_DIRS := $(wildcard $(ALL_SOURCE_DIRS))
   148 # List with classpath separator between them
   149 EMPTY:=
   150 SPACE:= $(EMPTY) $(EMPTY)
   151 RELEASEDOCS_SOURCEPATH = \
   152     $(subst $(SPACE),$(PATH_SEP),$(strip $(ALL_SOURCE_DIRS)))
   154 define prep-target
   155 	$(MKDIR) -p $(@D)
   156 	$(RM) $@
   157 endef
   159 # Prep for javadoc creation, assumes $@ is an index.html file
   160 define prep-javadoc
   161 	@if [ -f "$@" -a "$?" != "" ] ; then \
   162 	  $(ECHO) "# Dependencies have changed: $?"; \
   163 	fi
   164 	$(RM) -r $(@D)
   165 	$(MKDIR) -p $(@D)
   166 endef
   168 # A cache of the directories in ALL_SOURCE_DIRS
   169 DIRECTORY_CACHE = $(DOCSTMPDIR)/directory.cache
   171 # Given a list of packages, return a list of files or dirs to be dependent on
   172 # (Currently only returning a list of directories)
   173 define PackageDependencies # packages
   174   $(shell \
   175       if [ "$1" != "" -a -f $(DIRECTORY_CACHE) ] ; then \
   176         for p in $1 ; do \
   177           pd=`$(ECHO) $${p} | $(SED) -e 's@[.]@/@g'`; \
   178           $(CAT) $(DIRECTORY_CACHE) | $(GREP) "/$${pd}/" ; \
   179         done; \
   180       fi \
   181   )
   182 endef
   184 # Given a list of packages, add packages that exist to $@, print summary
   185 define PackageFilter # packages
   186 	@if [ "$1" != "" ] ; then \
   187 	  for p in $1 ; do \
   188 	    pd=`$(ECHO) $${p} | $(SED) -e 's@[.]@/@g'`; \
   189 	    found="false"; \
   190 	    for cp in $(ALL_SOURCE_DIRS) ; do \
   191 	      if [ -d $${cp}/$${pd} ] ; then \
   192 	        $(ECHO) "$${p}" >> $@; \
   193 	        found="true"; \
   194 	        break; \
   195 	      fi; \
   196 	    done; \
   197 	    if [ "$${found}" = "false" ] ; then \
   198 	      $(ECHO) "WARNING: Package not found: $${p}"; \
   199 	    fi; \
   200 	  done; \
   201 	fi
   202 endef
   204 # Print out a summary of the javadoc command about to be run
   205 define JavadocSummary # optionsfile packagesfile
   206 	@$(ECHO) "# Summary for $@"; \
   207 	$(ECHO) "# Options (`$(BASENAME) $1`):"; $(SED) -e 's@^@#   @' $1; \
   208 	$(ECHO) "# Packages (`$(BASENAME) $2`):";$(SED) -e 's@^@#   @' $2
   209 endef
   211 #
   212 # Temporary directory for javadoc creation
   213 #
   214 DOCSTMPDIR = $(TEMPDIR)/doctmp
   216 #
   217 # Different api directories created from root directory
   218 #
   219 COREAPI_DOCSDIR = $(DOCSDIR)/api
   220 JDK_API_DOCSDIR = $(DOCSDIR)/jdk/api
   221 JRE_API_DOCSDIR = $(DOCSDIR)/jre/api
   222 PLATFORM_DOCSDIR = $(DOCSDIR)/platform
   224 JAVADOC_ARCHIVE_NAME := jdk-$(FULL_VERSION)-docs.zip
   225 JAVADOC_ARCHIVE_ASSEMBLY_DIR :=  $(DOCSTMPDIR)/docs-zip
   226 JAVADOC_ARCHIVE_DIR := $(OUTPUT_ROOT)/bundles
   227 JAVADOC_ARCHIVE := $(JAVADOC_ARCHIVE_DIR)/$(JAVADOC_ARCHIVE_NAME)
   229 # The non-core api javadocs need to be able to access the root of the core
   230 # api directory, so for jdk/api or jre/api to get to the core api/
   231 # directory we would use this:
   232 JDKJRE2COREAPI = ../../api
   234 # Common bottom argument
   235 define CommonBottom # year
   236 <font size="-1"><br> $(call CopyrightLine,,$1,)</font>
   237 endef
   239 # Common trademark bottom argument (Not sure why this is used sometimes)
   240 define CommonTrademarkBottom # year
   241 <font size="-1">\
   242 $(BUG_SUBMIT_LINE)<br>$(JAVA_TRADEMARK_LINE)<br>\
   243 $(call CopyrightLine,,$1,$(COMPANY_ADDRESS))\
   244 </font>
   245 endef
   247 # Common echo of option
   248 define OptionOnly # opt
   249 	$(PRINTF) "%s\n" "$1"
   250 endef
   251 define OptionPair # opt arg
   252 	$(PRINTF) "%s '%s'\n" "$1" '$2'
   253 endef
   254 define OptionTrip # opt arg arg
   255 	$(PRINTF) "%s '%s' '%s'\n" "$1" '$2' '$3'
   256 endef
   258 # Core api bottom argument (with special sauce)
   259 COREAPI_BOTTOM = <font size="-1"> $(BUG_SUBMIT_LINE)\
   260 <br>For further API reference and developer documentation, \
   261 see <a href="$(DEV_DOCS_URL)" target="_blank">Java SE Documentation</a>. \
   262 That documentation contains more detailed, developer-targeted descriptions, \
   263 with conceptual overviews, definitions of terms, workarounds, \
   264 and working code examples.<br>\
   265 $(call CopyrightLine,$(COPYRIGHT_URL),$(FIRST_COPYRIGHT_YEAR),)\
   266 Use is subject to <a href="http://download.oracle.com/otndocs/jcp/java_se-8-mrel-spec/license.html">license terms</a>. \
   267 Also see the <a target="_blank" href="http://www.oracle.com/technetwork/java/redist-137594.html">documentation redistribution policy</a>.\
   268 </font>
   270 # Common javadoc options used by all
   271 COMMON_JAVADOCFLAGS = \
   272     -XDignore.symbol.file=true \
   273     -quiet \
   274     -use \
   275     -keywords \
   276     -Xdoclint:none \
   277     -Xprofilespath $(JDK_TOPDIR)/make/profile-rtjar-includes.txt \
   278     $(ADDITIONAL_JAVADOCFLAGS)
   280 ifdef OPENJDK
   281   ADDITIONAL_JAVADOCFLAGS = \
   282       -Xdocrootparent $(DOCS_BASE_URL)
   283 else
   284   ADDITIONAL_JAVADOCFLAGS =
   285 endif
   287 # Draft used for non-fcs documents
   288 DRAFT_HEADER =
   289 ifneq ($(MILESTONE), fcs)
   290   DRAFT_HEADER = <br><strong>DRAFT&nbsp;$(MILESTONE)-$(BUILD_NUMBER)</strong>
   291   DRAFT_BOTTOM = <br><strong>DRAFT&nbsp;$(MILESTONE)-$(BUILD_NUMBER)</strong>
   292   DRAFT_WINTITLE = $(BUILD_NUMBER)
   293   # Early access top text (not used in FCS releases)
   294   COREAPI_TOP_EARLYACCESS = \
   295 <div style="background-color: \#EEEEEE"> \
   296 <div style="padding: 6px; margin-top: 2px; margin-bottom: 6px; \
   297 margin-left: 6px; margin-right: 6px; text-align: justify; \
   298 font-size: 80%; font-family: Helvetica, Arial, sans-serif; \
   299 font-weight: normal;"> \
   300 Please note that the specifications and other information \
   301 contained herein are not final and are subject to change. \
   302 The information is being made available to you solely for purpose of \
   303 evaluation. \
   304 </div> </div>
   306 endif
   308 #################################################################
   310 #
   311 # CORE_PKGS environment variable has been moved to the following file
   312 #
   313 include CORE_PKGS.gmk
   315 #
   316 # Load environment variables for API package names that are not part of
   317 # the Java SE platform
   318 #
   319 include NON_CORE_PKGS.gmk
   321 #################################################################
   323 #
   324 # Load custom Javadoc rules, if present
   325 #
   326 -include $(CUSTOM_MAKE_DIR)/Javadoc.gmk
   328 #################################################################
   330 #
   331 # Default target is same as docs target, create core api and all others it can
   332 #
   334 all: docs
   335 docs: coredocs otherdocs
   337 #
   338 # Optional target which bundles all generated javadocs into a zip 
   339 # archive. The dependency on docs is handled in Main.gmk. Incremental 
   340 # building of docs is currently broken so if you invoke docs-zip after 
   341 # docs, the docs are always rebuilt.
   342 #
   344 docs-zip: $(JAVADOC_ARCHIVE)
   346 #
   347 # Add the core docs as prerequisite to the archive to trigger a rebuild
   348 # if the core docs were rebuilt. Ideally any doc rebuild should trigger
   349 # this, but the way prerequisites are currently setup in this file, that
   350 # is hard to achieve.
   351 #
   353 $(JAVADOC_ARCHIVE): $(COREAPI_INDEX_FILE)
   354 	@$(ECHO) $(LOG_INFO) "Compressing javadoc to single $(JAVADOC_ARCHIVE_NAME)"
   355 	$(MKDIR) -p $(JAVADOC_ARCHIVE_DIR)
   356 	$(RM) -r $(JAVADOC_ARCHIVE_ASSEMBLY_DIR)
   357 	$(MKDIR) -p $(JAVADOC_ARCHIVE_ASSEMBLY_DIR)
   358 	all_roots=`$(FIND) $(DOCSDIR) | $(GREP) index.html | grep -v old/doclet `; \
   359 	pushd $(JAVADOC_ARCHIVE_ASSEMBLY_DIR); \
   360 	for index_file in $${all_roots} ; do \
   361 	  target_dir=`dirname $${index_file}`; \
   362 	  name=`$(ECHO) $${target_dir} | $(SED) "s;/spec;;" | $(SED) "s;.*/;;"`; \
   363 	  $(LN) -s $${target_dir}  $${name}; \
   364 	done; \
   365 	$(ZIP) -q -r $(JAVADOC_ARCHIVE) * ; \
   366 	popd ;
   368 #################################################################
   369 # Production Targets -- USE THESE TARGETS WHEN:
   370 # a) You're generating docs outside of release engineering's
   371 #    standard control build.
   372 # b) The docs will be pushed to the web and/or included in
   373 #    the downloaded doc bundle.
   374 #
   375 # See: Notes.html#releaseTargets
   376 # Note: Spaces precede ifdef/ifndef indents. Tabs precede target commands (!)
   377 #
   379 sanitycheckcoredocs:
   380 	@$(ECHO) ""
   381 	@$(ECHO) "Building core api docs with these values:"
   382 	@$(ECHO) "    BUILD_NUMBER = $(BUILD_NUMBER)"
   383 	@$(ECHO) "    MILESTONE = $(MILESTONE)"
   384 	@$(ECHO) ""
   385         ifeq ($(BUILD_NUMBER), b00)
   386 	  @$(ECHO) "ERROR: Build number must be defined"
   387 	  @$(ECHO) "MILESTONE is set to $(MILESTONE)"
   388 	  @$(ECHO) ""
   389 	  exit 1
   390         endif
   392 #############################################################
   393 #
   394 # coredocs
   395 #
   396 COREAPI_DOCTITLE = Java$(TRADEMARK) Platform, Standard Edition \
   397 $(JDK_MINOR_VERSION)<br>API Specification
   398 COREAPI_WINDOWTITLE = Java Platform SE $(JDK_MINOR_VERSION)
   399 COREAPI_HEADER = \
   400 <strong>Java$(TRADEMARK)&nbsp;Platform<br>Standard&nbsp;Ed.&nbsp;$(JDK_MINOR_VERSION)</strong>
   402 # Java language specification cite
   403 TAG_JLS = jls:a:See <cite> \
   404 The Java&trade; Language Specification</cite>:
   406 # Overview file for core apis
   407 COREAPI_OVERVIEW = $(JDK_SHARE_CLASSES)/overview-core.html
   409 # The index.html, options, and packages files
   410 COREAPI_INDEX_FILE = $(COREAPI_DOCSDIR)/index.html
   411 COREAPI_OPTIONS_FILE = $(DOCSTMPDIR)/coredocs.options
   412 COREAPI_PACKAGES_FILE = $(DOCSTMPDIR)/coredocs.packages
   414 coredocs: $(COREAPI_INDEX_FILE)
   416 # Set relative location to core api document root
   417 $(COREAPI_INDEX_FILE): GET2DOCSDIR=..
   419 # Run javadoc if the index file is out of date or missing
   420 $(COREAPI_INDEX_FILE): $(COREAPI_OPTIONS_FILE) $(COREAPI_PACKAGES_FILE)
   421 	$(prep-javadoc)
   422 	$(call JavadocSummary,$(COREAPI_OPTIONS_FILE),$(COREAPI_PACKAGES_FILE))
   423 	$(JAVADOC_CMD) -d $(@D) \
   424 	    @$(COREAPI_OPTIONS_FILE) @$(COREAPI_PACKAGES_FILE)
   426 # Create file with javadoc options in it
   427 $(COREAPI_OPTIONS_FILE): $(COREAPI_OVERVIEW)
   428 	$(prep-target)
   429 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
   430 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
   431 	  $(call OptionPair,-encoding,ISO-8859-1) ; \
   432 	  $(call OptionPair,-tag,beaninfo:X) ; \
   433 	  $(call OptionPair,-tag,revised:X) ; \
   434 	  $(call OptionPair,-tag,since.unbundled:X) ; \
   435 	  $(call OptionPair,-tag,spec:X) ; \
   436 	  $(call OptionPair,-tag,specdefault:X) ; \
   437 	  $(call OptionPair,-tag,Note:X) ; \
   438 	  $(call OptionPair,-tag,ToDo:X) ; \
   439 	  $(call OptionPair,-tag,apiNote:a:API Note:) ; \
   440 	  $(call OptionPair,-tag,implSpec:a:Implementation Requirements:) ; \
   441 	  $(call OptionPair,-tag,implNote:a:Implementation Note:) ; \
   442 	  $(call OptionPair,-tag,param) ; \
   443 	  $(call OptionPair,-tag,return) ; \
   444 	  $(call OptionPair,-tag,throws) ; \
   445 	  $(call OptionPair,-tag,since) ; \
   446 	  $(call OptionPair,-tag,version) ; \
   447 	  $(call OptionPair,-tag,serialData) ; \
   448 	  $(call OptionPair,-tag,factory) ; \
   449 	  $(call OptionPair,-tag,see) ; \
   450 	  $(call OptionPair,-tag,$(TAG_JLS)) ; \
   451 	  $(call OptionOnly,-splitIndex) ; \
   452 	  $(call OptionPair,-overview,$(COREAPI_OVERVIEW)) ; \
   453 	  $(call OptionPair,-doctitle,$(COREAPI_DOCTITLE)) ; \
   454 	  $(call OptionPair,-windowtitle,$(COREAPI_WINDOWTITLE) $(DRAFT_WINTITLE)) ; \
   455 	  $(call OptionPair,-header,$(COREAPI_HEADER)$(DRAFT_HEADER)) ; \
   456 	  $(call OptionPair,-bottom,$(COREAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
   457 	) >> $@
   458         ifdef COREAPI_TOP_EARLYACCESS
   459 	  @$(call OptionPair,-top,$(COREAPI_TOP_EARLYACCESS)) >> $@
   460         endif
   462 # Create a file with the package names in it
   463 $(COREAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(CORE_PKGS))
   464 	$(prep-target)
   465 	$(call PackageFilter,$(CORE_PKGS))
   467 #############################################################
   468 #
   469 # docletapidocs
   470 #
   472 ALL_OTHER_TARGETS += docletapidocs
   474 DOCLETAPI_DOCDIR := $(JDK_API_DOCSDIR)/javadoc/doclet
   475 DOCLETAPI2COREAPI := ../../$(JDKJRE2COREAPI)
   476 DOCLETAPI_DOCTITLE := Doclet API
   477 DOCLETAPI_WINDOWTITLE := Doclet API
   478 DOCLETAPI_HEADER := <strong>Doclet API</strong>
   479 DOCLETAPI_BOTTOM := $(call CommonTrademarkBottom,$(DOCLETAPI_FIRST_COPYRIGHT_YEAR))
   480 DOCLETAPI_GROUPNAME := Packages
   481 DOCLETAPI_REGEXP := com.sun.javadoc
   482 # DOCLETAPI_PKGS is located in NON_CORE_PKGS.gmk
   484 # The index.html, options, and packages files
   485 DOCLETAPI_INDEX_FILE = $(DOCLETAPI_DOCDIR)/index.html
   486 DOCLETAPI_OPTIONS_FILE = $(DOCSTMPDIR)/docletapi.options
   487 DOCLETAPI_PACKAGES_FILE = $(DOCSTMPDIR)/docletapi.packages
   489 docletapidocs: $(DOCLETAPI_INDEX_FILE)
   491 # Set relative location to core api document root
   492 $(DOCLETAPI_INDEX_FILE): GET2DOCSDIR=$(DOCLETAPI2COREAPI)/..
   494 # Run javadoc if the index file is out of date or missing
   495 $(DOCLETAPI_INDEX_FILE): $(DOCLETAPI_OPTIONS_FILE) $(DOCLETAPI_PACKAGES_FILE) coredocs
   496 	$(prep-javadoc)
   497 	$(call JavadocSummary,$(DOCLETAPI_OPTIONS_FILE),$(DOCLETAPI_PACKAGES_FILE))
   498 	$(JAVADOC_CMD) -d $(@D) \
   499 	    @$(DOCLETAPI_OPTIONS_FILE) @$(DOCLETAPI_PACKAGES_FILE)
   501 # Create file with javadoc options in it
   502 $(DOCLETAPI_OPTIONS_FILE):
   503 	$(prep-target)
   504 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
   505 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
   506 	  $(call OptionPair,-encoding,ascii) ; \
   507 	  $(call OptionOnly,-breakiterator) ; \
   508 	  $(call OptionPair,-doctitle,$(DOCLETAPI_DOCTITLE)) ; \
   509 	  $(call OptionPair,-windowtitle,$(DOCLETAPI_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   510 	  $(call OptionPair,-header,$(DOCLETAPI_HEADER)$(DRAFT_HEADER)) ; \
   511 	  $(call OptionPair,-bottom,$(DOCLETAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
   512 	  $(call OptionTrip,-group,$(DOCLETAPI_GROUPNAME),$(DOCLETAPI_REGEXP)); \
   513 	  $(call OptionTrip,-linkoffline,$(DOCLETAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
   514 	) >> $@
   516 # Create a file with the package names in it
   517 $(DOCLETAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(DOCLETAPI_PKGS))
   518 	$(prep-target)
   519 	$(call PackageFilter,$(DOCLETAPI_PKGS))
   521 #############################################################
   522 #
   523 # tagletapidocs
   524 #
   526 ALL_OTHER_TARGETS += tagletapidocs
   527 TAGLETAPI_DOCDIR := $(JDK_API_DOCSDIR)/javadoc/taglet
   528 TAGLETAPI2COREAPI := ../../$(JDKJRE2COREAPI)
   529 TAGLETAPI_BOTTOM := $(call CommonTrademarkBottom,$(TAGLETAPI_FIRST_COPYRIGHT_YEAR))
   530 # TAGLETAPI_FILE is located in NON_CORE_PKGS.gmk
   532 # Temporary directory (special generation rules)
   533 TAGLETAPI_TEMPDIR = $(DOCSTMPDIR)/taglets_temp
   535 # The index.html, options, and packages files
   536 TAGLETAPI_INDEX_FILE = $(TAGLETAPI_DOCDIR)/index.html
   537 TAGLETAPI_OPTIONS_FILE = $(DOCSTMPDIR)/tagletapi.options
   538 TAGLETAPI_PACKAGES_FILE = $(DOCSTMPDIR)/tagletapi.packages
   540 tagletapidocs: $(TAGLETAPI_INDEX_FILE)
   542 # Set relative location to core api document root
   543 $(TAGLETAPI_INDEX_FILE): GET2DOCSDIR=$(TAGLETAPI2COREAPI)/..
   545 # Run javadoc if the index file is out of date or missing
   546 $(TAGLETAPI_INDEX_FILE): $(TAGLETAPI_OPTIONS_FILE) $(TAGLETAPI_PACKAGES_FILE) coredocs
   547 	$(prep-javadoc)
   548 	$(RM) -r $(TAGLETAPI_TEMPDIR)
   549 	$(MKDIR) -p $(TAGLETAPI_TEMPDIR)
   550 	$(call JavadocSummary,$(TAGLETAPI_OPTIONS_FILE),$(TAGLETAPI_PACKAGES_FILE))
   551 	$(JAVADOC_CMD) -d $(TAGLETAPI_TEMPDIR) \
   552 	    @$(TAGLETAPI_OPTIONS_FILE) @$(TAGLETAPI_PACKAGES_FILE)
   553 	cp -r $(TAGLETAPI_TEMPDIR)/com $(@D)
   554 	cp $(TAGLETAPI_TEMPDIR)/stylesheet.css $(@D)
   555 	$(RM) -r $(TAGLETAPI_TEMPDIR)
   557 # Create file with javadoc options in it
   558 $(TAGLETAPI_OPTIONS_FILE):
   559 	$(prep-target)
   560 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
   561 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
   562 	  $(call OptionPair,-encoding,ascii) ; \
   563 	  $(call OptionOnly,-nonavbar) ; \
   564 	  $(call OptionOnly,-noindex) ; \
   565 	  $(call OptionPair,-bottom,$(TAGLETAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
   566 	  $(call OptionTrip,-linkoffline,$(TAGLETAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
   567 	) >> $@
   569 # Create a file with the package names in it
   570 $(TAGLETAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(TAGLETAPI_PKGS))
   571 	$(prep-target)
   572 	@($(ECHO) "$(JDK_IMPSRC)/$(TAGLETAPI_FILE)" ) > $@
   574 #############################################################
   575 #
   576 # domapidocs
   577 #
   579 ALL_OTHER_TARGETS += domapidocs
   581 DOMAPI_DOCDIR := $(JRE_API_DOCSDIR)/plugin/dom
   582 DOMAPI2COREAPI := ../../$(JDKJRE2COREAPI)
   583 DOMAPI_DOCTITLE := Common DOM API
   584 DOMAPI_WINDOWTITLE := Common DOM API
   585 DOMAPI_HEADER := <strong>Common DOM API</strong>
   586 DOMAPI_BOTTOM := $(call CommonTrademarkBottom,$(DOMAPI_FIRST_COPYRIGHT_YEAR))
   587 DOMAPI_GROUPNAME := Packages
   588 DOMAPI_REGEXP := com.sun.java.browser.dom:org.w3c.dom*
   589 # DOMAPI_PKGS is located in NON_CORE_PKGS.gmk
   591 # The index.html, options, and packages files
   592 DOMAPI_INDEX_FILE = $(DOMAPI_DOCDIR)/index.html
   593 DOMAPI_OPTIONS_FILE = $(DOCSTMPDIR)/domapi.options
   594 DOMAPI_PACKAGES_FILE = $(DOCSTMPDIR)/domapi.packages
   596 domapidocs: $(DOMAPI_INDEX_FILE)
   598 # Set relative location to core api document root
   599 $(DOMAPI_INDEX_FILE): GET2DOCSDIR=$(DOMAPI2COREAPI)/..
   601 # Run javadoc if the index file is out of date or missing
   602 $(DOMAPI_INDEX_FILE): $(DOMAPI_OPTIONS_FILE) $(DOMAPI_PACKAGES_FILE) coredocs
   603 	$(prep-javadoc)
   604 	$(call JavadocSummary,$(DOMAPI_OPTIONS_FILE),$(DOMAPI_PACKAGES_FILE))
   605 	$(JAVADOC_CMD) -d $(@D) \
   606 	    @$(DOMAPI_OPTIONS_FILE) @$(DOMAPI_PACKAGES_FILE)
   608 # Create file with javadoc options in it
   609 $(DOMAPI_OPTIONS_FILE):
   610 	$(prep-target)
   611 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
   612 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
   613 	  $(call OptionPair,-encoding,ascii) ; \
   614 	  $(call OptionOnly,-splitIndex) ; \
   615 	  $(call OptionPair,-doctitle,$(DOMAPI_DOCTITLE)) ; \
   616 	  $(call OptionPair,-windowtitle,$(DOMAPI_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   617 	  $(call OptionPair,-header,$(DOMAPI_HEADER)$(DRAFT_HEADER)) ; \
   618 	  $(call OptionPair,-bottom,$(DOMAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
   619 	  $(call OptionTrip,-group,$(DOMAPI_GROUPNAME),$(DOMAPI_REGEXP)); \
   620 	  $(call OptionTrip,-linkoffline,$(DOMAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
   621 	) >> $@
   623 # Create a file with the package names in it
   624 $(DOMAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(DOMAPI_PKGS))
   625 	$(prep-target)
   626 	$(call PackageFilter,$(DOMAPI_PKGS))
   628 #############################################################
   629 #
   630 # jpdadocs
   631 #
   633 ALL_OTHER_TARGETS += jpdadocs
   635 jpdadocs: jdidocs jdwpdocs jvmtidocs
   637 #############################################################
   638 #
   639 # jdidocs
   640 #
   642 ALL_OTHER_TARGETS += jdidocs
   644 JDI_DOCDIR := $(JDK_API_DOCSDIR)/jpda/jdi
   645 JDI2COREAPI := ../../$(JDKJRE2COREAPI)
   646 JDI_DOCTITLE := Java$(TRADEMARK) Debug Interface
   647 JDI_WINDOWTITLE := Java Debug Interface
   648 JDI_HEADER := <strong>Java Debug Interface</strong>
   649 JDI_BOTTOM := $(call CommonBottom,$(JDI_FIRST_COPYRIGHT_YEAR))
   650 JDI_OVERVIEW := $(JDK_SHARE_CLASSES)/jdi-overview.html
   651 # JDI_PKGS is located in NON_CORE_PKGS.gmk
   653 # The index.html, options, and packages files
   654 JDI_INDEX_FILE = $(JDI_DOCDIR)/index.html
   655 JDI_OPTIONS_FILE = $(DOCSTMPDIR)/jdi.options
   656 JDI_PACKAGES_FILE = $(DOCSTMPDIR)/jdi.packages
   658 jdidocs: $(JDI_INDEX_FILE)
   660 # Set relative location to core api document root
   661 $(JDI_INDEX_FILE): GET2DOCSDIR=$(JDI2COREAPI)/..
   663 # Run javadoc if the index file is out of date or missing
   664 $(JDI_INDEX_FILE): $(JDI_OPTIONS_FILE) $(JDI_PACKAGES_FILE) coredocs
   665 	$(prep-javadoc)
   666 	$(call JavadocSummary,$(JDI_OPTIONS_FILE),$(JDI_PACKAGES_FILE))
   667 	$(JAVADOC_CMD) -d $(@D) \
   668 	    @$(JDI_OPTIONS_FILE) @$(JDI_PACKAGES_FILE)
   670 # Create file with javadoc options in it
   671 $(JDI_OPTIONS_FILE): $(JDI_OVERVIEW)
   672 	$(prep-target)
   673 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
   674 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
   675 	  $(call OptionPair,-encoding,ascii) ; \
   676 	  $(call OptionPair,-overview,$(JDI_OVERVIEW)) ; \
   677 	  $(call OptionPair,-doctitle,$(JDI_DOCTITLE)) ; \
   678 	  $(call OptionPair,-windowtitle,$(JDI_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   679 	  $(call OptionPair,-header,$(JDI_HEADER)$(DRAFT_HEADER)) ; \
   680 	  $(call OptionPair,-bottom,$(JDI_BOTTOM)$(DRAFT_BOTTOM)) ; \
   681 	  $(call OptionTrip,-linkoffline,$(JDI2COREAPI),$(COREAPI_DOCSDIR)/); \
   682 	) >> $@
   684 # Create a file with the package names in it
   685 $(JDI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JDI_PKGS))
   686 	$(prep-target)
   687 	$(call PackageFilter,$(JDI_PKGS))
   689 #############################################################
   690 #
   691 # jdwpdocs
   692 #
   694 ALL_OTHER_TARGETS += jdwpdocs
   696 JDWP_DOCDIR = $(PLATFORM_DOCSDIR)/jpda/jdwp
   698 jdwpdocs: $(JDWP_DOCDIR)/jdwp-protocol.html
   699 $(JDWP_DOCDIR)/jdwp-protocol.html : $(JDK_OUTPUTDIR)/gensrc_jdwp_doc/jdwp-protocol.html
   700 	$(MKDIR) -p $(@D)
   701 	$(RM) $@
   702 	$(CP) $< $@
   704 #############################################################
   705 #
   706 # jvmtidocs
   707 #
   709 ALL_OTHER_TARGETS += jvmtidocs
   711 JVMTI_DOCDIR = $(PLATFORM_DOCSDIR)/jvmti
   712 JVMTI_HTML = $(HOTSPOT_DIST)/docs/platform/jvmti/jvmti.html
   714 jvmtidocs: $(JVMTI_DOCDIR)/jvmti.html
   715 $(JVMTI_DOCDIR)/jvmti.html:
   716 	@$(prep-javadoc)
   717 	@if [ -f $(JVMTI_HTML) ] ; then \
   718 	  $(ECHO) "$(CP) $(JVMTI_HTML) $@"; \
   719 	  $(CP) $(JVMTI_HTML) $@; \
   720 	else \
   721 	  $(ECHO) "WARNING: Generated file does not exist: $(JVMTI_HTML)"; \
   722 	fi
   724 #############################################################
   725 #
   726 # jaasdocs
   727 #
   729 ALL_OTHER_TARGETS += jaasdocs
   731 JAAS_DOCDIR := $(JRE_API_DOCSDIR)/security/jaas/spec
   732 JAAS2COREAPI := ../../../$(JDKJRE2COREAPI)
   733 JAAS_DOCTITLE := Java$(TRADEMARK) Authentication and Authorization Service
   734 JAAS_WINDOWTITLE := Java Authentication and Authorization Service
   735 JAAS_HEADER := <strong>Java Authentication and Authorization Service</strong>
   736 JAAS_BOTTOM := $(call CommonBottom,$(JAAS_FIRST_COPYRIGHT_YEAR))
   737 # JAAS_PKGS is located in NON_CORE_PKGS.gmk
   738 JAAS_OVERVIEW := $(JDK_SHARE_CLASSES)/com/sun/security/auth/jaas-overview.html
   740 # The index.html, options, and packages files
   741 JAAS_INDEX_FILE = $(JAAS_DOCDIR)/index.html
   742 JAAS_OPTIONS_FILE = $(DOCSTMPDIR)/jaas.options
   743 JAAS_PACKAGES_FILE = $(DOCSTMPDIR)/jaas.packages
   745 jaasdocs: $(JAAS_INDEX_FILE)
   747 # Set relative location to core api document root
   748 $(JAAS_INDEX_FILE): GET2DOCSDIR=$(JAAS2COREAPI)/..
   750 # Run javadoc if the index file is out of date or missing
   751 $(JAAS_INDEX_FILE): $(JAAS_OPTIONS_FILE) $(JAAS_PACKAGES_FILE) coredocs
   752 	$(prep-javadoc)
   753 	$(call JavadocSummary,$(JAAS_OPTIONS_FILE),$(JAAS_PACKAGES_FILE))
   754 	$(JAVADOC_CMD) -d $(@D) \
   755 	    @$(JAAS_OPTIONS_FILE) @$(JAAS_PACKAGES_FILE)
   757 # Create file with javadoc options in it
   758 $(JAAS_OPTIONS_FILE): $(JAAS_OVERVIEW)
   759 	$(prep-target)
   760 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
   761 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
   762 	  $(call OptionPair,-encoding,ascii) ; \
   763 	  $(call OptionPair,-overview,$(JAAS_OVERVIEW)) ; \
   764 	  $(call OptionPair,-doctitle,$(JAAS_DOCTITLE)) ; \
   765 	  $(call OptionPair,-windowtitle,$(JAAS_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   766 	  $(call OptionPair,-header,$(JAAS_HEADER)$(DRAFT_HEADER)) ; \
   767 	  $(call OptionPair,-bottom,$(JAAS_BOTTOM)$(DRAFT_BOTTOM)) ; \
   768 	  $(call OptionTrip,-linkoffline,$(JAAS2COREAPI),$(COREAPI_DOCSDIR)/); \
   769 	) >> $@
   771 # Create a file with the package names in it
   772 $(JAAS_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JAAS_PKGS))
   773 	$(prep-target)
   774 	$(call PackageFilter,$(JAAS_PKGS))
   776 #############################################################
   777 #
   778 # jgssdocs
   779 #
   781 ALL_OTHER_TARGETS += jgssdocs
   783 JGSS_DOCDIR := $(JRE_API_DOCSDIR)/security/jgss/spec
   784 JGSS2COREAPI := ../../../$(JDKJRE2COREAPI)
   785 JGSS_DOCTITLE := Java$(TRADEMARK) GSS-API Utilities
   786 JGSS_WINDOWTITLE := Java GSS-API Utilities
   787 JGSS_HEADER := <strong>Java GSS-API Utilities</strong>
   788 JGSS_BOTTOM := $(call CommonBottom,$(JGSS_FIRST_COPYRIGHT_YEAR))
   789 JGSS_OVERVIEW := $(JDK_SHARE_CLASSES)/com/sun/security/jgss/jgss-overview.html
   790 # JGSS_PKGS is located in NON_CORE_PKGS.gmk
   792 # The index.html, options, and packages files
   793 JGSS_INDEX_FILE = $(JGSS_DOCDIR)/index.html
   794 JGSS_OPTIONS_FILE = $(DOCSTMPDIR)/jgss.options
   795 JGSS_PACKAGES_FILE = $(DOCSTMPDIR)/jgss.packages
   797 jgssdocs: $(JGSS_INDEX_FILE)
   799 # Set relative location to core api document root
   800 $(JGSS_INDEX_FILE): GET2DOCSDIR=$(JGSS2COREAPI)/..
   802 # Run javadoc if the index file is out of date or missing
   803 $(JGSS_INDEX_FILE): $(JGSS_OPTIONS_FILE) $(JGSS_PACKAGES_FILE) coredocs
   804 	$(prep-javadoc)
   805 	$(call JavadocSummary,$(JGSS_OPTIONS_FILE),$(JGSS_PACKAGES_FILE))
   806 	$(JAVADOC_CMD) -d $(@D) \
   807 	    @$(JGSS_OPTIONS_FILE) @$(JGSS_PACKAGES_FILE)
   809 # Create file with javadoc options in it
   810 $(JGSS_OPTIONS_FILE): $(JGSS_OVERVIEW)
   811 	$(prep-target)
   812 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
   813 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
   814 	  $(call OptionPair,-encoding,ascii) ; \
   815 	  $(call OptionOnly,-nodeprecatedlist) ; \
   816 	  $(call OptionPair,-overview,$(JGSS_OVERVIEW)) ; \
   817 	  $(call OptionPair,-doctitle,$(JGSS_DOCTITLE)) ; \
   818 	  $(call OptionPair,-windowtitle,$(JGSS_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   819 	  $(call OptionPair,-header,$(JGSS_HEADER)$(DRAFT_HEADER)) ; \
   820 	  $(call OptionPair,-bottom,$(JGSS_BOTTOM)$(DRAFT_BOTTOM)) ; \
   821 	  $(call OptionTrip,-linkoffline,$(JGSS2COREAPI),$(COREAPI_DOCSDIR)/); \
   822 	) >> $@
   824 # Create a file with the package names in it
   825 $(JGSS_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JGSS_PKGS))
   826 	$(prep-target)
   827 	$(call PackageFilter,$(JGSS_PKGS))
   829 #############################################################
   830 #
   831 # smartcardiodocs
   832 #
   834 ALL_OTHER_TARGETS += smartcardiodocs
   836 SMARTCARDIO_DOCDIR := $(JRE_API_DOCSDIR)/security/smartcardio/spec
   837 SMARTCARDIO2COREAPI := ../../../$(JDKJRE2COREAPI)
   838 SMARTCARDIO_DOCTITLE := Java$(TRADEMARK) Smart Card I/O
   839 SMARTCARDIO_WINDOWTITLE := Java Smart Card I/O
   840 SMARTCARDIO_HEADER := <strong>Java Smart Card I/O</strong>
   841 SMARTCARDIO_BOTTOM := $(call CommonBottom,$(SMARTCARDIO_FIRST_COPYRIGHT_YEAR))
   842 # SMARTCARDIO_PKGS is located in NON_CORE_PKGS.gmk
   844 # The index.html, options, and packages files
   845 SMARTCARDIO_INDEX_FILE = $(SMARTCARDIO_DOCDIR)/index.html
   846 SMARTCARDIO_OPTIONS_FILE = $(DOCSTMPDIR)/smartcardio.options
   847 SMARTCARDIO_PACKAGES_FILE = $(DOCSTMPDIR)/smartcardio.packages
   849 smartcardiodocs: $(SMARTCARDIO_INDEX_FILE)
   851 # Set relative location to core api document root
   852 $(SMARTCARDIO_INDEX_FILE): GET2DOCSDIR=$(SMARTCARDIO2COREAPI)/..
   854 # Run javadoc if the index file is out of date or missing
   855 $(SMARTCARDIO_INDEX_FILE): $(SMARTCARDIO_OPTIONS_FILE) $(SMARTCARDIO_PACKAGES_FILE) coredocs
   856 	$(prep-javadoc)
   857 	$(call JavadocSummary,$(SMARTCARDIO_OPTIONS_FILE),$(SMARTCARDIO_PACKAGES_FILE))
   858 	$(JAVADOC_CMD) -d $(@D) \
   859 	    @$(SMARTCARDIO_OPTIONS_FILE) @$(SMARTCARDIO_PACKAGES_FILE)
   861 # Create file with javadoc options in it
   862 $(SMARTCARDIO_OPTIONS_FILE):
   863 	$(prep-target)
   864 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
   865 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
   866 	  $(call OptionPair,-encoding,ascii) ; \
   867 	  $(call OptionOnly,-nodeprecatedlist) ; \
   868 	  $(call OptionPair,-doctitle,$(SMARTCARDIO_DOCTITLE)) ; \
   869 	  $(call OptionPair,-windowtitle,$(SMARTCARDIO_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   870 	  $(call OptionPair,-header,$(SMARTCARDIO_HEADER)$(DRAFT_HEADER)); \
   871 	  $(call OptionPair,-bottom,$(SMARTCARDIO_BOTTOM)$(DRAFT_BOTTOM)); \
   872 	  $(call OptionTrip,-linkoffline,$(SMARTCARDIO2COREAPI),$(COREAPI_DOCSDIR)/); \
   873 	) >> $@
   875 # Create a file with the package names in it
   876 $(SMARTCARDIO_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(SMARTCARDIO_PKGS))
   877 	$(prep-target)
   878 	$(call PackageFilter,$(SMARTCARDIO_PKGS))
   880 #############################################################
   881 #
   882 # httpserverdocs
   883 #
   885 ALL_OTHER_TARGETS += httpserverdocs
   887 HTTPSERVER_DOCDIR := $(JRE_API_DOCSDIR)/net/httpserver/spec
   888 HTTPSERVER2COREAPI := ../../../$(JDKJRE2COREAPI)
   889 HTTPSERVER_DOCTITLE := Java$(TRADEMARK) HTTP Server
   890 HTTPSERVER_WINDOWTITLE := Java HTTP Server
   891 HTTPSERVER_HEADER := <strong>Java HTTP Server</strong>
   892 HTTPSERVER_BOTTOM := $(call CommonBottom,$(HTTPSERVER_FIRST_COPYRIGHT_YEAR))
   893 # HTTPSERVER_PKGS is located in NON_CORE_PKGS.gmk
   895 HTTPSERVER_INDEX_HTML = $(HTTPSERVER_DOCDIR)/index.html
   896 HTTPSERVER_OPTIONS_FILE = $(DOCSTMPDIR)/httpserver.options
   897 HTTPSERVER_PACKAGES_FILE = $(DOCSTMPDIR)/httpserver.packages
   899 httpserverdocs: $(HTTPSERVER_INDEX_HTML)
   901 # Set relative location to core api document root
   902 $(HTTPSERVER_INDEX_HTML): GET2DOCSDIR=$(HTTPSERVER2COREAPI)/..
   904 # Run javadoc if the index file is out of date or missing
   905 $(HTTPSERVER_INDEX_HTML): $(HTTPSERVER_OPTIONS_FILE) $(HTTPSERVER_PACKAGES_FILE) coredocs
   906 	$(prep-javadoc)
   907 	$(call JavadocSummary,$(HTTPSERVER_OPTIONS_FILE),$(HTTPSERVER_PACKAGES_FILE))
   908 	$(JAVADOC_CMD) -d $(@D) \
   909 	    @$(HTTPSERVER_OPTIONS_FILE) @$(HTTPSERVER_PACKAGES_FILE)
   911 # Create file with javadoc options in it
   912 $(HTTPSERVER_OPTIONS_FILE):
   913 	$(prep-target)
   914 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
   915 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
   916 	  $(call OptionPair,-encoding,ascii) ; \
   917 	  $(call OptionOnly,-nodeprecatedlist) ; \
   918 	  $(call OptionPair,-doctitle,$(HTTPSERVER_DOCTITLE)) ; \
   919 	  $(call OptionPair,-windowtitle,$(HTTPSERVER_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   920 	  $(call OptionPair,-header,$(HTTPSERVER_HEADER)$(DRAFT_HEADER)); \
   921 	  $(call OptionPair,-bottom,$(HTTPSERVER_BOTTOM)$(DRAFT_BOTTOM)); \
   922 	  $(call OptionTrip,-linkoffline,$(HTTPSERVER2COREAPI),$(COREAPI_DOCSDIR)/); \
   923 	) >> $@
   925 # Create a file with the package names in it
   926 $(HTTPSERVER_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(HTTPSERVER_PKGS))
   927 	$(prep-target)
   928 	$(call PackageFilter,$(HTTPSERVER_PKGS))
   930 #############################################################
   931 #
   932 # mgmtdocs
   933 #
   935 ALL_OTHER_TARGETS += mgmtdocs
   937 MGMT_DOCDIR := $(JRE_API_DOCSDIR)/management/extension
   938 MGMT2COREAPI := ../../$(JDKJRE2COREAPI)
   939 JVM_MIB_NAME := JVM-MANAGEMENT-MIB.mib
   940 JVM_MIB_SRC := $(JDK_TOPDIR)/src/closed/share/classes/sun/management/snmp/$(JVM_MIB_NAME)
   941 MGMT_DOCTITLE := Monitoring and Management Interface for the Java$(TRADEMARK) Platform
   942 MGMT_WINDOWTITLE := Monitoring and Management Interface for the Java Platform
   943 MGMT_HEADER := <strong>Monitoring and Management Interface for the Java Platform</strong>
   944 MGMT_BOTTOM := $(call CommonBottom,$(MGMT_FIRST_COPYRIGHT_YEAR))
   945 MGMT_OVERVIEW := $(JDK_SHARE_CLASSES)/com/sun/management/mgmt-overview.html
   946 # MGMT_PKGS is located in NON_CORE_PKGS.gmk
   948 # The index.html, options, and packages files
   949 MGMT_INDEX_FILE = $(MGMT_DOCDIR)/index.html
   950 MGMT_OPTIONS_FILE = $(DOCSTMPDIR)/mgmt.options
   951 MGMT_PACKAGES_FILE = $(DOCSTMPDIR)/mgmt.packages
   953 mgmtdocs: $(MGMT_INDEX_FILE)
   955 # Set relative location to core api document root
   956 $(MGMT_INDEX_FILE): GET2DOCSDIR=$(MGMT2COREAPI)/..
   958 # Run javadoc if the index file is out of date or missing
   959 $(MGMT_INDEX_FILE): $(MGMT_OPTIONS_FILE) $(MGMT_PACKAGES_FILE) coredocs
   960 	$(prep-javadoc)
   961 	@if [ -f $(JVM_MIB_SRC) ] ; then \
   962 	  $(ECHO) "$(CP) $(JVM_MIB_SRC) $(@D)/.."; \
   963 	  $(CP) $(JVM_MIB_SRC) $(@D)/.. ; \
   964 	else \
   965 	  $(ECHO) "WARNING: File $(JVM_MIB_NAME) not available."; \
   966 	fi
   967 	$(call JavadocSummary,$(MGMT_OPTIONS_FILE),$(MGMT_PACKAGES_FILE))
   968 	$(JAVADOC_CMD) -d $(@D) \
   969 	    @$(MGMT_OPTIONS_FILE) @$(MGMT_PACKAGES_FILE)
   971 # Create file with javadoc options in it
   972 $(MGMT_OPTIONS_FILE): $(MGMT_OVERVIEW)
   973 	$(prep-target)
   974 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
   975 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
   976 	  $(call OptionPair,-encoding,ascii) ; \
   977 	  $(call OptionOnly,-nodeprecatedlist) ; \
   978 	  $(call OptionPair,-overview,$(MGMT_OVERVIEW)) ; \
   979 	  $(call OptionPair,-doctitle,$(MGMT_DOCTITLE)) ; \
   980 	  $(call OptionPair,-windowtitle,$(MGMT_WINDOWTITLE) $(DRAFT_WINTITLE)); \
   981 	  $(call OptionPair,-header,$(MGMT_HEADER)$(DRAFT_HEADER)) ; \
   982 	  $(call OptionPair,-bottom,$(MGMT_BOTTOM)$(DRAFT_BOTTOM)) ; \
   983 	  $(call OptionTrip,-linkoffline,$(MGMT2COREAPI),$(COREAPI_DOCSDIR)/); \
   984 	) >> $@
   986 # Create a file with the package names in it
   987 $(MGMT_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(MGMT_PKGS))
   988 	$(prep-target)
   989 	$(call PackageFilter,$(MGMT_PKGS))
   991 #############################################################
   992 #
   993 # attachdocs
   994 #
   996 ALL_OTHER_TARGETS += attachdocs
   998 ATTACH_DOCDIR := $(JDK_API_DOCSDIR)/attach/spec
   999 ATTACH2COREAPI := ../../$(JDKJRE2COREAPI)
  1000 ATTACH_DOCTITLE := Attach API
  1001 ATTACH_WINDOWTITLE := Attach API
  1002 ATTACH_HEADER := <strong>Attach API</strong>
  1003 ATTACH_BOTTOM := $(call CommonBottom,$(ATTACH_FIRST_COPYRIGHT_YEAR))
  1004 # ATTACH_PKGS is located in NON_CORE_PKGS.gmk
  1006 ATTACH_INDEX_HTML = $(ATTACH_DOCDIR)/index.html
  1007 ATTACH_OPTIONS_FILE = $(DOCSTMPDIR)/attach.options
  1008 ATTACH_PACKAGES_FILE = $(DOCSTMPDIR)/attach.packages
  1010 attachdocs: $(ATTACH_INDEX_HTML)
  1012 # Set relative location to core api document root
  1013 $(ATTACH_INDEX_HTML): GET2DOCSDIR=$(ATTACH2COREAPI)/..
  1015 # Run javadoc if the index file is out of date or missing
  1016 $(ATTACH_INDEX_HTML): $(ATTACH_OPTIONS_FILE) $(ATTACH_PACKAGES_FILE) coredocs
  1017 	$(prep-javadoc)
  1018 	$(call JavadocSummary,$(ATTACH_OPTIONS_FILE),$(ATTACH_PACKAGES_FILE))
  1019 	$(JAVADOC_CMD) -d $(@D) \
  1020 	    @$(ATTACH_OPTIONS_FILE) @$(ATTACH_PACKAGES_FILE)
  1022 # Create file with javadoc options in it
  1023 $(ATTACH_OPTIONS_FILE):
  1024 	$(prep-target)
  1025 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
  1026 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
  1027 	  $(call OptionPair,-encoding,ascii) ; \
  1028 	  $(call OptionOnly,-nodeprecatedlist) ; \
  1029 	  $(call OptionPair,-doctitle,$(ATTACH_DOCTITLE)) ; \
  1030 	  $(call OptionPair,-windowtitle,$(ATTACH_WINDOWTITLE) $(DRAFT_WINTITLE)); \
  1031 	  $(call OptionPair,-header,$(ATTACH_HEADER)$(DRAFT_HEADER)) ; \
  1032 	  $(call OptionPair,-bottom,$(ATTACH_BOTTOM)$(DRAFT_BOTTOM)) ; \
  1033 	  $(call OptionTrip,-linkoffline,$(ATTACH2COREAPI),$(COREAPI_DOCSDIR)/); \
  1034 	) >> $@
  1036 # Create a file with the package names in it
  1037 $(ATTACH_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(ATTACH_PKGS))
  1038 	$(prep-target)
  1039 	$(call PackageFilter,$(ATTACH_PKGS))
  1041 #############################################################
  1043 # jconsoledocs
  1046 ALL_OTHER_TARGETS += jconsoledocs
  1048 JCONSOLE_DOCDIR := $(JDK_API_DOCSDIR)/jconsole/spec
  1049 JCONSOLE2COREAPI := ../../$(JDKJRE2COREAPI)
  1050 JCONSOLE_DOCTITLE := JConsole API
  1051 JCONSOLE_WINDOWTITLE := JConsole API
  1052 JCONSOLE_HEADER := <strong>JConsole API</strong>
  1053 JCONSOLE_BOTTOM := $(call CommonBottom,$(JCONSOLE_FIRST_COPYRIGHT_YEAR))
  1054 # JCONSOLE_PKGS is located in NON_CORE_PKGS.gmk
  1056 JCONSOLE_INDEX_HTML = $(JCONSOLE_DOCDIR)/index.html
  1057 JCONSOLE_OPTIONS_FILE = $(DOCSTMPDIR)/jconsole.options
  1058 JCONSOLE_PACKAGES_FILE = $(DOCSTMPDIR)/jconsole.packages
  1060 jconsoledocs: $(JCONSOLE_INDEX_HTML)
  1062 # Set relative location to core api document root
  1063 $(JCONSOLE_INDEX_HTML): GET2DOCSDIR=$(JCONSOLE2COREAPI)/..
  1065 # Run javadoc if the index file is out of date or missing
  1066 $(JCONSOLE_INDEX_HTML): $(JCONSOLE_OPTIONS_FILE) $(JCONSOLE_PACKAGES_FILE) coredocs
  1067 	$(prep-javadoc)
  1068 	$(call JavadocSummary,$(JCONSOLE_OPTIONS_FILE),$(JCONSOLE_PACKAGES_FILE))
  1069 	$(JAVADOC_CMD) -d $(@D) \
  1070 	    @$(JCONSOLE_OPTIONS_FILE) @$(JCONSOLE_PACKAGES_FILE)
  1072 # Create file with javadoc options in it
  1073 $(JCONSOLE_OPTIONS_FILE):
  1074 	$(prep-target)
  1075 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
  1076 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
  1077 	  $(call OptionPair,-encoding,ascii) ; \
  1078 	  $(call OptionOnly,-nodeprecatedlist) ; \
  1079 	  $(call OptionPair,-doctitle,$(JCONSOLE_DOCTITLE)) ; \
  1080 	  $(call OptionPair,-windowtitle,$(JCONSOLE_WINDOWTITLE) $(DRAFT_WINTITLE)); \
  1081 	  $(call OptionPair,-header,$(JCONSOLE_HEADER)$(DRAFT_HEADER)) ; \
  1082 	  $(call OptionPair,-bottom,$(JCONSOLE_BOTTOM)$(DRAFT_BOTTOM)) ; \
  1083 	  $(call OptionTrip,-linkoffline,$(JCONSOLE2COREAPI),$(COREAPI_DOCSDIR)/); \
  1084 	) >> $@
  1086 # Create a file with the package names in it
  1087 $(JCONSOLE_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JCONSOLE_PKGS))
  1088 	$(prep-target)
  1089 	$(call PackageFilter,$(JCONSOLE_PKGS))
  1091 #############################################################
  1093 # treeapidocs
  1096 ALL_OTHER_TARGETS += treeapidocs
  1098 TREEAPI_DOCDIR := $(JDK_API_DOCSDIR)/javac/tree
  1099 TREEAPI2COREAPI := ../../$(JDKJRE2COREAPI)
  1100 TREEAPI_DOCTITLE := Compiler Tree API
  1101 TREEAPI_WINDOWTITLE := Compiler Tree API
  1102 TREEAPI_HEADER := <strong>Compiler Tree API</strong>
  1103 TREEAPI_BOTTOM := $(call CommonBottom,$(TREEAPI_FIRST_COPYRIGHT_YEAR))
  1104 TREEAPI_GROUPNAME := Packages
  1105 TREEAPI_REGEXP := com.sun.source.*
  1106 # TREEAPI_PKGS is located in NON_CORE_PKGS.gmk
  1108 TREEAPI_INDEX_HTML = $(TREEAPI_DOCDIR)/index.html
  1109 TREEAPI_OPTIONS_FILE = $(DOCSTMPDIR)/treeapi.options
  1110 TREEAPI_PACKAGES_FILE = $(DOCSTMPDIR)/treeapi.packages
  1112 treeapidocs: $(TREEAPI_INDEX_HTML)
  1114 # Set relative location to core api document root
  1115 $(TREEAPI_INDEX_HTML): GET2DOCSDIR=$(TREEAPI2COREAPI)/..
  1117 # Run javadoc if the index file is out of date or missing
  1118 $(TREEAPI_INDEX_HTML): $(TREEAPI_OPTIONS_FILE) $(TREEAPI_PACKAGES_FILE) coredocs
  1119 	$(prep-javadoc)
  1120 	$(call JavadocSummary,$(TREEAPI_OPTIONS_FILE),$(TREEAPI_PACKAGES_FILE))
  1121 	$(JAVADOC_CMD) -d $(@D) \
  1122 	    @$(TREEAPI_OPTIONS_FILE) @$(TREEAPI_PACKAGES_FILE)
  1124 # Create file with javadoc options in it
  1125 $(TREEAPI_OPTIONS_FILE):
  1126 	$(prep-target)
  1127 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
  1128 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
  1129 	  $(call OptionPair,-encoding,ascii) ; \
  1130 	  $(call OptionPair,-doctitle,$(TREEAPI_DOCTITLE)) ; \
  1131 	  $(call OptionPair,-windowtitle,$(TREEAPI_WINDOWTITLE) $(DRAFT_WINTITLE)); \
  1132 	  $(call OptionPair,-header,$(TREEAPI_HEADER)$(DRAFT_HEADER)) ; \
  1133 	  $(call OptionPair,-tag,$(TAG_JLS)) ; \
  1134 	  $(call OptionPair,-bottom,$(TREEAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
  1135 	  $(call OptionTrip,-group,$(TREEAPI_GROUPNAME),$(TREEAPI_REGEXP)); \
  1136 	  $(call OptionTrip,-linkoffline,$(TREEAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
  1137 	) >> $@
  1139 # Create a file with the package names in it
  1140 $(TREEAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(TREEAPI_PKGS))
  1141 	$(prep-target)
  1142 	$(call PackageFilter,$(TREEAPI_PKGS))
  1144 #############################################################
  1146 # nashornapidocs
  1149 ALL_OTHER_TARGETS += nashornapidocs
  1151 NASHORNAPI_DOCDIR := $(JDK_API_DOCSDIR)/nashorn
  1152 NASHORNAPI2COREAPI := ../$(JDKJRE2COREAPI)
  1153 NASHORNAPI_DOCTITLE := Nashorn API
  1154 NASHORNAPI_WINDOWTITLE := Nashorn API
  1155 NASHORNAPI_HEADER := <strong>Nashorn API</strong>
  1156 NASHORNAPI_BOTTOM := $(call CommonBottom,$(NASHORNAPI_FIRST_COPYRIGHT_YEAR))
  1157 NASHORNAPI_GROUPNAME := Packages
  1158 NASHORNAPI_REGEXP := jdk.nashorn.api.scripting.*
  1160 # NASHORNAPI_PKGS is located in NON_CORE_PKGS.gmk
  1162 NASHORNAPI_INDEX_HTML = $(NASHORNAPI_DOCDIR)/index.html
  1163 NASHORNAPI_OPTIONS_FILE = $(DOCSTMPDIR)/nashornapi.options
  1164 NASHORNAPI_PACKAGES_FILE = $(DOCSTMPDIR)/nashornapi.packages
  1166 nashornapidocs: $(NASHORNAPI_INDEX_HTML)
  1168 # Set relative location to core api document root
  1169 $(NASHORNAPI_INDEX_HTML): GET2DOCSDIR=$(NASHORNAPI2COREAPI)/..
  1171 # Run javadoc if the index file is out of date or missing
  1172 $(NASHORNAPI_INDEX_HTML): $(NASHORNAPI_OPTIONS_FILE) $(NASHORNAPI_PACKAGES_FILE) coredocs
  1173 	$(prep-javadoc)
  1174 	$(call JavadocSummary,$(NASHORNAPI_OPTIONS_FILE),$(NASHORNAPI_PACKAGES_FILE))
  1175 	$(JAVADOC_CMD) -d $(@D) \
  1176 	    @$(NASHORNAPI_OPTIONS_FILE) @$(NASHORNAPI_PACKAGES_FILE)
  1178 # Create file with javadoc options in it
  1179 $(NASHORNAPI_OPTIONS_FILE):
  1180 	$(prep-target)
  1181 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
  1182 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
  1183 	  $(call OptionPair,-encoding,ascii) ; \
  1184 	  $(call OptionPair,-doctitle,$(NASHORNAPI_DOCTITLE)) ; \
  1185 	  $(call OptionPair,-windowtitle,$(NASHORNAPI_WINDOWTITLE) $(DRAFT_WINTITLE)); \
  1186 	  $(call OptionPair,-header,$(NASHORNAPI_HEADER)$(DRAFT_HEADER)) ; \
  1187 	  $(call OptionPair,-tag,$(TAG_JLS)) ; \
  1188 	  $(call OptionPair,-bottom,$(NASHORNAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
  1189 	  $(call OptionTrip,-group,$(NASHORNAPI_GROUPNAME),$(NASHORNAPI_REGEXP)); \
  1190 	  $(call OptionTrip,-linkoffline,$(NASHORNAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
  1191 	) >> $@
  1193 # Create a file with the package names in it
  1194 $(NASHORNAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(NASHORNAPI_PKGS))
  1195 	$(prep-target)
  1196 	$(call PackageFilter,$(NASHORNAPI_PKGS))
  1198 #############################################################
  1200 # sctpdocs
  1203 ALL_OTHER_TARGETS += sctpdocs
  1205 SCTPAPI_DOCDIR := $(JRE_API_DOCSDIR)/nio/sctp/spec
  1206 SCTPAPI2COREAPI := ../../../$(JDKJRE2COREAPI)
  1207 SCTPAPI_DOCTITLE := SCTP API
  1208 SCTPAPI_WINDOWTITLE := SCTP API
  1209 SCTPAPI_HEADER := <strong>SCTP API</strong>
  1210 SCTPAPI_BOTTOM := $(call CommonBottom,$(SCTPAPI_FIRST_COPYRIGHT_YEAR))
  1211 # SCTPAPI_PKGS is located in NON_CORE_PKGS.gmk
  1213 SCTPAPI_INDEX_HTML = $(SCTPAPI_DOCDIR)/index.html
  1214 SCTPAPI_OPTIONS_FILE = $(DOCSTMPDIR)/sctp.options
  1215 SCTPAPI_PACKAGES_FILE = $(DOCSTMPDIR)/sctp.packages
  1217 sctpdocs: $(SCTPAPI_INDEX_HTML)
  1219 # Set relative location to core api document root
  1220 $(SCTPAPI_INDEX_HTML): GET2DOCSDIR=$(SCTPAPI2COREAPI)/..
  1222 # Run javadoc if the index file is out of date or missing
  1223 $(SCTPAPI_INDEX_HTML): $(SCTPAPI_OPTIONS_FILE) $(SCTPAPI_PACKAGES_FILE) coredocs
  1224 	$(prep-javadoc)
  1225 	$(call JavadocSummary,$(SCTPAPI_OPTIONS_FILE),$(SCTPAPI_PACKAGES_FILE))
  1226 	$(JAVADOC_CMD) -d $(@D) \
  1227 	    @$(SCTPAPI_OPTIONS_FILE) @$(SCTPAPI_PACKAGES_FILE)
  1229 # Create file with javadoc options in it
  1230 $(SCTPAPI_OPTIONS_FILE):
  1231 	$(prep-target)
  1232 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
  1233 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
  1234 	  $(call OptionPair,-encoding,ascii) ; \
  1235 	  $(call OptionOnly,-nodeprecatedlist) ; \
  1236 	  $(call OptionPair,-doctitle,$(SCTPAPI_DOCTITLE)) ; \
  1237 	  $(call OptionPair,-windowtitle,$(SCTPAPI_WINDOWTITLE) $(DRAFT_WINTITLE)); \
  1238 	  $(call OptionPair,-header,$(SCTPAPI_HEADER)$(DRAFT_HEADER)) ; \
  1239 	  $(call OptionPair,-bottom,$(SCTPAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
  1240 	  $(call OptionTrip,-linkoffline,$(SCTPAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
  1241 	) >> $@
  1243 # Create a file with the package names in it
  1244 $(SCTPAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(SCTPAPI_PKGS))
  1245 	$(prep-target)
  1246 	$(call PackageFilter,$(SCTPAPI_PKGS))
  1248 #############################################################
  1250 # jaccessdocs - Java Accessibility Utilities
  1253 ALL_OTHER_TARGETS += jaccessdocs
  1255 JACCESSAPI_DOCDIR := $(JRE_API_DOCSDIR)/accessibility/jaccess/spec
  1256 JACCESSAPI2COREAPI := ../../../$(JDKJRE2COREAPI)
  1257 JACCESSAPI_DOCTITLE := JACCESS API
  1258 JACCESSAPI_WINDOWTITLE := JACCESS API
  1259 JACCESSAPI_HEADER := <strong>JACCESS API</strong>
  1260 JACCESSAPI_BOTTOM := $(call CommonBottom,$(JACCESSAPI_FIRST_COPYRIGHT_YEAR))
  1261 # JACCESSAPI_PKGS is located in NON_CORE_PKGS.gmk
  1263 JACCESSAPI_INDEX_HTML = $(JACCESSAPI_DOCDIR)/index.html
  1264 JACCESSAPI_OPTIONS_FILE = $(DOCSTMPDIR)/jaccess.options
  1265 JACCESSAPI_PACKAGES_FILE = $(DOCSTMPDIR)/jaccess.packages
  1267 jaccessdocs: $(JACCESSAPI_INDEX_HTML)
  1269 # Set relative location to core api document root
  1270 $(JACCESSAPI_INDEX_HTML): GET2DOCSDIR=$(JACCESSAPI2COREAPI)/..
  1272 # Run javadoc if the index file is out of date or missing
  1273 $(JACCESSAPI_INDEX_HTML): $(JACCESSAPI_OPTIONS_FILE) $(JACCESSAPI_PACKAGES_FILE) coredocs
  1274 	$(prep-javadoc)
  1275 	$(call JavadocSummary,$(JACCESSAPI_OPTIONS_FILE),$(JACCESSAPI_PACKAGES_FILE))
  1276 	$(JAVADOC_CMD) -d $(@D) \
  1277 	    @$(JACCESSAPI_OPTIONS_FILE) @$(JACCESSAPI_PACKAGES_FILE)
  1279 # Create file with javadoc options in it
  1280 $(JACCESSAPI_OPTIONS_FILE):
  1281 	$(prep-target)
  1282 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
  1283 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
  1284 	  $(call OptionPair,-encoding,ascii) ; \
  1285 	  $(call OptionOnly,-nodeprecatedlist) ; \
  1286 	  $(call OptionPair,-doctitle,$(JACCESSAPI_DOCTITLE)) ; \
  1287 	  $(call OptionPair,-windowtitle,$(JACCESSAPI_WINDOWTITLE) $(DRAFT_WINTITLE)); \
  1288 	  $(call OptionPair,-header,$(JACCESSAPI_HEADER)$(DRAFT_HEADER)) ; \
  1289 	  $(call OptionPair,-bottom,$(JACCESSAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
  1290 	  $(call OptionTrip,-linkoffline,$(JACCESSAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
  1291 	) >> $@
  1293 # Create a file with the package names in it
  1294 $(JACCESSAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JACCESSAPI_PKGS))
  1295 	$(prep-target)
  1296 	$(call PackageFilter,$(JACCESSAPI_PKGS))
  1298 #############################################################
  1300 # jdk.net docs
  1303 ALL_OTHER_TARGETS += jdknetdocs
  1305 JDKNET_DOCDIR := $(JRE_API_DOCSDIR)/net/socketoptions/spec
  1306 JDKNET2COREAPI := ../../../$(JDKJRE2COREAPI)
  1307 JDKNET_DOCTITLE := jdk.net API
  1308 JDKNET_WINDOWTITLE := jdk.net API
  1309 JDKNET_HEADER := <strong>jdk.net API</strong>
  1310 JDKNET_BOTTOM := $(call CommonBottom,$(JDKNET_FIRST_COPYRIGHT_YEAR))
  1311 JDKNET_PKGS := jdk.net
  1313 JDKNET_INDEX_HTML = $(JDKNET_DOCDIR)/index.html
  1314 JDKNET_OPTIONS_FILE = $(DOCSTMPDIR)/jdknet.options
  1315 JDKNET_PACKAGES_FILE = $(DOCSTMPDIR)/jdknet.packages
  1317 jdknetdocs: $(JDKNET_INDEX_HTML)
  1319 # Set relative location to core api document root
  1320 $(JDKNET_INDEX_HTML): GET2DOCSDIR=$(JDKNET2COREAPI)/..
  1322 # Run javadoc if the index file is out of date or missing
  1323 $(JDKNET_INDEX_HTML): $(JDKNET_OPTIONS_FILE) $(JDKNET_PACKAGES_FILE) coredocs
  1324 	$(prep-javadoc)
  1325 	$(call JavadocSummary,$(JDKNET_OPTIONS_FILE),$(JDKNET_PACKAGES_FILE))
  1326 	$(JAVADOC_CMD) -d $(@D) \
  1327 	    @$(JDKNET_OPTIONS_FILE) @$(JDKNET_PACKAGES_FILE)
  1329 # Create file with javadoc options in it
  1330 $(JDKNET_OPTIONS_FILE):
  1331 	$(prep-target)
  1332 	@($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
  1333 	  $(call OptionOnly,-Xdoclint:none) ; \
  1334 	  $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
  1335 	  $(call OptionPair,-encoding,ascii) ; \
  1336 	  $(call OptionOnly,-nodeprecatedlist) ; \
  1337 	  $(call OptionPair,-doctitle,$(JDKNET_DOCTITLE)) ; \
  1338 	  $(call OptionPair,-windowtitle,$(JDKNET_WINDOWTITLE) $(DRAFT_WINTITLE)); \
  1339 	  $(call OptionPair,-header,$(JDKNET_HEADER)$(DRAFT_HEADER)); \
  1340 	  $(call OptionPair,-bottom,$(JDKNET_BOTTOM)$(DRAFT_BOTTOM)); \
  1341 	  $(call OptionTrip,-linkoffline,$(JDKNET2COREAPI),$(COREAPI_DOCSDIR)/); \
  1342 	) >> $@
  1344 # Create a file with the package names in it
  1345 $(JDKNET_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JDKNET_PKGS))
  1346 	$(prep-target)
  1347 	$(call PackageFilter,$(JDKNET_PKGS))
  1349 #############################################################
  1351 # Get a cache of all the directories
  1353 $(DIRECTORY_CACHE): $(ALL_EXISTING_SOURCE_DIRS)
  1354 	$(prep-target)
  1355 	@for cp in $(ALL_EXISTING_SOURCE_DIRS) ; do \
  1356 	  $(ECHO) "$(FIND) $${cp} -type f >> $@"; \
  1357 	  $(FIND) $${cp} -type f >> $@; \
  1358 	done
  1360 #############################################################
  1361 #release version of core packages ########
  1363 # The rel-coredocs and rel-docs targets were added by Eric Armstrong. rel-coredocs
  1364 # assumes the kind of large, 32-bit machine used in the javapubs group's docs-release
  1365 # process. It specifies memory settings accordingly to maximize performance.
  1367 # The performance settings, like the sanity check, are most important for the core
  1368 # docs--the platform APIs. Running javadoc on those APIs takes a significant amount
  1369 # of time and memory. Setting the initial heap size as large as possible is important
  1370 # to prevent thrashing as the heap grows. Setting the maximum as large as necessary
  1371 # is also important to keep the job from failing.
  1373 #    -J-Xmx512 sets a maximum of 512, which became necessary in 6.0
  1374 #    -J-Xms256 sets starting size to 256 (default is 8)
  1376 # rel-coredocs also includes a sanity check to help ensure that BUILD_NUMBER and
  1377 # MILESTONE are specified properly when docs are built outside of the normal release
  1378 # engineering process, with the intention of releasing them on the web or in a downloaded
  1379 # docs bundle. (When invoked in release engineering's control build, the values are always
  1380 # set properly. But when the targets are run by themselves, they default to b00 and
  1381 # "internal"--which silently sabotage the result of a build that can take many hours
  1382 # to complete.
  1384 # Maximize performance and ensure that build number & milestone are set.
  1386 rel-coredocs: sanitycheckcoredocs
  1387 	$(MAKE) coredocs
  1389 rel-docs: rel-coredocs $(ALL_OTHER_TARGETS)
  1391 # end of production targets
  1393 otherdocs: $(ALL_OTHER_TARGETS)
  1395 clean:
  1396 	$(RM) -r $(DOCSDIR) $(DOCSTMPDIR)
  1398 #############################################################
  1399 # DEBUG TARGET
  1400 # List the values defined in the makefile hierarchy, to make sure everything
  1401 # is set properly, and to help identify values we can use instead of making new ones.
  1402 # (Most of them come from common/shared/Defs.gmk)
  1404 # Notes:
  1405 # * BUILD_NUMBER defaults to b00 if not set on command line with BUILD_NUMBER=<value>
  1406 # * MILESTONE defaults to internal unless set to beta, rc, or fcs on command line
  1409 #############################################################
  1410 .PHONY: all docs coredocs rel-docs otherdocs rel-coredocs \
  1411     sanitycheckcoredocs $(ALL_OTHER_TARGETS) docs-zip

mercurial