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