Aaproc Prerequisites
====================

Build time:

* Java 8 or later

* Ant <https://ant.apache.org/>

* Halibut <https://www.chiark.greenend.org.uk/~sgtatham/halibut/>

  Required to build the documentation.

* Protobuf <https://github.com/protocolbuffers/protobuf/>

  Required to compile Aaproc protocol buffers into Java source.  The
  version of the protocol compiler (e.g., "protoc --version") must be
  greater than or equal to 3.0 and less than or equal to the version of the
  Protobuf Java runtime library which can be found in the "protobuf.ver"
  property in build.properties or, after fetching dependencies, in the
  lib/main/protobuf-<version>.jar filename.

Run time:

* Java 8 or later

* autoPROC <https://www.globalphasing.com/autoproc/>

* POSIX utilities: sh, kill, and pkill

* setsid (or s6-setsid or any program with a similar interface that can run a
  program as a new session leader)

Aaproc Installation
===================

1. Fetch dependencies

   $ ant fetch

2. Identify any properties in the "Configuration" section of build.properties
   that should be overridden, and place appropriate [PROPERTY]=[VALUE] lines
   in a file named build-local.properties.  An alternative to creating the
   build-local.properties file is to specify properties on the ant command
   line with -D[PROPERTY]=[VALUE] options.

3. Build

   $ ant jar bin libexec man

4. Install files:

   Source                Destination
   --------------------  ----------------------------
   target/*.jar files    "${datadir}/aaproc"
   target/bin files      [where user executables go]
   target/libexec files  "${libexecdir}/aaproc"
   target/doc/man files  [where Unix manual pages go]
