Files
mercury/.INSTALL.in
Zoltan Somogyi 87ca5baec4 Document the new configure option.
Estimated hours taken: 0.1
Branches: main

.INSTALL.in:
	Document the new configure option.
2010-12-07 05:35:14 +00:00

202 lines
9.3 KiB
Bash
Executable File

#!/bin/sh
#
# INSTALL - installation instructions and installation script.
#
# You need GNU C (version 3.4.x or later -- note however that version 4.0 will
# not work) and GNU Make (3.69 or later).
# Make sure that they are somewhere in your PATH. It's also helpful if you
# have GNU Readline installed in one of the standard locations (normally
# /usr/local or /usr), but this is not essential.
#
# The source distributions for GNU C, GNU Make, and GNU Readline are
# available from <ftp://ftp.gnu.org/gnu/>. Binaries for these are
# included in almost all Linux distributions, Mac OS X and also in the Cygwin
# distribution for Windows (see README.MS-Windows).
#
# Step 0. Extract the files from the gzipped tar archive.
#
# Step 1. Run `configure'. (Just type `sh configure'.)
#
# By default, the files will be installed in the directory
# /usr/local/mercury-@VERSION@.
# If you want the files to be installed someplace else,
# use the `--prefix <directory>' option to `configure'.
# The directory name specified with the `--prefix' option
# must not contain spaces.
#
# NOTE: If you use the `--prefix' option to configure,
# be aware that `mercury' is not automatically
# appended. That is, `--prefix=/usr/local' will put
# files in /usr/local/bin, /usr/local/lib et cetera,
# *not* /usr/local/mercury/bin, /usr/local/mercury/lib.
#
# By default, the installation process will install the Mercury
# standard library in a comprehensive set of grades, with each grade
# supporting a given set of capabilities (debugging, profiling etc).
# If you want to install a different set of grades, read the
# "Finetuning" section below.
#
# Some debugging output from running configure is automatically
# save to the file `config.log'.
#
# Step 2. Run `make'.
# This step will take a long time.
#
# NOTE: If you have problems installing a new version
# of the compiler, you may find it helpful to either
# completely remove any existing versions of the
# compiler reachable on your PATH or, less drastically,
# alter your PATH variable so that any existing version
# of the mercury compiler is not accessible for the
# purposes of installing the new version.
#
# Step 3. Run `make install'.
# This step will also take a long time.
#
# BEWARE: if something goes wrong in this step, e.g. running
# out of disk space, and the installation has already gotten
# past installing the documentation, and started installing
# the different grades of the libraries then in general it is
# NOT sufficient to simply rerun `make install'. Instead you
# may need to start from scratch again.
#
# Step 4. Check the permissions on the installed files.
# Add /usr/local/mercury-@VERSION@/bin to your PATH, and
# add /usr/local/mercury-@VERSION@/man to your MANPATH.
# add /usr/local/mercury-@VERSION@/info to your INFOPATH.
# You can also add a WWW link to the Mercury documentation in
# /usr/local/mercury-@VERSION@/lib/mercury/html to your WWW home page,
# and you may want to print out a hard-copy of the documentation
# from the DVI files in /usr/local/mercury-@VERSION@/lib/mercury/doc.
#
# If step #1 enabled deep profiling, then check whether "make install"
# was able to copy scripts/mdprof to your web server's CGI directory.
# This directory is often writeable only by root or by the web server
# administrator, so you may need more than your usual set of
# privileges to do the copy (i.e. you may need to "su" to the
# appropriate user). mdprof is also installed into the same directory
# as other Mercury executables.
#
# To use the emacs debugger interface ("M-x mdb"), you also need to
# add the following lines to the `.emacs' file in your home directory:
#
# (add-to-list 'load-path
# "/usr/local/mercury-@VERSION@/lib/mercury/elisp")
# (autoload 'mdb "gud" "Invoke the Mercury debugger" t)
#
# Step 5. Run `make clean'.
#
# As a short-cut, steps 1-3 are listed below, so they can be replaced
# by just executing this file. I suggest you run it in the background,
# and read the Mercury documentation in the `doc' directory while you are
# waiting.
sh configure &&
make &&
make install
# Fine-tuning:
# ------------
#
# If your system has multiple CPUs and lots of RAM,
# you can uncomment the definition of PARALLEL in the Makefile
# to perform a parallel make.
#
# By default the `make install' step will install a reasonable
# set of library grades which should be appropriate for most uses.
#
# The option --enable-libgrades=<gradelist> allows you to specify
# precisely the list of library grades to be installed. The argument
# of this option should be a comma-separated list of grades.
# An empty list of grades will cause the library to be installed
# only in the default grade.
#
# The option --disable-most-grades reduces the set of installed grades
# to a "minimum" level for developers (just the default grade and the
# grades corresponding to the `--debug' and `--high-level-code'
# options).
#
# The option --disable-nogc-grades prevents the installation
# of grades without garbage collection.
#
# The option --enable-agc-grades causes the installation
# of grades that support type-accurate garbage collection.
#
# The option --disable-prof-grades prevents the installation
# of grades that support profiling.
#
# The option --disable-old-prof-grades prevents the installation
# of the old style profiling grades, i.e. all profiling grades
# except the ones that do deep profiling.
#
# The option --disable-trail-grades prevents the installation
# of grades that support trailing.
#
# The option --disable-par-grades prevents the installation
# of thread-safe grades.
#
# The option --enable-inefficient-grades causes the installation
# of grades that do not exploit gcc extensions even when they are
# available.
#
# The option --enable-hlc-prof-grades causes the installation
# of profiling versions of the high level code grades.
#
# The option --enable-hlc-low-level-debug-grades causes the installation
# of high-level code grades with C level debugging enabled.
#
# The option --enable-stseg-grades causes the installation of grades
# that use stack segments.
#
# The option --enable-dotnet-grades causes the installation
# of the .NET grades (see README.DotNet). This grades are only
# installed if the .NET SDK is found.
#
# The option --enable-java-grade causes the installation of the Java
# grade. This grade is only installed if the Java SDK is found.
#
# The option --enable-erlang-grade causes the installation of the
# Erlang grade. This grade is only installed if the Erlang/OTP
# distribution is found.
#
# The option --enable-ssdebug-grades adds source-to-source debugging
# grades hlc.gc.ssdebug and java.ssdebug, if hlc.gc or java grades
# are also present.
#
# The option --disable-dynamic-link prevents the installation of shared
# libraries, even if they are supported on this system.
#
# The option --enable-deep-profiler=/some/dir/name enables the deep
# profiler, and specifies the directory in which to install the
# deep profiler's CGI script. The option --disable-deep-profiler
# causes the deep profiler not to be installed, even if the underlying
# system would be able to support it. The default is to enable the
# deep profiler if the system has the required features.
#
# If you are short on RAM, you can add -DSMALL_CONFIG to the CFLAGS
# line in the file boehm_gc/Makefile. (This tells the garbage
# collector to tune itself for small physical memory.)
#
# If your system supports shared libraries, but `configure' says
# Mercury does not support shared libraries on this system,
# contact us and we'll see if we can add support for shared libraries
# on that system.
#
# Efficiency will be much improved if Mercury can use gcc global
# register variables. Currently these are supported for
# mips, hppa, sparc, alpha, rs6000, i386 and x86_64 architectures
# (see runtime/regs.h and runtime/machdeps/*).
# If you want to use Mercury on some other CPU, contact us and
# we'll add support for gcc global registers for that CPU.
#
# De-installation:
# ----------------
#
# You may eventually want to uninstall this version of Mercury
# (to free up disk space so you can install the next version ;-).
# If you installed in the default location, you can simply
# use `rm -rf /usr/local/mercury-@VERSION@' to uninstall.
# If you installed in a location such as `/usr/local' that also
# contains other files which you do not want removed, then
# run the command `make uninstall' in this directory.