Codebase list stealth / HEAD INSTALL
HEAD

Tree @HEAD (Download .tar.gz)

INSTALL @HEADraw · history · blame

See also the KICKSTART chapter in the manual:

    doc/manual/index.html, click the kickstart chapter.

===========================================================================

To install stealth by hand instead of using a binary distribution perform
the following steps:

    0. stealth and its construction depends, in addition to the normally
        standard available system software on specific software and versions 
        which is documented in the file `required'.

       (If you compile the bobcat library yourself, note that stealth does
        not use the SSL, Milter and Xpointer classes; they may --as far as
        stealth is concerned-- be left out of the library by running
        './build light')

    1. It is expected you use icmake for the package construction. For this a
        top-level script (build) and support scripts in the ./icmake/
        directory are available. By default, the 'build' script echoes the
        commands it executes to the standard output stream. By specifying the
        option -q (e.g., ./build -q ...) this is prevented, significantly
        reducing the output generated by 'build'.

    2. Inspect the values of the variables in the file INSTALL.im Modify these
       when necessary. 

    3. Run 
            ./build program [strip]
       to compile stealth. The argument `strip' is optional and strips
       symbolic information from the final executable.

    4. If you installed Yodl then you can create the documentation:
            ./build man 
        builds the man-page, and
            ./build manual
        builds the manual.

    5.  Before installing the components of stealth, consider defining the
        environment variable STEALTH, defining its value as the (preferably
        absolute) filename of a file on which installed files and directories
        are logged.
        Defining the STEALTH environment variable as ~/.stealth usually
        works well. 

    6. Run (probably as root) 

            ./build install 'what' 'base'

        to install. Here, 'what' specifies what you want to install.
        Specify:
                  x, to install all components,
        or specify a combination of:
                  a (additional documentation),
                  b (binary program),
                  d (standard documentation),
                  m (man-pages)
                  u (user guide)

        E.g., use 
            ./build install bm 'base'
        if you only want to be able to run stealth, and want its man-page to 
        be installed below 'base'. 

        ./build install's last argument 'base' is optional: the base directory
        below which the requested files are installed. This base directory is
        prepended to the paths #defined in the INSTALL.im file. If 'base' is
        not specified, then INSTALL.im's #defined paths are used as-is.

        When requesting non-existing elements (e.g., './build install x' was
        requested, but the man-pages weren't constructed) then these
        non-existing elements are silently ignored by the installation
        process.

        If the environment variable STEALTH was defined when issuing the
        `./build install ...' command then a log of all installed files is
        written to the file indicated by the STEALTH environment variable
        (see also the next item).

        Defining the STEALTH environment variable as ~./stealth usually
        works well.

    7.  Uninstalling previously installed components of stealth is easy 
        if the environment variable STEALTH was defined before issuing the 
        `./build install ...' command. In that case, run the command

            ./build uninstall logfile

        where 'logfile' is the file that was written by ./build install.
        Modified files and non-empty directories are not removed, but the
        logfile itself is removed following the uninstallation.

    8. Following the installation nothing in the directory tree which contains
        this file (i.e., INSTALL) is required for the proper functioning of
        stealth, so consider removing it. If you only want to remove
        left-over files from the build-process, just run

            ./build distclean