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