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.
---

Reply via email to