Explain how to build the web site from the repository. Based very heavily

on Wolfram's documentation explaining how to do the same thing, but with
additional markup, and a few grammatical changes.

N
This commit is contained in:
Nik Clayton 2000-04-03 16:24:16 +00:00
parent 68be390e24
commit 88ef1c003f
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=6981
2 changed files with 346 additions and 10 deletions
en_US.ISO8859-1/books/fdp-primer/the-website
en_US.ISO_8859-1/books/fdp-primer/the-website

View file

@ -27,15 +27,184 @@
ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
$FreeBSD$
$FreeBSD: doc/en_US.ISO_8859-1/books/fdp-primer/the-website/chapter.sgml,v 1.3 1999/09/06 06:52:43 peter Exp $
-->
<chapter id="the-website">
<title>* The Website</title>
<title>The Website</title>
<sect1>
<title>Preparation</title>
<para>Get 200MB free disk space. You will need the disk space for the
SGML tools, a subset of the CVS tree, temporary build space and the
installed web pages. If you aready have installed the SGML tools and
the CVS tree, you need only ~100MB free disk space.</para>
<note>
<para>Make sure your documentation ports are up to date! When in
doubt, remove the old ports using &man.pkg.delete.1; command before
installing the port. For example, we currently depend on
jade-1.2 and if you have installed jade-1.1, please do</para>
<para></para>
<screen>&prompt.root; <userinput>pkg_delete jade-1.1</userinput></screen>
</note>
<para>Setup a CVS repository. You need the directories www, doc and
ports in the CVS tree (plus the CVSROOT of course). Please read the
CVSup introduction <ulink
url="http://www.freebsd.org/handbook/synching.html#CVSUP">
http://www.freebsd.org/handbook/synching.html#CVSUP</ulink> how to
mirror a CVS tree or parts of a CVS tree.</para>
<para>The essential cvsup collections are: <literal>www</literal>,
<literal>doc-all</literal>, <literal>cvs-base</literal>, and
<literal>ports-base</literal>.</para>
<para>These collections require ~100MB free disk space.</para>
<para>A full CVS tree - including <literal>src</literal>,
<literal>doc</literal>, <literal>www</literal>, and
<literal>ports</literal> - is currently 650MB large.</para>
</sect1>
<sect1>
<title>Build the web pages from scratch</title>
<procedure>
<step>
<para>Go to into a build directory with at least 60MB of free
space.</para>
<screen>&prompt.root; <userinput>mkdir /var/tmp/webbuild</userinput>
&prompt.root; <userinput>cd /var/tmp/webuild</userinput></screen>
</step>
<step>
<para>Checkout the SGML files from the CVS tree.</para>
<screen>&prompt.root; <userinput>cvs -R co www doc</userinput></screen>
</step>
<step><para>Change in to the <filename>www</filename> directory, and
run the &man.make.1; <maketarget>links</maketarget> target, to
create the necessary symbolic links.</para>
<screen>&prompt.root; <userinput>cd www</userinput>
&prompt.root; <userinput>make links</userinput></screen>
</step>
<step>
<para>Change in to the <filename>en</filename> directory, and run
the &man.make.1; <maketarget>all</maketarget> target, to create
the web pages.</para>
<screen>&prompt.root; <userinput>cd en</userinput>
&prompt.root; <userinput>make all</userinput></screen>
</step>
</procedure>
</sect1>
<sect1>
<title>Install the web pages into your web server</title>
<procedure>
<step>
<para>If you have moved out of the <filename>en</filename>
directory, change back to it.</para>
<screen>&prompt.root; <userinput>cd <replaceable>path</replaceable>/www/en</userinput></screen>
</step>
<step>
<para>Run the &man.make.1; <maketarget>install</maketarget> target,
setting the <makevar>DESTDIR</makevar> variable to the name of the
directory you want to install the files to.</para>
<screen>&prompt.root; <userinput>make DESTDIR=<replaceable>/usr/local/www</replaceable> install</userinput></screen>
</step>
<step>
<para>If you have previously installed the web pages in to the same
directory the install process will not have deleted any old or
outdated pages. For example, if you build and install a new copy
of the site every day, this command will find and delete all
files that have not been updated in three days.</para>
<screen>&prompt.root; <userinput>find <replaceable>/usr/local/www</replaceable> -ctime 3 -print0 | xargs -0 rm</userinput></screen>
</step>
</procedure>
</sect1>
<sect1>
<title>Environment variables</title>
<variablelist>
<varlistentry>
<term><envar>CVSROOT</envar></term>
<listitem>
<para>Location of the CVS tree. Essential.</para>
<screen><userinput>&prompt.root; CVSROOT=/home/ncvs; export CVSROOT</userinput></screen>
</listitem>
</varlistentry>
<varlistentry>
<term><makevar>ENGLISH_ONLY</makevar></term>
<listitem>
<para>If set and not empty, the makefiles will build and
install only the English documents. All translations will be
ignored. E.g.:</para>
<screen>&prompt.root; <userinput>make ENGLISH_ONLY=YES all install</userinput></screen>
<para>If you want unset the variable
<makevar>ENGLISH_ONLY</makevar> and build all pages, including
translations, set the variable <makevar>ENGLISH_ONLY</makevar>
to an empty value</para>
<screen>&prompt.root; <userinput>make ENGLISH_ONLY="" all install clean</userinput></screen>
</listitem>
</varlistentry>
<varlistentry>
<term><makevar>WEB_ONLY</makevar></term>
<listitem>
<para>If set and not empty, the makefiles wil build and install
only the HTML pages from the www directory. All documents from
the doc directory (Handbook, FAQ, Tutorials) will be ignored.
E.g.:</para>
<screen>&prompt.root; <userinput>make WEB_ONLY=YES all install</userinput></screen>
</listitem>
</varlistentry>
<varlistentry>
<term><makevar>NOPORTSCVS</makevar></term>
<listitem>
<para>If set, the makefiles will not checkout files from the ports
cvs repository. Instead, it will copy the files from
<filename>/usr/ports</filename> (or where the variable
<envar>PORTSBASE</envar> points to).</para>
</listitem>
</varlistentry>
</variablelist>
<para><envar>CVSROOT</envar> is an environment variable. You must set it
on the commandline or in your dot files (~/.profile).</para>
<para><makevar>WEB_ONLY</makevar>, <makevar>ENGLISH_ONLY</makevar> and
<makevar>NOPORTSCVS</makevar> are makefile variables. You can set the
variables in <filename>/etc/make.conf</filename>,
<filename>Makefile.inc</filename> or as environment variables on the
commandline or in your dot files.</para>
</sect1>
</chapter>
<!--
Local Variables:
mode: sgml
@ -46,4 +215,3 @@
sgml-parent-document: ("../book.sgml" "part" "chapter")
End:
-->

