Commit b52f24c2 authored by Simon Marlow's avatar Simon Marlow

Remove the section on platform support, link to the wiki page

The section in the building guide was becoming out of date, a wiki
page is much more likely to be kept fresh.
parent 8bea0173
......@@ -96,11 +96,12 @@
</listitem>
<listitem>
<para>Use an appropriate machine / operating system. <xref
linkend="sec-port-info"/> lists the supported platforms; if
yours isn't amongst these then you can try porting GHC (see
<xref linkend="sec-porting-ghc"/>).</para>
</listitem>
<para>Use an appropriate machine / operating system. <ulink
url="http://hackage.haskell.org/trac/ghc/wiki/Platforms">GHC
Platform Support</ulink> lists the currently supported
platforms; if yours isn't amongst these then you can try
porting GHC (see <xref linkend="sec-porting-ghc"/>).</para>
</listitem>
<listitem>
<para>Be sure that the &ldquo;pre-supposed&rdquo; utilities are
......@@ -135,252 +136,6 @@
</orderedlist>
</sect1>
<sect1 id="sec-port-info">
<title>What machines GHC runs on</title>
<indexterm><primary>ports</primary><secondary>GHC</secondary></indexterm>
<indexterm><primary>GHC</primary><secondary>ports</secondary></indexterm>
<indexterm><primary>platforms</primary><secondary>supported</secondary></indexterm>
<para>A &ldquo;platform&rdquo; is a
architecture/manufacturer/operating-system combination, such as
<literal>sparc-sun-solaris2</literal>. Other common ones are
<literal>alpha-dec-osf2</literal>,
<literal>hppa1.1-hp-hpux9</literal>,
<literal>i386-unknown-linux</literal>,
<literal>i386-unknown-solaris2</literal>,
<literal>i386-unknown-freebsd</literal>,
<literal>i386-unknown-cygwin32</literal>,
<literal>m68k-sun-sunos4</literal>,
<literal>mips-sgi-irix5</literal>,
<literal>sparc-sun-sunos4</literal>,
<literal>sparc-sun-solaris2</literal>,
<literal>powerpc-ibm-aix</literal>.</para>
<para>Some libraries may only work on a limited number of
platforms; for example, a sockets library is of no use unless the
operating system supports the underlying BSDisms.</para>
<indexterm><primary>fully-supported platforms</primary></indexterm>
<indexterm><primary>native-code generator</primary></indexterm>
<indexterm><primary>registerised ports</primary></indexterm>
<indexterm><primary>unregisterised ports</primary></indexterm>
<para>The GHC hierarchy of Porting Goodness: (a)&nbsp;Best is a
native-code generator; (b)&nbsp;next best is a
&ldquo;registerised&rdquo; port; (c)&nbsp;the bare minimum is an
&ldquo;unregisterised&rdquo; port.
(&ldquo;Unregisterised&rdquo; is so terrible that we won't say
more about it).</para>
<para>Here's everything that's known about GHC ports. We
identify platforms by their &ldquo;canonical&rdquo;
CPU/Manufacturer/OS triple.</para>
<variablelist>
<varlistentry>
<term>alpha-dec-{osf,linux,freebsd,openbsd,netbsd}:
<indexterm><primary>alpha-dec-osf</primary></indexterm>
<indexterm><primary>alpha-dec-linux</primary></indexterm>
<indexterm><primary>alpha-dec-freebsd</primary></indexterm>
<indexterm><primary>alpha-dec-openbsd</primary></indexterm>
<indexterm><primary>alpha-dec-netbsd</primary></indexterm>
</term>
<listitem>
<para>The OSF port is currently working (as of GHC version
5.02.1) and well supported. The native code generator is
currently non-working. Other operating systems will
require some minor porting.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>sparc-sun-sunos4
<indexterm><primary>sparc-sun-sunos4</primary></indexterm>
</term>
<listitem>
<para>Probably works with minor tweaks, hasn't been tested
for a while.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>sparc-sun-solaris2
<indexterm><primary>sparc-sun-solaris2</primary></indexterm>
</term>
<listitem>
<para>Fully supported (at least for Solaris 2.7 and 2.6),
including native-code generator.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>sparc-unknown-openbsd
<indexterm><primary>sparc-unknown-openbsd</primary></indexterm>
</term>
<listitem>
<para>Supported, including native-code generator. The
same should also be true of NetBSD</para>
</listitem>
</varlistentry>
<varlistentry>
<term>hppa1.1-hp-hpux (HP-PA boxes running HPUX 9.x)
<indexterm><primary>hppa1.1-hp-hpux</primary></indexterm>
</term>
<listitem>
<para>A registerised port is available for version 4.08,
but GHC hasn't been built on that platform since (as far
as we know). No native-code generator.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>i386-unknown-linux (PCs running Linux, ELF binary format)
<indexterm><primary>i386-*-linux</primary></indexterm>
</term>
<listitem>
<para>GHC works registerised and has a native code
generator. You <emphasis>must</emphasis> have GCC 2.7.x
or later. NOTE about <literal>glibc</literal> versions:
GHC binaries built on a system running <literal>glibc
2.0</literal> won't work on a system running
<literal>glibc 2.1</literal>, and vice versa. In general,
don't expect compatibility between
<literal>glibc</literal> versions, even if the shared
library version hasn't changed.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>i386-unknown-freebsd (PCs running FreeBSD 2.2 or higher)
<indexterm><primary>i386-unknown-freebsd</primary></indexterm>
</term>
<listitem>
<para>GHC works registerised. Pre-built packages are
available in the native package format, so if you just
need binaries you're better off just installing the
package (it might even be on your installation
CD!).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>i386-unknown-openbsd (PCs running OpenBSD)
<indexterm><primary>i386-unknown-openbsd</primary></indexterm>
</term>
<listitem>
<para>Supported, with native code generator. Packages are
available through the ports system in the native package
format.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>i386-unknown-netbsd (PCs running NetBSD)
<indexterm><primary>i386-unknown-netbsd</primary></indexterm>
</term>
<listitem>
<para>Will require some minor porting effort, but should
work registerised.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>i386-unknown-mingw32 (PCs running Windows)
<indexterm><primary>i386-unknown-mingw32</primary></indexterm>
</term>
<listitem>
<para>Fully supported under Win9x, WinNT, Win2k, and
WinXP. Includes a native code generator. Building from
source requires a recent <ulink
url="http://www.cygwin.com/">Cygwin</ulink> distribution
to be installed.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>ia64-unknown-linux
<indexterm><primary>ia64-unknown-linux</primary></indexterm>
</term>
<listitem>
<para>Supported, except there is no native code
generator.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>x86_64-unknown-linux
<indexterm><primary>x86_64-unknown-linux</primary></indexterm>
</term>
<term>amd64-unknown-openbsd
<indexterm><primary>amd64-unknown-linux</primary></indexterm>
</term>
<listitem>
<para>Fully supported, with a native code generator and GHCi.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>mips-sgi-irix5
<indexterm><primary>mips-sgi-irix[5-6]</primary></indexterm>
</term>
<listitem>
<para>Port has worked in the past, but hasn't been tested
for some time (and will certainly have rotted in various
ways). As usual, we don't have access to machines and
there hasn't been an overwhelming demand for this port,
but feel free to get in touch.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>mips64-sgi-irix6
<indexterm><primary>mips-sgi-irix6</primary></indexterm>
</term>
<listitem>
<para>GHC currently works unregisterised.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>powerpc-ibm-aix
<indexterm><primary>powerpc-ibm-aix</primary></indexterm>
</term>
<listitem>
<para>Port currently doesn't work, needs some minimal
porting effort. As usual, we don't have access to
machines and there hasn't been an overwhelming demand for
this port, but feel free to get in touch.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>powerpc-apple-darwin
<indexterm><primary>powerpc-apple-darwin</primary></indexterm>
</term>
<listitem>
<para>Supported registerised. Native code generator is
almost working.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>powerpc-apple-linux
<indexterm><primary>powerpc-apple-linux</primary></indexterm>
</term>
<listitem>
<para>Not supported (yet).</para>
</listitem>
</varlistentry>
</variablelist>
<para>Various other systems have had GHC ported to them in the
distant past, including various Motorola 68k boxes. The 68k
support still remains, but porting to one of these systems will
certainly be a non-trivial task.</para>
</sect1>
<sect1 id="sec-pre-supposed">
<title>Installing pre-supposed utilities</title>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment