summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog10
-rw-r--r--INSTALL117
-rw-r--r--INSTALL.gen152
3 files changed, 157 insertions, 122 deletions
diff --git a/ChangeLog b/ChangeLog
index d12d17fd..6e30589c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,10 +1,18 @@
+2006-11-09 Werner LEMBERG <wl@gnu.org>
+
+ * INSTALL: Move information about external installation from
+ INSTALL.gen into this file.
+ Updated.
+
+ * INSTALL.gen: Update to new version (from texinfo CVS).
+
2006-11-09 Bernd Warken
* INSTALL.gen: Extent the file by information on `external
installation'. Reorder the installation instruction as `normal
installation'.
-2006-11-08 Werner Lemberg <wl@gnu.org>
+2006-11-08 Werner LEMBERG <wl@gnu.org>
* doc/Makefile.sub (install_data): Take care of proper paths while
installing info files. Bug reported by Bernd Warken.
diff --git a/INSTALL b/INSTALL
index 666676e1..98683f60 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,21 +1,86 @@
-To install groff, follow the instructions in the file INSTALL.gen.
+This file contains information that supplements the generic
+installation instructions in file `INSTALL.gen'.
-This file contains information that supplements those instructions.
-(For instructions how to build groff with DJGPP tools for MS-DOS and
-MS-Windows, see the file arch/djgpp/README.)
+Normal Installation
+===================
-(For instructions how to build groff with the MinGW tools for
-MS-Windows, see the file README.MinGW.)
+The simplest way to compile groff is:
-groff is written in C++, so you need a C++ compiler. The C++
-source files use a suffix of `.cpp', so your C++ compiler must be able
-to handle this. If you don't already have a C++ compiler, I suggest
-gcc 2.7.1 or later (gcc version 2 includes GNU C++ as well as GNU C).
-From gcc 2.5, it is no longer necessary to install libg++: the C++
-header files needed by groff are created by the gcc installation
-process. To override configure's choice of C++ compiler, you can set
-the CXX environment variable.
+ 1. `cd' to the directory containing groff's source code and type
+ `./configure' to configure groff for your system. If you are
+ using `csh' on an old version of System V, you might need to type
+ `sh ./configure' instead to prevent `csh' from trying to execute
+ `configure' itself.
+
+ Running `configure' takes awhile. While running, it prints some
+ messages telling which features it is checking for.
+
+ 2. Type `make' to compile groff.
+
+ 3. Type `sudo make install' to install the groff programs and any
+ data files and documentation. `make install' is the only step for
+ which you need `root' access; this is done by `sudo'.
+
+ 4. You can remove the groff binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile groff for
+ a different kind of computer), type `make distclean'.
+
+
+External Installation
+=====================
+
+It is also possible to perform the whole installation process outside
+of the source code directory. In this case a whole external build
+directory structure is created without changing any parts of the source
+code tree. This is useful if the source code is read-only or if
+several different installations, such as for multiple architectures,
+should be constructed.
+
+As an example we assume that the source code of the `groff' code is in
+`/usr/local/src/groff', and that the build process should be done
+within the directory `/home/my/groff.compile'.
+
+ 0. Create `/home/my/groff.compile' and change to that directory.
+
+ 1. Call `/usr/local/src/groff/configure' in that directory to
+ configure groff for your system. If you are using `csh' on an old
+ version of System V, you might need to type `sh
+ /usr/local/src/groff/configure' instead.
+
+ 2. Type `make' to compile groff in that directory.
+
+ 3. Type `sudo make install' to install the groff programs and any
+ data files and documentation.
+
+ 4. You can remove the groff binaries and object files from the
+ build directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'.
+
+
+Special Platforms
+=================
+
+For instructions how to build groff with DJGPP tools for MS-DOS and
+MS-Windows, see the file arch/djgpp/README.
+
+For instructions how to build groff with the MinGW tools for
+MS-Windows, see the file README.MinGW.
+
+
+Miscellaneous
+=============
+
+groff is written in C++, so you need a C++ compiler. The C++ source
+files use a suffix of `.cpp', so your C++ compiler must be able to
+handle this. If you don't already have a C++ compiler, we suggest gcc
+2.7.1 or later (gcc version 2 includes GNU C++ as well as GNU C). From
+gcc 2.5, it is no longer necessary to install libg++: the C++ header
+files needed by groff are created by the gcc installation process. To
+override configure's choice of C++ compiler, you can set the CXX
+environment variable.
If you have a library that provides a faster malloc than your system's
usual malloc, it is good idea to include it in LIBS. For example,
@@ -28,23 +93,25 @@ an incorrect guess, say
PAGE=xxx ./configure
where `xxx' should be either `A4' or `letter'. Note that this only
-affects the paper selection of some device drivers like grops (which can
-be still overridden on the command line). For compatibility with
+affects the paper selection of some device drivers like grops (which
+can be still overridden on the command line). For compatibility with
ditroff, the default page length in gtroff is always 11 inches. The
page length can be changed with the `pl' request.
-When you have built groff, you can use the test-groff script to try
-groff out on one of the man pages. (Use the .n files not the .man
-files.) The test-groff script sets up environment variables to allow
-groff to run without being installed. For example, you could do
+When you have built groff but not installed yet, you can use the
+test-groff script to try groff out on one of the man pages. (Use the
+.n files not the .man files.) The test-groff script sets up environment
+variables to allow groff to run without being installed. For example,
+you could do
./test-groff -man -Tascii src/roff/groff/groff.n | less
-To get a DVI, PDF, or HTML version of the groff texinfo manual, say `make
-groff.dvi', `make groff.pdf', or `make groff.html', respectively, in the
-`doc' subdirectory (after configuring the groff package). Note that you
-need texinfo version 4.6 as a prerequisite. Neither older versions nor
-texinfo 4.7 (due to a bug) work.
+to display the groff(1) man page with the `less' pager.
+
+To get a DVI, PDF, or HTML version of the groff texinfo manual, say
+`make groff.dvi', `make groff.pdf', or `make groff.html', respectively,
+in the `doc' subdirectory (after configuring the groff package). Note
+that you need texinfo version 4.8 as a prerequisite.
If you have problems, read the PROBLEMS file. If this doesn't help
send a bug report using the form in the file BUG-REPORT.
diff --git a/INSTALL.gen b/INSTALL.gen
index 8acefaab..5458714e 100644
--- a/INSTALL.gen
+++ b/INSTALL.gen
@@ -1,82 +1,19 @@
Installation Instructions
*************************
-Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2006
-Free Software Foundation, Inc.
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
+2006 Free Software Foundation, Inc.
This file is free documentation; the Free Software Foundation gives
unlimited permission to copy, distribute and modify it.
-Normal Installation
-===================
-
-The simplest way to compile this package is:
-
- 1. `cd' to the directory containing the package's source code and type
- `./configure' to configure the package for your system. If you're
- using `csh' on an old version of System V, you might need to type
- `sh ./configure' instead to prevent `csh' from trying to execute
- `configure' itself.
-
- Running `configure' takes awhile. While running, it prints some
- messages telling which features it is checking for.
-
- 2. Type `make' to compile the package.
-
- 3. Optionally, type `make check' to run any self-tests that come with
- the package.
-
- 4. Type `sudo make install' to install the programs and any data
- files and documentation. `make install' is the only step for
- which you need `root' access; this is done by `sudo'.
-
- 5. You can remove the program binaries and object files from the
- source code directory by typing `make clean'. To also remove the
- files that `configure' created (so you can compile the package for
- a different kind of computer), type `make distclean'. There is
- also a `make maintainer-clean' target, but that is intended mainly
- for the package's developers. If you use it, you may have to get
- all sorts of other programs in order to regenerate files that came
- with the distribution.
-
-External Installation
-=====================
-
-It is also possible to perform the whole installation process outside
-of the source code. In this case a whole external build directory
-structure is created without changing any parts of the source code.
-This is usefule when the source code is read-only or when several
-different installations, such as for multiple architectures should be
-constructed.
-
-As an example, let's assume that the source code of the `groff' code
-is in `/usr/local/src/groff' and that the installation should be done
-with the directory `/home/my/groff.compile'.
-
- 0. Run `cd /home/my/groff.compile'.
-
- 1. Call `/usr/local/src/groff/configure' in that directory to
- configure the package for your system. If you're using `csh' on an
- old version of System V, you might need to type
- `sh /usr/local/src/groff/configure' instead.
-
- 2. Type `make' to compile the package in that directory.
-
- 3. Optionally, type `make check' to run any self-tests that come with
- the package.
-
- 4. Type `sudo make install' to install the programs and any data
- files and documentation.
-
- 5. You can remove the program binaries and object files from the
- source code directory by typing `make clean'. To also remove the
- files that `configure' created (so you can compile the package for
- a different kind of computer), type `make distclean'.
-
Basic Installation
==================
-These are generic installation instructions.
+Briefly, the shell commands `./configure; make; make install' should
+configure, build, and install this package. The following
+more-detailed instructions are generic; see the `README' file for
+instructions specific to this package.
The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
@@ -89,9 +26,9 @@ debugging `configure').
It can also use an optional file (typically called `config.cache'
and enabled with `--cache-file=config.cache' or simply `-C') that saves
-the results of its tests to speed up reconfiguring. (Caching is
+the results of its tests to speed up reconfiguring. Caching is
disabled by default to prevent problems with accidental use of stale
-cache files.)
+cache files.
If you need to do unusual things to compile the package, please try
to figure out how `configure' could check whether to do them, and mail
@@ -101,9 +38,34 @@ some point `config.cache' contains results you don't want to keep, you
may remove or edit it.
The file `configure.ac' (or `configure.in') is used to create
-`configure' by a program called `autoconf'. You only need
-`configure.ac' if you want to change it or regenerate `configure' using
-a newer version of `autoconf'.
+`configure' by a program called `autoconf'. You need `configure.ac' if
+you want to change it or regenerate `configure' using a newer version
+of `autoconf'.
+
+The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system.
+
+ Running `configure' might take a while. While running, it prints
+ some messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Optionally, type `make check' to run any self-tests that come with
+ the package.
+
+ 4. Type `make install' to install the programs and any data files and
+ documentation.
+
+ 5. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'. There is
+ also a `make maintainer-clean' target, but that is intended mainly
+ for the package's developers. If you use it, you may have to get
+ all sorts of other programs in order to regenerate files that came
+ with the distribution.
Compilers and Options
=====================
@@ -116,7 +78,7 @@ details on some of the pertinent environment variables.
by setting variables in the command line or in the environment. Here
is an example:
- ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+ ./configure CC=c99 CFLAGS=-g LIBS=-lposix
*Note Defining Variables::, for more details.
@@ -125,31 +87,29 @@ Compiling For Multiple Architectures
You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
-own directory. To do this, you must use a version of `make' that
-supports the `VPATH' variable, such as GNU `make'. `cd' to the
+own directory. To do this, you can use GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'.
- If you have to use a `make' that does not support the `VPATH'
-variable, you have to compile the package for one architecture at a
-time in the source code directory. After you have installed the
-package for one architecture, use `make distclean' before reconfiguring
-for another architecture.
+ With a non-GNU `make', it is safer to compile the package for one
+architecture at a time in the source code directory. After you have
+installed the package for one architecture, use `make distclean' before
+reconfiguring for another architecture.
Installation Names
==================
-By default, `make install' will install the package's files in
-`/usr/local/bin', `/usr/local/man', etc. You can specify an
-installation prefix other than `/usr/local' by giving `configure' the
-option `--prefix=PREFIX'.
+By default, `make install' installs the package's commands under
+`/usr/local/bin', include files under `/usr/local/include', etc. You
+can specify an installation prefix other than `/usr/local' by giving
+`configure' the option `--prefix=PREFIX'.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
-give `configure' the option `--exec-prefix=PREFIX', the package will
-use PREFIX as the prefix for installing programs and libraries.
-Documentation and other data files will still use the regular prefix.
+pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular
@@ -197,7 +157,7 @@ where SYSTEM can have one of these forms:
need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should
-use the `--target=TYPE' option to select the type of system they will
+use the option `--target=TYPE' to select the type of system they will
produce code for.
If you want to _use_ a cross compiler, that generates code for a
@@ -227,9 +187,14 @@ them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc
-will cause the specified gcc to be used as the C compiler (unless it is
+causes the specified `gcc' to be used as the C compiler (unless it is
overridden in the site shell script).
+Unfortunately, this technique does not work for `CONFIG_SHELL' due to
+an Autoconf bug. Until the bug is fixed you can use this workaround:
+
+ CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
+
`configure' Invocation
======================
@@ -267,8 +232,3 @@ overridden in the site shell script).
`configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details.
-Emacs settings
-==============
-Local Variables:
-mode: text
-End: