Commit bfd79605 authored by Ian Lynagh's avatar Ian Lynagh

Fix the links to the base docs from the user guide

parent f45b6f5e
...@@ -1327,4 +1327,12 @@ case "$1" in ...@@ -1327,4 +1327,12 @@ case "$1" in
esac esac
]) ])
# LIBRARY_VERSION(lib)
# --------------------------------
# Gets the version number of a library
AC_DEFUN([LIBRARY_VERSION],[
LIBRARY_$1_VERSION=`grep -i "^version:" libraries/$1/$1.cabal | sed "s/.* //"`
AC_SUBST(LIBRARY_$1_VERSION)
])
# LocalWords: fi # LocalWords: fi
...@@ -902,11 +902,13 @@ fi ...@@ -902,11 +902,13 @@ fi
AC_SUBST(BUILD_DOCBOOK_PS) AC_SUBST(BUILD_DOCBOOK_PS)
AC_SUBST(BUILD_DOCBOOK_PDF) AC_SUBST(BUILD_DOCBOOK_PDF)
LIBRARY_VERSION(base)
if grep ' ' compiler/ghc.cabal.in 2>&1 >/dev/null; then if grep ' ' compiler/ghc.cabal.in 2>&1 >/dev/null; then
AC_MSG_ERROR([compiler/ghc.cabal.in contains tab characters; please remove them]) AC_MSG_ERROR([compiler/ghc.cabal.in contains tab characters; please remove them])
fi fi
AC_CONFIG_FILES([mk/config.mk mk/install.mk mk/project.mk compiler/ghc.cabal ghc/ghc-bin.cabal ghc.spec extra-gcc-opts docs/users_guide/ug-book.xml distrib/ghc.iss distrib/configure.ac]) AC_CONFIG_FILES([mk/config.mk mk/install.mk mk/project.mk compiler/ghc.cabal ghc/ghc-bin.cabal ghc.spec extra-gcc-opts docs/users_guide/ug-book.xml docs/users_guide/ug-ent.xml distrib/ghc.iss distrib/configure.ac])
AC_CONFIG_COMMANDS([mk/stamp-h],[echo timestamp > mk/stamp-h]) AC_CONFIG_COMMANDS([mk/stamp-h],[echo timestamp > mk/stamp-h])
AC_OUTPUT AC_OUTPUT
......
...@@ -19,7 +19,7 @@ Foreign function interface (FFI) ...@@ -19,7 +19,7 @@ Foreign function interface (FFI)
<para>The FFI libraries are documented in the accompanying library <para>The FFI libraries are documented in the accompanying library
documentation; see for example the documentation; see for example the
<ulink url="../libraries/base/Control-Concurrent.html"><literal>Foreign</literal></ulink> module.</para> <ulink url="&libraryBaseLocation;/Control-Concurrent.html"><literal>Foreign</literal></ulink> module.</para>
<sect1 id="ffi-ghcexts"> <sect1 id="ffi-ghcexts">
<title>GHC extensions to the FFI Addendum</title> <title>GHC extensions to the FFI Addendum</title>
...@@ -498,7 +498,7 @@ int main(int argc, char *argv[]) ...@@ -498,7 +498,7 @@ int main(int argc, char *argv[])
threads</emphasis>, which are Haskell threads tied to a threads</emphasis>, which are Haskell threads tied to a
particular OS thread. For information on bound threads, see particular OS thread. For information on bound threads, see
the documentation the documentation
for the <ulink url="../libraries/base/Control-Concurrent.html"><literal>Control.Concurrent</literal></ulink> for the <ulink url="&libraryBaseLocation;/Control-Concurrent.html"><literal>Control.Concurrent</literal></ulink>
module.</para> module.</para>
</sect3> </sect3>
......
...@@ -1245,7 +1245,7 @@ then group by e ...@@ -1245,7 +1245,7 @@ then group by e
<para>This form of grouping is essentially the same as the one described above. However, <para>This form of grouping is essentially the same as the one described above. However,
since no function to use for the grouping has been supplied it will fall back on the since no function to use for the grouping has been supplied it will fall back on the
<literal>groupWith</literal> function defined in <literal>groupWith</literal> function defined in
<ulink url="../libraries/base/GHC-Exts.html"><literal>GHC.Exts</literal></ulink>. This <ulink url="&libraryBaseLocation;/GHC-Exts.html"><literal>GHC.Exts</literal></ulink>. This
is the form of the group statement that we made use of in the opening example.</para> is the form of the group statement that we made use of in the opening example.</para>
</listitem> </listitem>
...@@ -6697,7 +6697,7 @@ The arrows web page at ...@@ -6697,7 +6697,7 @@ The arrows web page at
With the <option>-XArrows</option> flag, GHC supports the arrow With the <option>-XArrows</option> flag, GHC supports the arrow
notation described in the second of these papers, notation described in the second of these papers,
translating it using combinators from the translating it using combinators from the
<ulink url="../libraries/base/Control-Arrow.html"><literal>Control.Arrow</literal></ulink> <ulink url="&libraryBaseLocation;/Control-Arrow.html"><literal>Control.Arrow</literal></ulink>
module. module.
What follows is a brief introduction to the notation; What follows is a brief introduction to the notation;
it won't make much sense unless you've read Hughes's paper. it won't make much sense unless you've read Hughes's paper.
...@@ -6812,7 +6812,7 @@ the arrow <literal>f</literal>, and matches its output against ...@@ -6812,7 +6812,7 @@ the arrow <literal>f</literal>, and matches its output against
<literal>y</literal>. <literal>y</literal>.
In the next line, the output is discarded. In the next line, the output is discarded.
The arrow <function>returnA</function> is defined in the The arrow <function>returnA</function> is defined in the
<ulink url="../libraries/base/Control-Arrow.html"><literal>Control.Arrow</literal></ulink> <ulink url="&libraryBaseLocation;/Control-Arrow.html"><literal>Control.Arrow</literal></ulink>
module as <literal>arr id</literal>. module as <literal>arr id</literal>.
The above example is treated as an abbreviation for The above example is treated as an abbreviation for
<screen> <screen>
...@@ -6829,7 +6829,7 @@ arr (\ x -> (x, x)) >>> ...@@ -6829,7 +6829,7 @@ arr (\ x -> (x, x)) >>>
Note that variables not used later in the composition are projected out. Note that variables not used later in the composition are projected out.
After simplification using rewrite rules (see <xref linkend="rewrite-rules"/>) After simplification using rewrite rules (see <xref linkend="rewrite-rules"/>)
defined in the defined in the
<ulink url="../libraries/base/Control-Arrow.html"><literal>Control.Arrow</literal></ulink> <ulink url="&libraryBaseLocation;/Control-Arrow.html"><literal>Control.Arrow</literal></ulink>
module, this reduces to module, this reduces to
<screen> <screen>
arr (\ x -> (x+1, x)) >>> arr (\ x -> (x+1, x)) >>>
...@@ -7125,7 +7125,7 @@ additional restrictions: ...@@ -7125,7 +7125,7 @@ additional restrictions:
<listitem> <listitem>
<para> <para>
The module must import The module must import
<ulink url="../libraries/base/Control-Arrow.html"><literal>Control.Arrow</literal></ulink>. <ulink url="&libraryBaseLocation;/Control-Arrow.html"><literal>Control.Arrow</literal></ulink>.
</para> </para>
</listitem> </listitem>
......
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
</para><para> </para><para>
To the programmer, Concurrent Haskell introduces no new language constructs; To the programmer, Concurrent Haskell introduces no new language constructs;
rather, it appears simply as a library, <ulink rather, it appears simply as a library, <ulink
url="../libraries/base/Control-Concurrent.html"> url="&libraryBaseLocation;/Control-Concurrent.html">
Control.Concurrent</ulink>. The functions exported by this Control.Concurrent</ulink>. The functions exported by this
library include: library include:
<itemizedlist> <itemizedlist>
......
...@@ -21,3 +21,4 @@ ...@@ -21,3 +21,4 @@
<!ENTITY win32-dll SYSTEM "win32-dlls.xml"> <!ENTITY win32-dll SYSTEM "win32-dlls.xml">
<!ENTITY ffi-chap SYSTEM "ffi-chap.xml"> <!ENTITY ffi-chap SYSTEM "ffi-chap.xml">
<!ENTITY shared_libs SYSTEM "shared_libs.xml"> <!ENTITY shared_libs SYSTEM "shared_libs.xml">
<!ENTITY libraryBaseLocation "../libraries/base-@LIBRARY_base_VERSION@">
...@@ -1841,7 +1841,7 @@ f "2" = 2 ...@@ -1841,7 +1841,7 @@ f "2" = 2
special option or libraries compiled in a certain way. To get access to special option or libraries compiled in a certain way. To get access to
the support libraries for Concurrent Haskell, just import the support libraries for Concurrent Haskell, just import
<ulink <ulink
url="../libraries/base/Control-Concurrent.html"><literal>Control.Concurrent</literal></ulink>. More information on Concurrent Haskell is provided in the documentation for that module.</para> url="&libraryBaseLocation;/Control-Concurrent.html"><literal>Control.Concurrent</literal></ulink>. More information on Concurrent Haskell is provided in the documentation for that module.</para>
<para>The following RTS option(s) affect the behaviour of Concurrent <para>The following RTS option(s) affect the behaviour of Concurrent
Haskell programs:<indexterm><primary>RTS options, concurrent</primary></indexterm></para> Haskell programs:<indexterm><primary>RTS options, concurrent</primary></indexterm></para>
......
...@@ -71,7 +71,7 @@ Notice how the "%1" argument is quoted (or not). ...@@ -71,7 +71,7 @@ Notice how the "%1" argument is quoted (or not).
<para>This problem doesn't just affect GHCi, it affects any <para>This problem doesn't just affect GHCi, it affects any
GHC-compiled program that wants to catch console events. See the GHC-compiled program that wants to catch console events. See the
<ulink <ulink
url="../libraries/base/GHC-ConsoleHandler.html">GHC.ConsoleHandler</ulink> url="&libraryBaseLocation;/GHC-ConsoleHandler.html">GHC.ConsoleHandler</ulink>
module.</para> module.</para>
</sect1> </sect1>
......
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