blob: a7a6926e9d6766bcc4120b02dc81949a86e8538d [file] [log] [blame]
Apache CouchDB DEVELOPERS
=========================
Only follow these instructions if you are building from a source checkout.
If you're unsure what this means, ignore this document.
Dependencies
------------
You will need the following installed:
* GNU Automake (>=1.6.3) (http://www.gnu.org/software/automake/)
* GNU Autoconf (>=2.59) (http://www.gnu.org/software/autoconf/)
* GNU Libtool (http://www.gnu.org/software/libtool/)
* GNU help2man (http://www.gnu.org/software/help2man/)
The `help2man` tool is optional, but will generate `man` pages for you.
Debian-based (inc. Ubuntu) Systems
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You can install the dependencies by running:
apt-get install automake autoconf libtool help2man
Be sure to update the version numbers to match your system's available packages.
Mac OS X
~~~~~~~~
You can install the dependencies by running:
port install automake autoconf libtool help2man
You will need MacPorts installed to use the `port` command.
Bootstrapping
-------------
Bootstrap the pristine source by running:
./bootstrap
You must repeat this step every time you update your source checkout.
Testing
-------
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.
Releasing
---------
Unix-like Systems
~~~~~~~~~~~~~~~~~
Configure the source by running:
./configure
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
~~~~~~~~~~~~~~~~~
Configure the source by running:
./configure
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.