157
158 # Speed up finding by filling cache
159 $(eval $(call FillCacheFind, $(wildcard $(JAVADOC_SOURCE_DIRS))))
160
161 # In order to get a specific ordering it's necessary to specify the total
162 # ordering of tags as the tags are otherwise ordered in order of definition.
163 DEFAULT_JAVADOC_TAGS := \
164 -tag beaninfo:X \
165 -tag revised:X \
166 -tag since.unbundled:X \
167 -tag spec:X \
168 -tag specdefault:X \
169 -tag Note:X \
170 -tag ToDo:X \
171 -tag 'apiNote:a:API Note:' \
172 -tag 'implSpec:a:Implementation Requirements:' \
173 -tag 'implNote:a:Implementation Note:' \
174 -tag param \
175 -tag return \
176 -tag throws \
177 -tag since \
178 -tag version \
179 -tag serialData \
180 -tag factory \
181 -tag see \
182 -tag 'jvms:a:See <cite>The Java™ Virtual Machine Specification</cite>:' \
183 -tag 'jls:a:See <cite>The Java™ Language Specification</cite>:' \
184 -taglet build.tools.taglet.Incubating \
185 -tagletpath $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
186 #
187
188 DEFAULT_JAVADOC_OPTIONS := -XDignore.symbol.file=true -use -keywords -notimestamp \
189 -serialwarn -encoding ISO-8859-1 -breakiterator --system none
190
191 ################################################################################
192 # Setup make rules for running javadoc.
193 #
194 # Parameter 1 is the name of the rule. This name is used as variable prefix,
195 # and the targets generated are listed in a variable by that name. Note that
196 # the index.html file will work as a "touch file" for all the magnitude of
197 # files that are generated by javadoc.
198 #
199 # Remaining parameters are named arguments. These include:
200 # MODULES - Modules to include
201 # PACKAGES - Packages to include
202 # IS_CORE - Set to TRUE for the Core API package which needs special treatment
203 # API_ROOT - Where to base the documentation (jre or jdk)
204 # DEST_DIR - A directory relative to the API root
205 # OVERVIEW - Path to a html overview file
206 # TITLE - Default title to use for the more specific versions below
207 # WINDOW_TITLE - Title to use in -windowtitle. Computed from TITLE if empty.
208 # HEADER_TITLE - Title to use in -header. Computed from TITLE if empty.
209 # DOC_TITLE - Title to use in -doctitle. Computed from TITLE if empty.
210 # FIRST_COPYRIGHT_YEAR - First year this bundle was introduced
304
305 # If there are many packages, use an @-file...
306 ifneq ($$(word 17, $$($1_PACKAGES)), )
307 $1_PACKAGES_FILE := $$(SUPPORT_OUTPUTDIR)/docs/$1.packages
308 $1_PACKAGES_ARG := @$$($1_PACKAGES_FILE)
309 else
310 $1_PACKAGES_ARG := $$($1_PACKAGES)
311 endif
312
313 # The index.html which is a marker for all the output from javadoc.
314 $1_INDEX_FILE := $$(JAVADOC_OUTPUTDIR)/$$($1_OUTPUT_DIRNAME)/index.html
315
316 # Rule for actually running javadoc
317 $$($1_INDEX_FILE): $$(BUILD_TOOLS_JDK) $$($1_VARDEPS_FILE) $$($1_PACKAGE_DEPS) $$($1_DEPS)
318 $$(call LogWarn, Generating Javadoc from $$(words $$($1_PACKAGES)) package(s) for $$($1_OUTPUT_DIRNAME))
319 $$(call MakeDir, $$(@D))
320 ifneq ($$($1_PACKAGES_FILE), )
321 $$(eval $$(call ListPathsSafely, $1_PACKAGES, $$($1_PACKAGES_FILE)))
322 endif
323 $$(call ExecuteWithLog, $$(SUPPORT_OUTPUTDIR)/docs/$1.javadoc, \
324 $$($1_JAVA) -Djava.awt.headless=true $(NEW_JAVADOC) -d $$(@D) \
325 $$(DEFAULT_JAVADOC_TAGS) $$(DEFAULT_JAVADOC_OPTIONS) \
326 --module-source-path $$(call PathList, $$(JAVADOC_SOURCE_DIRS)) \
327 $$($1_OPTIONS) $$($1_PACKAGES_ARG))
328
329 # The output returned will be the index.html file
330 $1 := $$($1_INDEX_FILE)
331 endef
332
333 ################################################################################
334
335 $(eval $(call SetupJavadocGeneration, coredocs, \
336 MODULES := java.se.ee, \
337 PACKAGES := $(CORE_PACKAGES), \
338 IS_CORE := TRUE, \
339 OVERVIEW := $(JDK_TOPDIR)/src/java.base/share/classes/overview-core.html, \
340 WINDOW_TITLE := Java Platform SE $(VERSION_SPECIFICATION), \
341 HEADER_TITLE := Java™ Platform<br>Standard Ed. $(VERSION_SPECIFICATION), \
342 DOC_TITLE := Java™ Platform$(COMMA) Standard Edition \
343 $(VERSION_SPECIFICATION)<br>API Specification, \
344 FIRST_COPYRIGHT_YEAR := 1993, \
|
157
158 # Speed up finding by filling cache
159 $(eval $(call FillCacheFind, $(wildcard $(JAVADOC_SOURCE_DIRS))))
160
161 # In order to get a specific ordering it's necessary to specify the total
162 # ordering of tags as the tags are otherwise ordered in order of definition.
163 DEFAULT_JAVADOC_TAGS := \
164 -tag beaninfo:X \
165 -tag revised:X \
166 -tag since.unbundled:X \
167 -tag spec:X \
168 -tag specdefault:X \
169 -tag Note:X \
170 -tag ToDo:X \
171 -tag 'apiNote:a:API Note:' \
172 -tag 'implSpec:a:Implementation Requirements:' \
173 -tag 'implNote:a:Implementation Note:' \
174 -tag param \
175 -tag return \
176 -tag throws \
177 -taglet build.tools.taglet.ModuleGraph \
178 -tag since \
179 -tag version \
180 -tag serialData \
181 -tag factory \
182 -tag see \
183 -tag 'jvms:a:See <cite>The Java™ Virtual Machine Specification</cite>:' \
184 -tag 'jls:a:See <cite>The Java™ Language Specification</cite>:' \
185 -taglet build.tools.taglet.Incubating \
186 -tagletpath $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
187 #
188
189 DEFAULT_JAVADOC_OPTIONS := -XDignore.symbol.file=true -use -keywords -notimestamp \
190 -serialwarn -encoding ISO-8859-1 -breakiterator --system none
191
192 #
193 # TODO: this should be set by the configure option.
194 #
195 JAVADOC_MODULE_GRAPH=false
196
197 ################################################################################
198 # Setup make rules for running javadoc.
199 #
200 # Parameter 1 is the name of the rule. This name is used as variable prefix,
201 # and the targets generated are listed in a variable by that name. Note that
202 # the index.html file will work as a "touch file" for all the magnitude of
203 # files that are generated by javadoc.
204 #
205 # Remaining parameters are named arguments. These include:
206 # MODULES - Modules to include
207 # PACKAGES - Packages to include
208 # IS_CORE - Set to TRUE for the Core API package which needs special treatment
209 # API_ROOT - Where to base the documentation (jre or jdk)
210 # DEST_DIR - A directory relative to the API root
211 # OVERVIEW - Path to a html overview file
212 # TITLE - Default title to use for the more specific versions below
213 # WINDOW_TITLE - Title to use in -windowtitle. Computed from TITLE if empty.
214 # HEADER_TITLE - Title to use in -header. Computed from TITLE if empty.
215 # DOC_TITLE - Title to use in -doctitle. Computed from TITLE if empty.
216 # FIRST_COPYRIGHT_YEAR - First year this bundle was introduced
310
311 # If there are many packages, use an @-file...
312 ifneq ($$(word 17, $$($1_PACKAGES)), )
313 $1_PACKAGES_FILE := $$(SUPPORT_OUTPUTDIR)/docs/$1.packages
314 $1_PACKAGES_ARG := @$$($1_PACKAGES_FILE)
315 else
316 $1_PACKAGES_ARG := $$($1_PACKAGES)
317 endif
318
319 # The index.html which is a marker for all the output from javadoc.
320 $1_INDEX_FILE := $$(JAVADOC_OUTPUTDIR)/$$($1_OUTPUT_DIRNAME)/index.html
321
322 # Rule for actually running javadoc
323 $$($1_INDEX_FILE): $$(BUILD_TOOLS_JDK) $$($1_VARDEPS_FILE) $$($1_PACKAGE_DEPS) $$($1_DEPS)
324 $$(call LogWarn, Generating Javadoc from $$(words $$($1_PACKAGES)) package(s) for $$($1_OUTPUT_DIRNAME))
325 $$(call MakeDir, $$(@D))
326 ifneq ($$($1_PACKAGES_FILE), )
327 $$(eval $$(call ListPathsSafely, $1_PACKAGES, $$($1_PACKAGES_FILE)))
328 endif
329 $$(call ExecuteWithLog, $$(SUPPORT_OUTPUTDIR)/docs/$1.javadoc, \
330 $$($1_JAVA) -Djava.awt.headless=true -DenableModuleGraph=$(JAVADOC_MODULE_GRAPH) \
331 $(NEW_JAVADOC) -d $$(@D) \
332 $$(DEFAULT_JAVADOC_TAGS) $$(DEFAULT_JAVADOC_OPTIONS) \
333 --module-source-path $$(call PathList, $$(JAVADOC_SOURCE_DIRS)) \
334 $$($1_OPTIONS) $$($1_PACKAGES_ARG))
335
336 # The output returned will be the index.html file
337 $1 := $$($1_INDEX_FILE)
338 endef
339
340 ################################################################################
341
342 $(eval $(call SetupJavadocGeneration, coredocs, \
343 MODULES := java.se.ee, \
344 PACKAGES := $(CORE_PACKAGES), \
345 IS_CORE := TRUE, \
346 OVERVIEW := $(JDK_TOPDIR)/src/java.base/share/classes/overview-core.html, \
347 WINDOW_TITLE := Java Platform SE $(VERSION_SPECIFICATION), \
348 HEADER_TITLE := Java™ Platform<br>Standard Ed. $(VERSION_SPECIFICATION), \
349 DOC_TITLE := Java™ Platform$(COMMA) Standard Edition \
350 $(VERSION_SPECIFICATION)<br>API Specification, \
351 FIRST_COPYRIGHT_YEAR := 1993, \
|