icmstart.rc(7)

NAME
icmstart.rc - The icmstart(1) resource file

DESCRIPTION

The icmstart.rc file specifies files that are installed by icmstart(1).

A default icmstart.rc is found in /etc/icmake/icmstart.rc, but if $HOME/.icmake/icmstart.rc exists then the latter file is used by icmstart(1). $HOME/.icmake/icmstart.rc in turn is overruled by specifying a -c option when invoking icmstart(1).

The default resource file contains the following specifications, preparing for the construction of a C++ program using icmbuild(1):
    CLASSES
    icmconf
    P main.cc
    P main.ih
    P usage.cc
    P version.cc
    P ? scanner
    P ? parser

The icmstart.rc file may contain:

o   empty lines, which are ignored;

o   lines beginning with a hash-character (#), also ignored;

o   an optional installation mode followed by a source-destination specification.

INSTALLATION MODE

An installation mode consists of a combination of:

o   either a P (don’t install with icmstart xxx library) or an L (don’t install with icmstart xxx program);

o   a D, indicating that the source must also be installed by default, i.e., if neither `program’ or `library’ was specified as second argument;

o   a b, indicating that the file must not be installed if the -b (basic installation) option was specified when calling icmstart;

o   Following the optional P, L, D, or b character a space delimited optional ? may be specified. If specified the installation of the file or directory must be confirmed by the user.

SOURCE-DESTINATION SPECIFICATIONS

The following source-destination specifications can be used in an icmstart.rc file (using skeletons below to refer to icmstart’s skeleton files directory):

o   source
    a file named source must exist in skeletons. It is installed in the destination directory `dest’ that’s specified when calling icmstart(1). Example:
        CLASSES

    skeletons/CLASSES is installed as dest/CLASSES;

o   pathspec
    if `pathspec’ does not begin with a slash it must exist in skeletons. It is installed as `pathspec’ in the destination directory specified when calling icmstart(1). Example:
        dir/file

    skeletons/file is installed as dest/dir/file;

o   /pathspec or ~/pathspec
    the ~-character is expanded to the user’s home directory. The pathspec’s final element is installed in the destination directory specified when calling icmstart(1). Example:
        ~/.icmake/file

    $HOME/.icmake/file is installed as dest/file

When the above source specifications are followed by a destination specification destspec (a file or non-absolute directory specification) then the source specification is installed as dest/destspec) below the destination directory specified when calling icmstart(1). Examples:
    CLASSES CLASSES             # skeletons/CLASSES is installed as
                                #   dest/CLASSES
    dir/file dir/file           # skeletons/dir/file is installed as
                                #   dest/dir/file
    ~/.icmake/file .icmake/file # $HOME/.icmake/file is installed as
                                #   dest/.icmake/file

Icmstart converts destination specifications to absolute paths. If these absolute paths do not begin with dest’s absolute path then an error message is displayed and icmstart ends.

FILES
The mentioned paths are sugestive only and may be installation dependent:

o   /usr/share/icmake/icmconf: example of an icmbuild configuration file;

o   /usr/share/icmake/CLASSES: example of an icmbuild CLASSES file;

o   /usr/share/icmake/icmstart.rc: default skeleton resource file.

SEE ALSO
icmake(1), icmbuild(1), icmconf(7), icmstart(1)

BUGS
None reported

COPYRIGHT
This is free software, distributed under the terms of the GNU General Public License (GPL).

AUTHOR
Frank B. Brokken (f.b.brokken@rug.nl).