svn commit: r44674 - head/en_US.ISO8859-1/books/handbook/cutting-edge

Dru Lavigne dru at FreeBSD.org
Mon Apr 28 17:39:39 UTC 2014


Author: dru
Date: Mon Apr 28 17:39:38 2014
New Revision: 44674
URL: http://svnweb.freebsd.org/changeset/doc/44674

Log:
  White space fix only. Translators can ignore.
  
  Sponsored by:	iXsystems

Modified:
  head/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.xml

Modified: head/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.xml
==============================================================================
--- head/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.xml	Mon Apr 28 16:19:09 2014	(r44673)
+++ head/en_US.ISO8859-1/books/handbook/cutting-edge/chapter.xml	Mon Apr 28 17:39:38 2014	(r44674)
@@ -423,7 +423,8 @@ MergeChanges /etc/ /var/named/etc/ /boot
 &prompt.root; <userinput>cd /cdrom/<replaceable>X.Y-RELEASE</replaceable>/kernels</userinput>
 &prompt.root; <userinput>./install.sh GENERIC</userinput></screen>
 
-	      <para>Replace <filename class="directory"><replaceable>X.Y-RELEASE</replaceable></filename>
+	      <para>Replace <filename
+		  class="directory"><replaceable>X.Y-RELEASE</replaceable></filename>
 		with the actual version of the release being used.
 		The <filename>GENERIC</filename> kernel will be
 		installed in <filename>/boot/GENERIC</filename> by
@@ -717,35 +718,35 @@ before running "/usr/sbin/freebsd-update
 
     <para>Documentation is an integral part of the &os; operating
       system.  While an up-to-date version of the &os; documentation
