blob: e6ea14108f84bdc0b402f893e87894cc26eaac08 [file] [log] [blame]
Before you start here, read `INSTALL.Unix` (or `INSTALL.Windows`) and
follow the setup instructions including the installation of all the
listed dependencies for your system.
Only follow these instructions if you are building from a source checkout.
If you're unsure what this means, ignore this document.
You will need the following installed:
* GNU Libtool (
* GNU Automake (>=1.6.3) (
* GNU Autoconf (>=2.63) (
* GNU Autoconf Archive (
* pkg-config (
You may also need:
* Sphinx (
* LaTex (
* GNU Texinfo (
* GNU help2man (
* GnuPG (
* md5sum (
* sha1sum (
The first of these optional dependencies are required for building the
documentation. The last three are needed to build releases.
You will need these optional dependencies installed if:
* You are working on the documentation, or
* You are preparing a distribution archive
However, you do not need them if:
* You are building from a distribution archive, or
* You don't care about building the documentation
Here is a list of *optional* dependencies for various operating systems.
Installation will be easiest, when you install them all.
Debian-based (inc. Ubuntu) Systems
sudo apt-get install help2man
sudo apt-get install python-sphinx
sudo apt-get install texlive-latex-base
sudo apt-get install texlive-latex-recommended
sudo apt-get install texlive-latex-extra
sudo apt-get install texlive-fonts-recommended
sudo apt-get install texinfo
sudo apt-get install gnupg
Gentoo-based Systems
sudo emerge texinfo
sudo emerge gnupg
sudo emerge coreutils
sudo emerge pkgconfig
sudo emerge help2man
sudo USE=latex emerge sphinx
RedHat-based (Fedora, Centos, RHEL) Systems
sudo yum install help2man
sudo yum install python-sphinx
sudo yum install python-docutils
sudo yum install python-pygments
sudo yum install texlive-latex
sudo yum install texlive-latex-fonts
sudo yum install texinfo
sudo yum install gnupg
Mac OS X
Install Homebrew, if you do not have it already:
Unless you want to install the optional dependencies, skip to the next section.
Install what else we can with Homebrew:
brew install help2man
brew install gnupg
brew install md5sha1sum
If you don't already have pip installed, install it:
sudo easy_install pip
Now, install the required Python packages:
sudo pip install sphinx
sudo pip install docutils
sudo pip install pygments
Download MaxTeX from here:
Follow the instructions to get a working LaTeX install on your system.
Follow the instructions in INSTALL.Windows and build all components from
source, using the same Visual C++ compiler and runtime.
Bootstrap the pristine source by running:
You must repeat this step every time you update your source checkout.
Configure the source by running:
Note that this will not fail when the optional dependencies are missing.
To ensure the optional dependencies are installed, run:
./configure --enable-strictness
If you don't care about docs and want to skip the whole thing, run:
./configure --disable-docs
If you're working on the build system itself, you can run:
./configure --disable-tests
This skips the tests allowing quicker `make' cycles.
If you want to build it into different destination than `/usr/local`.
./configure --prefix=/<your directory path>
Check the test suite by running:
make check
Generate a coverage report by running:
make cover
Please report any problems to the developer's mailing list.
The release procedure is documented here:
Unix-like Systems
Prepare the release artefacts by running:
make distcheck
You can prepare signed release artefacts by running:
make distsign
The release artefacts can be found in the root source directory.
Microsoft Windows
Prepare the release artefacts by running:
make dist
The release artefacts can be found in the `etc/windows` directory.
Until the build system has been improved, you must make sure that you run this
command from a clean source checkout. If you do not, your test database and log
files will be bundled up in the release artefact.