1 #
   2 # Copyright 1997-2009 Sun Microsystems, Inc.  All Rights Reserved.
   3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4 #
   5 # This code is free software; you can redistribute it and/or modify it
   6 # under the terms of the GNU General Public License version 2 only, as
   7 # published by the Free Software Foundation.  Sun designates this
   8 # particular file as subject to the "Classpath" exception as provided
   9 # by Sun in the LICENSE file that accompanied this code.
  10 #
  11 # This code is distributed in the hope that it will be useful, but WITHOUT
  12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14 # version 2 for more details (a copy is included in the LICENSE file that
  15 # accompanied this code).
  16 #
  17 # You should have received a copy of the GNU General Public License version
  18 # 2 along with this work; if not, write to the Free Software Foundation,
  19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20 #
  21 # Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
  22 # CA 95054 USA or visit www.sun.com if you need additional information or
  23 # have any questions.
  24 #
  25 
  26 #
  27 # Definitions for $(DOCSDIR), $(MKDIR), $(BINDIR), etc.
  28 #
  29 BUILDDIR=..
  30 PRODUCT=docs
  31 include $(BUILDDIR)/common/Defs.gmk
  32 
  33 # We override whatever the max VM memory setting is here.
  34 #    NOTE: javadoc will not complete without these larger settings.
  35 #    WARNING: This could cause thrashing on low memory machines.
  36 ifeq ($(ARCH_DATA_MODEL),64)
  37   MAX_VM_MEMORY = 1024
  38 else
  39   MAX_VM_MEMORY = 512
  40 endif
  41 
  42 #
  43 # Variables used by docs target
  44 #
  45 DOCSTMPDIR          = $(TEMPDIR)/doctmp
  46 
  47 COMMON_JAVADOCFLAGS =                                   \
  48                 $(NO_PROPRIETARY_API_WARNINGS)          \
  49                 -source 1.5                             \
  50                 -quiet                                  \
  51                 -use                                    \
  52                 -keywords                               \
  53                 $(JAVADOC_VM_MEMORY_FLAGS)              \
  54                 $(ADDITIONAL_JAVADOCFLAGS)
  55 ADDITIONAL_JAVADOCFLAGS =
  56 
  57 CORE_JAVADOCFLAGS  = $(COMMON_JAVADOCFLAGS)             \
  58                 $(TAGS)                                 \
  59                 -encoding ISO-8859-1                    \
  60                 -splitIndex                             \
  61                 -doctitle $(DOCTITLE_SWITCH)            \
  62                 -windowtitle $(WINDOWTITLE_SWITCH)      \
  63                 -header $(HEADER_SWITCH)                \
  64                 $(TOPOPTION)                            \
  65                 -bottom $(JAVADOCBOTTOM_SWITCH)         \
  66                 $(OVERVIEW_OPTION)
  67 
  68 DRAFT = '<br><strong>DRAFT&nbsp;'$(MILESTONE)-$(BUILD_NUMBER)'</strong>'
  69 THIS_YEAR := $(shell $(DATE) | $(SED) -e 's/  / /g' | $(CUT) -d' ' -f6)
  70 TRADEMARK = &\#x2122;
  71 
  72 IGNORED_TAGS =  beaninfo revised since.unbundled spec Note ToDo
  73 
  74 JLS3_URL = http://java.sun.com/docs/books/jls/
  75 JLS3_CITE = <a href="$(JLS3_URL)"> \
  76                 The Java Language Specification, Third Edition</a>
  77 TAG_JLS3 = -tag 'jls3:a:See <cite>$(JLS3_CITE)</cite>:'
  78 
  79 TAGS = $(IGNORED_TAGS:%=-tag %:X) $(TAG_JLS3)
  80 
  81 ifeq ($(MILESTONE), fcs)
  82     DOCTITLE_SWITCH = $(JAVADOCTITLE)
  83     WINDOWTITLE_SWITCH = $(JAVADOCWINDOWTITLE)
  84     HEADER_SWITCH = $(JAVADOCHEADER)
  85     TOPOPTION=
  86     JAVADOCBOTTOM_SWITCH= $(JAVADOCBOTTOM)
  87     OVERVIEW_OPTION = -overview $(JAVADOCOVERVIEW)
  88 else
  89     DOCTITLE_SWITCH = $(JAVADOCTITLE_EARLYACCESS)$(DRAFT)
  90     WINDOWTITLE_SWITCH = $(JAVADOCWINDOWTITLE)" $(BUILD_NUMBER)"
  91     HEADER_SWITCH = $(JAVADOCHEADER)$(DRAFT)
  92     JAVADOCBOTTOM_SWITCH= $(JAVADOCBOTTOM_EARLYACCESS)
  93     TOPOPTION= -top $(JAVADOCTOP_EARLYACCESS)
  94     OVERVIEW_OPTION =
  95 endif
  96 
  97 JAVADOCTITLE  = 'Java$(TRADEMARK) Platform, Standard Edition $(JDK_MINOR_VERSION)<br>API Specification'
  98 JAVADOCWINDOWTITLE  = 'Java Platform SE $(JDK_MINOR_VERSION)'
  99 JAVADOCHEADER = '<strong>Java$(TRADEMARK)&nbsp;Platform<br>Standard&nbsp;Ed.&nbsp;$(JDK_MINOR_VERSION)</strong>'
 100 JAVADOCBOTTOM = '<font size="-1"><a href="http://bugs.sun.com/services/bugreport/index.jsp">Submit a bug or feature</a><br>For further API reference and developer documentation, see <a href="{@docroot}/../../webnotes/devdocs-vs-specs.html">Java SE Developer Documentation</a>. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples. <p>Copyright $(THIS_YEAR) Sun Microsystems, Inc. All Rights Reserved. Use is subject to <a href="{@docroot}/../legal/license.html">license terms</a>. Also see the <a href="http://java.sun.com/docs/redist.html">documentation redistribution policy</a>.</font>'
 101 JAVADOCOVERVIEW = $(SHARE_SRC)/classes/overview-core.html
 102 
 103 #
 104 # Early access top and bottom text (for snapshots, beta and rc)
 105 #
 106 JAVADOCTOP_EARLYACCESS = '<div style="background-color: \#EEEEEE"> <div style="padding: 6px; margin-top: 2px; margin-bottom: 6px; margin-left: 6px; margin-right: 6px; text-align: justify; font-size: 80%; font-family: Helvetica, Arial, sans-serif; font-weight: normal;"> Please note that this documentation is not final and is subject to change. </div> </div>'
 107 JAVADOCBOTTOM_EARLYACCESS = '<font size="-1"><a href="http://bugs.sun.com/services/bugreport/index.jsp">Submit a bug or feature</a> <p>Copyright $(THIS_YEAR) Sun Microsystems, Inc. All Rights Reserved. Use is subject to <a href="{@docroot}/../legal/license.html">license terms</a>.</font>'
 108 JAVADOCTITLE_EARLYACCESS = $(subst Specification,Documentation,$(JAVADOCTITLE))
 109 
 110 #
 111 # Variables used by domapidocs target
 112 #
 113 
 114 DOMAPI_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                  \
 115                     -encoding ascii                           \
 116                     -splitIndex                               \
 117                     -doctitle $(DOMAPI_JAVADOCTITLE)          \
 118                     -windowtitle $(DOMAPI_JAVADOCWINDOWTITLE) \
 119                     -header $(DOMAPI_JAVADOCHEADER)           \
 120                     -bottom $(DOMAPI_JAVADOCBOTTOM)           \
 121                     -group $(DOMAPI_GROUPNAME) $(DOMAPI_REGEXP)
 122 DOMAPI_JAVADOCTITLE  = 'Common DOM API'
 123 DOMAPI_JAVADOCWINDOWTITLE  = 'Common DOM API'
 124 DOMAPI_JAVADOCHEADER = '<strong>Common DOM API</strong>'
 125 DOMAPI_JAVADOCBOTTOM = '<font size="-1"><a href="http://bugs.sun.com/services/bugreport/index.jsp">Submit a bug or feature</a><br>Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.<br>Copyright $(THIS_YEAR) Sun Microsystems, Inc. 4150 Network Circle<br>Santa Clara, California, 95054, U.S.A.  All Rights Reserved.</font>'
 126 DOMAPI_GROUPNAME = "Packages"
 127 DOMAPI_REGEXP = "com.sun.java.browser.dom:org.w3c.dom*"
 128 # DOMAPI_PKGS is located in NON_CORE_PKGS.gmk
 129 
 130 #
 131 # Variables used by mirrordocs target
 132 #
 133 
 134 MIRROR_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                    \
 135                     -encoding ascii                             \
 136                     -doctitle $(MIRROR_JAVADOCTITLE)            \
 137                     -windowtitle $(MIRROR_JAVADOCWINDOWTITLE)   \
 138                     -header $(MIRROR_JAVADOCHEADER)             \
 139                     -bottom $(MIRROR_JAVADOCBOTTOM)             \
 140                     -group $(MIRROR_GROUPNAME) $(MIRROR_REGEXP) \
 141                     -overview $(MIRROR_OVERVIEW)
 142 MIRROR_JAVADOCTITLE = 'Mirror API'
 143 MIRROR_JAVADOCWINDOWTITLE = 'Mirror API'
 144 MIRROR_JAVADOCHEADER = '<strong>Mirror API</strong>'
 145 MIRROR_JAVADOCBOTTOM = '<font size="-1"><a href="http://bugs.sun.com/services/bugreport/index.jsp">Report a bug or request a feature.</a><br>Copyright $(THIS_YEAR) Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.</font>'
 146 MIRROR_GROUPNAME = "Packages"
 147 MIRROR_OVERVIEW = $(IMPORTSRCDIR)/com/sun/mirror/overview.html
 148 MIRROR_REGEXP = "com.sun.mirror.*"
 149 MIRROR_DESTDIR = $(DOCSDIR)/jdk/api/apt/mirror
 150 MIRROR_LINKOPT = -linkoffline ../../../../api $(DOCSDIR)/api/
 151 # MIRROR_PKGS is located in NON_CORE_PKGS.gmk
 152 
 153 #
 154 # Variables used by docletapidocs target
 155 #
 156 
 157 DOCLETAPI_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                  \
 158                     -breakiterator                               \
 159                     -encoding ascii                              \
 160                     -doctitle $(DOCLETAPI_JAVADOCTITLE)          \
 161                     -windowtitle $(DOCLETAPI_JAVADOCWINDOWTITLE) \
 162                     -header $(DOCLETAPI_JAVADOCHEADER)           \
 163                     -bottom $(DOCLETAPI_JAVADOCBOTTOM)           \
 164                     -group $(DOCLETAPI_GROUPNAME) $(DOCLETAPI_REGEXP)
 165 DOCLETAPI_JAVADOCTITLE  = 'Doclet API'
 166 DOCLETAPI_JAVADOCWINDOWTITLE  = 'Doclet API'
 167 DOCLETAPI_JAVADOCHEADER = '<strong>Doclet API</strong>'
 168 DOCLETAPI_JAVADOCBOTTOM = '<font size="-1"><a href="http://bugs.sun.com/services/bugreport/index.jsp">Submit a bug or feature</a><br>Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.<br>Copyright 1993-$(THIS_YEAR) Sun Microsystems, Inc. 4150 Network Circle<br>Santa Clara, California, 95054, U.S.A.  All Rights Reserved.</font>'
 169 DOCLETAPI_GROUPNAME = "Packages"
 170 DOCLETAPI_REGEXP = "com.sun.javadoc"
 171 DOCLETAPI_LINKOPT = -linkoffline ../../../../api $(DOCSDIR)/api/
 172 # DOCLETAPI_PKGS is located in NON_CORE_PKGS.gmk
 173 
 174 #
 175 # Variables used by tagletapidocs target
 176 #
 177 
 178 TAGLETAPI_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                 \
 179                     -encoding ascii                             \
 180                     -nonavbar                                   \
 181                     -noindex                                    \
 182                     -bottom $(TAGLETAPI_JAVADOCBOTTOM)
 183 TAGLETAPI_JAVADOCBOTTOM = '<font size="-1"><a href="http://bugs.sun.com/services/bugreport/index.jsp">Submit a bug or feature</a><br>Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.<br>Copyright 1993-$(THIS_YEAR) Sun Microsystems, Inc. 4150 Network Circle<br>Santa Clara, California, 95054, U.S.A.  All Rights Reserved.</font>'
 184 # TAGLETAPI_FILE is located in NON_CORE_PKGS.gmk
 185 
 186 #
 187 # Variables used by jdi target
 188 #
 189 
 190 JPDA_SOURCEPATH  = $(TOPDIR)/src/share/classes
 191 
 192 JDI_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                        \
 193                    -encoding ascii                               \
 194                    -nodeprecatedlist                             \
 195                    -d $(DOCSDIR)/jdk/api/jpda/jdi                  \
 196                    -sourcepath $(JPDA_SOURCEPATH)                \
 197                    -windowtitle $(JDI_WINDOWTITLE)               \
 198                    -doctitle $(JDI_DOCTITLE)                     \
 199                    -header $(JDI_HEADER)                         \
 200                    -linkoffline ../../../../api $(DOCSDIR)/api/     \
 201                    -overview $(JPDA_SOURCEPATH)/jdi-overview.html
 202 JDI_WINDOWTITLE = "Java Debug Interface"
 203 JDI_DOCTITLE    = "Java$(TRADEMARK) Debug Interface"
 204 JDI_HEADER      = "Java Debug Interface"
 205 # JDI_PKGS is located in NON_CORE_PKGS.gmk
 206 
 207 # Variables used by security components
 208 SECURITYAPI_JAVADOCBOTTOM = '<font size="-1"><a href="http://bugs.sun.com/services/bugreport/index.jsp">Report a bug or request a feature.</a><br>Copyright $(THIS_YEAR) Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.</font>'
 209 
 210 #
 211 # Variables used by JAAS target
 212 #
 213 # NOTE: Quotes are required around sourcepath argument only on Windows.  Otherwise,
 214 #       you get "No packages or classes specified." due to $(CLASSPATH_SEPARATOR)
 215 #       being interpreted as an end of command (newline)
 216 
 217 JAAS_SOURCEPATH  = "$(TOPDIR)/src/share/classes$(CLASSPATH_SEPARATOR)$(TOPDIR)/src/solaris/classes$(CLASSPATH_SEPARATOR)$(TOPDIR)/src/windows/classes$(CLASSPATH_SEPARATOR)$(TOPDIR)/src/linux/classes"
 218 JAAS_DOCDIR      = $(DOCSDIR)/jre/api/security/jaas/spec
 219 JAAS_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                       \
 220                    -encoding ascii                               \
 221                    -nodeprecatedlist                             \
 222                    -d $(JAAS_DOCDIR)                             \
 223                    -sourcepath $(JAAS_SOURCEPATH)                \
 224                    -windowtitle $(JAAS_WINDOWTITLE)              \
 225                    -doctitle $(JAAS_DOCTITLE)                    \
 226                    -header $(JAAS_JAVADOCHEADER)                 \
 227                    -bottom $(SECURITYAPI_JAVADOCBOTTOM)                      \
 228                    -linkoffline ../../../../../api $(DOCSDIR)/api/       \
 229                    -overview $(TOPDIR)/src/share/classes/com/sun/security/auth/jaas-overview.html
 230 JAAS_WINDOWTITLE = "Java Authentication and Authorization Service "
 231 JAAS_DOCTITLE    = "Java$(TRADEMARK) Authentication and Authorization Service"
 232 JAAS_JAVADOCHEADER      = "JAAS"
 233 # JAAS_PKGS is located in NON_CORE_PKGS.gmk
 234 
 235 #
 236 # Variables used by JGSS target
 237 #
 238 
 239 JGSS_SOURCEPATH  = $(TOPDIR)/src/share/classes
 240 JGSS_DOCDIR      = $(DOCSDIR)/jre/api/security/jgss/spec
 241 
 242 JGSS_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                      \
 243                    -encoding ascii                              \
 244                    -nodeprecatedlist                            \
 245                    -d $(JGSS_DOCDIR)                            \
 246                    -sourcepath $(JGSS_SOURCEPATH)               \
 247                    -windowtitle $(JGSS_WINDOWTITLE)             \
 248                    -doctitle $(JGSS_DOCTITLE)                   \
 249                    -header $(JGSS_JAVADOCHEADER)                \
 250                    -bottom $(SECURITYAPI_JAVADOCBOTTOM)                      \
 251                    -linkoffline ../../../../../api $(DOCSDIR)/api/ \
 252                    -overview $(JGSS_SOURCEPATH)/com/sun/security/jgss/jgss-overview.html
 253 
 254 JGSS_WINDOWTITLE = "Java GSS-API Utilities "
 255 JGSS_DOCTITLE    = "Java$(TRADEMARK) GSS-API Utilities"
 256 JGSS_JAVADOCHEADER      = "Java GSS-API Utilities"
 257 # JGSS_PKGS is located in NON_CORE_PKGS.gmk
 258 
 259 #
 260 # Variables used by SMARTCARDIO target
 261 #
 262 
 263 SMARTCARDIO_SOURCEPATH  = $(TOPDIR)/src/share/classes
 264 SMARTCARDIO_DOCDIR       = $(DOCSDIR)/jre/api/security/smartcardio/spec
 265 
 266 SMARTCARDIO_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                       \
 267                    -encoding ascii                              \
 268                    -nodeprecatedlist                            \
 269                    -d $(SMARTCARDIO_DOCDIR)                             \
 270                    -sourcepath $(SMARTCARDIO_SOURCEPATH)               \
 271                    -windowtitle $(SMARTCARDIO_WINDOWTITLE)             \
 272                    -doctitle $(SMARTCARDIO_DOCTITLE)                   \
 273                    -header $(SMARTCARDIO_JAVADOCHEADER)                \
 274                    -bottom $(SECURITYAPI_JAVADOCBOTTOM)                      \
 275                    -linkoffline ../../../../../api $(DOCSDIR)/api/
 276 
 277 SMARTCARDIO_WINDOWTITLE = "Java Smart Card I/O"
 278 SMARTCARDIO_DOCTITLE    = "Java$(TRADEMARK) Smart Card I/O"
 279 SMARTCARDIO_JAVADOCHEADER      = "Java Smart Card I/O"
 280 # SMARTCARDIO_PKGS is located in NON_CORE_PKGS.gmk
 281 
 282 #
 283 # Variables used by TRACING target
 284 #
 285 
 286 TRACING_SOURCEPATH  = $(TOPDIR)/src/share/classes
 287 TRACING_DOCDIR   = $(DOCSDIR)/jre/api/tracing
 288 
 289 TRACING_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                       \
 290                    -encoding ascii                                  \
 291                    -nodeprecatedlist                                \
 292                    -d $(TRACING_DOCDIR)                             \
 293                    -sourcepath $(TRACING_SOURCEPATH)                \
 294                    -windowtitle $(TRACING_WINDOWTITLE)              \
 295                    -doctitle $(TRACING_DOCTITLE)                    \
 296                    -header $(TRACING_JAVADOCHEADER)                 \
 297                    -linkoffline ../../../../../api $(DOCSDIR)/api/
 298 
 299 TRACING_WINDOWTITLE = "Tracing"
 300 TRACING_DOCTITLE    = "Java$(TRADEMARK) Platform Tracing"
 301 TRACING_JAVADOCHEADER      = "Platform Tracing"
 302 # TRACING_PKGS is located in NON_CORE_PKGS.gmk
 303 
 304 #
 305 # Variables used by HTTPSERVER target
 306 #
 307 
 308 HTTPSERVER_SOURCEPATH  = $(TOPDIR)/src/share/classes
 309 HTTPSERVER_DOCDIR        = $(DOCSDIR)/jre/api/net/httpserver/spec
 310 
 311 HTTPSERVER_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                        \
 312                    -encoding ascii                              \
 313                    -nodeprecatedlist                            \
 314                    -d $(HTTPSERVER_DOCDIR)                              \
 315                    -sourcepath $(HTTPSERVER_SOURCEPATH)               \
 316                    -windowtitle $(HTTPSERVER_WINDOWTITLE)             \
 317                    -doctitle $(HTTPSERVER_DOCTITLE)                   \
 318                    -header $(HTTPSERVER_JAVADOCHEADER)                \
 319                    -linkoffline ../../../../../api $(DOCSDIR)/api/
 320 
 321 HTTPSERVER_WINDOWTITLE = "Java HTTP Server"
 322 HTTPSERVER_DOCTITLE    = "Java$(TRADEMARK) HTTP Server"
 323 HTTPSERVER_JAVADOCHEADER      = "Java HTTP Server"
 324 # HTTPSERVER_PKGS is located in NON_CORE_PKGS.gmk
 325 
 326 #
 327 # Variables used by sctp target
 328 #
 329 
 330 SCTPAPI_SOURCEPATH  = $(TOPDIR)/src/share/classes
 331 SCTPAPI_DOCDIR   = $(DOCSDIR)/jre/api/nio/sctp/spec
 332 
 333 SCTPAPI_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                           \
 334                    -encoding ascii                                      \
 335                    -nodeprecatedlist                                    \
 336                    -d $(SCTPAPI_DOCDIR)                                 \
 337                    -sourcepath $(SCTPAPI_SOURCEPATH)                    \
 338                    -windowtitle $(SCTPAPI_WINDOWTITLE)                  \
 339                    -doctitle $(SCTPAPI_DOCTITLE)                        \
 340                    -header $(SCTPAPI_JAVADOCHEADER)                     \
 341                    -linkoffline ../../../../../api $(DOCSDIR)/api/
 342 
 343 SCTPAPI_WINDOWTITLE = "SCTP API"
 344 SCTPAPI_DOCTITLE    = "SCTP API"
 345 SCTPAPI_JAVADOCHEADER      = "SCTP API"
 346 # SCTPAPI_PKGS is located in NON_CORE_PKGS.gmk
 347 
 348 #
 349 # Variables used by jvmti target
 350 #
 351 JVMTI_DOCS_SUBDIR = platform/jvmti
 352 JVMTI_HTML        = $(HOTSPOT_DOCS_IMPORT_PATH)/$(JVMTI_DOCS_SUBDIR)/jvmti.html
 353 
 354 #
 355 # Variables used by mgmt target
 356 #
 357 MGMT_DOCDIR        = $(DOCSDIR)/jre/api/management/
 358 MGMT_EXT_DIR       = $(MGMT_DOCDIR)/extension
 359 MGMT_SOURCEPATH    = $(TOPDIR)/src/share/classes
 360 JVM_MIB_NAME       = JVM-MANAGEMENT-MIB.mib
 361 JVM_MIB_SRC        = $(CLOSED_SRC)/share/classes/sun/management/snmp/$(JVM_MIB_NAME)
 362 
 363 ifdef OPENJDK
 364    COPY-MIB-TARGET =
 365 else
 366    COPY-MIB-TARGET = copy-mib
 367 endif
 368 MGMT_JAVADOCFLAGS  = $(COMMON_JAVADOCFLAGS)                        \
 369                      -encoding ascii                               \
 370                      -nodeprecatedlist                             \
 371                      -d $(MGMT_EXT_DIR)                            \
 372                      -sourcepath $(MGMT_SOURCEPATH)                \
 373                      -windowtitle $(MGMT_WINDOWTITLE)              \
 374                      -doctitle $(MGMT_DOCTITLE)                    \
 375                      -header $(MGMT_HEADER)                        \
 376                      -linkoffline ../../../../api $(DOCSDIR)/api/  \
 377                      -overview $(MGMT_SOURCEPATH)/com/sun/management/mgmt-overview.html
 378 MGMT_WINDOWTITLE = "Monitoring and Management Interface for the Java Platform"
 379 MGMT_DOCTITLE    = "Monitoring and Management Interface for the Java$(TRADEMARK) Platform"
 380 MGMT_HEADER      = "Monitoring and Management Interface for the Java Platform"
 381 # MGMT_PKGS is located in NON_CORE_PKGS.gmk
 382 
 383 #
 384 # Variables used by attach target
 385 #
 386 
 387 ATTACH_SOURCEPATH  = $(TOPDIR)/src/share/classes
 388 ATTACH_DOCDIR      = $(DOCSDIR)/jdk/api/attach/spec
 389 ATTACH_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                            \
 390                    -encoding ascii                                      \
 391                    -nodeprecatedlist                                    \
 392                    -d $(ATTACH_DOCDIR)                                  \
 393                    -sourcepath $(ATTACH_SOURCEPATH)                     \
 394                    -windowtitle $(ATTACH_WINDOWTITLE)                   \
 395                    -doctitle $(ATTACH_DOCTITLE)                         \
 396                    -header $(ATTACH_HEADER)                             \
 397                    -linkoffline ../../../../api $(DOCSDIR)/api/
 398 ATTACH_WINDOWTITLE = "Attach API"
 399 ATTACH_DOCTITLE    = "Attach API"
 400 ATTACH_HEADER      = "Attach API"
 401 # ATTACH_PKGS is located in NON_CORE_PKGS.gmk
 402 
 403 #
 404 # Variables used by jconsole target
 405 #
 406 
 407 JCONSOLE_SOURCEPATH  = $(TOPDIR)/src/share/classes
 408 JCONSOLE_DOCDIR      = $(DOCSDIR)/jdk/api/jconsole/spec
 409 JCONSOLE_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                          \
 410                    -encoding ascii                                      \
 411                    -nodeprecatedlist                                    \
 412                    -d $(JCONSOLE_DOCDIR)                                \
 413                    -sourcepath $(JCONSOLE_SOURCEPATH)                   \
 414                    -windowtitle $(JCONSOLE_WINDOWTITLE)                 \
 415                    -doctitle $(JCONSOLE_DOCTITLE)                       \
 416                    -header $(JCONSOLE_HEADER)                           \
 417                    -linkoffline ../../../../api $(DOCSDIR)/api/
 418 JCONSOLE_WINDOWTITLE = "JConsole API"
 419 JCONSOLE_DOCTITLE    = "JConsole API"
 420 JCONSOLE_HEADER      = "JConsole API"
 421 # JCONSOLE_PKGS is located in NON_CORE_PKGS.gmk
 422 
 423 #
 424 # Variables used by treeapidocs target
 425 #
 426 
 427 TREEAPI_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)                   \
 428                     -encoding ascii                             \
 429                     -doctitle $(TREEAPI_JAVADOCTITLE)            \
 430                     -windowtitle $(TREEAPI_JAVADOCWINDOWTITLE)   \
 431                     -header $(TREEAPI_JAVADOCHEADER)             \
 432                     -bottom $(TREEAPI_JAVADOCBOTTOM)             \
 433                     -group $(TREEAPI_GROUPNAME) $(TREEAPI_REGEXP) 
 434 #
 435 #                   -overview $(TREEAPI_OVERVIEW)
 436 #
 437 TREEAPI_JAVADOCTITLE = 'Compiler Tree API'
 438 TREEAPI_JAVADOCWINDOWTITLE = 'Compiler Tree API'
 439 TREEAPI_JAVADOCHEADER = '<strong>Compiler Tree API</strong>'
 440 TREEAPI_JAVADOCBOTTOM = '<font size="-1"><a href="http://bugs.sun.com/services/bugreport/index.jsp">Report a bug or request a feature.</a><br>Copyright $(THIS_YEAR) Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.</font>'
 441 TREEAPI_GROUPNAME = "Packages"
 442 TREEAPI_OVERVIEW = $(SHARE_SRC)/classes/com/sun/source/overview.html
 443 TREEAPI_REGEXP = "com.sun.source.*"
 444 TREEAPI_DESTDIR = $(DOCSDIR)/jdk/api/javac/tree
 445 TREEAPI_LINKOPT = -linkoffline ../../../../api $(DOCSDIR)/api/
 446 # TREEAPI_PKGS is located in NON_CORE_PKGS.gmk
 447 
 448 #
 449 # Path where javadoc should find source files for release docs
 450 #
 451 RELEASEDOCS_SRCPATH = "$(SHARE_SRC)/classes$(CLASSPATH_SEPARATOR)$(PLATFORM_SRC)/classes$(CLASSPATH_SEPARATOR)$(GENSRCDIR)$(CLASSPATH_SEPARATOR)$(SHARE_SRC)/doc/stub$(CLASSPATH_SEPARATOR)$(CLOSED_SRC)/share/classes$(CLASSPATH_SEPARATOR)$(IMPORTSRCDIR)"
 452 
 453 #
 454 # CORE_PKGS environment variable has been moved to the following file
 455 #
 456 include CORE_PKGS.gmk
 457 
 458 #
 459 # Load environment variables for API package names that are not part of
 460 # the Java SE platform
 461 #
 462 include NON_CORE_PKGS.gmk
 463 
 464 # Targets for all APIs other than the core platform APIs
 465 ALL_OTHER_TARGETS = \
 466     mirrordocs \
 467     docletapidocs \
 468     tagletapidocs \
 469     domapidocs \
 470     jpdadocs \
 471     jaasdocs \
 472     jgssdocs \
 473     smartcardiodocs \
 474     tracingdocs \
 475     httpserverdocs  \
 476     sctpdocs \
 477     mgmtdocs \
 478     attachdocs \
 479     jconsoledocs \
 480     treeapidocs
 481 
 482 .PHONY: all docs
 483 all docs: coredocs otherdocs
 484 
 485 .PHONY: otherdocs
 486 otherdocs: ${ALL_OTHER_TARGETS}
 487 
 488 
 489 #################################################################
 490 # Production Targets -- USE THESE TARGETS WHEN:
 491 #    a) You're generating docs outside of release engineering's
 492 #       standard control build.
 493 #    b) The docs will be pushed to the web and/or included in
 494 #       the downloaded doc bundle.
 495 #
 496 # See:  Notes.html#releaseTargets
 497 # Note: Spaces preceed ifdef/ifndef indents. Tabs preceed target commands (!)
 498 #
 499 .PHONY: sanitycheckcoredocs
 500 sanitycheckcoredocs:
 501         @$(ECHO) ""
 502         @$(ECHO) "Building core api docs with these values:"
 503         @$(ECHO) "    BUILD_NUMBER = $(BUILD_NUMBER)"
 504         @$(ECHO) "    MILESTONE = $(MILESTONE)"
 505         @$(ECHO) ""
 506   ifeq ($(BUILD_NUMBER), b00)
 507         @$(ECHO) "ERROR: Build number must be defined"
 508         @$(ECHO) "MILESTONE is set to $(MILESTONE)"
 509         @$(ECHO) ""
 510         exit 1
 511   endif
 512 
 513 # Maximize performance and ensure that build number & milestone are set.
 514 .PHONY: rel-coredocs
 515 rel-coredocs: sanitycheckcoredocs
 516         @# ######## release version of core packages ########
 517         $(MAKE) coredocs
 518 
 519 .PHONY: rel-docs
 520 rel-docs: rel-coredocs ${ALL_OTHER_TARGETS}
 521 #
 522 # end of production targets
 523 #############################################################
 524 
 525 .PHONY: coredocs
 526 coredocs:
 527         @# ######## core packages #######################
 528         $(RM) -r $(DOCSDIR)/api
 529         $(MKDIR) -p $(DOCSDIR)/api
 530         $(JAVADOC_CMD) $(CORE_JAVADOCFLAGS)            \
 531                    -d $(DOCSDIR)/api                   \
 532                    -sourcepath $(RELEASEDOCS_SRCPATH)  \
 533                    $(CORE_PKGS)
 534 
 535 .PHONY: mirrordocs
 536 mirrordocs:
 537         @# ######## mirror api for apt ##################
 538         $(RM) -r $(MIRROR_DESTDIR)
 539         $(MKDIR) -p $(MIRROR_DESTDIR)
 540         $(JAVADOC_CMD) $(MIRROR_JAVADOCFLAGS)             \
 541                    -d $(MIRROR_DESTDIR)               \
 542                    -sourcepath $(RELEASEDOCS_SRCPATH) \
 543                    $(MIRROR_LINKOPT)                  \
 544                    $(MIRROR_PKGS)
 545 
 546 .PHONY: docletapidocs
 547 docletapidocs:
 548         @# ######## doclet api ############################
 549         $(RM) -r $(DOCSDIR)/jdk/api/javadoc/doclet
 550         $(MKDIR) -p $(DOCSDIR)/jdk/api/javadoc/doclet
 551         $(JAVADOC_CMD) $(DOCLETAPI_JAVADOCFLAGS)                 \
 552                    -d $(DOCSDIR)/jdk/api/javadoc/doclet      \
 553                    -sourcepath $(RELEASEDOCS_SRCPATH)        \
 554                    $(DOCLETAPI_LINKOPT)                      \
 555                    $(DOCLETAPI_PKGS)
 556 
 557 .PHONY: tagletapidocs
 558 tagletapidocs:
 559         @# ######## taglet api ############################
 560         $(RM) -r $(DOCSDIR)/jdk/api/javadoc/taglet
 561         $(MKDIR) -p $(DOCSDIR)/jdk/api/javadoc/taglet
 562         $(RM) -r $(DOCSTMPDIR)
 563         $(MKDIR) -p $(DOCSTMPDIR)
 564         $(JAVADOC_CMD) $(TAGLETAPI_JAVADOCFLAGS)                 \
 565                    -d $(DOCSTMPDIR)                          \
 566                    -linkoffline ../../../../api $(DOCSDIR)/api/ \
 567                    $(IMPORTSRCDIR)/$(TAGLETAPI_FILE)
 568         cp -r $(DOCSTMPDIR)/com $(DOCSDIR)/jdk/api/javadoc/taglet
 569         cp $(DOCSTMPDIR)/stylesheet.css $(DOCSDIR)/jdk/api/javadoc/taglet
 570         $(RM) -r $(DOCSTMPDIR)
 571 
 572 .PHONY: domapidocs
 573 domapidocs:
 574         @# ######## dom api ############################
 575         $(RM) -r $(DOCSDIR)/jre/api/plugin/dom
 576         $(MKDIR) -p $(DOCSDIR)/jre/api/plugin/dom
 577         $(JAVADOC_CMD) $(DOMAPI_JAVADOCFLAGS)                \
 578                    -d $(DOCSDIR)/jre/api/plugin/dom            \
 579                    -sourcepath $(RELEASEDOCS_SRCPATH)        \
 580                    -linkoffline ../../../../api $(DOCSDIR)/api/ \
 581                    $(DOMAPI_PKGS)
 582 
 583 .PHONY: jpdadocs
 584 jpdadocs: jdidocs jdwpdocs jvmtidocs
 585 
 586 .PHONY: jdidocs
 587 jdidocs:
 588         @# ######## jdi #################################
 589         $(RM) -r $(DOCSDIR)/jdk/api/jpda/jdi
 590         $(MKDIR) -p $(DOCSDIR)/jdk/api/jpda/jdi
 591         $(JAVADOC_CMD) $(JDI_JAVADOCFLAGS)                       \
 592                    $(JDI_PKGS)
 593 
 594 JDWP_SPEC       = $(BUILDDIR)/jpda/jdwp/jdwp.spec
 595 JDWP_DOC        = $(DOCSDIR)/platform/jpda/jdwp/jdwp-protocol.html
 596 JDWPGEN_JARFILE = $(BUILDTOOLJARDIR)/jdwpgen.jar
 597 
 598 .PHONY: jdwpdocs
 599 jdwpdocs: $(JDWP_DOC)
 600 
 601 $(JDWP_DOC): $(JDWPGEN_JARFILE) $(JDWP_SPEC)
 602         $(prep-target)
 603         $(BOOT_JAVA_CMD) -jar $(JDWPGEN_JARFILE) $(JDWP_SPEC) -doc $(JDWP_DOC)
 604 
 605 .PHONY: jvmtidocs
 606 jvmtidocs:
 607         @# ######## jvmti #################################
 608         @if [ -f $(JVMTI_HTML) ] ; then \
 609           $(RM) -r $(DOCSDIR)/$(JVMTI_DOCS_SUBDIR); \
 610           $(MKDIR) -p $(DOCSDIR)/$(JVMTI_DOCS_SUBDIR); \
 611           $(ECHO) $(CP) $(JVMTI_HTML) $(DOCSDIR)/$(JVMTI_DOCS_SUBDIR); \
 612           $(CP) $(JVMTI_HTML) $(DOCSDIR)/$(JVMTI_DOCS_SUBDIR); \
 613         else \
 614           $(ECHO) "WARNING: Generated jvmti file does not exist: $(JVMTI_HTML)"; \
 615         fi
 616 
 617 .PHONY: jaasdocs
 618 jaasdocs:
 619         @# ######## api-jaas ############################
 620         $(RM) -r $(JAAS_DOCDIR)
 621         $(MKDIR) -p $(JAAS_DOCDIR)
 622         $(JAVADOC_CMD) $(JAAS_JAVADOCFLAGS)                     \
 623                    $(JAAS_PKGS)
 624 
 625 .PHONY: jgssdocs
 626 jgssdocs:
 627         @# ######## api-jgss ############################
 628         $(RM) -r $(JGSS_DOCDIR)
 629         $(MKDIR) -p $(JGSS_DOCDIR)
 630         $(JAVADOC_CMD) $(JGSS_JAVADOCFLAGS)                     \
 631                    $(JGSS_PKGS)
 632 
 633 .PHONY: smartcardiodocs
 634 smartcardiodocs:
 635         @# ######## api-smartcardio ############################
 636         $(RM) -r $(SMARTCARDIO_DOCDIR)
 637         $(MKDIR) -p $(SMARTCARDIO_DOCDIR)
 638         $(JAVADOC_CMD) $(SMARTCARDIO_JAVADOCFLAGS)                     \
 639                    $(SMARTCARDIO_PKGS)
 640 
 641 .PHONY: tracingdocs
 642 tracingdocs:
 643         @# ######## api-tracing ############################
 644         $(RM) -r $(TRACING_DOCDIR)
 645         $(MKDIR) -p $(TRACING_DOCDIR)
 646         $(JAVADOC) $(TRACING_JAVADOCFLAGS)                     \
 647                    $(TRACING_PKGS)
 648 
 649 .PHONY: httpserverdocs
 650 httpserverdocs:
 651         @# ######## api-httpserver #######################
 652         $(RM) -r $(HTTPSERVER_DOCDIR)
 653         $(MKDIR) -p $(HTTPSERVER_DOCDIR)
 654         $(JAVADOC_CMD) $(HTTPSERVER_JAVADOCFLAGS)                     \
 655                    $(HTTPSERVER_PKGS)
 656 
 657 .PHONY: sctpdocs
 658 sctpdocs:
 659         @# ######## api-sctp #######################
 660         $(RM) -r $(SCTPAPI_DOCDIR)
 661         $(MKDIR) -p $(SCTPAPI_DOCDIR)
 662         $(JAVADOC_CMD) $(SCTPAPI_JAVADOCFLAGS)                     \
 663                 $(SCTPAPI_PKGS)
 664 
 665 .PHONY: mgmtdocs
 666 mgmtdocs: $(COPY-MIB-TARGET)
 667         @# ######## api-management ############################
 668         $(RM) -r $(MGMT_EXT_DIR)
 669         $(MKDIR) -p $(MGMT_EXT_DIR)
 670         $(JAVADOC_CMD) $(MGMT_JAVADOCFLAGS)                     \
 671                    $(MGMT_PKGS)
 672 
 673 copy-mib:
 674         @# ######## copy-snmp-mib ############################
 675         $(RM) $(MGMT_DOCDIR)/$(JVM_MIB_NAME)
 676         $(MKDIR) -p $(MGMT_DOCDIR)
 677         $(CP) $(JVM_MIB_SRC) $(MGMT_DOCDIR)
 678 
 679 .PHONY: attachdocs
 680 attachdocs:
 681         @# ######## api-attach ############################
 682         $(RM) -r $(ATTACH_DOCDIR)
 683         $(MKDIR) -p $(ATTACH_DOCDIR)
 684         $(JAVADOC_CMD) $(ATTACH_JAVADOCFLAGS)                     \
 685                    $(ATTACH_PKGS)
 686 
 687 .PHONY: jconsoledocs
 688 jconsoledocs:
 689         @# ######## api-jconsole ############################
 690         $(RM) -r $(JCONSOLE_DOCDIR)
 691         $(MKDIR) -p $(JCONSOLE_DOCDIR)
 692         $(JAVADOC_CMD) $(JCONSOLE_JAVADOCFLAGS)                     \
 693                    $(JCONSOLE_PKGS)
 694 
 695 .PHONY: treeapidocs
 696 treeapidocs:
 697         @# ######## tree api for javac ##################
 698         $(RM) -r $(TREEAPI_DESTDIR)
 699         $(MKDIR) -p $(TREEAPI_DESTDIR)
 700         $(JAVADOC_CMD) $(TREEAPI_JAVADOCFLAGS)             \
 701                    -d $(TREEAPI_DESTDIR)               \
 702                    -sourcepath $(RELEASEDOCS_SRCPATH) \
 703                    $(TREEAPI_LINKOPT)                  \
 704                    $(TREEAPI_PKGS)
 705 
 706 # DEBUG TARGET
 707 # List the values defined in the makefile hierarchy, to make sure everything
 708 # is set properly, and to help identify values we can use instead of making new ones.
 709 # (Most of them come from common/shared/Defs.gmk)
 710 #
 711 #  Notes:
 712 #    * BUILD_NUMBER defaults to b00 if not set on command line with BUILD_NUMBER=<value>
 713 #    * MILESTONE defaults to internal unless set to beta, rc, or fcs on command line
 714 #
 715 .PHONY: echovalues
 716 echovalues:
 717         @$(ECHO) ""
 718         @$(ECHO) --------------Shared---------------------------
 719         @$(ECHO) BUILD_NUMBER = $(BUILD_NUMBER)
 720         @$(ECHO) FULL_VERSION = $(FULL_VERSION)
 721         @$(ECHO) JDK_VERSION = $(JDK_VERSION)
 722         @$(ECHO) JDK_MAJOR_VERSION = $(JDK_MAJOR_VERSION)
 723         @$(ECHO) JDK_MINOR_VERSION = $(JDK_MINOR_VERSION)
 724         @$(ECHO) JDK_MICRO_VERSION = $(JDK_MICRO_VERSION)
 725         @$(ECHO) JDK_UPDATE_VERSION = $(JDK_UPDATE_VERSION)
 726         @$(ECHO) JDK_MKTG_VERSION = $(JDK_MKTG_VERSION)
 727         @$(ECHO) JDK_UNDERSCORE_VERSION = $(JDK_UNDERSCORE_VERSION)
 728         @$(ECHO) JDK_MKTG_UNDERSCORE_VERSION = $(JDK_MKTG_UNDERSCORE_VERSION)
 729         @$(ECHO) MARKETING_NUMBER = $(MARKETING_NUMBER)
 730         @$(ECHO) MARKET_NAME = $(MARKET_NAME)
 731         @$(ECHO) MILESTONE = $(MILESTONE)
 732         @$(ECHO) RELEASE = $(RELEASE)
 733         @$(ECHO) USER_RELEASE_SUFFIX = $(USER_RELEASE_SUFFIX)
 734         @$(ECHO) --------------Shared---------------------------
 735         @$(ECHO) ""
 736         @$(ECHO) --------------common/Defs---------------------------
 737         @$(ECHO) "RELEASEDOCS_SRCPATH"
 738         @$(ECHO) "   SHARE_SRC/classes: $(SHARE_SRC)/classes"
 739         @$(ECHO) "   PLATFORM_SRC/classes: $(PLATFORM_SRC)/classes"
 740         @$(ECHO) "   GENSRCDIR: $(GENSRCDIR)"
 741         @$(ECHO) "   IMPORTSRCDIR: $(IMPORTSRCDIR)"
 742         @$(ECHO) "   SHARE_SRC/doc/stub: $(SHARE_SRC)/doc/stub"
 743         @$(ECHO) --------------common/Defs---------------------------
 744         @$(ECHO) ""