annotate make/Javadoc.gmk @ 43285:223c3eea12e4

8173354: javadoc warning notice for types in Incubator Modules Reviewed-by: erikj, michaelm
author chegar
date Wed, 25 Jan 2017 14:10:43 +0000
parents 61b58ba86188
children a36b72c53986
rev   line source
ihse@43047 1 # Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
ohair@13697 2 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
ohair@13697 3 #
ohair@13697 4 # This code is free software; you can redistribute it and/or modify it
ohair@13697 5 # under the terms of the GNU General Public License version 2 only, as
ohair@13697 6 # published by the Free Software Foundation. Oracle designates this
ohair@13697 7 # particular file as subject to the "Classpath" exception as provided
ohair@13697 8 # by Oracle in the LICENSE file that accompanied this code.
ohair@13697 9 #
ohair@13697 10 # This code is distributed in the hope that it will be useful, but WITHOUT
ohair@13697 11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
ohair@13697 12 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
ohair@13697 13 # version 2 for more details (a copy is included in the LICENSE file that
ohair@13697 14 # accompanied this code).
ohair@13697 15 #
ohair@13697 16 # You should have received a copy of the GNU General Public License version
ohair@13697 17 # 2 along with this work; if not, write to the Free Software Foundation,
ohair@13697 18 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
ohair@13697 19 #
ohair@13697 20 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
ohair@13697 21 # or visit www.oracle.com if you need additional information or have any
ohair@13697 22 # questions.
ohair@13697 23 #
ohair@13697 24
ihse@41652 25 default: all
ihse@41652 26
ohair@13697 27 include $(SPEC)
ohair@13697 28 include MakeBase.gmk
chegar@43285 29 include $(JDK_TOPDIR)/make/Tools.gmk
ohair@13697 30
ihse@41652 31 ################################################################################
ohair@13697 32
ohair@13697 33 # List of all possible directories for javadoc to look for sources
ihse@41652 34 # Allow custom to overwrite.
ihse@41652 35 JAVADOC_SOURCE_DIRS = \
alanb@36506 36 $(SUPPORT_OUTPUTDIR)/gensrc/* \
alanb@42289 37 $(addsuffix /*, $(IMPORT_MODULES_SRC)) \
alanb@36506 38 $(JDK_TOPDIR)/src/*/$(OPENJDK_TARGET_OS)/classes \
alanb@36506 39 $(JDK_TOPDIR)/src/*/$(OPENJDK_TARGET_OS_TYPE)/classes \
alanb@36506 40 $(JDK_TOPDIR)/src/*/share/classes \
alanb@36506 41 $(HOTSPOT_TOPDIR)/src/*/share/classes \
alanb@36506 42 $(LANGTOOLS_TOPDIR)/src/*/share/classes \
alanb@36506 43 $(NASHORN_TOPDIR)/src/*/share/classes \
alanb@36506 44 $(CORBA_TOPDIR)/src/*/share/classes \
alanb@36506 45 $(JAXP_TOPDIR)/src/*/share/classes \
alanb@36506 46 $(JAXWS_TOPDIR)/src/*/share/classes \
alanb@36506 47 $(SUPPORT_OUTPUTDIR)/rmic/* \
alanb@36506 48 $(JDK_TOPDIR)/src/*/share/doc/stub \
alanb@36506 49 #
alanb@36506 50
ihse@41652 51 # Should we use -Xdocrootparent? Allow custom to overwrite.
ihse@41652 52 DOCROOTPARENT_FLAG = TRUE
neugens@37034 53
ihse@41652 54 # URLs
ihse@41652 55 JAVADOC_BASE_URL := http://docs.oracle.com/javase/$(VERSION_SPECIFICATION)/docs
ihse@41652 56 BUG_SUBMIT_URL := http://bugreport.java.com/bugreport/
ohair@13697 57
ihse@41652 58 ################################################################################
ihse@41652 59 # Text snippets
ohair@13697 60
ihse@41652 61 FULL_COMPANY_NAME := Oracle and/or its affiliates
ihse@42134 62 COMPANY_ADDRESS := 500 Oracle Parkway<br>Redwood Shores, CA 94065 USA
ihse@41652 63 BUG_SUBMIT_LINE := <a href="$(BUG_SUBMIT_URL)">Submit a bug or feature</a>
mduigou@25614 64
ihse@42134 65 COMMON_BOTTOM_TEXT := $(BUG_SUBMIT_LINE)<br> Java is a trademark or registered \
ihse@42134 66 trademark of $(FULL_COMPANY_NAME) in the US and other countries.
mduigou@25614 67
ihse@41652 68 CORE_BOTTOM_COPYRIGHT_URL := {@docroot}/../legal/cpyr.html
ihse@42135 69 CORE_BOTTOM_TEXT := \
ihse@42135 70 $(BUG_SUBMIT_LINE) \
ihse@42135 71 <br>For further API reference and developer documentation, see \
ihse@42135 72 <a href="$(JAVADOC_BASE_URL)/index.html" target="_blank">Java SE \
ihse@42135 73 Documentation</a>. That documentation contains more detailed, \
ihse@42135 74 developer-targeted descriptions, with conceptual overviews, definitions of \
ihse@42135 75 terms, workarounds, and working code examples.
ohair@13697 76
ihse@41652 77 ifeq ($(VERSION_IS_GA), true)
ihse@42135 78 DRAFT_MARKER :=
ihse@42135 79 DRAFT_WINDOW_TITLE_MARKER :=
ihse@42135 80 EARLYACCESS_TOP :=
ihse@41652 81 else
ihse@41652 82 # We need a draft format when not building the GA version.
ihse@42135 83 DRAFT_MARKER := <br><strong>DRAFT&nbsp;$(VERSION_STRING)</strong>
ihse@42134 84 ifeq ($(VERSION_BUILD), 0)
ihse@42135 85 DRAFT_WINDOW_TITLE_MARKER := $(SPACE)[ad-hoc build]
ihse@42134 86 else
ihse@42135 87 DRAFT_WINDOW_TITLE_MARKER := $(SPACE)[build $(VERSION_BUILD)]
ihse@42134 88 endif
ihse@42135 89 EARLYACCESS_TOP := \
erikj@43044 90 <div style="background-color: $(HASH)EEEEEE"><div style="padding: 6px; \
ihse@42135 91 margin-top: 2px; margin-bottom: 6px; margin-left: 6px; margin-right: \
ihse@42135 92 6px; text-align: justify; font-size: 80%; font-family: Helvetica, Arial, \
ihse@42135 93 sans-serif; font-weight: normal;">Please note that the specifications \
ihse@42135 94 and other information contained herein are not final and are subject to \
ihse@42135 95 change. The information is being made available to you solely for \
ihse@42135 96 purpose of evaluation.</div></div>
ohair@13697 97 endif
ohair@13697 98
ihse@41652 99 ################################################################################
ihse@42135 100 # Special treatment for the core package list. All separate "small" javadoc
ihse@42135 101 # invocation needs to be able to see the core package list.
ihse@42135 102
ihse@42135 103 ALL_PKG_DIRS := $(dir $(filter %.java, $(call CacheFind, \
ihse@42135 104 $(wildcard $(JAVADOC_SOURCE_DIRS)))))
ihse@42135 105 ALL_SRC_PREFIXES := $(addsuffix /%, $(wildcard $(JAVADOC_SOURCE_DIRS)))
ihse@42135 106 ALL_PKG_DIRNAMES := $(foreach prefix, $(ALL_SRC_PREFIXES), \
ihse@42135 107 $(patsubst $(prefix),%, $(filter $(prefix), $(ALL_PKG_DIRS))))
ihse@42135 108 ALL_PACKAGES := $(sort $(subst /,., $(patsubst %/, %, $(ALL_PKG_DIRNAMES))))
ihse@42135 109
ihse@42135 110 # Core packages are all packages beginning with java, javax or org, except a few
ihse@42135 111 # excludes.
ihse@42135 112 JAVA_PACKAGES := $(filter java.%, $(ALL_PACKAGES))
ihse@42135 113 JAVAX_PACKAGES := $(filter javax.%, $(ALL_PACKAGES))
ihse@42135 114 ORG_PACKAGES := $(filter org.%, $(ALL_PACKAGES))
ihse@42135 115
ihse@42135 116 # Allow custom makefile to add more excluded packages
ihse@42135 117 CORE_EXCLUDED_PACKAGES += \
ihse@42135 118 java.awt.dnd.peer \
ihse@42135 119 java.awt.peer \
ihse@42135 120 javax.smartcardio \
ihse@42135 121 org.jcp.xml.dsig.internal% \
ihse@42135 122 org.w3c.dom.css \
ihse@42135 123 org.w3c.dom.html \
ihse@42135 124 org.w3c.dom.stylesheets \
ihse@42135 125 org.w3c.dom.xpath \
kvn@42531 126 org.graalvm.compiler.% \
ihse@42135 127 #
ihse@42135 128
ihse@42135 129 CORE_PACKAGES := $(filter-out $(CORE_EXCLUDED_PACKAGES), \
ihse@42135 130 $(JAVA_PACKAGES) $(JAVAX_PACKAGES) $(ORG_PACKAGES))
ihse@42135 131
ihse@42135 132 CORE_PACKAGES_LIST_DIR := $(SUPPORT_OUTPUTDIR)/docs/core-packages
ihse@42135 133 CORE_PACKAGES_LIST_FILE := $(CORE_PACKAGES_LIST_DIR)/package-list
ihse@42135 134
ihse@42135 135 CORE_PACKAGES_VARDEPS_FILE := $(call DependOnVariable, CORE_PACKAGES, \
ihse@42135 136 $(CORE_PACKAGES_LIST_FILE).vardeps)
ihse@42135 137
ihse@42135 138 $(CORE_PACKAGES_LIST_FILE): $(CORE_PACKAGES_VARDEPS_FILE)
ihse@42135 139 $(call MakeDir, $(@D))
ihse@42135 140 $(eval $(call ListPathsSafely, CORE_PACKAGES, $@))
ihse@42135 141
ihse@42135 142 ################################################################################
ihse@41652 143 # Support functions for SetupJavadocGeneration
ohair@13697 144
ihse@42135 145 # Generate the text used in the -bottom argument.
ihse@41652 146 # Note that COPYRIGHT_YEAR is the current year (from spec.gmk)
ihse@41652 147 # Arguments:
ihse@41652 148 # arg 1: first copyright year
ihse@41652 149 # arg 2: copyright url (optional)
ihse@42134 150 # arg 3: free-form text snippet (optional)
ihse@41652 151 define GenerateBottom
jjg@42851 152 <span style="font-size:smaller">$(if $(strip $3), $(strip $3))<br> $(if \
ihse@42134 153 $(strip $2),<a href="$(strip $2)">Copyright</a>,Copyright) \
ihse@42134 154 &copy; $(strip $1), $(COPYRIGHT_YEAR), $(FULL_COMPANY_NAME). \
jjg@42851 155 $(COMPANY_ADDRESS). All rights reserved.</span>
ihse@41652 156 endef
ihse@41652 157
ihse@41652 158 # Speed up finding by filling cache
ihse@41652 159 $(eval $(call FillCacheFind, $(wildcard $(JAVADOC_SOURCE_DIRS))))
ihse@41652 160
ihse@42135 161 # In order to get a specific ordering it's necessary to specify the total
ihse@42135 162 # ordering of tags as the tags are otherwise ordered in order of definition.
ihse@42135 163 DEFAULT_JAVADOC_TAGS := \
ihse@42135 164 -tag beaninfo:X \
ihse@42135 165 -tag revised:X \
ihse@42135 166 -tag since.unbundled:X \
ihse@42135 167 -tag spec:X \
ihse@42135 168 -tag specdefault:X \
ihse@42135 169 -tag Note:X \
ihse@42135 170 -tag ToDo:X \
ihse@42135 171 -tag 'apiNote:a:API Note:' \
ihse@42135 172 -tag 'implSpec:a:Implementation Requirements:' \
ihse@42135 173 -tag 'implNote:a:Implementation Note:' \
ihse@42135 174 -tag param \
ihse@42135 175 -tag return \
ihse@42135 176 -tag throws \
ihse@42135 177 -tag since \
ihse@42135 178 -tag version \
ihse@42135 179 -tag serialData \
ihse@42135 180 -tag factory \
ihse@42135 181 -tag see \
ihse@42135 182 -tag 'jvms:a:See <cite>The Java&trade; Virtual Machine Specification</cite>:' \
ihse@42135 183 -tag 'jls:a:See <cite>The Java&trade; Language Specification</cite>:' \
chegar@43285 184 -taglet build.tools.taglet.Incubating \
chegar@43285 185 -tagletpath $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
ihse@42135 186 #
ihse@42135 187
ihse@42135 188 DEFAULT_JAVADOC_OPTIONS := -XDignore.symbol.file=true -use -keywords -notimestamp \
ihse@42135 189 -serialwarn -encoding ISO-8859-1 -breakiterator --system none
ihse@41652 190
ihse@41652 191 ################################################################################
ihse@41652 192 # Setup make rules for running javadoc.
ohair@13697 193 #
ihse@41652 194 # Parameter 1 is the name of the rule. This name is used as variable prefix,
ihse@41652 195 # and the targets generated are listed in a variable by that name. Note that
ihse@41652 196 # the index.html file will work as a "touch file" for all the magnitude of
ihse@41652 197 # files that are generated by javadoc.
rriggs@27328 198 #
ihse@41652 199 # Remaining parameters are named arguments. These include:
ihse@41652 200 # MODULES - Modules to include
ihse@41652 201 # PACKAGES - Packages to include
ihse@41652 202 # IS_CORE - Set to TRUE for the Core API package which needs special treatment
ihse@41652 203 # API_ROOT - Where to base the documentation (jre or jdk)
ihse@41652 204 # DEST_DIR - A directory relative to the API root
ihse@41652 205 # OVERVIEW - Path to a html overview file
ihse@41652 206 # TITLE - Default title to use for the more specific versions below
ihse@41652 207 # WINDOW_TITLE - Title to use in -windowtitle. Computed from TITLE if empty.
ihse@41652 208 # HEADER_TITLE - Title to use in -header. Computed from TITLE if empty.
ihse@41652 209 # DOC_TITLE - Title to use in -doctitle. Computed from TITLE if empty.
ihse@41652 210 # FIRST_COPYRIGHT_YEAR - First year this bundle was introduced
ihse@42134 211 # DISABLED_DOCLINT - Doclint warnings to exclude.
ihse@41652 212 # DOCLINT_PACKAGES - Optional -Xdoclint/package value
ihse@42134 213 # SPLIT_INDEX - Enable -splitIndex (split index-all.html if it is too large)
ihse@41652 214 # BOTTOM_COPYRIGHT_URL - Copyright URL to use in -bottom
ihse@41652 215 # BOTTOM_TEXT - Extra text to use in -bottom
ihse@41652 216 # EXTRA_TOP - Additional -top data
ihse@41652 217 #
ihse@41652 218 SetupJavadocGeneration = $(NamedParamsMacroTemplate)
ihse@41652 219 define SetupJavadocGenerationBody
ihse@41652 220 ifeq ($$($1_IS_CORE), TRUE)
ihse@41652 221 $1_JAVA := $$(JAVA)
ihse@41652 222 $1_OUTPUT_DIRNAME := api
ihse@41652 223 else
ihse@41652 224 $1_JAVA := $$(JAVA_SMALL)
ihse@41652 225 $1_OUTPUT_DIRNAME := $$($1_API_ROOT)/api/$$($1_DEST_DIR)
rriggs@27328 226
ihse@42134 227 # Compute a relative path to core root.
ihse@42134 228 # The non-core api javadocs need to be able to access the root of the core
ihse@42134 229 # api directory, so for jdk/api or jre/api to get to the core api/
ihse@42134 230 # directory we would use this
ihse@42135 231 $1_RELATIVE_CORE_DIR := $$(call DirToDotDot, $$($1_OUTPUT_DIRNAME))/api
rriggs@27328 232
ihse@42135 233 # We need to tell javadoc the directory in which to find the core package-list
ihse@42135 234 $1_OPTIONS += -linkoffline $$($1_RELATIVE_CORE_DIR) $$(CORE_PACKAGES_LIST_DIR)
ihse@42135 235
ihse@42135 236 $1_DEPS += $(CORE_PACKAGES_LIST_FILE)
ihse@41652 237 endif
rriggs@27328 238
ihse@42135 239 $1_OPTIONS += --add-modules $$(call CommaList, $$($1_MODULES))
ihse@42135 240
ihse@42135 241 ifneq ($$($1_DISABLED_DOCLINT), )
ihse@42135 242 # Create a string like ",-syntax,-html"
ihse@42135 243 $1_DOCLINT_EXCEPTIONS := ,$$(call CommaList, $$(addprefix -, $$($1_DISABLED_DOCLINT)))
ihse@41652 244 endif
ihse@42135 245 $1_OPTIONS += -Xdoclint:all$$($1_DOCLINT_EXCEPTIONS)
ohair@13697 246
ihse@42135 247 ifneq ($$($1_DOCLINT_PACKAGES), )
ihse@42135 248 $1_OPTIONS += -Xdoclint/package:$$(call CommaList, $$($1_DOCLINT_PACKAGES))
ihse@41652 249 endif
neugens@37034 250
ihse@41652 251 ifeq ($$($1_DOC_TITLE), )
ihse@41652 252 $1_DOC_TITLE := $$($1_TITLE)
ihse@41652 253 endif
ihse@42135 254 $1_OPTIONS += -doctitle '$$($1_DOC_TITLE)'
neugens@37034 255
ihse@41652 256 ifeq ($$($1_WINDOW_TITLE), )
ihse@42134 257 $1_WINDOW_TITLE := $$(strip $$(subst &trade;,, $$($1_TITLE)))
ihse@41652 258 endif
ihse@42135 259 $1_OPTIONS += -windowtitle '$$($1_WINDOW_TITLE)$$(DRAFT_WINDOW_TITLE_MARKER)'
ihse@41652 260
ihse@41652 261 ifeq ($$($1_HEADER_TITLE), )
ihse@42134 262 $1_HEADER_TITLE := $$(strip $$(subst &trade;,, $$($1_TITLE)))
ihse@41652 263 endif
ihse@42135 264 $1_OPTIONS += -header '<strong>$$($1_HEADER_TITLE)</strong>$$(DRAFT_MARKER)'
ihse@42135 265
ihse@42135 266 ifneq ($$($1_EXTRA_TOP), )
ihse@42135 267 $1_OPTIONS += -top '$$($1_EXTRA_TOP)'
ihse@41652 268 endif
ohair@13697 269
ihse@42134 270 ifeq ($$($1_BOTTOM_TEXT), )
ihse@42134 271 $1_BOTTOM_TEXT := $(COMMON_BOTTOM_TEXT)
ihse@41652 272 endif
ihse@41652 273 $1_BOTTOM := $$(call GenerateBottom, $$($1_FIRST_COPYRIGHT_YEAR), \
ihse@42134 274 $$($1_BOTTOM_COPYRIGHT_URL), $$($1_BOTTOM_TEXT))
ihse@42135 275 $1_OPTIONS += -bottom '$$($1_BOTTOM)$$(DRAFT_MARKER)'
ohair@13697 276
ihse@42135 277 ifneq ($$($1_OVERVIEW), )
ihse@42135 278 $1_OPTIONS += -overview $$($1_OVERVIEW)
ihse@42135 279 $1_DEPS += $$($1_OVERVIEW)
ihse@42135 280 endif
ohair@13697 281
ihse@42135 282 ifneq ($$($1_SPLIT_INDEX), )
ihse@42135 283 $1_OPTIONS += -splitIndex
ihse@42135 284 endif
alanb@36506 285
ihse@42135 286 ifneq ($$($DOCROOTPARENT_FLAG), )
ihse@42135 287 $1_OPTIONS += -Xdocrootparent $(JAVADOC_BASE_URL)
ihse@42135 288 endif
ohair@13697 289
ihse@42135 290 $1_VARDEPS := $$($1_OPTIONS) $$($1_PACKAGES)
ihse@42135 291 $1_VARDEPS_FILE := $$(call DependOnVariable, $1_VARDEPS, \
ihse@42135 292 $$(SUPPORT_OUTPUTDIR)/docs/$1.vardeps)
ohair@13697 293
ihse@43047 294 # Do not store debug level options in VARDEPS.
ihse@43047 295 ifneq ($$(LOG_LEVEL), trace)
ihse@43047 296 $1_OPTIONS += -quiet
ihse@43047 297 else
ihse@43047 298 $1_OPTIONS += -verbose
ihse@43047 299 endif
ihse@43047 300
ihse@41652 301 $1_PACKAGE_DEPS := $$(call CacheFind, $$(wildcard $$(foreach p, \
ihse@41652 302 $$(subst .,/,$$(strip $$($1_PACKAGES))), \
ihse@41652 303 $$(addsuffix /$$p, $$(wildcard $$(JAVADOC_SOURCE_DIRS))))))
ohair@13697 304
ihse@42135 305 # If there are many packages, use an @-file...
ihse@42135 306 ifneq ($$(word 17, $$($1_PACKAGES)), )
ihse@42135 307 $1_PACKAGES_FILE := $$(SUPPORT_OUTPUTDIR)/docs/$1.packages
ihse@42135 308 $1_PACKAGES_ARG := @$$($1_PACKAGES_FILE)
ihse@42135 309 else
ihse@42135 310 $1_PACKAGES_ARG := $$($1_PACKAGES)
ihse@42135 311 endif
ihse@42135 312
ihse@42135 313 # The index.html which is a marker for all the output from javadoc.
ihse@42135 314 $1_INDEX_FILE := $$(JAVADOC_OUTPUTDIR)/$$($1_OUTPUT_DIRNAME)/index.html
ihse@42135 315
ihse@41652 316 # Rule for actually running javadoc
chegar@43285 317 $$($1_INDEX_FILE): $(BUILD_TOOLS_JDK) $$($1_VARDEPS_FILE) $$($1_PACKAGE_DEPS) $$($1_DEPS)
ihse@42135 318 $$(call LogWarn, Generating Javadoc from $$(words $$($1_PACKAGES)) package(s) for $$($1_OUTPUT_DIRNAME))
ihse@41652 319 $$(call MakeDir, $$(@D))
ihse@42135 320 ifneq ($$($1_PACKAGES_FILE), )
ihse@42135 321 $$(eval $$(call ListPathsSafely, $1_PACKAGES, $$($1_PACKAGES_FILE)))
ihse@41652 322 endif
ihse@41652 323 $$(call ExecuteWithLog, $$(SUPPORT_OUTPUTDIR)/docs/$1.javadoc, \
ihse@41652 324 $$($1_JAVA) -Djava.awt.headless=true $(NEW_JAVADOC) -d $$(@D) \
ihse@42135 325 $$(DEFAULT_JAVADOC_TAGS) $$(DEFAULT_JAVADOC_OPTIONS) \
ihse@42135 326 --module-source-path $$(call PathList, $$(JAVADOC_SOURCE_DIRS)) \
ihse@42135 327 $$($1_OPTIONS) $$($1_PACKAGES_ARG))
ohair@13697 328
ihse@41652 329 # The output returned will be the index.html file
ihse@41652 330 $1 := $$($1_INDEX_FILE)
ihse@41652 331 endef
ohair@13697 332
ihse@41652 333 ################################################################################
alanb@36506 334
ihse@41652 335 $(eval $(call SetupJavadocGeneration, coredocs, \
ihse@41652 336 MODULES := java.se.ee, \
ihse@41652 337 PACKAGES := $(CORE_PACKAGES), \
ihse@41652 338 IS_CORE := TRUE, \
ihse@41652 339 OVERVIEW := $(JDK_TOPDIR)/src/java.base/share/classes/overview-core.html, \
ihse@41652 340 WINDOW_TITLE := Java Platform SE $(VERSION_SPECIFICATION), \
ihse@42134 341 HEADER_TITLE := Java&trade;&nbsp;Platform<br>Standard&nbsp;Ed.&nbsp;$(VERSION_SPECIFICATION), \
ihse@42134 342 DOC_TITLE := Java&trade; Platform$(COMMA) Standard Edition \
ihse@41652 343 $(VERSION_SPECIFICATION)<br>API Specification, \
ihse@41652 344 FIRST_COPYRIGHT_YEAR := 1993, \
ihse@42134 345 DISABLED_DOCLINT := accessibility html missing syntax, \
ihse@41652 346 DOCLINT_PACKAGES := -org.omg.* jdk.internal.logging.*, \
ihse@41652 347 SPLIT_INDEX := TRUE, \
ihse@41652 348 BOTTOM_COPYRIGHT_URL := $(CORE_BOTTOM_COPYRIGHT_URL), \
ihse@41652 349 BOTTOM_TEXT := $(CORE_BOTTOM_TEXT), \
ihse@42135 350 EXTRA_TOP := $(EARLYACCESS_TOP), \
ihse@41652 351 ))
ohair@13697 352
ihse@41652 353 TARGETS += $(coredocs)
ohair@13697 354
ihse@41652 355 ################################################################################
ohair@13697 356
ihse@41652 357 $(eval $(call SetupJavadocGeneration, docletapi, \
ihse@41652 358 MODULES := jdk.javadoc, \
ihse@41652 359 PACKAGES := \
ihse@41652 360 jdk.javadoc.doclet \
ihse@41652 361 jdk.javadoc.doclet.taglet \
ihse@41652 362 jdk.javadoc.doclets, \
ihse@41652 363 API_ROOT := jdk, \
ihse@41652 364 DEST_DIR := javadoc/doclet, \
ihse@41652 365 TITLE := Doclet API, \
ihse@41652 366 FIRST_COPYRIGHT_YEAR := 1993, \
ihse@41652 367 ))
ohair@13697 368
ihse@41652 369 TARGETS += $(docletapi)
ksrini@35367 370
ihse@41652 371 ################################################################################
ksrini@35367 372
ihse@41652 373 $(eval $(call SetupJavadocGeneration, old-docletapi, \
ihse@41652 374 MODULES := jdk.javadoc, \
ihse@41652 375 PACKAGES := com.sun.javadoc, \
ihse@41652 376 API_ROOT := jdk, \
ihse@41652 377 DEST_DIR := javadoc/old/doclet, \
ihse@41652 378 TITLE := Doclet API, \
ihse@41652 379 FIRST_COPYRIGHT_YEAR := 1993, \
ihse@41652 380 ))
ksrini@35367 381
ihse@41652 382 TARGETS += $(old-docletapi)
ksrini@35367 383
ihse@41652 384 ################################################################################
alanb@36506 385
ihse@41652 386 $(eval $(call SetupJavadocGeneration, tagletapi, \
ihse@41652 387 MODULES := jdk.javadoc, \
ihse@41652 388 PACKAGES := com.sun.tools.doclets, \
ihse@41652 389 API_ROOT := jdk, \
ihse@41652 390 DEST_DIR := javadoc/old/taglet, \
ihse@41652 391 TITLE := Taglet API, \
ihse@41652 392 FIRST_COPYRIGHT_YEAR := 1993, \
ihse@41652 393 ))
ksrini@35367 394
ihse@41652 395 TARGETS += $(tagletapi)
ksrini@35367 396
ihse@41652 397 ################################################################################
ksrini@35367 398
ihse@41652 399 $(eval $(call SetupJavadocGeneration, domapi, \
ihse@41652 400 MODULES := \
ihse@41652 401 java.xml \
ihse@41652 402 jdk.xml.dom, \
ihse@41652 403 PACKAGES := \
ihse@41652 404 org.w3c.dom \
ihse@41652 405 org.w3c.dom.bootstrap \
ihse@41652 406 org.w3c.dom.ls \
ihse@41652 407 org.w3c.dom.ranges \
ihse@41652 408 org.w3c.dom.traversal \
ihse@41652 409 org.w3c.dom.html \
ihse@41652 410 org.w3c.dom.stylesheets \
ihse@41652 411 org.w3c.dom.css \
ihse@41652 412 org.w3c.dom.events \
ihse@41652 413 org.w3c.dom.views, \
ihse@41652 414 API_ROOT := jre, \
ihse@41652 415 DEST_DIR := plugin/dom, \
ihse@41652 416 TITLE := Common DOM API, \
ihse@41652 417 FIRST_COPYRIGHT_YEAR := 2005, \
ihse@42134 418 DISABLED_DOCLINT := accessibility html missing, \
ihse@41652 419 SPLIT_INDEX := TRUE, \
ihse@41652 420 ))
ksrini@35367 421
ihse@41652 422 TARGETS += $(domapi)
ohair@13697 423
ihse@41652 424 ################################################################################
ohair@13697 425
ihse@41652 426 $(eval $(call SetupJavadocGeneration, jdi, \
ihse@41652 427 MODULES := jdk.jdi, \
ihse@41652 428 PACKAGES := \
ihse@41652 429 com.sun.jdi \
ihse@41652 430 com.sun.jdi.event \
ihse@41652 431 com.sun.jdi.request \
ihse@41652 432 com.sun.jdi.connect \
ihse@41652 433 com.sun.jdi.connect.spi, \
ihse@41652 434 API_ROOT := jdk, \
ihse@41652 435 DEST_DIR := jpda/jdi, \
ihse@41652 436 OVERVIEW := $(JDK_TOPDIR)/src/jdk.jdi/share/classes/jdi-overview.html, \
ihse@42134 437 TITLE := Java&trade; Debug Interface, \
ihse@41652 438 FIRST_COPYRIGHT_YEAR := 1999, \
ihse@42134 439 DISABLED_DOCLINT := accessibility missing syntax, \
ihse@42134 440 SPLIT_INDEX := TRUE, \
ihse@41652 441 ))
ohair@13697 442
ihse@41652 443 TARGETS += $(jdi)
alanb@36506 444
ihse@41652 445 ################################################################################
ohair@13697 446
ihse@41652 447 $(eval $(call SetupJavadocGeneration, jaas, \
ihse@41652 448 MODULES := jdk.security.auth, \
ihse@41652 449 PACKAGES := \
ihse@41652 450 com.sun.security.auth \
ihse@41652 451 com.sun.security.auth.callback \
ihse@41652 452 com.sun.security.auth.login \
ihse@41652 453 com.sun.security.auth.module, \
ihse@41652 454 API_ROOT := jre, \
ihse@41652 455 DEST_DIR := security/jaas/spec, \
ihse@41652 456 OVERVIEW := $(JDK_TOPDIR)/src/jdk.security.auth/share/classes/jaas-overview.html, \
ihse@42134 457 TITLE := Java&trade; Authentication and Authorization Service, \
ihse@41652 458 FIRST_COPYRIGHT_YEAR := 1998, \
ihse@42134 459 DISABLED_DOCLINT := missing, \
ihse@41652 460 ))
ohair@13697 461
ihse@41652 462 TARGETS += $(jaas)
ohair@13697 463
ihse@41652 464 ################################################################################
ohair@13697 465
ihse@41652 466 $(eval $(call SetupJavadocGeneration, jgss, \
ihse@41652 467 MODULES := jdk.security.jgss, \
ihse@41652 468 PACKAGES := com.sun.security.jgss, \
ihse@41652 469 API_ROOT := jre, \
ihse@41652 470 DEST_DIR := security/jgss/spec, \
ihse@41652 471 OVERVIEW := $(JDK_TOPDIR)/src/java.security.jgss/share/classes/jgss-overview.html, \
ihse@42134 472 TITLE := Java&trade; GSS-API Utilities, \
ihse@41652 473 FIRST_COPYRIGHT_YEAR := 2000, \
ihse@41652 474 ))
ohair@13697 475
ihse@41652 476 TARGETS += $(jgss)
ohair@13697 477
ihse@41652 478 ################################################################################
ohair@13697 479
ihse@41652 480 $(eval $(call SetupJavadocGeneration, smartcardio, \
ihse@41652 481 MODULES := java.smartcardio, \
ihse@41652 482 PACKAGES := javax.smartcardio, \
ihse@41652 483 API_ROOT := jre, \
ihse@41652 484 DEST_DIR := security/smartcardio/spec, \
ihse@42134 485 TITLE := Java&trade; Smart Card I/O, \
ihse@41652 486 FIRST_COPYRIGHT_YEAR := 2005, \
ihse@41652 487 ))
ohair@13697 488
ihse@41652 489 TARGETS += $(smartcardio)
alanb@36506 490
ihse@41652 491 ################################################################################
ohair@13697 492
ihse@41652 493 $(eval $(call SetupJavadocGeneration, httpserver, \
ihse@41652 494 MODULES := jdk.httpserver, \
ihse@41652 495 PACKAGES := \
ihse@41652 496 com.sun.net.httpserver \
ihse@41652 497 com.sun.net.httpserver.spi, \
ihse@41652 498 API_ROOT := jre, \
ihse@41652 499 DEST_DIR := net/httpserver/spec, \
ihse@42134 500 TITLE := Java&trade; HTTP Server, \
ihse@41652 501 FIRST_COPYRIGHT_YEAR := 2005, \
ihse@42134 502 DISABLED_DOCLINT := accessibility missing syntax, \
ihse@41652 503 ))
ohair@13697 504
ihse@41652 505 TARGETS += $(httpserver)
ohair@13697 506
ihse@41652 507 ################################################################################
ohair@13697 508
michaelm@42427 509 $(eval $(call SetupJavadocGeneration, httpclient, \
michaelm@42427 510 MODULES := jdk.incubator.httpclient, \
michaelm@42427 511 PACKAGES := \
michaelm@42427 512 jdk.incubator.http, \
michaelm@42427 513 API_ROOT := jre, \
michaelm@42427 514 DEST_DIR := incubator/httpclient/spec, \
michaelm@42427 515 TITLE := Java&trade; HTTP Client API (incubator module), \
michaelm@42427 516 FIRST_COPYRIGHT_YEAR := 2015, \
michaelm@42427 517 DISABLED_DOCLINT := accessibility missing syntax, \
michaelm@42427 518 ))
michaelm@42427 519
michaelm@42427 520 TARGETS += $(httpclient)
michaelm@42427 521
michaelm@42427 522 ################################################################################
michaelm@42427 523
ihse@41652 524 $(eval $(call SetupJavadocGeneration, jsobject, \
ihse@41652 525 MODULES := jdk.jsobject, \
ihse@41652 526 PACKAGES := netscape.javascript, \
ihse@41652 527 API_ROOT := jre, \
ihse@41652 528 DEST_DIR := plugin/jsobject, \
ihse@41652 529 FIRST_COPYRIGHT_YEAR := 1993, \
ihse@42134 530 TITLE := Java&trade; JSObject Doc, \
ihse@41652 531 ))
ohair@13697 532
ihse@41652 533 TARGETS += $(jsobject)
ohair@13697 534
ihse@41652 535 ################################################################################
ohair@13697 536
ihse@41652 537 $(eval $(call SetupJavadocGeneration, mgmt, \
ihse@41652 538 MODULES := jdk.management, \
ihse@41652 539 PACKAGES := com.sun.management, \
ihse@41652 540 API_ROOT := jre, \
ihse@41652 541 DEST_DIR := management/extension, \
ihse@41652 542 OVERVIEW := $(JDK_TOPDIR)/src/java.management/share/classes/mgmt-overview.html, \
ihse@42134 543 TITLE := Monitoring and Management Interface for the Java&trade; Platform, \
ihse@41652 544 FIRST_COPYRIGHT_YEAR := 2003, \
ihse@42134 545 DISABLED_DOCLINT := accessibility missing reference, \
ihse@41652 546 ))
ohair@13697 547
ihse@41652 548 TARGETS += $(mgmt)
ohair@13697 549
ihse@41652 550 ################################################################################
ohair@13697 551
ihse@41652 552 $(eval $(call SetupJavadocGeneration, attach, \
ihse@41652 553 MODULES := jdk.attach, \
ihse@41652 554 PACKAGES := \
ihse@41652 555 com.sun.tools.attach \
ihse@41652 556 com.sun.tools.attach.spi, \
ihse@41652 557 API_ROOT := jdk, \
ihse@41652 558 DEST_DIR := attach/spec, \
ihse@41652 559 TITLE := Attach API, \
ihse@41652 560 FIRST_COPYRIGHT_YEAR := 2005, \
ihse@42134 561 DISABLED_DOCLINT := reference, \
ihse@41652 562 ))
ohair@13697 563
ihse@41652 564 TARGETS += $(attach)
ohair@13697 565
ihse@41652 566 ################################################################################
alanb@36506 567
ihse@41652 568 $(eval $(call SetupJavadocGeneration, jconsole, \
ihse@41652 569 MODULES := jdk.jconsole, \
ihse@41652 570 PACKAGES := com.sun.tools.jconsole, \
ihse@41652 571 API_ROOT := jdk, \
ihse@41652 572 DEST_DIR := jconsole/spec, \
ihse@41652 573 TITLE := JConsole API, \
ihse@41652 574 FIRST_COPYRIGHT_YEAR := 2006, \
ihse@41652 575 ))
ohair@13697 576
ihse@41652 577 TARGETS += $(jconsole)
ohair@13697 578
ihse@41652 579 ################################################################################
ohair@13697 580
ihse@41652 581 $(eval $(call SetupJavadocGeneration, jshellapi, \
ihse@41652 582 MODULES := jdk.jshell, \
ihse@41652 583 PACKAGES := \
ihse@41652 584 jdk.jshell \
ihse@41652 585 jdk.jshell.spi \
rfield@42539 586 jdk.jshell.execution \
rfield@42539 587 jdk.jshell.tool, \
ihse@41652 588 API_ROOT := jdk, \
ihse@41652 589 DEST_DIR := jshell, \
ihse@41652 590 TITLE := JShell API, \
ihse@41652 591 FIRST_COPYRIGHT_YEAR := 2015, \
rfield@42539 592 SPLIT_INDEX := TRUE, \
ihse@41652 593 ))
ohair@13697 594
ihse@41652 595 TARGETS += $(jshellapi)
ohair@13697 596
ihse@41652 597 ################################################################################
ohair@13697 598
ihse@41652 599 $(eval $(call SetupJavadocGeneration, treeapi, \
ihse@41652 600 MODULES := jdk.compiler, \
ihse@41652 601 PACKAGES := \
ihse@41652 602 com.sun.source.doctree \
ihse@41652 603 com.sun.source.tree \
ihse@41652 604 com.sun.source.util, \
ihse@41652 605 API_ROOT := jdk, \
ihse@41652 606 DEST_DIR := javac/tree, \
ihse@41652 607 TITLE := Compiler Tree API, \
ihse@41652 608 FIRST_COPYRIGHT_YEAR := 2005, \
ihse@42134 609 SPLIT_INDEX := TRUE, \
ihse@41652 610 ))
ohair@13697 611
ihse@41652 612 TARGETS += $(treeapi)
ohair@13697 613
ihse@41652 614 ################################################################################
ohair@13697 615
ihse@41652 616 $(eval $(call SetupJavadocGeneration, nashornapi, \
ihse@41652 617 MODULES := jdk.scripting.nashorn, \
ihse@41652 618 PACKAGES := \
ihse@41652 619 jdk.nashorn.api.scripting \
ihse@41652 620 jdk.nashorn.api.tree, \
ihse@41652 621 API_ROOT := jdk, \
ihse@41652 622 DEST_DIR := nashorn, \
ihse@41652 623 TITLE := Nashorn API, \
ihse@41652 624 FIRST_COPYRIGHT_YEAR := 2014, \
ihse@42134 625 SPLIT_INDEX := TRUE, \
ihse@41652 626 ))
ohair@13697 627
ihse@41652 628 TARGETS += $(nashornapi)
ihse@41652 629
ihse@41652 630 ################################################################################
ihse@41652 631
ihse@41652 632 $(eval $(call SetupJavadocGeneration, dynalinkapi, \
ihse@41652 633 MODULES := jdk.dynalink, \
ihse@41652 634 PACKAGES := \
ihse@41652 635 jdk.dynalink \
ihse@41652 636 jdk.dynalink.beans \
ihse@41652 637 jdk.dynalink.linker \
ihse@41652 638 jdk.dynalink.linker.support \
ihse@41652 639 jdk.dynalink.support, \
ihse@41652 640 API_ROOT := jdk, \
ihse@41652 641 DEST_DIR := dynalink, \
ihse@41652 642 TITLE := Dynalink API, \
ihse@41652 643 FIRST_COPYRIGHT_YEAR := 2015, \
ihse@41652 644 ))
ihse@41652 645
ihse@41652 646 TARGETS += $(dynalinkapi)
ihse@41652 647
ihse@41652 648 ################################################################################
ihse@41652 649
ihse@41652 650 $(eval $(call SetupJavadocGeneration, sctp, \
ihse@41652 651 MODULES := jdk.sctp, \
ihse@41652 652 PACKAGES := com.sun.nio.sctp, \
ihse@41652 653 API_ROOT := jre, \
ihse@41652 654 DEST_DIR := nio/sctp/spec, \
ihse@41652 655 TITLE := SCTP API, \
ihse@41652 656 FIRST_COPYRIGHT_YEAR := 2009, \
ihse@41652 657 ))
ihse@41652 658
ihse@41652 659 TARGETS += $(sctp)
ihse@41652 660
ihse@41652 661 ################################################################################
ihse@41652 662
ihse@41652 663 $(eval $(call SetupJavadocGeneration, jaccess, \
ihse@41652 664 MODULES := jdk.accessibility, \
ihse@41652 665 PACKAGES := com.sun.java.accessibility.util, \
ihse@41652 666 API_ROOT := jre, \
ihse@41652 667 DEST_DIR := accessibility/jaccess/spec, \
ihse@41652 668 TITLE := JACCESS API, \
ihse@41652 669 FIRST_COPYRIGHT_YEAR := 2002, \
ihse@41652 670 ))
ihse@41652 671
ihse@41652 672 TARGETS += $(jaccess)
ihse@41652 673
ihse@41652 674 ################################################################################
ihse@41652 675
ihse@41652 676 $(eval $(call SetupJavadocGeneration, jdknet, \
ihse@41652 677 MODULES := jdk.net, \
ihse@41652 678 PACKAGES := jdk.net, \
ihse@41652 679 API_ROOT := jre, \
ihse@41652 680 DEST_DIR := net/socketoptions/spec, \
ihse@41652 681 TITLE := jdk.net API, \
ihse@41652 682 FIRST_COPYRIGHT_YEAR := 2014, \
ihse@42134 683 DISABLED_DOCLINT := missing, \
ihse@41652 684 ))
ihse@41652 685
ihse@41652 686 TARGETS += $(jdknet)
ihse@41652 687
ihse@41652 688 ################################################################################
ihse@41652 689 # Copy JDWP html file
ihse@41652 690
ihse@41652 691 JDWP_HTML := $(SUPPORT_OUTPUTDIR)/gensrc/jdk.jdi/jdwp-protocol.html
ihse@41652 692
ihse@41652 693 $(eval $(call SetupCopyFiles, COPY_JDWP_HTML, \
ihse@41652 694 FILES := $(JDWP_HTML), \
ihse@41652 695 DEST := $(JAVADOC_OUTPUTDIR)/platform/jpda/jdwp, \
ihse@41652 696 ))
ihse@41652 697
ihse@41652 698 COPY_TARGETS += $(COPY_JDWP_HTML)
ihse@41652 699
ihse@41652 700 ################################################################################
ihse@41652 701 # Copy JVMTI html file
ihse@41652 702
erikj@41260 703 # Pick jvmti.html from any jvm variant, they are all the same.
erikj@41260 704 JVMTI_HTML := $(firstword \
erikj@41260 705 $(wildcard $(HOTSPOT_OUTPUTDIR)/variant-*/gensrc/jvmtifiles/jvmti.html))
ohair@13697 706
erikj@41260 707 $(eval $(call SetupCopyFiles, COPY_JVMTI_HTML, \
erikj@41260 708 FILES := $(JVMTI_HTML), \
ihse@41652 709 DEST := $(JAVADOC_OUTPUTDIR)/platform/jvmti, \
erikj@41260 710 ))
ohair@13697 711
ihse@41652 712 COPY_TARGETS += $(COPY_JVMTI_HTML)
ohair@13697 713
ihse@41652 714 ################################################################################
ihse@41652 715 # Optional target which bundles all generated javadocs into a zip archive.
neugens@37034 716
ihse@41652 717 JAVADOC_ARCHIVE_NAME := jdk-$(VERSION_STRING)-docs.zip
ihse@41652 718 JAVADOC_ARCHIVE_ASSEMBLY_DIR := $(SUPPORT_OUTPUTDIR)/docs/zip-docs
ihse@41652 719 JAVADOC_ARCHIVE_DIR := $(OUTPUT_ROOT)/bundles
ihse@41652 720 JAVADOC_ARCHIVE := $(JAVADOC_ARCHIVE_DIR)/$(JAVADOC_ARCHIVE_NAME)
ihse@41652 721
ihse@42135 722 $(JAVADOC_ARCHIVE): $(TARGETS) $(COPY_TARGETS)
neugens@37034 723 $(call LogInfo, Compressing javadoc to single $(JAVADOC_ARCHIVE_NAME))
neugens@37034 724 $(MKDIR) -p $(JAVADOC_ARCHIVE_DIR)
neugens@37034 725 $(RM) -r $(JAVADOC_ARCHIVE_ASSEMBLY_DIR)
neugens@37034 726 $(MKDIR) -p $(JAVADOC_ARCHIVE_ASSEMBLY_DIR)
ihse@41652 727 all_roots=`$(FIND) $(JAVADOC_OUTPUTDIR) | $(GREP) index.html | grep -v old/doclet`; \
neugens@37034 728 pushd $(JAVADOC_ARCHIVE_ASSEMBLY_DIR); \
neugens@37034 729 for index_file in $${all_roots} ; do \
neugens@37034 730 target_dir=`dirname $${index_file}`; \
neugens@37034 731 name=`$(ECHO) $${target_dir} | $(SED) "s;/spec;;" | $(SED) "s;.*/;;"`; \
neugens@37034 732 $(LN) -s $${target_dir} $${name}; \
neugens@37034 733 done; \
ihse@42136 734 $(ZIPEXE) -q -r $(JAVADOC_ARCHIVE) * ; \
neugens@37034 735 popd ;
neugens@37034 736
ihse@41652 737 ZIP_TARGETS += $(JAVADOC_ARCHIVE)
erikj@39384 738
erikj@39384 739 ################################################################################
erikj@39384 740
ihse@41652 741 # Hook to include the corresponding custom file, if present.
ihse@41652 742 $(eval $(call IncludeCustomExtension, , Javadoc.gmk))
ihse@41652 743
ihse@41652 744 ################################################################################
ihse@41652 745
chegar@43285 746 docs-javadoc: $(BUILD_TOOLS_JDK) $(TARGETS)
ihse@41652 747
ihse@41652 748 docs-copy: $(COPY_TARGETS)
ihse@41652 749
ihse@41652 750 docs-zip: $(ZIP_TARGETS)
ihse@41652 751
ihse@41652 752 all: docs-javadoc docs-copy docs-zip
ihse@41652 753
ihse@41652 754 .PHONY: default all docs-javadoc docs-copy docs-zip