View file

@ -27,15 +27,184 @@
ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
$FreeBSD$
$FreeBSD: doc/en_US.ISO_8859-1/books/fdp-primer/the-website/chapter.sgml,v 1.3 1999/09/06 06:52:43 peter Exp $
-->
<chapter id="the-website">
<title>* The Website</title>
<title>The Website</title>
<sect1>
<title>Preparation</title>
<para>Get 200MB free disk space. You will need the disk space for the
SGML tools, a subset of the CVS tree, temporary build space and the
installed web pages. If you aready have installed the SGML tools and
the CVS tree, you need only ~100MB free disk space.</para>
<note>
<para>Make sure your documentation ports are up to date! When in
doubt, remove the old ports using &man.pkg.delete.1; command before
installing the port. For example, we currently depend on
jade-1.2 and if you have installed jade-1.1, please do</para>
<para></para>
<screen>&prompt.root; <userinput>pkg_delete jade-1.1</userinput></screen>
</note>
<para>Setup a CVS repository. You need the directories www, doc and
ports in the CVS tree (plus the CVSROOT of course). Please read the
CVSup introduction <ulink
url="http://www.freebsd.org/handbook/synching.html#CVSUP">
http://www.freebsd.org/handbook/synching.html#CVSUP</ulink> how to
mirror a CVS tree or parts of a CVS tree.</para>
<para>The essential cvsup collections are: <literal>www</literal>,
<literal>doc-all</literal>, <literal>cvs-base</literal>, and
<literal>ports-base</literal>.</para>
<para>These collections require ~100MB free disk space.</para>
<para>A full CVS tree - including <literal>src</literal>,
<literal>doc</literal>, <literal>www</literal>, and
<literal>ports</literal> - is currently 650MB large.</para>
</sect1>
<sect1>
<title>Build the web pages from scratch</title>
<procedure>
<step>
<para>Go to into a build directory with at least 60MB of free
space.</para>
<screen>&prompt.root; <userinput>mkdir /var/tmp/webbuild</userinput>
&prompt.root; <userinput>cd /var/tmp/webuild</userinput></screen>
</step>
<step>
<para>Checkout the SGML files from the CVS tree.</para>
<screen>&prompt.root; <userinput>cvs -R co www doc</userinput></screen>
</step>
<step><para>Change in to the <filename>www</filename> directory, and
run the &man.make.1; <maketarget>links</maketarget> target, to
create the necessary symbolic links.</para>
<screen>&prompt.root; <userinput>cd www</userinput>
&prompt.root; <userinput>make links</userinput></screen>
</step>
<step>
<para>Change in to the <filename>en</filename> directory, and run
the &man.make.1; <maketarget>all</maketarget> target, to create
the web pages.</para>
<screen>&prompt.root; <userinput>cd en</userinput>
&prompt.root; <userinput>make all</userinput></screen>
</step>
</procedure>
</sect1>
<sect1>
<title>Install the web pages into your web server</title>
<procedure>
<step>
<para>If you have moved out of the <filename>en</filename>
directory, change back to it.</para>
<screen>&prompt.root; <userinput>cd <replaceable>path</replaceable>/www/en</userinput></screen>
</step>
<step>
<para>Run the &man.make.1; <maketarget>install</maketarget> target,
setting the <makevar>DESTDIR</makevar> variable to the name of the
directory you want to install the files to.</para>
<screen>&prompt.root; <userinput>make DESTDIR=<replaceable>/usr/local/www</replaceable> install</userinput></screen>
</step>
<step>
<para>If you have previously installed the web pages in to the same
directory the install process will not have deleted any old or
outdated pages. For example, if you build and install a new copy
of the site every day, this command will find and delete all
files that have not been updated in three days.</para>
<screen>&prompt.root; <userinput>find <replaceable>/usr/local/www</replaceable> -ctime 3 -print0 | xargs -0 rm</userinput></screen>
</step>
</procedure>
</sect1>
<sect1>
<title>Environment variables</title>
<variablelist>
<varlistentry>
<term><envar>CVSROOT</envar></term>
<listitem>
<para>Location of the CVS tree. Essential.</para>
<screen><userinput>&prompt.root; CVSROOT=/home/ncvs; export CVSROOT</userinput></screen>
</listitem>
</varlistentry>
<varlistentry>
<term><makevar>ENGLISH_ONLY</makevar></term>
<listitem>
<para>If set and not empty, the makefiles will build and
install only the English documents. All translations will be
ignored. E.g.:</para>
<screen>&prompt.root; <userinput>make ENGLISH_ONLY=YES all install</userinput></screen>
<para>If you want unset the variable
<makevar>ENGLISH_ONLY</makevar> and build all pages, including
translations, set the variable <makevar>ENGLISH_ONLY</makevar>
to an empty value</para>
<screen>&prompt.root; <userinput>make ENGLISH_ONLY="" all install clean</userinput></screen>
</listitem>
</varlistentry>
<varlistentry>
<term><makevar>WEB_ONLY</makevar></term>
<listitem>
<para>If set and not empty, the makefiles wil build and install
only the HTML pages from the www directory. All documents from
the doc directory (Handbook, FAQ, Tutorials) will be ignored.
E.g.:</para>
<screen>&prompt.root; <userinput>make WEB_ONLY=YES all install</userinput></screen>
</listitem>
</varlistentry>
<varlistentry>
<term><makevar>NOPORTSCVS</makevar></term>
<listitem>
<para>If set, the makefiles will not checkout files from the ports
cvs repository. Instead, it will copy the files from
<filename>/usr/ports</filename> (or where the variable
<envar>PORTSBASE</envar> points to).</para>
</listitem>
</varlistentry>
</variablelist>
<para><envar>CVSROOT</envar> is an environment variable. You must set it
on the commandline or in your dot files (~/.profile).</para>
<para><makevar>WEB_ONLY</makevar>, <makevar>ENGLISH_ONLY</makevar> and
<makevar>NOPORTSCVS</makevar> are makefile variables. You can set the
variables in <filename>/etc/make.conf</filename>,
<filename>Makefile.inc</filename> or as environment variables on the
commandline or in your dot files.</para>
</sect1>
</chapter>
<!--
Local Variables:
mode: sgml
@ -46,4 +215,3 @@
sgml-parent-document: ("../book.sgml" "part" "chapter")
End:
-->