summaryrefslogtreecommitdiff
path: root/doc/guide
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2006-09-10 19:30:56 +0000
committerwiz <wiz@pkgsrc.org>2006-09-10 19:30:56 +0000
commita565f838bdacbf710f37cc53226e2bb1c3ece633 (patch)
treee44a00ab7c94d3fb8c2b294834f5f04d21c80de8 /doc/guide
parent5b54bade7bfb607840d43de73f299a78517b946e (diff)
downloadpkgsrc-a565f838bdacbf710f37cc53226e2bb1c3ece633.tar.gz
Avoid extra whitespace in <para>. Use more macros.
Diffstat (limited to 'doc/guide')
-rw-r--r--doc/guide/files/platforms.xml642
1 files changed, 321 insertions, 321 deletions
diff --git a/doc/guide/files/platforms.xml b/doc/guide/files/platforms.xml
index 6ad36f2d6f1..3f65a2d6490 100644
--- a/doc/guide/files/platforms.xml
+++ b/doc/guide/files/platforms.xml
@@ -1,4 +1,4 @@
-<!-- $NetBSD: platforms.xml,v 1.38 2006/09/02 11:26:16 schwarz Exp $ -->
+<!-- $NetBSD: platforms.xml,v 1.39 2006/09/10 19:30:56 wiz Exp $ -->
<chapter id="platforms">
<title>Using pkgsrc on systems other than &os;</title>
@@ -214,31 +214,31 @@ file and inspect the contents before extracting it.
<para>Installing the bootstrap kit from source should be as simple as:</para>
<screen>
-&rprompt; <userinput>env CVS_RSH=ssh cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot checkout pkgsrc</userinput>
-&rprompt; <userinput>cd pkgsrc/bootstrap</userinput>
-&rprompt; <userinput>./bootstrap</userinput></screen>
+ &rprompt; <userinput>env CVS_RSH=ssh cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot checkout pkgsrc</userinput>
+ &rprompt; <userinput>cd pkgsrc/bootstrap</userinput>
+ &rprompt; <userinput>./bootstrap</userinput></screen>
<para>See <xref linkend="getting"/> for other ways to get
- pkgsrc before bootstrapping. The given
- <command>bootstrap</command> command will use the defaults of
- <filename>/usr/pkg</filename> for the
- <emphasis>prefix</emphasis> where programs will be installed in,
- and <filename>/var/db/pkg</filename> for the package database
- directory where pkgsrc will do its internal bookkeeping.
- However, these can also be set using command-line
- arguments.</para>
+ pkgsrc before bootstrapping. The given
+ <command>bootstrap</command> command will use the defaults of
+ <filename>/usr/pkg</filename> for the
+ <emphasis>prefix</emphasis> where programs will be installed in,
+ and <filename>/var/db/pkg</filename> for the package database
+ directory where pkgsrc will do its internal bookkeeping.
+ However, these can also be set using command-line
+ arguments.</para>
<para>Binary packages for the pkgsrc tools and an initial set of packages is
- available for supported platforms. An up-to-date list of these can be
- found on <ulink url="http://www.pkgsrc.org/">www.pkgsrc.org</ulink>.
- Note that this only works for privileged builds that install
- into <filename>/usr/pkg</filename>.</para>
+ available for supported platforms. An up-to-date list of these can be
+ found on <ulink url="http://www.pkgsrc.org/">www.pkgsrc.org</ulink>.
+ Note that this only works for privileged builds that install
+ into <filename>/usr/pkg</filename>.</para>
<note>
- <para>The bootstrap installs a <command>bmake</command> tool.
- Use this <command>bmake</command> when building via pkgsrc.
- For examples in this guide, use <command>bmake</command>
- instead of <quote>make</quote>.</para>
+ <para>The bootstrap installs a <command>bmake</command> tool.
+ Use this <command>bmake</command> when building via pkgsrc.
+ For examples in this guide, use <command>bmake</command>
+ instead of <quote>make</quote>.</para>
</note>
</sect1>
@@ -257,17 +257,17 @@ file and inspect the contents before extracting it.
partition</link>.</para>
<para>Before you start, you will need to download and install the Mac OS X Developer
- Tools from Apple's Developer Connection. See <ulink
- url="http://developer.apple.com/macosx/">http://developer.apple.com/macosx/</ulink>
- for details. Also, make sure you install X11 for Mac OS X and the X11 SDK
- from <ulink
- url="http://www.apple.com/macosx/x11/download/">http://www.apple.com/macosx/x11/download/</ulink>
- if you intend to build packages that use the X11 Window System.</para>
+ Tools from Apple's Developer Connection. See <ulink
+ url="http://developer.apple.com/macosx/">http://developer.apple.com/macosx/</ulink>
+ for details. Also, make sure you install X11 for Mac OS X and the X11 SDK
+ from <ulink
+ url="http://www.apple.com/macosx/x11/download/">http://www.apple.com/macosx/x11/download/</ulink>
+ if you intend to build packages that use the X11 Window System.</para>
<para>If you already have a UFS partition, or have a spare partition
- that you can format as UFS, it is recommended to use that instead of
- the disk image. It'll be somewhat faster and will mount automatically
- at boot time, where you must manually mount a disk image.</para>
+ that you can format as UFS, it is recommended to use that instead of
+ the disk image. It'll be somewhat faster and will mount automatically
+ at boot time, where you must manually mount a disk image.</para>
<note>
<para>You cannot use an ordinary HFS+ file system for pkgsrc, because pkgsrc currently
@@ -296,77 +296,76 @@ file and inspect the contents before extracting it.
<title>Using a UFS partition</title>
<para>By default, <filename>/usr</filename> will be on your root file
- system, normally HFS+. It is possible to use the default
- <emphasis>prefix</emphasis> of <filename>/usr/pkg</filename>
- by symlinking <filename>/usr/pkg</filename> to a directory on a UFS
- file system. Obviously, another symlink is required if you want to
- place the package database directory outside the
- <emphasis>prefix</emphasis>. e.g.</para>
+ system, normally HFS+. It is possible to use the default
+ <emphasis>prefix</emphasis> of <filename>/usr/pkg</filename>
+ by symlinking <filename>/usr/pkg</filename> to a directory on a UFS
+ file system. Obviously, another symlink is required if you want to
+ place the package database directory outside the
+ <emphasis>prefix</emphasis>. e.g.</para>
<screen>&rprompt; <userinput>./bootstrap --pkgdbdir /usr/pkg/pkgdb</userinput></screen>
<para>If you created your partitions at the time of installing Mac OS X
- and formatted the target partition as UFS, it should automatically
- mount on <filename>/Volumes/&lt;volume name&gt;</filename> when the
- machine boots. If you are (re)formatting a partition as UFS, you need
- to ensure that the partition map correctly reflects
- <quote>Apple_UFS</quote> and not <quote>Apple_HFS</quote>.</para>
+ and formatted the target partition as UFS, it should automatically
+ mount on <filename>/Volumes/&lt;volume name&gt;</filename> when the
+ machine boots. If you are (re)formatting a partition as UFS, you need
+ to ensure that the partition map correctly reflects
+ <quote>Apple_UFS</quote> and not <quote>Apple_HFS</quote>.</para>
<para>The problem is that none of the disk tools will let you touch a
- disk that is booted from. You can unmount the partition, but even if
- you newfs it, the partition type will be incorrect and the
- automounter won't mount it. It can be mounted manually, but it won't
- appear in Finder.</para>
+ disk that is booted from. You can unmount the partition, but even if
+ you newfs it, the partition type will be incorrect and the
+ automounter won't mount it. It can be mounted manually, but it won't
+ appear in Finder.</para>
<para>You'll need to boot off of the OS X Installation (User) CD. When
- the Installation program starts, go up to the menu and select Disk
- Utility. Now, you will be able to select the partition you want
- to be UFS, and Format it Apple UFS. Quit the Disk Utility, quit the
- installer which will reboot your machine. The new UFS file system
- will appear in Finder.</para>
+ the Installation program starts, go up to the menu and select Disk
+ Utility. Now, you will be able to select the partition you want
+ to be UFS, and Format it Apple UFS. Quit the Disk Utility, quit the
+ installer which will reboot your machine. The new UFS file system
+ will appear in Finder.</para>
<para>Be aware that the permissions on the new file system will be writable
- by root only.</para>
+ by root only.</para>
<para>This note is as of 10.2 (Jaguar) and applies to earlier versions.
- Hopefully Apple will fix Disk Utility in 10.3 (Panther).</para>
+ Hopefully Apple will fix Disk Utility in 10.3 (Panther).</para>
</sect3>
</sect2>
<sect2 id="freebsd">
<title>FreeBSD</title>
- <para>
- FreeBSD 4.7 and 5.0 have been tested and are supported, other versions
- may work.</para>
+ <para>FreeBSD 4.7 and 5.0 have been tested and are supported,
+ other versions may work.</para>
<para>Care should be taken so that the tools that this kit installs do not conflict
- with the FreeBSD userland tools. There are several steps:</para>
+ with the FreeBSD userland tools. There are several steps:</para>
<orderedlist>
<listitem>
<para>FreeBSD stores its ports pkg database in
- <filename>/var/db/pkg</filename>. It is therefore
- recommended that you choose a different location (e.g.
- <filename>/usr/pkgdb</filename>) by
- using the --pkgdbdir option to the bootstrap script.</para>
+ <filename>/var/db/pkg</filename>. It is therefore
+ recommended that you choose a different location (e.g.
+ <filename>/usr/pkgdb</filename>) by
+ using the --pkgdbdir option to the bootstrap script.</para>
</listitem>
<listitem>
<para>If you do not intend to use the FreeBSD ports tools, it's probably a
- good idea to move them out of the way to avoid confusion, e.g.</para>
+ good idea to move them out of the way to avoid confusion, e.g.</para>
<screen>&rprompt; <userinput>cd /usr/sbin</userinput>
-&rprompt; <userinput>mv pkg_add pkg_add.orig</userinput>
-&rprompt; <userinput>mv pkg_create pkg_create.orig</userinput>
-&rprompt; <userinput>mv pkg_delete pkg_delete.orig</userinput>
-&rprompt; <userinput>mv pkg_info pkg_info.orig</userinput></screen>
-</listitem>
+ &rprompt; <userinput>mv pkg_add pkg_add.orig</userinput>
+ &rprompt; <userinput>mv pkg_create pkg_create.orig</userinput>
+ &rprompt; <userinput>mv pkg_delete pkg_delete.orig</userinput>
+ &rprompt; <userinput>mv pkg_info pkg_info.orig</userinput></screen>
+ </listitem>
<listitem>
<para>An example <filename>/etc/mk.conf</filename> file will be placed in
- <filename>/etc/mk.conf.example</filename> file
- when you use the bootstrap script.</para>
+ <filename>/etc/mk.conf.example</filename> file
+ when you use the bootstrap script.</para>
</listitem>
</orderedlist>
</sect2>
@@ -375,21 +374,21 @@ file and inspect the contents before extracting it.
<title>Interix</title>
<para>Interix is a POSIX-compatible subsystem for the Windows NT kernel,
- providing a Unix-like environment with a tighter kernel integration than
- available with Cygwin. It is part of the Windows Services for Unix
- package, available for free for any licensed copy of Windows 2000, XP
- (not including XP Home), or 2003. SFU can be downloaded from <ulink
- url="http://www.microsoft.com/windows/sfu/">http://www.microsoft.com/windows/sfu/</ulink>.</para>
+ providing a Unix-like environment with a tighter kernel integration than
+ available with Cygwin. It is part of the Windows Services for Unix
+ package, available for free for any licensed copy of Windows 2000, XP
+ (not including XP Home), or 2003. SFU can be downloaded from <ulink
+ url="http://www.microsoft.com/windows/sfu/">http://www.microsoft.com/windows/sfu/</ulink>.</para>
<para>Services for Unix 3.5, current as of this writing, has been tested. 3.0
- or 3.1 may work, but are not officially supported. (The main difference
- in 3.0/3.1 is lack of pthreads.)</para>
+ or 3.1 may work, but are not officially supported. (The main difference
+ in 3.0/3.1 is lack of pthreads.)</para>
<sect3 id="platform.interix-sfu-install">
<title>When installing Interix/SFU</title>
<para>At an absolute minimum, the following packages must be installed from
- the Windows Services for Unix 3.5 distribution in order to use pkgsrc:</para>
+ the Windows Services for Unix 3.5 distribution in order to use pkgsrc:</para>
<itemizedlist>
<listitem><para>Utilities -&gt; Base Utilities</para></listitem>
@@ -399,28 +398,28 @@ file and inspect the contents before extracting it.
</itemizedlist>
<para>When using pkgsrc on Interix, DO NOT install the Utilities subcomponent
- "UNIX Perl". That is Perl 5.6 without shared module support, installed to
- /usr/local, and will only cause confusion. Instead, install Perl 5.8 from
- pkgsrc (or from a binary package).</para>
+ "UNIX Perl". That is Perl 5.6 without shared module support, installed to
+ /usr/local, and will only cause confusion. Instead, install Perl 5.8 from
+ pkgsrc (or from a binary package).</para>
<para>The Remote Connectivity subcomponent "Windows Remote Shell Service" does
- not need to be installed, but Remote Connectivity itself should be
- installed in order to have a working inetd.</para>
+ not need to be installed, but Remote Connectivity itself should be
+ installed in order to have a working inetd.</para>
<para>During installation you may be asked whether to enable setuid
- behavior for Interix programs, and whether to make pathnames default to
- case-sensitive. Setuid should be enabled, and case-sensitivity MUST be
- enabled. (Without case-sensitivity, a large number of packages including
- perl will not build.)</para>
+ behavior for Interix programs, and whether to make pathnames default to
+ case-sensitive. Setuid should be enabled, and case-sensitivity MUST be
+ enabled. (Without case-sensitivity, a large number of packages including
+ perl will not build.)</para>
<para>NOTE: Newer Windows service packs change the way binary execution
- works (via the Data Execution Prevention feature). In order to use
- pkgsrc and other gcc-compiled binaries reliably, a hotfix containing
- POSIX.EXE, PSXDLL.DLL, PSXRUN.EXE, and PSXSS.EXE (899522 or newer)
- must be installed. Hotfixes are available from Microsoft through a
- support contract; however, a NetBSD developer has made most Interix
- hotfixes available for personal use from <ulink
- url="http://www.duh.org/interix/hotfixes.php">http://www.duh.org/interix/hotfixes.php</ulink>.</para>
+ works (via the Data Execution Prevention feature). In order to use
+ pkgsrc and other gcc-compiled binaries reliably, a hotfix containing
+ POSIX.EXE, PSXDLL.DLL, PSXRUN.EXE, and PSXSS.EXE (899522 or newer)
+ must be installed. Hotfixes are available from Microsoft through a
+ support contract; however, a NetBSD developer has made most Interix
+ hotfixes available for personal use from <ulink
+ url="http://www.duh.org/interix/hotfixes.php">http://www.duh.org/interix/hotfixes.php</ulink>.</para>
</sect3>
@@ -428,23 +427,23 @@ file and inspect the contents before extracting it.
<title>What to do if Interix/SFU is already installed</title>
<para>If SFU is already installed and you wish to alter these settings to work
- with pkgsrc, note the following things.</para>
+ with pkgsrc, note the following things.</para>
<itemizedlist>
<listitem>
<para>To uninstall UNIX Perl, use Add/Remove Programs, select Microsoft
- Windows Services for UNIX, then click Change. In the installer, choose
- Add or Remove, then uncheck Utilities-&gt;UNIX Perl.</para>
+ Windows Services for UNIX, then click Change. In the installer, choose
+ Add or Remove, then uncheck Utilities-&gt;UNIX Perl.</para>
</listitem>
<listitem>
<para>To enable case-sensitivity for the file system, run REGEDIT.EXE, and
- change the following registry key:</para>
+ change the following registry key:</para>
<para>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel</para>
<para>Set the DWORD value "obcaseinsensitive" to 0; then reboot.</para>
</listitem>
<listitem>
<para>To enable setuid binaries (optional), run REGEDIT.EXE, and change the
- following registry key:</para>
+ following registry key:</para>
<para>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Services for UNIX</para>
<para>Set the DWORD value "EnableSetuidBinaries" to 1; then reboot.</para>
</listitem>
@@ -455,87 +454,87 @@ file and inspect the contents before extracting it.
<title>Important notes for using pkgsrc</title>
<para>The package manager (either the pkgsrc "su" user, or the user
- running "pkg_add") must be a member of the local Administrators
- group. Such a user must also be used to run the bootstrap. This is
- slightly relaxed from the normal pkgsrc requirement of "root".</para>
+ running "pkg_add") must be a member of the local Administrators
+ group. Such a user must also be used to run the bootstrap. This is
+ slightly relaxed from the normal pkgsrc requirement of "root".</para>
<para>The package manager should use a umask of 002. "make install" will
- automatically complain if this is not the case. This ensures that
- directories written in /var/db/pkg are Administrators-group writeable.</para>
+ automatically complain if this is not the case. This ensures that
+ directories written in /var/db/pkg are Administrators-group writeable.</para>
<para>The popular Interix binary packages from http://www.interopsystems.com/
- use an older version of pkgsrc's pkg_* tools. Ideally, these should
- NOT be used in conjunction with pkgsrc. If you choose to use them at
- the same time as the pkgsrc packages, ensure that you use the proper
- pkg_* tools for each type of binary package.</para>
+ use an older version of pkgsrc's pkg_* tools. Ideally, these should
+ NOT be used in conjunction with pkgsrc. If you choose to use them at
+ the same time as the pkgsrc packages, ensure that you use the proper
+ pkg_* tools for each type of binary package.</para>
<para>The TERM setting used for DOS-type console windows (including those
- invoked by the csh and ksh startup shortcuts) is "interix". Most systems
- don't have a termcap/terminfo entry for it, but the following .termcap
- entry provides adequate emulation in most cases:</para>
+ invoked by the csh and ksh startup shortcuts) is "interix". Most systems
+ don't have a termcap/terminfo entry for it, but the following .termcap
+ entry provides adequate emulation in most cases:</para>
-<programlisting>
- interix:kP=\E[S:kN=\E[T:kH=\E[U:dc@:DC@:tc=pcansi:
-</programlisting>
+ <programlisting>
+ interix:kP=\E[S:kN=\E[T:kH=\E[U:dc@:DC@:tc=pcansi:
+ </programlisting>
</sect3>
<sect3 id="platform.interix-limits">
<title>Limitations of the Interix platform</title>
<para>Though Interix suffices as a familiar and flexible substitute
- for a full Unix-like platform, it has some drawbacks that should
- be noted for those desiring to make the most of Interix.</para>
+ for a full Unix-like platform, it has some drawbacks that should
+ be noted for those desiring to make the most of Interix.</para>
<itemizedlist>
<listitem><para><emphasis role="strong">X11:</emphasis></para>
- <para>Interix comes with the standard set of X11R6 client libraries,
- and can run X11 based applications, but it does
- <emphasis>not</emphasis> come with an X server. Some options are
- <ulink url="http://www.starnet.com/products/xwin32/">StarNet X-Win32</ulink>,
- <ulink url="http://connectivity.hummingbird.com/products/nc/exceed/">Hummingbird Exceed</ulink>
- (available in a trimmed version for Interix from Interop Systems as the
- <ulink url="http://www.interopsystems.com/InteropXserver.htm">Interop X Server</ulink>),
- and the free X11 server included with
- <ulink url="http://x.cygwin.com/">Cygwin</ulink>.</para>
-
- <para>Also, StarNet Communications has graciously provided a free
- version of their X-Win32 product that accepts connections only
- from localhost:
- <ulink url="http://www.starnet.com/xwin32LX/get_xwin32LX.htm">X-Win32 LX</ulink>,
- recommended by the maintainer of Interix pkgsrc support.</para></listitem>
+ <para>Interix comes with the standard set of X11R6 client libraries,
+ and can run X11 based applications, but it does
+ <emphasis>not</emphasis> come with an X server. Some options are
+ <ulink url="http://www.starnet.com/products/xwin32/">StarNet X-Win32</ulink>,
+ <ulink url="http://connectivity.hummingbird.com/products/nc/exceed/">Hummingbird Exceed</ulink>
+ (available in a trimmed version for Interix from Interop Systems as the
+ <ulink url="http://www.interopsystems.com/InteropXserver.htm">Interop X Server</ulink>),
+ and the free X11 server included with
+ <ulink url="http://x.cygwin.com/">Cygwin</ulink>.</para>
+
+ <para>Also, StarNet Communications has graciously provided a free
+ version of their X-Win32 product that accepts connections only
+ from localhost:
+ <ulink url="http://www.starnet.com/xwin32LX/get_xwin32LX.htm">X-Win32 LX</ulink>,
+ recommended by the maintainer of Interix pkgsrc support.</para></listitem>
<listitem><para><emphasis role="strong">X11 acceleration:</emphasis></para>
- <para>Because Interix runs in a completely different NT subsystem from
- Win32 applications, it does not currently support various X11
- protocol extensions for acceleration (such as MIT-SHM or DGA).
- Most interactive applications to a local X server will run
- reasonably fast, but full motion video and other graphics
- intensive applications may require a faster-than-expected CPU.</para></listitem>
+ <para>Because Interix runs in a completely different NT subsystem from
+ Win32 applications, it does not currently support various X11
+ protocol extensions for acceleration (such as MIT-SHM or DGA).
+ Most interactive applications to a local X server will run
+ reasonably fast, but full motion video and other graphics
+ intensive applications may require a faster-than-expected CPU.</para></listitem>
<listitem><para><emphasis role="strong">Audio:</emphasis></para>
- <para>Interix has no native support for audio output. For audio
- support, pkgsrc uses the <command>esound</command> client/server
- audio system on Interix. Unlike on most platforms, the
- <filename role="pkg">audio/esound</filename> package does
- <emphasis>not</emphasis> contain the <command>esd</command>
- server component. To output audio via an Interix host, the
- <filename role="pkg">emulators/cygwin_esound</filename> package
- must also be installed.</para></listitem>
+ <para>Interix has no native support for audio output. For audio
+ support, pkgsrc uses the <command>esound</command> client/server
+ audio system on Interix. Unlike on most platforms, the
+ <filename role="pkg">audio/esound</filename> package does
+ <emphasis>not</emphasis> contain the <command>esd</command>
+ server component. To output audio via an Interix host, the
+ <filename role="pkg">emulators/cygwin_esound</filename> package
+ must also be installed.</para></listitem>
<listitem><para><emphasis role="strong">CD/DVDs, USB, and SCSI:</emphasis></para>
- <para>Direct device access is not currently supported in Interix, so it
- is not currently possible to access CD/DVD drives, USB devices,
- or SCSI devices through non-filesystem means. Among other things,
- this makes it impossible to use Interix directly for CD/DVD
- burning.</para></listitem>
+ <para>Direct device access is not currently supported in Interix, so it
+ is not currently possible to access CD/DVD drives, USB devices,
+ or SCSI devices through non-filesystem means. Among other things,
+ this makes it impossible to use Interix directly for CD/DVD
+ burning.</para></listitem>
<listitem><para><emphasis role="strong">Tape drives:</emphasis></para>
- <para>Due to the same limitations as for CD-ROMs and SCSI devices, tape
- drives are also not directly accessible in Interix. However,
- support is in work to make tape drive access possible by using
- Cygwin as a bridge (similarly to audio bridged via Cygwin's
- esound server).</para></listitem>
+ <para>Due to the same limitations as for CD-ROMs and SCSI devices, tape
+ drives are also not directly accessible in Interix. However,
+ support is in work to make tape drive access possible by using
+ Cygwin as a bridge (similarly to audio bridged via Cygwin's
+ esound server).</para></listitem>
</itemizedlist>
</sect3>
@@ -543,19 +542,20 @@ file and inspect the contents before extracting it.
<title>Known issues for pkgsrc on Interix</title>
<para>It is not necessary, in general, to have a "root" user on the
- Windows system; any member of the local Administrators group will
- suffice. However, some packages currently assume that the user
- named "root" is the privileged user. To accommodate these, you
- may create such a user; make sure it is in the local group
- Administrators (or your language equivalent).</para>
-
- <para>"pkg_add" creates directories of mode 0755, not 0775, in
- $PKG_DBDIR. For the time being, install packages as the local
- Administrator (or your language equivalent), or run the following
- command after installing a package to work around the issue:</para>
+ Windows system; any member of the local Administrators group will
+ suffice. However, some packages currently assume that the user
+ named "root" is the privileged user. To accommodate these, you
+ may create such a user; make sure it is in the local group
+ Administrators (or your language equivalent).</para>
+
+ <para><command>pkg_add</command> creates directories of mode
+ 0755, not 0775, in <filename>$PKG_DBDIR</filename>. For the
+ time being, install packages as the local Administrator (or
+ your language equivalent), or run the following command after
+ installing a package to work around the issue:</para>
<screen>
-&rprompt; <userinput>chmod -R g+w $PKG_DBDIR</userinput></screen>
+ &rprompt; <userinput>chmod -R g+w $PKG_DBDIR</userinput></screen>
</sect3>
</sect2>
@@ -564,14 +564,14 @@ file and inspect the contents before extracting it.
<title>IRIX</title>
<para>You will need a working C compiler, either gcc or SGI's MIPS and MIPSpro
- compiler (cc/c89). Please set the <varname>CC</varname> environment variable
- according to your preference. If you do not have a license for the MIPSpro
- compiler suite, you can download a gcc tardist file from <ulink
- url="http://freeware.sgi.com/">http://freeware.sgi.com/</ulink>.</para>
+ compiler (cc/c89). Please set the <varname>CC</varname> environment variable
+ according to your preference. If you do not have a license for the MIPSpro
+ compiler suite, you can download a gcc tardist file from <ulink
+ url="http://freeware.sgi.com/">http://freeware.sgi.com/</ulink>.</para>
<para>Please note that you will need IRIX 6.5.17 or higher, as this is the earliest
- version of IRIX providing support for &man.if.indextoname.3;, &man.if.nametoindex.3;,
- etc.</para>
+ version of IRIX providing support for &man.if.indextoname.3;, &man.if.nametoindex.3;,
+ etc.</para>
<para>At this point in time, pkgsrc only supports one ABI at a time. That is, you cannot
switch between the old 32-bit ABI, the new 32-bit ABI and the 64-bit ABI. If
@@ -579,98 +579,98 @@ file and inspect the contents before extracting it.
with.</para>
<para>Therefore, please make sure that you have no conflicting
- <varname>CFLAGS</varname> in your environment or the
- <filename>/etc/mk.conf</filename>. Particularly, make sure that you do not
- try to link n32 object files with lib64 or vice versa. Check your
- <filename>/etc/compiler.defaults</filename>!</para>
+ <varname>CFLAGS</varname> in your environment or the
+ <filename>/etc/mk.conf</filename>. Particularly, make sure that you do not
+ try to link n32 object files with lib64 or vice versa. Check your
+ <filename>/etc/compiler.defaults</filename>!</para>
<para>If you have the actual pkgsrc tree mounted via NFS from a different host,
- please make sure to set <varname>WRKOBJDIR</varname> to a local directory,
- as it appears that IRIX linker occasionally runs into issues when trying to
- link over a network-mounted file system.</para>
+ please make sure to set <varname>WRKOBJDIR</varname> to a local directory,
+ as it appears that IRIX linker occasionally runs into issues when trying to
+ link over a network-mounted file system.</para>
<para>The bootstrapping process should set all the right options for programs such
- as imake(1), but you may want to set some options depending on your local
- setup. Please see <filename>pkgsrc/mk/defaults/mk.conf</filename> and, of
- course, your compiler's man pages for details.</para>
+ as imake(1), but you may want to set some options depending on your local
+ setup. Please see <filename>pkgsrc/mk/defaults/mk.conf</filename> and, of
+ course, your compiler's man pages for details.</para>
<para>If you are using SGI's MIPSPro compiler, please set
-<programlisting>
- PKGSRC_COMPILER= mipspro
-</programlisting>
+ <programlisting>
+ PKGSRC_COMPILER= mipspro
+ </programlisting>
- in <filename>/etc/mk.conf</filename>. Otherwise, pkgsrc will assume you
- are using gcc and may end up passing invalid flags to the compiler. Note that
- bootstrap should create an appropriate <filename>mk.conf.example</filename> by
- default.</para>
+ in <filename>/etc/mk.conf</filename>. Otherwise, pkgsrc will assume you
+ are using gcc and may end up passing invalid flags to the compiler. Note that
+ bootstrap should create an appropriate <filename>mk.conf.example</filename> by
+ default.</para>
<para>If you have both the MIPSPro compiler chain installed as well as gcc,
- but want to make sure that MIPRPro is used, please set your <varname>PATH</varname>
- to <emphasis>not</emphasis> include the location of gcc (often
- <filename>/usr/freeware/bin</filename>), and (important) pass the
- '--preserve-path' flag.</para>
+ but want to make sure that MIPRPro is used, please set your <varname>PATH</varname>
+ to <emphasis>not</emphasis> include the location of gcc (often
+ <filename>/usr/freeware/bin</filename>), and (important) pass the
+ '--preserve-path' flag.</para>
</sect2>
<sect2 id="linux">
<title>Linux</title>
- <para>
- Some versions of Linux (for example Debian GNU/Linux) need either
- libtermcap or libcurses (libncurses). Installing the distributions
- libncurses-dev package (or equivalent) should fix the problem.</para>
+ <para>Some versions of Linux (for example Debian GNU/Linux) need
+ either libtermcap or libcurses (libncurses). Installing the
+ distributions libncurses-dev package (or equivalent) should fix
+ the problem.</para>
- <para>
- pkgsrc supports both gcc (GNU Compiler Collection) and icc (Intel C++
- Compiler). gcc is the default. icc 8.0 and 8.1 on i386 have been tested.
- </para>
+ <para>pkgsrc supports both gcc (GNU Compiler Collection) and icc
+ (Intel C++ Compiler). gcc is the default. icc 8.0 and 8.1 on
+ i386 have been tested.</para>
<para>To bootstrap using icc, assuming the default icc installation
- directory:</para>
+ directory:</para>
-<programlisting>
- env CC=/opt/intel_cc_80/bin/icc LDFLAGS=-static-libcxa \
- ac_cv___attribute__=yes ./bootstrap
-</programlisting>
+ <programlisting>
+ env CC=/opt/intel_cc_80/bin/icc LDFLAGS=-static-libcxa \
+ ac_cv___attribute__=yes ./bootstrap
+ </programlisting>
<note>
- <para>icc 8.1 needs the `-i-static' argument instead of -static-libcxa.</para>
+ <para>icc 8.1 needs the `-i-static' argument instead of -static-libcxa.</para>
</note>
<para>icc supports __attribute__, but the GNU configure test uses a nested
- function, which icc does not support. #undef'ing __attribute__ has the
- unfortunate side-effect of breaking many of the Linux header files, which
- cannot be compiled properly without __attribute__. The test must be
- overridden so that __attribute__ is assumed supported by the
- compiler.</para>
-
- <para>After bootstrapping, you should set <varname>PKGSRC_COMPILER</varname>
- in <filename>/etc/mk.conf</filename>:</para>
-
-<programlisting>
- PKGSRC_COMPILER= icc
-</programlisting>
-
- <para>The default installation directory for icc is
- <filename>/opt/intel_cc_80</filename>, which
- is also the pkgsrc default. If you have installed it into a different
- directory, set <varname>ICCBASE</varname> in
- <filename>/etc/mk.conf</filename>:</para>
-
-<programlisting>
- ICCBASE= /opt/icc
-</programlisting>
-
- <para>pkgsrc uses the static linking method of the runtime libraries
- provided by icc, so binaries can be run on other systems which do not
- have the shared libraries installed.</para>
-
- <para>Libtool, however, extracts a list of libraries from the &man.ld.1;
- command run when linking a C++ shared library and records it, throwing
- away the -Bstatic and -Bdynamic options interspersed between the libraries.
- This means that libtool-linked C++ shared libraries will have a
- runtime dependency on the icc libraries until this is fixed in libtool.
- </para>
+ function, which icc does not support. #undef'ing __attribute__ has the
+ unfortunate side-effect of breaking many of the Linux header files, which
+ cannot be compiled properly without __attribute__. The test must be
+ overridden so that __attribute__ is assumed supported by the
+ compiler.</para>
+
+ <para>After bootstrapping, you should set <varname>PKGSRC_COMPILER</varname>
+ in <filename>/etc/mk.conf</filename>:</para>
+
+ <programlisting>
+ PKGSRC_COMPILER= icc
+ </programlisting>
+
+ <para>The default installation directory for icc is
+ <filename>/opt/intel_cc_80</filename>, which
+ is also the pkgsrc default. If you have installed it into a different
+ directory, set <varname>ICCBASE</varname> in
+ <filename>/etc/mk.conf</filename>:</para>
+
+ <programlisting>
+ ICCBASE= /opt/icc
+ </programlisting>
+
+ <para>pkgsrc uses the static linking method of the runtime libraries
+ provided by icc, so binaries can be run on other systems which do not
+ have the shared libraries installed.</para>
+
+ <para>Libtool, however, extracts a list of libraries from the
+ &man.ld.1; command run when linking a C++ shared library and
+ records it, throwing away the -Bstatic and -Bdynamic options
+ interspersed between the libraries. This means that
+ libtool-linked C++ shared libraries will have a runtime
+ dependency on the icc libraries until this is fixed in
+ libtool.</para>
</sect2>
@@ -680,43 +680,43 @@ file and inspect the contents before extracting it.
<para>OpenBSD 3.0 and 3.2 are tested and supported.</para>
<para>Care should be taken so that the tools that this kit installs do not conflict
- with the OpenBSD userland tools. There are several steps:</para>
+ with the OpenBSD userland tools. There are several steps:</para>
<orderedlist>
<listitem>
<para>OpenBSD stores its ports pkg database in
- <filename>/var/db/pkg</filename>. It is therefore
- recommended that you choose a different location (e.g.
- <filename>/usr/pkgdb</filename>) by
- using the --pkgdbdir option to the bootstrap script.</para>
+ <filename>/var/db/pkg</filename>. It is therefore
+ recommended that you choose a different location (e.g.
+ <filename>/usr/pkgdb</filename>) by
+ using the --pkgdbdir option to the bootstrap script.</para>
</listitem>
<listitem>
<para>If you do not intend to use the OpenBSD ports tools, it's probably a
- good idea to move them out of the way to avoid confusion, e.g.</para>
+ good idea to move them out of the way to avoid confusion, e.g.</para>
<screen>&rprompt; <userinput>cd /usr/sbin</userinput>
-&rprompt; <userinput>mv pkg_add pkg_add.orig</userinput>
-&rprompt; <userinput>mv pkg_create pkg_create.orig</userinput>
-&rprompt; <userinput>mv pkg_delete pkg_delete.orig</userinput>
-&rprompt; <userinput>mv pkg_info pkg_info.orig</userinput></screen>
+ &rprompt; <userinput>mv pkg_add pkg_add.orig</userinput>
+ &rprompt; <userinput>mv pkg_create pkg_create.orig</userinput>
+ &rprompt; <userinput>mv pkg_delete pkg_delete.orig</userinput>
+ &rprompt; <userinput>mv pkg_info pkg_info.orig</userinput></screen>
</listitem>
<listitem>
<para>An example <filename>/etc/mk.conf</filename> file will be placed in
- <filename>/etc/mk.conf.example</filename> file
- when you use the bootstrap script. OpenBSD's make program uses
- <filename>/etc/mk.conf</filename>
- as well. You can work around this by enclosing all the pkgsrc-specific parts
- of the file with:</para>
-
-<programlisting>
- .ifdef BSD_PKG_MK
- # pkgsrc stuff, e.g. insert defaults/mk.conf or similar here
- .else
- # OpenBSD stuff
- .endif
-</programlisting>
+ <filename>/etc/mk.conf.example</filename> file
+ when you use the bootstrap script. OpenBSD's make program uses
+ <filename>/etc/mk.conf</filename>
+ as well. You can work around this by enclosing all the pkgsrc-specific parts
+ of the file with:</para>
+
+ <programlisting>
+ .ifdef BSD_PKG_MK
+ # pkgsrc stuff, e.g. insert defaults/mk.conf or similar here
+ .else
+ # OpenBSD stuff
+ .endif
+ </programlisting>
</listitem>
</orderedlist>
</sect2>
@@ -725,11 +725,11 @@ file and inspect the contents before extracting it.
<title>Solaris</title>
<para>Solaris 2.6 through 9 are supported on both x86 and sparc.
- You will need a working C compiler. Both gcc 2.95.3 and
- Sun WorkShop 5 have been tested.</para>
+ You will need a working C compiler. Both gcc 2.95.3 and
+ Sun WorkShop 5 have been tested.</para>
<para>The following packages are required on Solaris 8 for the bootstrap
- process and to build packages.</para>
+ process and to build packages.</para>
<itemizedlist>
<listitem><para>SUNWsprot</para></listitem>
@@ -740,58 +740,58 @@ file and inspect the contents before extracting it.
</itemizedlist>
<para>Please note that the use of GNU binutils on Solaris is
- <emphasis>not</emphasis> supported, as of June 2006.</para>
+ <emphasis>not</emphasis> supported, as of June 2006.</para>
- <para>Whichever compiler you use, please ensure the compiler tools and
- your $prefix are in your <varname>PATH</varname>. This includes
- <filename>/usr/ccs/{bin,lib}</filename>
- and e.g. <filename>/usr/pkg/{bin,sbin}</filename>.</para>
+ <para>Whichever compiler you use, please ensure the compiler tools and
+ your $prefix are in your <varname>PATH</varname>. This includes
+ <filename>/usr/ccs/{bin,lib}</filename>
+ and e.g. <filename>/usr/pkg/{bin,sbin}</filename>.</para>
<sect3 id="solaris-gcc-note">
<title>If you are using gcc</title>
<para>It makes life much simpler if you only use the same gcc consistently
- for building all packages.</para>
+ for building all packages.</para>
<para>It is recommended that an external gcc be used only for bootstrapping,
- then either build gcc from
- <filename role="pkg">lang/gcc</filename> or install a binary gcc
- package, then remove gcc used during bootstrapping.</para>
+ then either build gcc from
+ <filename role="pkg">lang/gcc</filename> or install a binary gcc
+ package, then remove gcc used during bootstrapping.</para>
<para>Binary packages of gcc can be found through <ulink
- url="http://www.sun.com/bigadmin/common/freewareSearch.html">http://www.sun.com/bigadmin/common/freewareSearch.html</ulink>.</para>
+ url="http://www.sun.com/bigadmin/common/freewareSearch.html">http://www.sun.com/bigadmin/common/freewareSearch.html</ulink>.</para>
</sect3>
<sect3 id="solaris-sun-workshop-note">
<title>If you are using Sun WorkShop</title>
<para>You will need at least the following packages installed (from WorkShop
- 5.0)</para>
+ 5.0)</para>
<itemizedlist>
<listitem><para>SPROcc
- - Sun WorkShop Compiler C 5.0</para></listitem>
+ - Sun WorkShop Compiler C 5.0</para></listitem>
<listitem><para>SPROcpl
- - Sun WorkShop Compiler C++ 5.0</para></listitem>
+ - Sun WorkShop Compiler C++ 5.0</para></listitem>
<listitem><para>SPROild
- - Sun WorkShop Incremental Linker</para></listitem>
+ - Sun WorkShop Incremental Linker</para></listitem>
<listitem><para>SPROlang
- - Sun WorkShop Compilers common components</para></listitem>
+ - Sun WorkShop Compilers common components</para></listitem>
</itemizedlist>
<para>You should set <varname>CC</varname>, <varname>CXX</varname> and
- optionally, <varname>CPP</varname> in <filename>/etc/mk.conf</filename>,
- e.g.:</para>
+ optionally, <varname>CPP</varname> in <filename>/etc/mk.conf</filename>,
+ e.g.:</para>
-<programlisting>
- CC= cc
- CXX= CC
- CPP= /usr/ccs/lib/cpp
-</programlisting>
+ <programlisting>
+ CC= cc
+ CXX= CC
+ CPP= /usr/ccs/lib/cpp
+ </programlisting>
-</sect3>
-<sect3 id="solaris-sunpro-64">
-<title>Buildling 64-bit binaries with SunPro</title>
+ </sect3>
+ <sect3 id="solaris-sunpro-64">
+ <title>Buildling 64-bit binaries with SunPro</title>
<para>Building 64-bit binaries is a little trickier. First, you
need to bootstrap pkgsrc in 64-bit mode. One problem here is
@@ -802,18 +802,18 @@ file and inspect the contents before extracting it.
called <filename>cc64</filename> and put it somewhere in the
<varname>PATH</varname>:</para>
-<programlisting>
- #! /bin/sh
- exec /opt/SUNWspro/bin/cc -xtarget=ultra -xarch=v9 ${1+"$@"}
-</programlisting>
+ <programlisting>
+ #! /bin/sh
+ exec /opt/SUNWspro/bin/cc -xtarget=ultra -xarch=v9 ${1+"$@"}
+ </programlisting>
<para>Then, pass the definition for <varname>CC</varname> in the
environment of the <command>bootstrap</command> command:</para>
-<programlisting>
- &uprompt; <userinput>cd bootstrap</userinput>
- &uprompt; <userinput>CC=cc64 ./bootstrap</userinput>
-</programlisting>
+ <programlisting>
+ &uprompt; <userinput>cd bootstrap</userinput>
+ &uprompt; <userinput>CC=cc64 ./bootstrap</userinput>
+ </programlisting>
<para>After bootstrapping, there are two alternative ways,
depending on whether you want to find bugs in packages or get
@@ -821,11 +821,11 @@ file and inspect the contents before extracting it.
add the following lines to your <filename>mk.conf</filename>
file:</para>
-<programlisting>
- CC= cc64
- CXX= CC64
- PKGSRC_COMPILER= sunpro
-</programlisting>
+ <programlisting>
+ CC= cc64
+ CXX= CC64
+ PKGSRC_COMPILER= sunpro
+ </programlisting>
<para>This way, all calls to the compiler will be intercepted by
the above wrapper and therefore get the necessary ABI options
@@ -837,14 +837,14 @@ file and inspect the contents before extracting it.
the following lines to your <filename>mk.conf</filename>
file:</para>
-<programlisting>
- CC= cc
- CXX= CC
- PKGSRC_COMPILER= sunpro
- CFLAGS= -xtarget=ultra -xarch=v9
- CXXFLAGS= -xtarget=ultra -xarch=v9
- LDFLAGS= -xtarget=ultra -xarch=v9
-</programlisting>
+ <programlisting>
+ CC= cc
+ CXX= CC
+ PKGSRC_COMPILER= sunpro
+ CFLAGS= -xtarget=ultra -xarch=v9
+ CXXFLAGS= -xtarget=ultra -xarch=v9
+ LDFLAGS= -xtarget=ultra -xarch=v9
+ </programlisting>
<para>Packages that don't use the flags provided in the
configuration file will try to build 32-bit binaries and fail
@@ -856,20 +856,20 @@ file and inspect the contents before extracting it.
<sect3 id="plat.sunos.problems"><title>Common problems</title>
- <para>Sometimes, when using <command>libtool</command>,
- <filename>/bin/ksh</filename> crashes with a segmentation fault.
- The workaround is to use another shell for the configure
- scripts, for example by installing <filename
- role="pkg">shells/bash</filename> and adding the following lines
- to your <filename>mk.conf</filename>:</para>
+ <para>Sometimes, when using <command>libtool</command>,
+ <filename>/bin/ksh</filename> crashes with a segmentation fault.
+ The workaround is to use another shell for the configure
+ scripts, for example by installing <filename
+ role="pkg">shells/bash</filename> and adding the following lines
+ to your <filename>mk.conf</filename>:</para>
-<programlisting>
- CONFIG_SHELL= ${LOCALBASE}/bin/bash
- WRAPPER_SHELL= ${LOCALBASE}/bin/bash
-</programlisting>
+ <programlisting>
+ CONFIG_SHELL= ${LOCALBASE}/bin/bash
+ WRAPPER_SHELL= ${LOCALBASE}/bin/bash
+ </programlisting>
- <para>Then, rebuild the <filename
- role="pkg">devel/libtool-base</filename> package.</para>
+ <para>Then, rebuild the <filename
+ role="pkg">devel/libtool-base</filename> package.</para>
</sect3>
</sect2>