Github user janl commented on the pull request:
https://github.com/apache/couchdb/pull/302#issuecomment-113577637
## Alright, major rework!
I made a new `./configure` script that accepts most of the customisation
options of a GNU `./configure` that behaves according to the [GNU Coding
Standards](https://www.gnu.org/prep/standards/html_node/Directory-Variables.html).
It even includes a [test script that validates that it does what it is
supposed to
do](https://github.com/janl/couchdb/blob/ad287b43ef29964629bdac3eac469f82b78c7d7c/test/build/test-configure.sh):
Note that [most `./configure` arguments are
changed](https://github.com/janl/couchdb/commit/ad287b43ef29964629bdac3eac469f82b78c7d7c#diff-e2d5a00791bce9a01f99bc6fd613a39dR47)
now:
```
Usage: configure [OPTION]
The configure command is responsible for generating the build
system for Apache CouchDB.
Options:
-h | --help display a short help message and exit
# -u USER set the username to run as (defaults to )
--prefix=DIRECTORY set the installation prefix (defaults to )
--databasedir DIRECTORY specify the data directory (defaults to
/var/lib/couchdb)
--viewindexdir DIRECTORY specify the view directory (defaults to
/var/lib/couchdb)
--logdir DIRECTORY specify the log file (defaults to
/var/log/couchdb.log)
-c | --with-curl request that couchjs is linked to cURL
(default false)
Installation directories:
--prefix=PREFIX install architecture-independent files in PREFIX
[/usr/local]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[PREFIX]
Fine tuning of the installation directories:
--bindir=DIR user executables [EPREFIX/bin]
--libexecdir=DIR program executables [EPREFIX/libexec]
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
--libdir=DIR object code libraries [EPREFIX/lib]
--datarootdir=DIR read-only arch.-independent data root
[PREFIX/share]
--datadir=DIR read-only architecture-independent data
[DATAROOTDIR]
# --infodir=DIR info documentation [DATAROOTDIR/info]
# --mandir=DIR man documentation [DATAROOTDIR/man]
# --docdir=DIR documentation root
[DATAROOTDIR/doc/apache-couchdb]
# --htmldir=DIR html documentation [DOCDIR]
# --dvidir=DIR dvi documentation [DOCDIR]
# --pdfdir=DIR pdf documentation [DOCDIR]
# --psdir=DIR ps documentation [DOCDIR]
```
(the âcommented outâ options donât work yet but are easy to add).
### State
I used this to produce a tarball that in turn could configure itself and
install itself into all designated destinations. I havenât tried all override
options manually, but Iâm confident that they work.
There are a few niggles, but this mostly works.
### Impact
@micah this should give packagers the option to set `--exec-prefix` which
used to produce the architecture dependent sub-dirs.
### Misc
Also note the updates to the check list in [the original post on this
page](https://github.com/apache/couchdb/pull/302#issue-57392189).
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---