Thu, 10 Jan 2013 19:36:13 -0800
8004834: Add doclint support into javadoc
Reviewed-by: erikj, tbell
1 # Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
2 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
3 #
4 # This code is free software; you can redistribute it and/or modify it
5 # under the terms of the GNU General Public License version 2 only, as
6 # published by the Free Software Foundation. Oracle designates this
7 # particular file as subject to the "Classpath" exception as provided
8 # by Oracle in the LICENSE file that accompanied this code.
9 #
10 # This code is distributed in the hope that it will be useful, but WITHOUT
11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13 # version 2 for more details (a copy is included in the LICENSE file that
14 # accompanied this code).
15 #
16 # You should have received a copy of the GNU General Public License version
17 # 2 along with this work; if not, write to the Free Software Foundation,
18 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
19 #
20 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
21 # or visit www.oracle.com if you need additional information or have any
22 # questions.
23 #
25 include $(SPEC)
26 include MakeBase.gmk
28 .SUFFIXES: # Delete the default suffixes
29 .SUFFIXES: .java
31 #
32 # Definitions for $(DOCSDIR), $(MKDIR), $(BINDIR), etc.
33 #
35 CLASSPATH_SEPARATOR = :
37 DOCSDIR=$(OUTPUT_ROOT)/docs
38 TEMPDIR=$(OUTPUT_ROOT)/docstemp
40 JDK_SHARE_SRC=$(JDK_TOPDIR)/src/share
41 JDK_SHARE_CLASSES=$(JDK_SHARE_SRC)/classes
43 JDK_IMPSRC = $(JDK_OUTPUTDIR)/impsrc
45 JDK_GENSRC = $(JDK_OUTPUTDIR)/gensrc
47 HOTSPOT_DOCS_IMPORT_PATH=$(HOTSPOT_OUTPUTDIR)/docs
49 BUILD_NUMBER=$(JDK_BUILD_NUMBER)
51 BOOT_JAVA_CMD=$(JAVA)
53 JAVADOC_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/javadoc.jar
54 JAVADOC_CMD = $(BOOT_JAVA_CMD) \
55 -Xmx1024m \
56 -Djava.awt.headless=true \
57 "-Xbootclasspath/p:$(JAVADOC_JAR)" \
58 -jar $(JAVADOC_JAR) -bootclasspath $(JDK_OUTPUTDIR)/classes
60 # Copyright year for beginning of Java and some of the apis
61 # (Needed when creating the javadocs)
62 FIRST_COPYRIGHT_YEAR = 1993
63 DOMAPI_FIRST_COPYRIGHT_YEAR = 2005
64 MIRROR_FIRST_COPYRIGHT_YEAR = 2004
65 DOCLETAPI_FIRST_COPYRIGHT_YEAR = 1993
66 TAGLETAPI_FIRST_COPYRIGHT_YEAR = 1993
67 JDI_FIRST_COPYRIGHT_YEAR = 1999
68 JAAS_FIRST_COPYRIGHT_YEAR = 1998
69 JGSS_FIRST_COPYRIGHT_YEAR = 2000
70 SMARTCARDIO_FIRST_COPYRIGHT_YEAR = 2005
71 HTTPSERVER_FIRST_COPYRIGHT_YEAR = 2005
72 MGMT_FIRST_COPYRIGHT_YEAR = 2003
73 ATTACH_FIRST_COPYRIGHT_YEAR = 2005
74 JCONSOLE_FIRST_COPYRIGHT_YEAR = 2006
75 SCTPAPI_FIRST_COPYRIGHT_YEAR = 2009
76 TRACING_FIRST_COPYRIGHT_YEAR = 2008
77 TREEAPI_FIRST_COPYRIGHT_YEAR = 2005
78 JNLP_FIRST_COPYRIGHT_YEAR = 1998
79 PLUGIN2_FIRST_COPYRIGHT_YEAR = 2007
81 # Oracle name
82 FULL_COMPANY_NAME = Oracle and/or its affiliates
84 # Copyright address
85 COMPANY_ADDRESS = 500 Oracle Parkway<br>Redwood Shores, CA 94065 USA.
87 # The trademark symbol
88 TRADEMARK = ™
90 # Common copyright lines used
91 # The word "Copyright" might optionally be a link to the file cpyr.html.
92 # The first year of copyright may vary or not be available.
93 # The address to the company might be optional.
94 COMMA:= ,
95 EMPTY:=
96 SPACE:=$(EMPTY) $(EMPTY)
97 COPYRIGHT_SYMBOL = &\#x00a9;
98 # Macro to construct the copyright line
99 # (The GNU make 3.78.1 "if" conditional is broken, fixed in GNU make 3.81)
100 define CopyrightLine # optionalurl optionalfirstyear optionaladdress
101 $(if $(strip $1),<a href="$(strip $1)">Copyright</a>,Copyright) \
102 $(COPYRIGHT_SYMBOL) $(if $2,$2${COMMA},) $(COPYRIGHT_YEAR),\
103 $(FULL_COMPANY_NAME). $3 All rights reserved.
104 endef
106 # Url to root of documents
107 DOCSDIR_URL = {@docroot}/$(GET2DOCSDIR)
109 # Url to copyright html file
110 COPYRIGHT_URL-7 = $(DOCSDIR_URL)/legal/cpyr.html
111 # This isn't added in old build yet.
112 #COPYRIGHT_URL-8 = $(DOCSDIR_URL)/legal/cpyr.html
113 COPYRIGHT_URL = $(COPYRIGHT_URL-$(JDK_MINOR_VERSION))
115 # Url to bug filing site
116 BUG_SUBMIT_URL = http://bugreport.sun.com/bugreport/
118 # Common line for how to submit a bug or rfe
119 BUG_SUBMIT_LINE = <a href="$(BUG_SUBMIT_URL)">Submit a bug or feature</a>
121 # Url to devdocs page
122 # Was: http://java.sun.com/javase/6/webnotes/devdocs-vs-specs.html
123 DEV_DOCS_URL-7 = http://download.oracle.com/javase/7/docs/index.html
124 # This isn't added in old build yet.
125 #DEV_DOCS_URL-8 = http://download.oracle.com/javase/7/docs/index.html
126 DEV_DOCS_URL = $(DEV_DOCS_URL-$(JDK_MINOR_VERSION))
127 DOCS_BASE_URL = http://download.oracle.com/javase/7/docs
129 # Common Java trademark line
130 JAVA_TRADEMARK_LINE = Java is a trademark or registered trademark of \
131 $(FULL_COMPANY_NAME) in the US and other countries.
133 #################################################################
134 # Macros:
137 # List of all possible directories for javadoc to look for sources
138 # NOTE: Quotes are required around sourcepath argument only on Windows.
139 # Otherwise, you get "No packages or classes specified." due
140 # to $(CLASSPATH_SEPARATOR) being interpreted as an end of
141 # command (newline or shell ; character)
142 ALL_SOURCE_DIRS = $(JDK_SHARE_CLASSES) \
143 $(JDK_IMPSRC) \
144 $(JDK_GENSRC) \
145 $(JDK_OUTPUTDIR)/gendocsrc_rmic \
146 $(JDK_TOPDIR)/src/solaris/classes \
147 $(JDK_TOPDIR)/src/windows/classes \
148 $(JDK_SHARE_SRC)/doc/stub
150 # List of directories that actually exist
151 ALL_EXISTING_SOURCE_DIRS := $(wildcard $(ALL_SOURCE_DIRS))
153 # List with classpath separator between them
154 EMPTY:=
155 SPACE:= $(EMPTY) $(EMPTY)
156 RELEASEDOCS_SOURCEPATH = \
157 $(subst $(SPACE),$(CLASSPATH_SEPARATOR),$(strip $(ALL_SOURCE_DIRS)))
159 define prep-target
160 $(MKDIR) -p $(@D)
161 $(RM) $@
162 endef
164 # Prep for javadoc creation, assumes $@ is an index.html file
165 define prep-javadoc
166 @if [ -f "$@" -a "$?" != "" ] ; then \
167 $(ECHO) "# Dependencies have changed: $?"; \
168 fi
169 $(RM) -r $(@D)
170 $(MKDIR) -p $(@D)
171 endef
173 # A cache of the directories in ALL_SOURCE_DIRS
174 DIRECTORY_CACHE = $(DOCSTMPDIR)/directory.cache
176 # Given a list of packages, return a list of files or dirs to be dependent on
177 # (Currently only returning a list of directories)
178 define PackageDependencies # packages
179 $(shell \
180 if [ "$1" != "" -a -f $(DIRECTORY_CACHE) ] ; then \
181 for p in $1 ; do \
182 pd=`$(ECHO) $${p} | $(SED) -e 's@[.]@/@g'`; \
183 $(CAT) $(DIRECTORY_CACHE) | $(GREP) "/$${pd}/" ; \
184 done; \
185 fi \
186 )
187 endef
189 # Given a list of packages, add packages that exist to $@, print summary
190 define PackageFilter # packages
191 @if [ "$1" != "" ] ; then \
192 for p in $1 ; do \
193 pd=`$(ECHO) $${p} | $(SED) -e 's@[.]@/@g'`; \
194 found="false"; \
195 for cp in $(ALL_SOURCE_DIRS) ; do \
196 if [ -d $${cp}/$${pd} ] ; then \
197 $(ECHO) "$${p}" >> $@; \
198 found="true"; \
199 break; \
200 fi; \
201 done; \
202 if [ "$${found}" = "false" ] ; then \
203 $(ECHO) "WARNING: Package not found: $${p}"; \
204 fi; \
205 done; \
206 fi
207 endef
209 # Print out a summary of the javadoc command about to be run
210 define JavadocSummary # optionsfile packagesfile
211 @$(ECHO) "# Summary for $@";\
212 $(ECHO) "# Options (`$(BASENAME) $1`):"; $(SED) -e 's@^@# @' $1; \
213 $(ECHO) "# Packages (`$(BASENAME) $2`):";$(SED) -e 's@^@# @' $2
214 endef
216 #
217 # Temporary directory for javadoc creation
218 #
219 DOCSTMPDIR = $(TEMPDIR)/doctmp
221 #
222 # Different api directories created from root directory
223 #
224 COREAPI_DOCSDIR = $(DOCSDIR)/api
225 JDK_API_DOCSDIR = $(DOCSDIR)/jdk/api
226 JRE_API_DOCSDIR = $(DOCSDIR)/jre/api
227 PLATFORM_DOCSDIR = $(DOCSDIR)/platform
229 # The non-core api javadocs need to be able to access the root of the core
230 # api directory, so for jdk/api or jre/api to get to the core api/
231 # directory we would use this:
232 JDKJRE2COREAPI = ../../api
234 # Common bottom argument
235 define CommonBottom # year
236 <font size="-1"><br> $(call CopyrightLine,,$1,)</font>
237 endef
239 # Common trademark bottom argument (Not sure why this is used sometimes)
240 define CommonTrademarkBottom # year
241 <font size="-1">\
242 $(BUG_SUBMIT_LINE)<br>$(JAVA_TRADEMARK_LINE)<br>\
243 $(call CopyrightLine,,$1,$(COMPANY_ADDRESS))\
244 </font>
245 endef
247 # Common echo of option
248 define OptionOnly # opt
249 $(PRINTF) "%s\n" "$1"
250 endef
251 define OptionPair # opt arg
252 $(PRINTF) "%s '%s'\n" "$1" '$2'
253 endef
254 define OptionTrip # opt arg arg
255 $(PRINTF) "%s '%s' '%s'\n" "$1" '$2' '$3'
256 endef
258 # Core api bottom argument (with special sauce)
259 COREAPI_BOTTOM = <font size="-1"> $(BUG_SUBMIT_LINE)\
260 <br>For further API reference and developer documentation, \
261 see <a href="$(DEV_DOCS_URL)" target="_blank">Java SE Documentation</a>. \
262 That documentation contains more detailed, developer-targeted descriptions, \
263 with conceptual overviews, definitions of terms, workarounds, \
264 and working code examples.<br>\
265 $(call CopyrightLine,$(COPYRIGHT_URL),$(FIRST_COPYRIGHT_YEAR),)\
266 </font>
268 # Common javadoc options used by all
269 COMMON_JAVADOCFLAGS = \
270 -XDignore.symbol.file=true \
271 -quiet \
272 -use \
273 -keywords \
274 -Xdoclint:none \
275 $(ADDITIONAL_JAVADOCFLAGS)
277 ifdef OPENJDK
278 ADDITIONAL_JAVADOCFLAGS = \
279 -Xdocrootparent $(DOCS_BASE_URL)
280 else
281 ADDITIONAL_JAVADOCFLAGS =
282 endif
284 # Draft used for non-fcs documents
285 DRAFT_HEADER =
286 ifneq ($(MILESTONE), fcs)
287 DRAFT_HEADER = <br><strong>DRAFT $(MILESTONE)-$(BUILD_NUMBER)</strong>
288 DRAFT_BOTTOM = <br><strong>DRAFT $(MILESTONE)-$(BUILD_NUMBER)</strong>
289 DRAFT_WINTITLE = $(BUILD_NUMBER)
290 # Early access top text (not used in FCS releases)
291 COREAPI_TOP_EARLYACCESS = \
292 <div style="background-color: \#EEEEEE"> \
293 <div style="padding: 6px; margin-top: 2px; margin-bottom: 6px; \
294 margin-left: 6px; margin-right: 6px; text-align: justify; \
295 font-size: 80%; font-family: Helvetica, Arial, sans-serif; \
296 font-weight: normal;"> \
297 Please note that the specifications and other information \
298 contained herein are not final and are subject to change. \
299 The information is being made available to you solely for purpose of \
300 evaluation. \
301 </div> </div>
302 endif
304 #################################################################
306 #
307 # CORE_PKGS environment variable has been moved to the following file
308 #
309 include CORE_PKGS.gmk
311 #
312 # Load environment variables for API package names that are not part of
313 # the Java SE platform
314 #
315 include NON_CORE_PKGS.gmk
317 #################################################################
319 #
320 # Default target is same as docs target, create core api and all others it can
321 #
323 all: docs
324 docs: coredocs otherdocs
326 #################################################################
327 # Production Targets -- USE THESE TARGETS WHEN:
328 # a) You're generating docs outside of release engineering's
329 # standard control build.
330 # b) The docs will be pushed to the web and/or included in
331 # the downloaded doc bundle.
332 #
333 # See: Notes.html#releaseTargets
334 # Note: Spaces precede ifdef/ifndef indents. Tabs precede target commands (!)
335 #
337 sanitycheckcoredocs:
338 @$(ECHO) ""
339 @$(ECHO) "Building core api docs with these values:"
340 @$(ECHO) " BUILD_NUMBER = $(BUILD_NUMBER)"
341 @$(ECHO) " MILESTONE = $(MILESTONE)"
342 @$(ECHO) ""
343 ifeq ($(BUILD_NUMBER), b00)
344 @$(ECHO) "ERROR: Build number must be defined"
345 @$(ECHO) "MILESTONE is set to $(MILESTONE)"
346 @$(ECHO) ""
347 exit 1
348 endif
350 #############################################################
351 #
352 # coredocs
353 #
354 COREAPI_DOCTITLE = Java$(TRADEMARK) Platform, Standard Edition \
355 $(JDK_MINOR_VERSION)<br>API Specification
356 COREAPI_WINDOWTITLE = Java Platform SE $(JDK_MINOR_VERSION)
357 COREAPI_HEADER = \
358 <strong>Java$(TRADEMARK) Platform<br>Standard Ed. $(JDK_MINOR_VERSION)</strong>
360 # Java language specification cite
361 TAG_JLS = jls:a:See <cite> \
362 The Java™ Language Specification</cite>:
364 # Overview file for core apis
365 COREAPI_OVERVIEW = $(JDK_SHARE_CLASSES)/overview-core.html
367 # The index.html, options, and packages files
368 COREAPI_INDEX_FILE = $(COREAPI_DOCSDIR)/index.html
369 COREAPI_OPTIONS_FILE = $(DOCSTMPDIR)/coredocs.options
370 COREAPI_PACKAGES_FILE = $(DOCSTMPDIR)/coredocs.packages
372 coredocs: $(COREAPI_INDEX_FILE)
374 # Set relative location to core api document root
375 $(COREAPI_INDEX_FILE): GET2DOCSDIR=..
377 # Run javadoc if the index file is out of date or missing
378 $(COREAPI_INDEX_FILE): $(COREAPI_OPTIONS_FILE) $(COREAPI_PACKAGES_FILE)
379 $(prep-javadoc)
380 $(call JavadocSummary,$(COREAPI_OPTIONS_FILE),$(COREAPI_PACKAGES_FILE))
381 $(JAVADOC_CMD) -d $(@D) \
382 @$(COREAPI_OPTIONS_FILE) @$(COREAPI_PACKAGES_FILE)
384 # Create file with javadoc options in it
385 $(COREAPI_OPTIONS_FILE): $(COREAPI_OVERVIEW)
386 $(prep-target)
387 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
388 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
389 $(call OptionPair,-encoding,ISO-8859-1) ; \
390 $(call OptionPair,-tag,beaninfo:X) ; \
391 $(call OptionPair,-tag,revised:X) ; \
392 $(call OptionPair,-tag,since.unbundled:X) ; \
393 $(call OptionPair,-tag,spec:X) ; \
394 $(call OptionPair,-tag,specdefault:X) ; \
395 $(call OptionPair,-tag,Note:X) ; \
396 $(call OptionPair,-tag,ToDo:X) ; \
397 $(call OptionPair,-tag,$(TAG_JLS)) ; \
398 $(call OptionOnly,-splitIndex) ; \
399 $(call OptionPair,-overview,$(COREAPI_OVERVIEW)) ; \
400 $(call OptionPair,-doctitle,$(COREAPI_DOCTITLE)) ; \
401 $(call OptionPair,-windowtitle,$(COREAPI_WINDOWTITLE) $(DRAFT_WINTITLE)) ;\
402 $(call OptionPair,-header,$(COREAPI_HEADER)$(DRAFT_HEADER)) ; \
403 $(call OptionPair,-bottom,$(COREAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
404 ) >> $@
405 ifdef COREAPI_TOP_EARLYACCESS
406 @$(call OptionPair,-top,$(COREAPI_TOP_EARLYACCESS)) >> $@
407 endif
409 # Create a file with the package names in it
410 $(COREAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(CORE_PKGS))
411 $(prep-target)
412 $(call PackageFilter,$(CORE_PKGS))
414 #############################################################
415 #
416 # docletapidocs
417 #
419 ALL_OTHER_TARGETS += docletapidocs
421 DOCLETAPI_DOCDIR := $(JDK_API_DOCSDIR)/javadoc/doclet
422 DOCLETAPI2COREAPI := ../../$(JDKJRE2COREAPI)
423 DOCLETAPI_DOCTITLE := Doclet API
424 DOCLETAPI_WINDOWTITLE := Doclet API
425 DOCLETAPI_HEADER := <strong>Doclet API</strong>
426 DOCLETAPI_BOTTOM := $(call CommonTrademarkBottom,$(DOCLETAPI_FIRST_COPYRIGHT_YEAR))
427 DOCLETAPI_GROUPNAME := Packages
428 DOCLETAPI_REGEXP := com.sun.javadoc
429 # DOCLETAPI_PKGS is located in NON_CORE_PKGS.gmk
431 # The index.html, options, and packages files
432 DOCLETAPI_INDEX_FILE = $(DOCLETAPI_DOCDIR)/index.html
433 DOCLETAPI_OPTIONS_FILE = $(DOCSTMPDIR)/docletapi.options
434 DOCLETAPI_PACKAGES_FILE = $(DOCSTMPDIR)/docletapi.packages
436 docletapidocs: $(DOCLETAPI_INDEX_FILE)
438 # Set relative location to core api document root
439 $(DOCLETAPI_INDEX_FILE): GET2DOCSDIR=$(DOCLETAPI2COREAPI)/..
441 # Run javadoc if the index file is out of date or missing
442 $(DOCLETAPI_INDEX_FILE): $(DOCLETAPI_OPTIONS_FILE) $(DOCLETAPI_PACKAGES_FILE) coredocs
443 $(prep-javadoc)
444 $(call JavadocSummary,$(DOCLETAPI_OPTIONS_FILE),$(DOCLETAPI_PACKAGES_FILE))
445 $(JAVADOC_CMD) -d $(@D) \
446 @$(DOCLETAPI_OPTIONS_FILE) @$(DOCLETAPI_PACKAGES_FILE)
448 # Create file with javadoc options in it
449 $(DOCLETAPI_OPTIONS_FILE):
450 $(prep-target)
451 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
452 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
453 $(call OptionPair,-encoding,ascii) ; \
454 $(call OptionOnly,-breakiterator) ; \
455 $(call OptionPair,-doctitle,$(DOCLETAPI_DOCTITLE)) ; \
456 $(call OptionPair,-windowtitle,$(DOCLETAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
457 $(call OptionPair,-header,$(DOCLETAPI_HEADER)$(DRAFT_HEADER)) ; \
458 $(call OptionPair,-bottom,$(DOCLETAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
459 $(call OptionTrip,-group,$(DOCLETAPI_GROUPNAME),$(DOCLETAPI_REGEXP)); \
460 $(call OptionTrip,-linkoffline,$(DOCLETAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
461 ) >> $@
463 # Create a file with the package names in it
464 $(DOCLETAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(DOCLETAPI_PKGS))
465 $(prep-target)
466 $(call PackageFilter,$(DOCLETAPI_PKGS))
468 #############################################################
469 #
470 # tagletapidocs
471 #
473 ALL_OTHER_TARGETS += tagletapidocs
474 TAGLETAPI_DOCDIR := $(JDK_API_DOCSDIR)/javadoc/taglet
475 TAGLETAPI2COREAPI := ../../$(JDKJRE2COREAPI)
476 TAGLETAPI_BOTTOM := $(call CommonTrademarkBottom,$(TAGLETAPI_FIRST_COPYRIGHT_YEAR))
477 # TAGLETAPI_FILE is located in NON_CORE_PKGS.gmk
479 # Temporary directory (special generation rules)
480 TAGLETAPI_TEMPDIR = $(DOCSTMPDIR)/taglets_temp
482 # The index.html, options, and packages files
483 TAGLETAPI_INDEX_FILE = $(TAGLETAPI_DOCDIR)/index.html
484 TAGLETAPI_OPTIONS_FILE = $(DOCSTMPDIR)/tagletapi.options
485 TAGLETAPI_PACKAGES_FILE = $(DOCSTMPDIR)/tagletapi.packages
487 tagletapidocs: $(TAGLETAPI_INDEX_FILE)
489 # Set relative location to core api document root
490 $(TAGLETAPI_INDEX_FILE): GET2DOCSDIR=$(TAGLETAPI2COREAPI)/..
492 # Run javadoc if the index file is out of date or missing
493 $(TAGLETAPI_INDEX_FILE): $(TAGLETAPI_OPTIONS_FILE) $(TAGLETAPI_PACKAGES_FILE) coredocs
494 $(prep-javadoc)
495 $(RM) -r $(TAGLETAPI_TEMPDIR)
496 $(MKDIR) -p $(TAGLETAPI_TEMPDIR)
497 $(call JavadocSummary,$(TAGLETAPI_OPTIONS_FILE),$(TAGLETAPI_PACKAGES_FILE))
498 $(JAVADOC_CMD) -d $(TAGLETAPI_TEMPDIR) \
499 @$(TAGLETAPI_OPTIONS_FILE) @$(TAGLETAPI_PACKAGES_FILE)
500 cp -r $(TAGLETAPI_TEMPDIR)/com $(@D)
501 cp $(TAGLETAPI_TEMPDIR)/stylesheet.css $(@D)
502 $(RM) -r $(TAGLETAPI_TEMPDIR)
504 # Create file with javadoc options in it
505 $(TAGLETAPI_OPTIONS_FILE):
506 $(prep-target)
507 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
508 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
509 $(call OptionPair,-encoding,ascii) ; \
510 $(call OptionOnly,-nonavbar) ; \
511 $(call OptionOnly,-noindex) ; \
512 $(call OptionPair,-bottom,$(TAGLETAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
513 $(call OptionTrip,-linkoffline,$(TAGLETAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
514 ) >> $@
516 # Create a file with the package names in it
517 $(TAGLETAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(TAGLETAPI_PKGS))
518 $(prep-target)
519 @($(ECHO) "$(JDK_IMPSRC)/$(TAGLETAPI_FILE)" ) > $@
521 #############################################################
522 #
523 # domapidocs
524 #
526 ALL_OTHER_TARGETS += domapidocs
528 DOMAPI_DOCDIR := $(JRE_API_DOCSDIR)/plugin/dom
529 DOMAPI2COREAPI := ../../$(JDKJRE2COREAPI)
530 DOMAPI_DOCTITLE := Common DOM API
531 DOMAPI_WINDOWTITLE := Common DOM API
532 DOMAPI_HEADER := <strong>Common DOM API</strong>
533 DOMAPI_BOTTOM := $(call CommonTrademarkBottom,$(DOMAPI_FIRST_COPYRIGHT_YEAR))
534 DOMAPI_GROUPNAME := Packages
535 DOMAPI_REGEXP := com.sun.java.browser.dom:org.w3c.dom*
536 # DOMAPI_PKGS is located in NON_CORE_PKGS.gmk
538 # The index.html, options, and packages files
539 DOMAPI_INDEX_FILE = $(DOMAPI_DOCDIR)/index.html
540 DOMAPI_OPTIONS_FILE = $(DOCSTMPDIR)/domapi.options
541 DOMAPI_PACKAGES_FILE = $(DOCSTMPDIR)/domapi.packages
543 domapidocs: $(DOMAPI_INDEX_FILE)
545 # Set relative location to core api document root
546 $(DOMAPI_INDEX_FILE): GET2DOCSDIR=$(DOMAPI2COREAPI)/..
548 # Run javadoc if the index file is out of date or missing
549 $(DOMAPI_INDEX_FILE): $(DOMAPI_OPTIONS_FILE) $(DOMAPI_PACKAGES_FILE) coredocs
550 $(prep-javadoc)
551 $(call JavadocSummary,$(DOMAPI_OPTIONS_FILE),$(DOMAPI_PACKAGES_FILE))
552 $(JAVADOC_CMD) -d $(@D) \
553 @$(DOMAPI_OPTIONS_FILE) @$(DOMAPI_PACKAGES_FILE)
555 # Create file with javadoc options in it
556 $(DOMAPI_OPTIONS_FILE):
557 $(prep-target)
558 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
559 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
560 $(call OptionPair,-encoding,ascii) ; \
561 $(call OptionOnly,-splitIndex) ; \
562 $(call OptionPair,-doctitle,$(DOMAPI_DOCTITLE)) ; \
563 $(call OptionPair,-windowtitle,$(DOMAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
564 $(call OptionPair,-header,$(DOMAPI_HEADER)$(DRAFT_HEADER)) ; \
565 $(call OptionPair,-bottom,$(DOMAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
566 $(call OptionTrip,-group,$(DOMAPI_GROUPNAME),$(DOMAPI_REGEXP)); \
567 $(call OptionTrip,-linkoffline,$(DOMAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
568 ) >> $@
570 # Create a file with the package names in it
571 $(DOMAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(DOMAPI_PKGS))
572 $(prep-target)
573 $(call PackageFilter,$(DOMAPI_PKGS))
575 #############################################################
576 #
577 # jpdadocs
578 #
580 ALL_OTHER_TARGETS += jpdadocs
582 jpdadocs: jdidocs jdwpdocs jvmtidocs
584 #############################################################
585 #
586 # jdidocs
587 #
589 ALL_OTHER_TARGETS += jdidocs
591 JDI_DOCDIR := $(JDK_API_DOCSDIR)/jpda/jdi
592 JDI2COREAPI := ../../$(JDKJRE2COREAPI)
593 JDI_DOCTITLE := Java$(TRADEMARK) Debug Interface
594 JDI_WINDOWTITLE := Java Debug Interface
595 JDI_HEADER := <strong>Java Debug Interface</strong>
596 JDI_BOTTOM := $(call CommonBottom,$(JDI_FIRST_COPYRIGHT_YEAR))
597 JDI_OVERVIEW := $(JDK_SHARE_CLASSES)/jdi-overview.html
598 # JDI_PKGS is located in NON_CORE_PKGS.gmk
600 # The index.html, options, and packages files
601 JDI_INDEX_FILE = $(JDI_DOCDIR)/index.html
602 JDI_OPTIONS_FILE = $(DOCSTMPDIR)/jdi.options
603 JDI_PACKAGES_FILE = $(DOCSTMPDIR)/jdi.packages
605 jdidocs: $(JDI_INDEX_FILE)
607 # Set relative location to core api document root
608 $(JDI_INDEX_FILE): GET2DOCSDIR=$(JDI2COREAPI)/..
610 # Run javadoc if the index file is out of date or missing
611 $(JDI_INDEX_FILE): $(JDI_OPTIONS_FILE) $(JDI_PACKAGES_FILE) coredocs
612 $(prep-javadoc)
613 $(call JavadocSummary,$(JDI_OPTIONS_FILE),$(JDI_PACKAGES_FILE))
614 $(JAVADOC_CMD) -d $(@D) \
615 @$(JDI_OPTIONS_FILE) @$(JDI_PACKAGES_FILE)
617 # Create file with javadoc options in it
618 $(JDI_OPTIONS_FILE): $(JDI_OVERVIEW)
619 $(prep-target)
620 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
621 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
622 $(call OptionPair,-encoding,ascii) ; \
623 $(call OptionPair,-overview,$(JDI_OVERVIEW)) ; \
624 $(call OptionPair,-doctitle,$(JDI_DOCTITLE)) ; \
625 $(call OptionPair,-windowtitle,$(JDI_WINDOWTITLE) $(DRAFT_WINTITLE)); \
626 $(call OptionPair,-header,$(JDI_HEADER)$(DRAFT_HEADER)) ; \
627 $(call OptionPair,-bottom,$(JDI_BOTTOM)$(DRAFT_BOTTOM)) ; \
628 $(call OptionTrip,-linkoffline,$(JDI2COREAPI),$(COREAPI_DOCSDIR)/); \
629 ) >> $@
631 # Create a file with the package names in it
632 $(JDI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JDI_PKGS))
633 $(prep-target)
634 $(call PackageFilter,$(JDI_PKGS))
636 #############################################################
637 #
638 # jdwpdocs
639 #
641 ALL_OTHER_TARGETS += jdwpdocs
643 JDWP_DOCDIR = $(PLATFORM_DOCSDIR)/jpda/jdwp
645 jdwpdocs: $(JDWP_DOCDIR)/jdwp-protocol.html
646 $(JDWP_DOCDIR)/jdwp-protocol.html : $(JDK_OUTPUTDIR)/gensrc_jdwp_doc/jdwp-protocol.html
647 $(MKDIR) -p $(@D)
648 $(RM) $@
649 $(CP) $< $@
651 #############################################################
652 #
653 # jvmtidocs
654 #
656 ALL_OTHER_TARGETS += jvmtidocs
658 JVMTI_DOCDIR = $(PLATFORM_DOCSDIR)/jvmti
659 JVMTI_HTML = $(HOTSPOT_DIST)/docs/platform/jvmti/jvmti.html
661 jvmtidocs: $(JVMTI_DOCDIR)/jvmti.html
662 $(JVMTI_DOCDIR)/jvmti.html:
663 @$(prep-javadoc)
664 @if [ -f $(JVMTI_HTML) ] ; then \
665 $(ECHO) "$(CP) $(JVMTI_HTML) $@"; \
666 $(CP) $(JVMTI_HTML) $@; \
667 else \
668 $(ECHO) "WARNING: Generated file does not exist: $(JVMTI_HTML)"; \
669 fi
671 #############################################################
672 #
673 # jaasdocs
674 #
676 ALL_OTHER_TARGETS += jaasdocs
678 JAAS_DOCDIR := $(JRE_API_DOCSDIR)/security/jaas/spec
679 JAAS2COREAPI := ../../../$(JDKJRE2COREAPI)
680 JAAS_DOCTITLE := Java$(TRADEMARK) Authentication and Authorization Service
681 JAAS_WINDOWTITLE := Java Authentication and Authorization Service
682 JAAS_HEADER := <strong>Java Authentication and Authorization Service</strong>
683 JAAS_BOTTOM := $(call CommonBottom,$(JAAS_FIRST_COPYRIGHT_YEAR))
684 # JAAS_PKGS is located in NON_CORE_PKGS.gmk
685 JAAS_OVERVIEW := $(JDK_SHARE_CLASSES)/com/sun/security/auth/jaas-overview.html
687 # The index.html, options, and packages files
688 JAAS_INDEX_FILE = $(JAAS_DOCDIR)/index.html
689 JAAS_OPTIONS_FILE = $(DOCSTMPDIR)/jaas.options
690 JAAS_PACKAGES_FILE = $(DOCSTMPDIR)/jaas.packages
692 jaasdocs: $(JAAS_INDEX_FILE)
694 # Set relative location to core api document root
695 $(JAAS_INDEX_FILE): GET2DOCSDIR=$(JAAS2COREAPI)/..
697 # Run javadoc if the index file is out of date or missing
698 $(JAAS_INDEX_FILE): $(JAAS_OPTIONS_FILE) $(JAAS_PACKAGES_FILE) coredocs
699 $(prep-javadoc)
700 $(call JavadocSummary,$(JAAS_OPTIONS_FILE),$(JAAS_PACKAGES_FILE))
701 $(JAVADOC_CMD) -d $(@D) \
702 @$(JAAS_OPTIONS_FILE) @$(JAAS_PACKAGES_FILE)
704 # Create file with javadoc options in it
705 $(JAAS_OPTIONS_FILE): $(JAAS_OVERVIEW)
706 $(prep-target)
707 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
708 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
709 $(call OptionPair,-encoding,ascii) ; \
710 $(call OptionPair,-overview,$(JAAS_OVERVIEW)) ; \
711 $(call OptionPair,-doctitle,$(JAAS_DOCTITLE)) ; \
712 $(call OptionPair,-windowtitle,$(JAAS_WINDOWTITLE) $(DRAFT_WINTITLE)); \
713 $(call OptionPair,-header,$(JAAS_HEADER)$(DRAFT_HEADER)) ; \
714 $(call OptionPair,-bottom,$(JAAS_BOTTOM)$(DRAFT_BOTTOM)) ; \
715 $(call OptionTrip,-linkoffline,$(JAAS2COREAPI),$(COREAPI_DOCSDIR)/); \
716 ) >> $@
718 # Create a file with the package names in it
719 $(JAAS_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JAAS_PKGS))
720 $(prep-target)
721 $(call PackageFilter,$(JAAS_PKGS))
723 #############################################################
724 #
725 # jgssdocs
726 #
728 ALL_OTHER_TARGETS += jgssdocs
730 JGSS_DOCDIR := $(JRE_API_DOCSDIR)/security/jgss/spec
731 JGSS2COREAPI := ../../../$(JDKJRE2COREAPI)
732 JGSS_DOCTITLE := Java$(TRADEMARK) GSS-API Utilities
733 JGSS_WINDOWTITLE := Java GSS-API Utilities
734 JGSS_HEADER := <strong>Java GSS-API Utilities</strong>
735 JGSS_BOTTOM := $(call CommonBottom,$(JGSS_FIRST_COPYRIGHT_YEAR))
736 JGSS_OVERVIEW := $(JDK_SHARE_CLASSES)/com/sun/security/jgss/jgss-overview.html
737 # JGSS_PKGS is located in NON_CORE_PKGS.gmk
739 # The index.html, options, and packages files
740 JGSS_INDEX_FILE = $(JGSS_DOCDIR)/index.html
741 JGSS_OPTIONS_FILE = $(DOCSTMPDIR)/jgss.options
742 JGSS_PACKAGES_FILE = $(DOCSTMPDIR)/jgss.packages
744 jgssdocs: $(JGSS_INDEX_FILE)
746 # Set relative location to core api document root
747 $(JGSS_INDEX_FILE): GET2DOCSDIR=$(JGSS2COREAPI)/..
749 # Run javadoc if the index file is out of date or missing
750 $(JGSS_INDEX_FILE): $(JGSS_OPTIONS_FILE) $(JGSS_PACKAGES_FILE) coredocs
751 $(prep-javadoc)
752 $(call JavadocSummary,$(JGSS_OPTIONS_FILE),$(JGSS_PACKAGES_FILE))
753 $(JAVADOC_CMD) -d $(@D) \
754 @$(JGSS_OPTIONS_FILE) @$(JGSS_PACKAGES_FILE)
756 # Create file with javadoc options in it
757 $(JGSS_OPTIONS_FILE): $(JGSS_OVERVIEW)
758 $(prep-target)
759 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
760 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
761 $(call OptionPair,-encoding,ascii) ; \
762 $(call OptionOnly,-nodeprecatedlist) ; \
763 $(call OptionPair,-overview,$(JGSS_OVERVIEW)) ; \
764 $(call OptionPair,-doctitle,$(JGSS_DOCTITLE)) ; \
765 $(call OptionPair,-windowtitle,$(JGSS_WINDOWTITLE) $(DRAFT_WINTITLE)); \
766 $(call OptionPair,-header,$(JGSS_HEADER)$(DRAFT_HEADER)) ; \
767 $(call OptionPair,-bottom,$(JGSS_BOTTOM)$(DRAFT_BOTTOM)) ; \
768 $(call OptionTrip,-linkoffline,$(JGSS2COREAPI),$(COREAPI_DOCSDIR)/); \
769 ) >> $@
771 # Create a file with the package names in it
772 $(JGSS_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JGSS_PKGS))
773 $(prep-target)
774 $(call PackageFilter,$(JGSS_PKGS))
776 #############################################################
777 #
778 # smartcardiodocs
779 #
781 ALL_OTHER_TARGETS += smartcardiodocs
783 SMARTCARDIO_DOCDIR := $(JRE_API_DOCSDIR)/security/smartcardio/spec
784 SMARTCARDIO2COREAPI := ../../../$(JDKJRE2COREAPI)
785 SMARTCARDIO_DOCTITLE := Java$(TRADEMARK) Smart Card I/O
786 SMARTCARDIO_WINDOWTITLE := Java Smart Card I/O
787 SMARTCARDIO_HEADER := <strong>Java Smart Card I/O</strong>
788 SMARTCARDIO_BOTTOM := $(call CommonBottom,$(SMARTCARDIO_FIRST_COPYRIGHT_YEAR))
789 # SMARTCARDIO_PKGS is located in NON_CORE_PKGS.gmk
791 # The index.html, options, and packages files
792 SMARTCARDIO_INDEX_FILE = $(SMARTCARDIO_DOCDIR)/index.html
793 SMARTCARDIO_OPTIONS_FILE = $(DOCSTMPDIR)/smartcardio.options
794 SMARTCARDIO_PACKAGES_FILE = $(DOCSTMPDIR)/smartcardio.packages
796 smartcardiodocs: $(SMARTCARDIO_INDEX_FILE)
798 # Set relative location to core api document root
799 $(SMARTCARDIO_INDEX_FILE): GET2DOCSDIR=$(SMARTCARDIO2COREAPI)/..
801 # Run javadoc if the index file is out of date or missing
802 $(SMARTCARDIO_INDEX_FILE): $(SMARTCARDIO_OPTIONS_FILE) $(SMARTCARDIO_PACKAGES_FILE) coredocs
803 $(prep-javadoc)
804 $(call JavadocSummary,$(SMARTCARDIO_OPTIONS_FILE),$(SMARTCARDIO_PACKAGES_FILE))
805 $(JAVADOC_CMD) -d $(@D) \
806 @$(SMARTCARDIO_OPTIONS_FILE) @$(SMARTCARDIO_PACKAGES_FILE)
808 # Create file with javadoc options in it
809 $(SMARTCARDIO_OPTIONS_FILE):
810 $(prep-target)
811 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
812 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
813 $(call OptionPair,-encoding,ascii) ; \
814 $(call OptionOnly,-nodeprecatedlist) ; \
815 $(call OptionPair,-doctitle,$(SMARTCARDIO_DOCTITLE)) ; \
816 $(call OptionPair,-windowtitle,$(SMARTCARDIO_WINDOWTITLE) $(DRAFT_WINTITLE));\
817 $(call OptionPair,-header,$(SMARTCARDIO_HEADER)$(DRAFT_HEADER)); \
818 $(call OptionPair,-bottom,$(SMARTCARDIO_BOTTOM)$(DRAFT_BOTTOM)); \
819 $(call OptionTrip,-linkoffline,$(SMARTCARDIO2COREAPI),$(COREAPI_DOCSDIR)/); \
820 ) >> $@
822 # Create a file with the package names in it
823 $(SMARTCARDIO_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(SMARTCARDIO_PKGS))
824 $(prep-target)
825 $(call PackageFilter,$(SMARTCARDIO_PKGS))
827 #############################################################
828 #
829 # httpserverdocs
830 #
832 ALL_OTHER_TARGETS += httpserverdocs
834 HTTPSERVER_DOCDIR := $(JRE_API_DOCSDIR)/net/httpserver/spec
835 HTTPSERVER2COREAPI := ../../../$(JDKJRE2COREAPI)
836 HTTPSERVER_DOCTITLE := Java$(TRADEMARK) HTTP Server
837 HTTPSERVER_WINDOWTITLE := Java HTTP Server
838 HTTPSERVER_HEADER := <strong>Java HTTP Server</strong>
839 HTTPSERVER_BOTTOM := $(call CommonBottom,$(HTTPSERVER_FIRST_COPYRIGHT_YEAR))
840 # HTTPSERVER_PKGS is located in NON_CORE_PKGS.gmk
842 HTTPSERVER_INDEX_HTML = $(HTTPSERVER_DOCDIR)/index.html
843 HTTPSERVER_OPTIONS_FILE = $(DOCSTMPDIR)/httpserver.options
844 HTTPSERVER_PACKAGES_FILE = $(DOCSTMPDIR)/httpserver.packages
846 httpserverdocs: $(HTTPSERVER_INDEX_HTML)
848 # Set relative location to core api document root
849 $(HTTPSERVER_INDEX_HTML): GET2DOCSDIR=$(HTTPSERVER2COREAPI)/..
851 # Run javadoc if the index file is out of date or missing
852 $(HTTPSERVER_INDEX_HTML): $(HTTPSERVER_OPTIONS_FILE) $(HTTPSERVER_PACKAGES_FILE) coredocs
853 $(prep-javadoc)
854 $(call JavadocSummary,$(HTTPSERVER_OPTIONS_FILE),$(HTTPSERVER_PACKAGES_FILE))
855 $(JAVADOC_CMD) -d $(@D) \
856 @$(HTTPSERVER_OPTIONS_FILE) @$(HTTPSERVER_PACKAGES_FILE)
858 # Create file with javadoc options in it
859 $(HTTPSERVER_OPTIONS_FILE):
860 $(prep-target)
861 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
862 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
863 $(call OptionPair,-encoding,ascii) ; \
864 $(call OptionOnly,-nodeprecatedlist) ; \
865 $(call OptionPair,-doctitle,$(HTTPSERVER_DOCTITLE)) ; \
866 $(call OptionPair,-windowtitle,$(HTTPSERVER_WINDOWTITLE) $(DRAFT_WINTITLE));\
867 $(call OptionPair,-header,$(HTTPSERVER_HEADER)$(DRAFT_HEADER)); \
868 $(call OptionPair,-bottom,$(HTTPSERVER_BOTTOM)$(DRAFT_BOTTOM)); \
869 $(call OptionTrip,-linkoffline,$(HTTPSERVER2COREAPI),$(COREAPI_DOCSDIR)/); \
870 ) >> $@
872 # Create a file with the package names in it
873 $(HTTPSERVER_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(HTTPSERVER_PKGS))
874 $(prep-target)
875 $(call PackageFilter,$(HTTPSERVER_PKGS))
877 #############################################################
878 #
879 # mgmtdocs
880 #
882 ALL_OTHER_TARGETS += mgmtdocs
884 MGMT_DOCDIR := $(JRE_API_DOCSDIR)/management/extension
885 MGMT2COREAPI := ../../$(JDKJRE2COREAPI)
886 JVM_MIB_NAME := JVM-MANAGEMENT-MIB.mib
887 JVM_MIB_SRC := $(JDK_TOPDIR)/src/closed/share/classes/sun/management/snmp/$(JVM_MIB_NAME)
888 MGMT_DOCTITLE := Monitoring and Management Interface for the Java$(TRADEMARK) Platform
889 MGMT_WINDOWTITLE := Monitoring and Management Interface for the Java Platform
890 MGMT_HEADER := <strong>Monitoring and Management Interface for the Java Platform</strong>
891 MGMT_BOTTOM := $(call CommonBottom,$(MGMT_FIRST_COPYRIGHT_YEAR))
892 MGMT_OVERVIEW := $(JDK_SHARE_CLASSES)/com/sun/management/mgmt-overview.html
893 # MGMT_PKGS is located in NON_CORE_PKGS.gmk
895 # The index.html, options, and packages files
896 MGMT_INDEX_FILE = $(MGMT_DOCDIR)/index.html
897 MGMT_OPTIONS_FILE = $(DOCSTMPDIR)/mgmt.options
898 MGMT_PACKAGES_FILE = $(DOCSTMPDIR)/mgmt.packages
900 mgmtdocs: $(MGMT_INDEX_FILE)
902 # Set relative location to core api document root
903 $(MGMT_INDEX_FILE): GET2DOCSDIR=$(MGMT2COREAPI)/..
905 # Run javadoc if the index file is out of date or missing
906 $(MGMT_INDEX_FILE): $(MGMT_OPTIONS_FILE) $(MGMT_PACKAGES_FILE) coredocs
907 $(prep-javadoc)
908 @if [ -f $(JVM_MIB_SRC) ] ; then \
909 $(ECHO) "$(CP) $(JVM_MIB_SRC) $(@D)/.."; \
910 $(CP) $(JVM_MIB_SRC) $(@D)/.. ; \
911 else \
912 $(ECHO) "WARNING: File $(JVM_MIB_NAME) not available."; \
913 fi
914 $(call JavadocSummary,$(MGMT_OPTIONS_FILE),$(MGMT_PACKAGES_FILE))
915 $(JAVADOC_CMD) -d $(@D) \
916 @$(MGMT_OPTIONS_FILE) @$(MGMT_PACKAGES_FILE)
918 # Create file with javadoc options in it
919 $(MGMT_OPTIONS_FILE): $(MGMT_OVERVIEW)
920 $(prep-target)
921 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
922 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
923 $(call OptionPair,-encoding,ascii) ; \
924 $(call OptionOnly,-nodeprecatedlist) ; \
925 $(call OptionPair,-overview,$(MGMT_OVERVIEW)) ; \
926 $(call OptionPair,-doctitle,$(MGMT_DOCTITLE)) ; \
927 $(call OptionPair,-windowtitle,$(MGMT_WINDOWTITLE) $(DRAFT_WINTITLE)); \
928 $(call OptionPair,-header,$(MGMT_HEADER)$(DRAFT_HEADER)) ; \
929 $(call OptionPair,-bottom,$(MGMT_BOTTOM)$(DRAFT_BOTTOM)) ; \
930 $(call OptionTrip,-linkoffline,$(MGMT2COREAPI),$(COREAPI_DOCSDIR)/); \
931 ) >> $@
933 # Create a file with the package names in it
934 $(MGMT_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(MGMT_PKGS))
935 $(prep-target)
936 $(call PackageFilter,$(MGMT_PKGS))
938 #############################################################
939 #
940 # attachdocs
941 #
943 ALL_OTHER_TARGETS += attachdocs
945 ATTACH_DOCDIR := $(JDK_API_DOCSDIR)/attach/spec
946 ATTACH2COREAPI := ../../$(JDKJRE2COREAPI)
947 ATTACH_DOCTITLE := Attach API
948 ATTACH_WINDOWTITLE := Attach API
949 ATTACH_HEADER := <strong>Attach API</strong>
950 ATTACH_BOTTOM := $(call CommonBottom,$(ATTACH_FIRST_COPYRIGHT_YEAR))
951 # ATTACH_PKGS is located in NON_CORE_PKGS.gmk
953 ATTACH_INDEX_HTML = $(ATTACH_DOCDIR)/index.html
954 ATTACH_OPTIONS_FILE = $(DOCSTMPDIR)/attach.options
955 ATTACH_PACKAGES_FILE = $(DOCSTMPDIR)/attach.packages
957 attachdocs: $(ATTACH_INDEX_HTML)
959 # Set relative location to core api document root
960 $(ATTACH_INDEX_HTML): GET2DOCSDIR=$(ATTACH2COREAPI)/..
962 # Run javadoc if the index file is out of date or missing
963 $(ATTACH_INDEX_HTML): $(ATTACH_OPTIONS_FILE) $(ATTACH_PACKAGES_FILE) coredocs
964 $(prep-javadoc)
965 $(call JavadocSummary,$(ATTACH_OPTIONS_FILE),$(ATTACH_PACKAGES_FILE))
966 $(JAVADOC_CMD) -d $(@D) \
967 @$(ATTACH_OPTIONS_FILE) @$(ATTACH_PACKAGES_FILE)
969 # Create file with javadoc options in it
970 $(ATTACH_OPTIONS_FILE):
971 $(prep-target)
972 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
973 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
974 $(call OptionPair,-encoding,ascii) ; \
975 $(call OptionOnly,-nodeprecatedlist) ; \
976 $(call OptionPair,-doctitle,$(ATTACH_DOCTITLE)) ; \
977 $(call OptionPair,-windowtitle,$(ATTACH_WINDOWTITLE) $(DRAFT_WINTITLE));\
978 $(call OptionPair,-header,$(ATTACH_HEADER)$(DRAFT_HEADER)) ; \
979 $(call OptionPair,-bottom,$(ATTACH_BOTTOM)$(DRAFT_BOTTOM)) ; \
980 $(call OptionTrip,-linkoffline,$(ATTACH2COREAPI),$(COREAPI_DOCSDIR)/); \
981 ) >> $@
983 # Create a file with the package names in it
984 $(ATTACH_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(ATTACH_PKGS))
985 $(prep-target)
986 $(call PackageFilter,$(ATTACH_PKGS))
988 #############################################################
989 #
990 # jconsoledocs
991 #
993 ALL_OTHER_TARGETS += jconsoledocs
995 JCONSOLE_DOCDIR := $(JDK_API_DOCSDIR)/jconsole/spec
996 JCONSOLE2COREAPI := ../../$(JDKJRE2COREAPI)
997 JCONSOLE_DOCTITLE := JConsole API
998 JCONSOLE_WINDOWTITLE := JConsole API
999 JCONSOLE_HEADER := <strong>JConsole API</strong>
1000 JCONSOLE_BOTTOM := $(call CommonBottom,$(JCONSOLE_FIRST_COPYRIGHT_YEAR))
1001 # JCONSOLE_PKGS is located in NON_CORE_PKGS.gmk
1003 JCONSOLE_INDEX_HTML = $(JCONSOLE_DOCDIR)/index.html
1004 JCONSOLE_OPTIONS_FILE = $(DOCSTMPDIR)/jconsole.options
1005 JCONSOLE_PACKAGES_FILE = $(DOCSTMPDIR)/jconsole.packages
1007 jconsoledocs: $(JCONSOLE_INDEX_HTML)
1009 # Set relative location to core api document root
1010 $(JCONSOLE_INDEX_HTML): GET2DOCSDIR=$(JCONSOLE2COREAPI)/..
1012 # Run javadoc if the index file is out of date or missing
1013 $(JCONSOLE_INDEX_HTML): $(JCONSOLE_OPTIONS_FILE) $(JCONSOLE_PACKAGES_FILE) coredocs
1014 $(prep-javadoc)
1015 $(call JavadocSummary,$(JCONSOLE_OPTIONS_FILE),$(JCONSOLE_PACKAGES_FILE))
1016 $(JAVADOC_CMD) -d $(@D) \
1017 @$(JCONSOLE_OPTIONS_FILE) @$(JCONSOLE_PACKAGES_FILE)
1019 # Create file with javadoc options in it
1020 $(JCONSOLE_OPTIONS_FILE):
1021 $(prep-target)
1022 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
1023 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
1024 $(call OptionPair,-encoding,ascii) ; \
1025 $(call OptionOnly,-nodeprecatedlist) ; \
1026 $(call OptionPair,-doctitle,$(JCONSOLE_DOCTITLE)) ; \
1027 $(call OptionPair,-windowtitle,$(JCONSOLE_WINDOWTITLE) $(DRAFT_WINTITLE));\
1028 $(call OptionPair,-header,$(JCONSOLE_HEADER)$(DRAFT_HEADER)) ; \
1029 $(call OptionPair,-bottom,$(JCONSOLE_BOTTOM)$(DRAFT_BOTTOM)) ; \
1030 $(call OptionTrip,-linkoffline,$(JCONSOLE2COREAPI),$(COREAPI_DOCSDIR)/); \
1031 ) >> $@
1033 # Create a file with the package names in it
1034 $(JCONSOLE_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JCONSOLE_PKGS))
1035 $(prep-target)
1036 $(call PackageFilter,$(JCONSOLE_PKGS))
1038 #############################################################
1039 #
1040 # treeapidocs
1041 #
1043 ALL_OTHER_TARGETS += treeapidocs
1045 TREEAPI_DOCDIR := $(JDK_API_DOCSDIR)/javac/tree
1046 TREEAPI2COREAPI := ../../$(JDKJRE2COREAPI)
1047 TREEAPI_DOCTITLE := Compiler Tree API
1048 TREEAPI_WINDOWTITLE := Compiler Tree API
1049 TREEAPI_HEADER := <strong>Compiler Tree API</strong>
1050 TREEAPI_BOTTOM := $(call CommonBottom,$(TREEAPI_FIRST_COPYRIGHT_YEAR))
1051 TREEAPI_GROUPNAME := Packages
1052 TREEAPI_REGEXP := com.sun.source.*
1053 # TREEAPI_PKGS is located in NON_CORE_PKGS.gmk
1055 TREEAPI_INDEX_HTML = $(TREEAPI_DOCDIR)/index.html
1056 TREEAPI_OPTIONS_FILE = $(DOCSTMPDIR)/treeapi.options
1057 TREEAPI_PACKAGES_FILE = $(DOCSTMPDIR)/treeapi.packages
1059 treeapidocs: $(TREEAPI_INDEX_HTML)
1061 # Set relative location to core api document root
1062 $(TREEAPI_INDEX_HTML): GET2DOCSDIR=$(TREEAPI2COREAPI)/..
1064 # Run javadoc if the index file is out of date or missing
1065 $(TREEAPI_INDEX_HTML): $(TREEAPI_OPTIONS_FILE) $(TREEAPI_PACKAGES_FILE) coredocs
1066 $(prep-javadoc)
1067 $(call JavadocSummary,$(TREEAPI_OPTIONS_FILE),$(TREEAPI_PACKAGES_FILE))
1068 $(JAVADOC_CMD) -d $(@D) \
1069 @$(TREEAPI_OPTIONS_FILE) @$(TREEAPI_PACKAGES_FILE)
1071 # Create file with javadoc options in it
1072 $(TREEAPI_OPTIONS_FILE):
1073 $(prep-target)
1074 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
1075 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
1076 $(call OptionPair,-encoding,ascii) ; \
1077 $(call OptionPair,-doctitle,$(TREEAPI_DOCTITLE)) ; \
1078 $(call OptionPair,-windowtitle,$(TREEAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
1079 $(call OptionPair,-header,$(TREEAPI_HEADER)$(DRAFT_HEADER)) ; \
1080 $(call OptionPair,-tag,$(TAG_JLS)) ; \
1081 $(call OptionPair,-bottom,$(TREEAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
1082 $(call OptionTrip,-group,$(TREEAPI_GROUPNAME),$(TREEAPI_REGEXP)); \
1083 $(call OptionTrip,-linkoffline,$(TREEAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
1084 ) >> $@
1086 # Create a file with the package names in it
1087 $(TREEAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(TREEAPI_PKGS))
1088 $(prep-target)
1089 $(call PackageFilter,$(TREEAPI_PKGS))
1091 #############################################################
1092 #
1093 # sctpdocs
1094 #
1096 ALL_OTHER_TARGETS += sctpdocs
1098 SCTPAPI_DOCDIR := $(JRE_API_DOCSDIR)/nio/sctp/spec
1099 SCTPAPI2COREAPI := ../../../$(JDKJRE2COREAPI)
1100 SCTPAPI_DOCTITLE := SCTP API
1101 SCTPAPI_WINDOWTITLE := SCTP API
1102 SCTPAPI_HEADER := <strong>SCTP API</strong>
1103 SCTPAPI_BOTTOM := $(call CommonBottom,$(SCTPAPI_FIRST_COPYRIGHT_YEAR))
1104 # SCTPAPI_PKGS is located in NON_CORE_PKGS.gmk
1106 SCTPAPI_INDEX_HTML = $(SCTPAPI_DOCDIR)/index.html
1107 SCTPAPI_OPTIONS_FILE = $(DOCSTMPDIR)/sctp.options
1108 SCTPAPI_PACKAGES_FILE = $(DOCSTMPDIR)/sctp.packages
1110 sctpdocs: $(SCTPAPI_INDEX_HTML)
1112 # Set relative location to core api document root
1113 $(SCTPAPI_INDEX_HTML): GET2DOCSDIR=$(SCTPAPI2COREAPI)/..
1115 # Run javadoc if the index file is out of date or missing
1116 $(SCTPAPI_INDEX_HTML): $(SCTPAPI_OPTIONS_FILE) $(SCTPAPI_PACKAGES_FILE) coredocs
1117 $(prep-javadoc)
1118 $(call JavadocSummary,$(SCTPAPI_OPTIONS_FILE),$(SCTPAPI_PACKAGES_FILE))
1119 $(JAVADOC_CMD) -d $(@D) \
1120 @$(SCTPAPI_OPTIONS_FILE) @$(SCTPAPI_PACKAGES_FILE)
1122 # Create file with javadoc options in it
1123 $(SCTPAPI_OPTIONS_FILE):
1124 $(prep-target)
1125 @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \
1126 $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \
1127 $(call OptionPair,-encoding,ascii) ; \
1128 $(call OptionOnly,-nodeprecatedlist) ; \
1129 $(call OptionPair,-doctitle,$(SCTPAPI_DOCTITLE)) ; \
1130 $(call OptionPair,-windowtitle,$(SCTPAPI_WINDOWTITLE) $(DRAFT_WINTITLE));\
1131 $(call OptionPair,-header,$(SCTPAPI_HEADER)$(DRAFT_HEADER)) ; \
1132 $(call OptionPair,-bottom,$(SCTPAPI_BOTTOM)$(DRAFT_BOTTOM)) ; \
1133 $(call OptionTrip,-linkoffline,$(SCTPAPI2COREAPI),$(COREAPI_DOCSDIR)/); \
1134 ) >> $@
1136 # Create a file with the package names in it
1137 $(SCTPAPI_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(SCTPAPI_PKGS))
1138 $(prep-target)
1139 $(call PackageFilter,$(SCTPAPI_PKGS))
1141 #############################################################
1142 #
1143 # Get a cache of all the directories
1145 $(DIRECTORY_CACHE): $(ALL_EXISTING_SOURCE_DIRS)
1146 $(prep-target)
1147 @for cp in $(ALL_EXISTING_SOURCE_DIRS) ; do \
1148 $(ECHO) "$(FIND) $${cp} -type f >> $@"; \
1149 $(FIND) $${cp} -type f >> $@; \
1150 done
1152 #############################################################
1153 #release version of core packages ########
1154 # Maximize performance and ensure that build number & milestone are set.
1156 rel-coredocs: sanitycheckcoredocs
1157 $(MAKE) coredocs
1159 rel-docs: rel-coredocs $(ALL_OTHER_TARGETS)
1160 #
1161 # end of production targets
1163 otherdocs: $(ALL_OTHER_TARGETS)
1165 clean:
1166 $(RM) -r $(DOCSDIR) $(DOCSTMPDIR)
1168 #############################################################
1169 # DEBUG TARGET
1170 # List the values defined in the makefile hierarchy, to make sure everything
1171 # is set properly, and to help identify values we can use instead of making new ones.
1172 # (Most of them come from common/shared/Defs.gmk)
1173 #
1174 # Notes:
1175 # * BUILD_NUMBER defaults to b00 if not set on command line with BUILD_NUMBER=<value>
1176 # * MILESTONE defaults to internal unless set to beta, rc, or fcs on command line
1177 #
1179 #############################################################
1180 .PHONY: all docs coredocs rel-docs otherdocs rel-coredocs \
1181 sanitycheckcoredocs $(ALL_OTHER_TARGETS)