jdk/make/docs/Notes.html
author duke
Wed, 05 Jul 2017 17:07:36 +0200
changeset 4911 106e9c8afc31
parent 2 90ce3da70b43
permissions -rw-r--r--
Merge
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
90ce3da70b43 Initial load
duke
parents:
diff changeset
     2
<html>
90ce3da70b43 Initial load
duke
parents:
diff changeset
     3
<head>
90ce3da70b43 Initial load
duke
parents:
diff changeset
     4
<title>Doc Process Notes</title>
90ce3da70b43 Initial load
duke
parents:
diff changeset
     5
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
90ce3da70b43 Initial load
duke
parents:
diff changeset
     6
</head>
90ce3da70b43 Initial load
duke
parents:
diff changeset
     7
90ce3da70b43 Initial load
duke
parents:
diff changeset
     8
<body>
90ce3da70b43 Initial load
duke
parents:
diff changeset
     9
<h3><a name="REGEXP"></a><br>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    10
REGEXP</h3>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    11
<p> REGEXP is a list of wildcard patterns that determines which packages listed 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    12
  in CORE_PKGS.gmk go into which summary-table on the main API index page. It 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    13
  was motivated by the need to divide the world into &quot;core packages&quot; 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    14
  (java.*) and &quot;extension packages&quot; (javax.*). In time, the distinction 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    15
  went away. The whole table is now called &quot;Platform Packages&quot;--which 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    16
  eliminated the need for this list of regular expressions. But it lingered on, 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    17
  accreting all of the packages in the JVM, one by one. I pruned it back to &quot;*&quot;, 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    18
  so it now covers every package in the Java platform API docs. If some separation 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    19
  is needed in the future, it can grow back into a colon-separated list, starting 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    20
  with this, which is in all respects equivalent to &quot;*&quot; at this point 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    21
  in time:</p>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    22
<blockquote> 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    23
  <pre>REGEXP = &quot;java.*:javax.*:org.ietf*:org.omg.</pre>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    24
</blockquote>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    25
<h3><a name="releaseTargets"></a><br>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    26
  Release Targets</h3>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    27
<p> (Thanks to Kelly O'Hair for this info.)</p>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    28
<p> The <tt>rel-coredocs</tt> and <tt>rel-docs</tt> targets were added by Eric 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    29
  Armstrong. <tt>rel-coredocs</tt> assumes the kind of large, 32-bit machine used 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    30
  in the javapubs group's docs-release process. It specifies memory settings accordingly 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    31
  to maximize performance.</p>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    32
<p> The performance settings, like the sanity check, are most important for the 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    33
  core docs--the platform APIs. Running javadoc on those APIs takes a significant 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    34
  amount of time and memory. Setting the initial heap size as large as possible 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    35
  is important to prevent thrashing as the heap grows. Setting the maximum as 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    36
  large as necessary is also important to keep the job from failing.</p>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    37
<blockquote>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    38
  <p> <tt>-J-Xmx512</tt> sets a maximum of 512, which became necessary in 6.0<br>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    39
    <tt>-J-Xms256</tt> sets starting size to 256 (default is 8)</p>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    40
</blockquote>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    41
<p> <tt>rel-coredocs</tt> also includes a sanity check to help ensure that <tt>BUILD_NUMBER</tt> 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    42
  and <tt>MILESTONE</tt> are specified properly when docs are built outside of 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    43
  the normal release engineering process, with the intention of releasing them 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    44
  on the web or in a downloaded docs bundle. (When invoked in release engineering's 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    45
  control build, the values are always set properly. But when the targets are 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    46
  run by themselves, they default to b00 and &quot;internal&quot;--which silently 
90ce3da70b43 Initial load
duke
parents:
diff changeset
    47
  sabotage the result of a build that can take many hours to complete.</p>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    48
</body>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    49
</html>