-      is always available on the &os; web site
-      (<link xlink:href="&url.base;/doc/">http://www.freebsd.org/doc/</link>),
+      is always available on the &os; web site (<link
+	xlink:href="&url.base;/doc/">http://www.freebsd.org/doc/</link>),
       it can be handy to have an up-to-date, local copy of the &os;
       website, handbooks, <acronym>FAQ</acronym>, and articles.</para>
-      
+
     <para>This section describes how to use either source or the &os;
       Ports Collection to keep a local copy of the &os; documentation
       up-to-date.</para>
 
-      <para>For information on editing and submitting corrections to
-	the documentation, refer to the &os; Documentation
-	  Project Primer for New Contributors
-	(<link xlink:href="&url.books.fdp-primer;">http://www.freebsd.org/doc/en_US.ISO8859-1/books/fdp-primer/</link>).</para>
+    <para>For information on editing and submitting corrections to the
+      documentation, refer to the &os; Documentation Project Primer
+      for New Contributors (<link
+	  xlink:href="&url.books.fdp-primer;">http://www.freebsd.org/doc/en_US.ISO8859-1/books/fdp-primer/</link>).</para>
 
     <sect2 xml:id="updating-installed-documentation">
       <title>Updating Documentation from Source</title>
 
       <para>Rebuilding the &os; documentation from source requires a
-	collection of tools which are not part of the &os; base system.
-	The required tools, including
+	collection of tools which are not part of the &os; base
+	system.  The required tools, including
 	<application>svn</application>, can be installed from the
-	<package>textproc/docproj</package> package or port
-	developed by the &os; Documentation Project.</para>
+	<package>textproc/docproj</package> package or port developed
+	by the &os; Documentation Project.</para>
 
       <para>Once installed, use <application>svn</application> to
 	fetch a clean copy of the documentation source.  Replace
 	<replaceable>https://svn0.us-west.FreeBSD.org</replaceable>
-	with the address of the closest geographic mirror from
-	<xref linkend="svn-mirrors"/>:</para>
+	with the address of the closest geographic mirror from <xref
+	  linkend="svn-mirrors"/>:</para>
 
       <screen>&prompt.root; <userinput>svn checkout <replaceable>https://svn0.us-west.FreeBSD.org</replaceable>/doc/head /usr/doc</userinput></screen>
 
@@ -775,10 +776,9 @@ before running "/usr/sbin/freebsd-update
       <screen>&prompt.root; <userinput>cd /usr/doc/en_US.ISO8859-1</userinput>
 &prompt.root; <userinput>make install clean</userinput></screen>
 
-      <para>An alternative way of
-	updating the documentation is to run this
-	command from <filename>/usr/doc</filename> or
-	the desired language-specific subdirectory:</para>
+      <para>An alternative way of updating the documentation is to run
+	this command from <filename>/usr/doc</filename> or the desired
+	language-specific subdirectory:</para>
 
       <screen>&prompt.root; <userinput>make update</userinput></screen>
 
@@ -788,11 +788,12 @@ before running "/usr/sbin/freebsd-update
       <screen>&prompt.root; <userinput>cd /usr/doc</userinput>
 &prompt.root; <userinput>make FORMATS='html html-split' install clean</userinput></screen>
 
-      <para>Several options are available to ease the process of updating
-	only parts of the documentation, or the build of specific
-	translations.  These options can be set either as system-wide
-	options in <filename>/etc/make.conf</filename>, or as
-	command-line options passed to <command>make</command>.</para>
+      <para>Several options are available to ease the process of
+	updating only parts of the documentation, or the build of
+	specific translations.  These options can be set either as
+	system-wide options in <filename>/etc/make.conf</filename>, or
+	as command-line options passed to
+	<command>make</command>.</para>
 
       <para>The options include:</para>
 
@@ -814,8 +815,8 @@ before running "/usr/sbin/freebsd-update
 	    <para>A single format or a list of output formats to be
 	      built.  Currently, <literal>html</literal>,
 	      <literal>html-split</literal>, <literal>txt</literal>,
-	      <literal>ps</literal>, and <literal>pdf</literal>
-	      are supported.</para>
+	      <literal>ps</literal>, and <literal>pdf</literal> are
+	      supported.</para>
 	  </listitem>
 	</varlistentry>
 
@@ -859,138 +860,134 @@ before running "/usr/sbin/freebsd-update
       </indexterm>
 
       <para>The previous section presented a method for updating the
-	&os; documentation from sources.  This section describes an alternative method which
-	uses the Ports Collection and makes it possible to:</para>
+	&os; documentation from sources.  This section describes an
+	alternative method which uses the Ports Collection and makes
+	it possible to:</para>
 
       <itemizedlist>
 	<listitem>
-	  <para>Install pre-built packages of the
-	    documentation, without having to locally build anything
-	    or install the documentation toolchain.</para>
+	  <para>Install pre-built packages of the documentation,
+	    without having to locally build anything or install the
+	    documentation toolchain.</para>
 	</listitem>
 
 	<listitem>
-	  <para>Build the documentation sources
-	    through the ports framework, making the checkout and build
-	    steps a bit easier.</para>
+	  <para>Build the documentation sources through the ports
+	    framework, making the checkout and build steps a bit
+	    easier.</para>
 	</listitem>
       </itemizedlist>
 
       <para>This method of updating the &os; documentation is
-	supported by a set of
-	documentation ports and packages which are updated by the
-	&a.doceng; on a monthly basis.  These are listed in the &os;
-	Ports Collection, under the docs category (<link
+	supported by a set of documentation ports and packages which
+	are updated by the &a.doceng; on a monthly basis.  These are
+	listed in the &os; Ports Collection, under the docs
+	category (<link
 	  xlink:href="http://www.freshports.org/docs/">http://www.freshports.org/docs/</link>).</para>
 
-	<para>Organization of the documentation ports is as
-	  follows:</para>
+      <para>Organization of the documentation ports is as
+	follows:</para>
 
-	<itemizedlist>
-	  <listitem>
-	    <para>The
-	      <package>misc/freebsd-doc-en</package> package or port installs
-	      all of the English documentation.</para>
-	  </listitem>
+      <itemizedlist>
+	<listitem>
+	  <para>The <package>misc/freebsd-doc-en</package> package or
+	    port installs all of the English documentation.</para>
+	</listitem>
 
-	  <listitem>
-	    <para>The
-	      <package>misc/freebsd-doc-all</package> meta-package or port
-	      installs all documentation in all available
-	      languages.</para>
-	  </listitem>
+	<listitem>
+	  <para>The <package>misc/freebsd-doc-all</package>
+	    meta-package or port installs all documentation in all
+	    available languages.</para>
+	</listitem>
 
-	  <listitem>
-	    <para>There is a package and port for each
-	      translation, such as
-	      <package>misc/freebsd-doc-hu</package> for the
-	      Hungarian documentation.</para>
-	  </listitem>
-	</itemizedlist>
+	<listitem>
+	  <para>There is a package and port for each translation, such
+	    as <package>misc/freebsd-doc-hu</package> for the
+	    Hungarian documentation.</para>
+	</listitem>
+      </itemizedlist>
 
-	  <para>When binary packages are used, the &os; documentation
-	    will be installed in all available
-	    formats for the given language.  For example, the following command will install the
-	  latest package of the Hungarian
-	  documentation:</para>
+      <para>When binary packages are used, the &os; documentation will
+	be installed in all available formats for the given language.
+	For example, the following command will install the latest
+	package of the Hungarian documentation:</para>
 
-	<screen>&prompt.root; <userinput>pkg install hu-freebsd-doc</userinput></screen>
+      <screen>&prompt.root; <userinput>pkg install hu-freebsd-doc</userinput></screen>
 
-	<note>
-	  <para>Packages use a format that differs from the
-	    corresponding port's name:
-	    <literal><replaceable>lang</replaceable>-freebsd-doc</literal>,
-	    where <replaceable>lang</replaceable> is the short format
-	    of the language code, such as <literal>hu</literal> for
-	    Hungarian, or <literal>zh_cn</literal> for Simplified
-	    Chinese.</para>
-	</note>
+      <note>
+	<para>Packages use a format that differs from the
+	  corresponding port's name:
+	  <literal><replaceable>lang</replaceable>-freebsd-doc</literal>,
+	  where <replaceable>lang</replaceable> is the short format of
+	  the language code, such as <literal>hu</literal> for
+	  Hungarian, or <literal>zh_cn</literal> for Simplified
+	  Chinese.</para>
+      </note>
 
-	<para>To specify the format of the documentation, build the
-	  port instead of installing the package.  For example, to build and install the English
-	  documentation:</para>
+      <para>To specify the format of the documentation, build the port
+	instead of installing the package.  For example, to build and
+	install the English documentation:</para>
 
-	<screen>&prompt.root; <userinput>cd /usr/ports/misc/freebsd-doc-en</userinput>
+      <screen>&prompt.root; <userinput>cd /usr/ports/misc/freebsd-doc-en</userinput>
 &prompt.root; <userinput>make install clean</userinput></screen>
 
-	<para>The port provides a configuration menu where the format
-	  to build and install can be specified.  By default, split
-	  <acronym>HTML</acronym>, similar to the format used on <uri
-	    xlink:href="http://www.FreeBSD.org">http://www.FreeBSD.org</uri>,
-	  and <acronym>PDF</acronym> are
-	  selected.</para>
-
-	  <para>Alternately, several <command>make</command> options can be specified
-	    when building a documentation port, including:</para>
-
-	  <variablelist>
-	    <varlistentry>
-	      <term><varname>WITH_HTML</varname></term>
-
-	      <listitem>
-		<para>Builds the HTML format with a single HTML file
-		  per document.  The formatted documentation is saved
-		  to a file called <filename>article.html</filename>,
-		  or <filename>book.html</filename>.</para>
-	      </listitem>
-	    </varlistentry>
-
-	    <varlistentry>
-	      <term><varname>WITH_PDF</varname></term>
-
-	      <listitem>
-		<para>The formatted documentation is saved to a
-		  file called <filename>article.pdf</filename> or
-		  <filename>book.pdf</filename>.</para>
-	      </listitem>
-	    </varlistentry>
-
-	    <varlistentry>
-	      <term><varname>DOCBASE</varname></term>
-
-	      <listitem>
-		<para>Specifies where to install the documentation.
-		  It defaults to
-		  <filename>/usr/local/share/doc/freebsd</filename>.</para>
-	      </listitem>
-	    </varlistentry>
-	  </variablelist>
-
-	  <para>This example uses variables to install the Hungarian
-	   documentation as a <acronym>PDF</acronym> in the specified
-	   directory:</para>
+      <para>The port provides a configuration menu where the format to
+	build and install can be specified.  By default, split
+	<acronym>HTML</acronym>, similar to the format used on <uri
+	  xlink:href="http://www.FreeBSD.org">http://www.FreeBSD.org</uri>,
+	and <acronym>PDF</acronym> are selected.</para>
+
+      <para>Alternately, several <command>make</command> options can
+	be specified when building a documentation port,
+	including:</para>
+
+      <variablelist>
+	<varlistentry>
+	  <term><varname>WITH_HTML</varname></term>
+
+	  <listitem>
+	    <para>Builds the HTML format with a single HTML file per
+	      document.  The formatted documentation is saved to a
+	      file called <filename>article.html</filename>, or
+	      <filename>book.html</filename>.</para>
+	  </listitem>
+	</varlistentry>
+
+	<varlistentry>
+	  <term><varname>WITH_PDF</varname></term>
+
+	  <listitem>
+	    <para>The formatted documentation is saved to a file
+	      called <filename>article.pdf</filename> or
+	      <filename>book.pdf</filename>.</para>
+	  </listitem>
+	</varlistentry>
+
+	<varlistentry>
+	  <term><varname>DOCBASE</varname></term>
+
+	  <listitem>
+	    <para>Specifies where to install the documentation.  It
+	      defaults to
+	      <filename>/usr/local/share/doc/freebsd</filename>.</para>
+	  </listitem>
+	</varlistentry>
+      </variablelist>
+
+      <para>This example uses variables to install the Hungarian
+	documentation as a <acronym>PDF</acronym> in the specified
+	directory:</para>
 
-	  <screen>&prompt.root; cd /usr/ports/misc/freebsd-doc-hu
+      <screen>&prompt.root; cd /usr/ports/misc/freebsd-doc-hu
 &prompt.root; make -DWITH_PDF DOCBASE=share/doc/freebsd/hu install clean</screen>
 
-	<para>Documentation packages or ports can be updated using the
-	  instructions in <xref linkend="ports"/>.
-	  For example, the following command updates the installed
-	  Hungarian documentation using
-	  <package>ports-mgmt/portmaster</package>
-	  by using packages only:</para>
+      <para>Documentation packages or ports can be updated using the
+	instructions in <xref linkend="ports"/>.  For example, the
+	following command updates the installed Hungarian
+	documentation using <package>ports-mgmt/portmaster</package>
+	by using packages only:</para>
 
-	<screen>&prompt.root; <userinput>portmaster -PP hu-freebsd-doc</userinput></screen>
+      <screen>&prompt.root; <userinput>portmaster -PP hu-freebsd-doc</userinput></screen>
     </sect2>
   </sect1>
 
@@ -1605,139 +1602,132 @@ Script started, output file is /var/tmp/
 &prompt.root; <userinput>exit</userinput>
 Script done, …</screen>
 
-	<para><emphasis>Do not</emphasis> save the output in
-	  <filename>/tmp</filename> as this directory may be cleared
-	  at next reboot.  A better place to save the file is
-	  <filename>/var/tmp</filename> or in
-	  <systemitem class="username">root</systemitem>'s home
-	  directory.</para>
+      <para><emphasis>Do not</emphasis> save the output in
+	<filename>/tmp</filename> as this directory may be cleared at
+	next reboot.  A better place to save the file is
+	<filename>/var/tmp</filename> or in <systemitem
+	  class="username">root</systemitem>'s home directory.</para>
 
-	<para>While in <filename>/usr/src</filename>
-	  type:</para>
+      <para>While in <filename>/usr/src</filename> type:</para>
 
-	<screen>&prompt.root; <userinput>cd /usr/src</userinput></screen>
+      <screen>&prompt.root; <userinput>cd /usr/src</userinput></screen>
 
-	<indexterm>
-	  <primary><command>make</command></primary>
-	</indexterm>
+      <indexterm>
+	<primary><command>make</command></primary>
+      </indexterm>
 
-	<para>To rebuild the world, use &man.make.1;.  This command
-	  reads instructions from the <filename>Makefile</filename>,
-	  which describes how the programs that comprise &os; should
-	  be built and the order in which they should be built.</para>
-
-	<para>The general format of the command is as follows:</para>
-
-	<screen>&prompt.root; <userinput>make -<replaceable>x</replaceable> -D<replaceable>VARIABLE</replaceable> <replaceable>target</replaceable></userinput></screen>
-
-	<para>In this example,
-	  <option>-<replaceable>x</replaceable></option> is an option
-	  passed to &man.make.1;.  Refer to &man.make.1; for an
-	  examples of available options.</para>
-
-	<para><option>-D<replaceable>VARIABLE</replaceable></option>
-	  passes a variable to the <filename>Makefile</filename>.  The
-	  behavior of the <filename>Makefile</filename> is controlled
-	  by these variables.  These are the same variables as are set
-	  in <filename>/etc/make.conf</filename>, and this provides
-	  another way of setting them.  For example:</para>
-
-	<screen>&prompt.root; <userinput>make -DNO_PROFILE <replaceable>target</replaceable></userinput></screen>
-
-	<para>is another way of specifying that profiled libraries
-	  should not be built, and corresponds with the</para>
-
-	<programlisting>NO_PROFILE=    true     #    Avoid compiling profiled libraries</programlisting>
-
-	<para>line in <filename>/etc/make.conf</filename>.</para>
-
-	<para><replaceable>target</replaceable> tells &man.make.1;
-	  what to do.  Each <filename>Makefile</filename> defines a
-	  number of different <quote>targets</quote>, and the choice
-	  of target determines what happens.</para>
-
-	<para>Some targets listed in the
-	  <filename>Makefile</filename> are used by the build process
-	  to break out the steps necessary to rebuild the system into
-	  a number of sub-steps.</para>
-
-	<para>Most of the time, no parameters need to be passed to
-	  &man.make.1; and the command looks like this:</para>
-
-	<screen>&prompt.root; <userinput>make <replaceable>target</replaceable></userinput></screen>
-
-	<para>Where <replaceable>target</replaceable> is one of many
-	  build options.  The first target should always be
-	  <buildtarget>buildworld</buildtarget>.</para>
-
-	<para>As the names imply,
-	  <buildtarget>buildworld</buildtarget> builds a complete new
-	  tree under <filename>/usr/obj</filename> and
-	  <buildtarget>installworld</buildtarget> installs this tree
-	  on the current machine.</para>
-
-	<para>Having separate options is useful for two reasons.
-	  First, it allows for a <quote>self hosted</quote> build that
-	  does not affect any components of a running system.  Because
-	  of this, <buildtarget>buildworld</buildtarget> can be run on
-	  a machine running in multi-user mode with no fear of
-	  ill-effects.  It is still recommended that
-	  <buildtarget>installworld</buildtarget> be run in part in
-	  single user mode, though.</para>
-
-	<para>Secondly, it allows NFS mounts to be used to upgrade
-	  multiple machines on a network.  If order to upgrade three
-	  machines, <systemitem>A</systemitem>,
-	  <systemitem>B</systemitem> and <systemitem>C</systemitem>,
-	  run <command>make buildworld</command> and
-	  <command>make installworld</command> on
-	  <systemitem>A</systemitem>.  <systemitem>B</systemitem> and
-	  <systemitem>C</systemitem> should then NFS mount
-	  <filename>/usr/src</filename> and
-	  <filename>/usr/obj</filename> from
-	  <systemitem>A</systemitem>, and run
-	  <command>make installworld</command> to install the results
-	  of the build on <systemitem>B</systemitem> and
-	  <systemitem>C</systemitem>.</para>
-
-	<para>Although the <buildtarget>world</buildtarget> target
-	  still exists, users are strongly encouraged not to use
-	  it.</para>
-
-	<para>Instead, run:</para>
-
-	<screen>&prompt.root; <userinput>make buildworld</userinput></screen>
-
-	<para>It is possible to specify <option>-j</option> which
-	  will cause <command>make</command> to spawn several
-	  simultaneous processes.  This is most useful on multi-CPU
-	  machines.  However, since much of the compiling process is
-	  I/O bound rather than CPU bound, it is also useful on single
-	  CPU machines.</para>
-
-	<para>On a typical single-CPU machine, run:</para>
-
-	<screen>&prompt.root; <userinput>make -j4 buildworld</userinput></screen>
-
-	<para>&man.make.1; will then have up to 4 processes running at
-	  any one time.  Empirical evidence posted to the mailing
-	  lists shows this generally gives the best performance
-	  benefit.</para>
-
-	<para>On a multi-CPU machine using an SMP configured kernel,
-	  try values between 6 and 10 and see how they speed things
-	  up.</para>
+      <para>To rebuild the world, use &man.make.1;.  This command
+	reads instructions from the <filename>Makefile</filename>,
+	which describes how the programs that comprise &os; should be
+	built and the order in which they should be built.</para>
+
+      <para>The general format of the command is as follows:</para>
+
+      <screen>&prompt.root; <userinput>make -<replaceable>x</replaceable> -D<replaceable>VARIABLE</replaceable> <replaceable>target</replaceable></userinput></screen>
+
+      <para>In this example,
+	<option>-<replaceable>x</replaceable></option> is an option
+	passed to &man.make.1;.  Refer to &man.make.1; for an examples
+	of available options.</para>
+
+      <para><option>-D<replaceable>VARIABLE</replaceable></option>
+	passes a variable to the <filename>Makefile</filename>.  The
+	behavior of the <filename>Makefile</filename> is controlled by
+	these variables.  These are the same variables as are set in
+	<filename>/etc/make.conf</filename>, and this provides
+	another way of setting them.  For example:</para>
+
+      <screen>&prompt.root; <userinput>make -DNO_PROFILE <replaceable>target</replaceable></userinput></screen>
+
+      <para>is another way of specifying that profiled libraries
+	should not be built, and corresponds with the</para>
+
+      <programlisting>NO_PROFILE=    true     #    Avoid compiling profiled libraries</programlisting>
+
+      <para>line in <filename>/etc/make.conf</filename>.</para>
+
+      <para><replaceable>target</replaceable> tells &man.make.1; what
+	to do.  Each <filename>Makefile</filename> defines a number of
+	different <quote>targets</quote>, and the choice of target
+	determines what happens.</para>
+
+      <para>Some targets listed in the <filename>Makefile</filename>
+	are used by the build process to break out the steps
+	necessary to rebuild the system into a number of
+	sub-steps.</para>
+
+      <para>Most of the time, no parameters need to be passed to
+	&man.make.1; and the command looks like this:</para>
+
+      <screen>&prompt.root; <userinput>make <replaceable>target</replaceable></userinput></screen>
+
+      <para>Where <replaceable>target</replaceable> is one of many
+	build options.  The first target should always be
+	<buildtarget>buildworld</buildtarget>.</para>
+
+      <para>As the names imply, <buildtarget>buildworld</buildtarget>
+	builds a complete new tree under <filename>/usr/obj</filename>
+	and <buildtarget>installworld</buildtarget> installs this tree
+	on the current machine.</para>
+
+      <para>Having separate options is useful for two reasons.  First,
+	it allows for a <quote>self hosted</quote> build that does not
+	affect any components of a running system.  Because of this,
+	<buildtarget>buildworld</buildtarget> can be run on a machine
+	running in multi-user mode with no fear of ill-effects.  It is
+	still recommended that <buildtarget>installworld</buildtarget>
+	be run in part in single user mode, though.</para>
+
+      <para>Secondly, it allows NFS mounts to be used to upgrade
+	multiple machines on a network.  If order to upgrade three
+	machines, <systemitem>A</systemitem>,
+	<systemitem>B</systemitem> and <systemitem>C</systemitem>, run
+	<command>make buildworld</command> and <command>make
+	  installworld</command> on <systemitem>A</systemitem>.
+	<systemitem>B</systemitem> and <systemitem>C</systemitem>
+	should then NFS mount <filename>/usr/src</filename> and
+	<filename>/usr/obj</filename> from <systemitem>A</systemitem>,
+	and run <command>make installworld</command> to install the
+	results of the build on <systemitem>B</systemitem> and
+	<systemitem>C</systemitem>.</para>
+
+      <para>Although the <buildtarget>world</buildtarget> target still
+	exists, users are strongly encouraged not to use it.</para>
+
+      <para>Instead, run:</para>
+
+      <screen>&prompt.root; <userinput>make buildworld</userinput></screen>
+
+      <para>It is possible to specify <option>-j</option> which will
+	cause <command>make</command> to spawn several simultaneous
+	processes.  This is most useful on multi-CPU machines.
+	However, since much of the compiling process is I/O bound
+	rather than CPU bound, it is also useful on single CPU
+	machines.</para>
+
+      <para>On a typical single-CPU machine, run:</para>
+
+      <screen>&prompt.root; <userinput>make -j4 buildworld</userinput></screen>
+
+      <para>&man.make.1; will then have up to 4 processes running at
+	any one time.  Empirical evidence posted to the mailing lists
+	shows this generally gives the best performance
+	benefit.</para>
+
+      <para>On a multi-CPU machine using an SMP configured kernel, try
+	values between 6 and 10 and see how they speed things
+	up.</para>
 
-	<indexterm>
-	  <primary>rebuilding <quote>world</quote></primary>
-	  <secondary>timings</secondary>
-	</indexterm>
+      <indexterm>
+	<primary>rebuilding <quote>world</quote></primary>
+	<secondary>timings</secondary>
+      </indexterm>
 
-	<para>Many factors influence the build time, but fairly recent
-	  machines may only take a one or two hours to build the
-	  &os.stable; tree, with no tricks or shortcuts used during
-	  the process.  A &os.current; tree will take somewhat
-	  longer.</para>
+      <para>Many factors influence the build time, but fairly recent
+	machines may only take a one or two hours to build the
+	&os.stable; tree, with no tricks or shortcuts used during the
+	process.  A &os.current; tree will take somewhat
+	longer.</para>
     </sect2>
 
     <sect2 xml:id="new-kernel">
@@ -2334,14 +2324,14 @@ Building everything..
 		class="directory">/usr</filename> with
 	      <option>noatime</option>.</para>
 
-	    <para>The file system holding
-	      <filename class="directory">/usr/obj</filename> can be mounted or
-	      remounted with <option>async</option> so that disk
+	    <para>The file system holding <filename
+		class="directory">/usr/obj</filename> can be mounted
+	      or remounted with <option>async</option> so that disk
 	      writes happen asynchronously.  The write completes
-	      immediately, and the data is written to the disk a
-	      few seconds later.  This allows writes to be
-	      clustered together, and can provide a dramatic
-	      performance boost.</para>
+	      immediately, and the data is written to the disk a few
+	      seconds later.  This allows writes to be clustered
+	      together, and can provide a dramatic performance
+	      boost.</para>
 
 	    <warning>
 	      <para>Keep in mind that this option makes the file
@@ -2351,21 +2341,20 @@ Building everything..
 		machine restarts.</para>
 
 	      <para>If <filename>/usr/obj</filename> is the only
-		directory on this file system, this is not a
-		problem.  If you have other, valuable data on the
-		same file system, ensure that there are verified
-		backups before enabling this option.</para>
+		directory on this file system, this is not a problem.
+		If you have other, valuable data on the same file
+		system, ensure that there are verified backups before
+		enabling this option.</para>
 	    </warning>
 
 	    <para>Turn off profiling by setting
 	      <quote>NO_PROFILE=true</quote> in
 	      <filename>/etc/make.conf</filename>.</para>
 
-	    <para>Pass
-	      <option>-j<replaceable>n</replaceable></option> to
-	      &man.make.1; to run multiple processes in parallel.
-	      This usually helps on both single- and
-	      multi-processor machines.</para>
+	    <para>Pass <option>-j<replaceable>n</replaceable></option>
+	      to &man.make.1; to run multiple processes in parallel.
+	      This usually helps on both single- and multi-processor
+	      machines.</para>
 	  </listitem>
 	</varlistentry>
 
@@ -2428,16 +2417,15 @@ Building everything..
     <sect2 xml:id="small-lan-preliminaries">
       <title>Preliminaries</title>
 
-      <para>First, identify a set of machines which will run the
-	same set of binaries, known as a <emphasis>build
-	  set</emphasis>.  Each machine can have a custom kernel, but
-	will run the same userland binaries.  From that set, choose a
-	machine to be the <emphasis>build machine</emphasis> that the
-	world and kernel are built on.  Ideally, this is a fast
-	machine that has sufficient spare CPU to run
-	<command>make buildworld</command> and
-	<command>make buildkernel</command>.  Select a machine to be
-	the <emphasis>test machine</emphasis>, which will test
+      <para>First, identify a set of machines which will run the same
+	set of binaries, known as a <emphasis>build set</emphasis>.
+	Each machine can have a custom kernel, but will run the same
+	userland binaries.  From that set, choose a machine to be the
+	<emphasis>build machine</emphasis> that the world and kernel
+	are built on.  Ideally, this is a fast machine that has
+	sufficient spare CPU to run <command>make buildworld</command>
+	and <command>make buildkernel</command>.  Select a machine to
+	be the <emphasis>test machine</emphasis>, which will test
 	software updates before they are put into production.  This
 	<emphasis>must</emphasis> be a machine that can afford to be
 	down for an extended period of time.  It can be the build
@@ -2445,13 +2433,12 @@ Building everything..
 
       <para>All the machines in this build set need to mount
 	<filename>/usr/obj</filename> and
-	<filename>/usr/src</filename> from the same
-	machine, and at the same point.  Ideally, those directories
-	are on two different drives on the build machine, but they can
-	be NFS mounted on that machine as well.  For multiple
-	build sets, <filename>/usr/src</filename>
-	should be on one build machine, and NFS mounted on the
-	rest.</para>
+	<filename>/usr/src</filename> from the same machine, and at
+	the same point.  Ideally, those directories are on two
+	different drives on the build machine, but they can be NFS
+	mounted on that machine as well.  For multiple build sets,
+	<filename>/usr/src</filename> should be on one build machine,
+	and NFS mounted on the rest.</para>
 
       <para>Finally, ensure that <filename>/etc/make.conf</filename>
 	and <filename>/etc/src.conf</filename> on all the machines in
@@ -2463,8 +2450,8 @@ Building everything..
 	<filename>/etc/make.conf</filename>, and the build machine
 	should list them all in <varname>KERNCONF</varname>, listing
 	its own kernel first.  The build machine must have the kernel
-	configuration files for each machine in
-	<filename class="directory">/usr/src/sys/<replaceable>arch</replaceable>/conf</filename>
+	configuration files for each machine in <filename
+	  class="directory">/usr/src/sys/<replaceable>arch</replaceable>/conf</filename>
 	if it is going to build their kernels.</para>
     </sect2>
 
@@ -2472,18 +2459,18 @@ Building everything..
       <title>The Base System</title>
 
       <para>On the build machine, build the kernel and world as
-	described in <xref linkend="make-buildworld"/>, but do
-	not install anything.  After the build has finished, go to the
+	described in <xref linkend="make-buildworld"/>, but do not
+	install anything.  After the build has finished, go to the
 	test machine, and install the built kernel.  If this machine
 	mounts <filename>/usr/src</filename> and
-	<filename>/usr/obj</filename> via NFS,
-	enable the network and mount these directories after rebooting
-	to single user mode.  The easiest way to do this is to boot to
-	multi-user, then run <command>shutdown now</command> to go to
-	single user mode.  Once there, install the new kernel and
-	world and run <command>mergemaster</command> as usual.  When
-	done, reboot to return to normal multi-user operations for
-	this machine.</para>
+	<filename>/usr/obj</filename> via NFS, enable the network and
+	mount these directories after rebooting to single user mode.
+	The easiest way to do this is to boot to multi-user, then run
+	<command>shutdown now</command> to go to single user mode.
+	Once there, install the new kernel and world and run
+	<command>mergemaster</command> as usual.  When done, reboot to
+	return to normal multi-user operations for this
+	machine.</para>
 
       <para>After verifying that everything on the test machine is
 	working properly, use the same procedure to install the new


More information about the svn-doc-all mailing list