[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

7. Configuring and Installing

7.1 configuring  Configuring AutoGen
7.2 installing  Installing AutoGen


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

7.1 configuring

AutoGen is configured and built using Libtool, Automake and Autoconf. Consequently, you can install it whereever you wish using the various `--prefix' options. To the various configuration options supplied by these tools, AutoGen adds two of its own:

`--disable-shell'
AutoGen is now capable of acting as a CGI forms server, See section 6. AutoGen as a CGI server. As such, it will gather its definitions using either `GET' or `POST' methods. All you need to do is have a template named `cgi.tpl' handy or specify a different one with a command line option.

However, doing this without disabling the server shell brings considerable risk. If you were to pass user input to a script that contained, say, the classic "``rm -rf /`'", you might have a problem. This configuration option will cause shell template commands to simply return the command string as the result. No mistakes. Much safer. Strongly recommended. The default is to have server shell scripting enabled.

Disabling the shell will have some build side effects, too.

`--enable-debug'
Turning on AutoGen debugging enables very detailed inspection of the input definitions and monitoring shell script processing. These options are not particularly useful to anyone not directly involved in maintaining AutoGen. If you do choose to enable AutoGen debugging, be aware that the usage page was generated without these options, so when the build process reaches the documentation rebuild, there will be a failure. `cd' into the `agen5' build directory, `make' the `autogen.texi' file and all will be well thereafter.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

7.2 installing

There are several files that get installed. The number depend whether or not both shared and archive libraries are to be installed. The following assumes that everything is installed relative to $prefix. You can, of course, use configure to place these files where you wish.

NB AutoGen does not contain any compiled-in path names. All support directories are located via option processing, the environment variable HOME or finding the directory where the executable came from.

The installed files are:

  1. The executables in `bin' (autogen, getdefs and columns).

  2. The AutoOpts link libraries as `lib/libopts.*'.

  3. An include file in `include/options.h', needed for Automated Option Processing (see next chapter).

  4. Several template files and a scheme script in `share/autogen', needed for Automated Option Processing (see section 8. Automated Option Processing), parsing definitions written with scheme syntax (see section 2.3 Dynamic Text), the templates for producing documentation for your program (see section 8.4.3 Man and Info doc Attributes), and AutoFSM.

  5. Info-style help files as `info/autogen.info*'. These files document AutoGen, the option processing library AutoOpts, and several add-on components.

  6. The three man pages for the three executables are installed in man/man1.

This program, library and supporting files can be installed with three commands:

However, you may wish to insert make check before the make install command.

If you do perform a make check and there are any failures, you will find the results in tests/FAILURES. Needless to say, I would be interested in seeing the contents of those files and any associated messages. If you choose to go on and analyze one of these failures, you will need to invoke the test scripts individually. You may do so by specifying the test (or list of test) in the TESTS make variable, thus:

 
gmake TESTS=test-name.test check

I specify gmake because most makes will not let you override internal definitions with command line arguments. gmake does.

All of the AutoGen tests are written to honor the contents of the VERBOSE environment variable. Normally, any commentary generated during a test run is discarded unless the VERBOSE environment variable is set. So, to see what is happening during the test, you might invoke the following with bash or ksh:

 
VERBOSE=1 gmake TESTS="for.test forcomma.test" check

Or equivalently with csh:

 
env VERBOSE=1 gmake TESTS="for.test forcomma.test" check


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by Bruce Korb on February, 4 2002 using texi2html