icmake.7.22.01.tar.gz starts icmbuild program maintenance
1992-2015
NAME
icmstart - A startup script for icmbuild program maintenance
SYNOPSIS
icmstart[Options] top-dir [program|library]
DESCRIPTION
The icmstart script is a generic script that can be used to start program
maintenance using icmake(1) and icmbuild(1). Icmstart creates
an initial directory top-dir and installs the files CLASSES,
VERSION and icmconf below top-dir. A second argument `program'
or `library' may be specified as the default mode of operation of the
icmbuild(1) script.
Skeleton files for the main directory and subdirectories, by default listed in
the file /etc/icmake/icmstart.rc, may be installed as well
(cf. icmstart.rc(7)).
After changing to the directory created by icmstart the icmbuild(1)
script may be used for program maintenance.
OPTIONS
Icmstart may be called with the following options, which (if specified)
must be the first arguments of icmstart:
-b
Basic installation: the files VERSION, usage.cc and version.cc are not
installed, and the #define USE_VERSION entry in icmconf is commented
out.
-c confpath Use the configuration files (icmstart.rc, AUTHOR,
YEARS and VERSION) if found in `confpath' rather than in
~/.icmake and/or /etc/icmake/. Once a file is found it is used
allowing partial overrides of the default files provided by
icmake(1).
-d
Do not execute any commands, but show the commands that would have been
executed on the standard output.
-I
Do not install files.
-r
Unconditionally replace existing files. If -r is not
provided icmstart will ask the user to confirm that an existing
file must
be overwritten. If a skeleton specification refers to a directory, the
full directory and its subdirectories will be replaced.
-s skeleton-path
By default skeleton files are listed in the skeleton resource file
/usr/share/icmake/icmstart.rc. Alternatively, the skeleton
resource file may be specified by the ICM environment variable,
which -in turn- may be overruled by the path specified with the -s
option. The skeleton path may be specified as a full file-path or as a
directory, in which case the skeleton resource file is assumed to be
icmstart.rc (see below at SKELETON FILES).
Since icmstart uses cp to install files, cp must be
available when icmstart should install skeleton files.
SKELETON FILES
Skeleton resource files may contain comment (empty lines and lines beginning
with the hash-mark (#)) which is ignored, and should otherwise contain
specifications of resource s to install.
The default resource file is /etc/icmake/icmstart.rc, contains
CLASSES
P main.cc
P main.ih
P usage.cc
P version.cc
P ? scanner
P ? parser
This file is overruled by ~/.icmake/icmstart.rc. See
icmstart.rc(7) for details about the format of the icmstart.rc file.
CONFIGURATION FILES
The configuration files icmstart.rc, AUTHOR, YEARS and VERSION are
recognized and processed by icmstart.
If the -c option was specified configuration files found in the path
specified at this option are used. If not specified or if a file isn't
found then the path ~/icmake is inspected. If a configuration file isn't
found in ~/icmake either, configuration files in /etc/icmake are used.
Configuration files are not required for the proper operation of icmstart.
When absent icmstart performs the following default actions:
If the file AUTHOR does not exist icmstart uses #define
AUTHOR "".
When the file AUTHOR is defined in a configuration path it should have
one line, defining the author of the program. E.g.,
#define AUTHOR "Frank B. Brokken <f.b.brokken@rug.nl>"
If the file VERSION does not exist icmstart uses #define
VERSION "0.00.00".
When the file VERSION is defined in a configuration path it should
have one line, defining the program's initial version. E.g.,
#define VERSION "1.00.00"
If the file YEAR does not exist icmstart uses #define
YEARS "yyyy" where yyyy is the current year.
When the file YEAR is defined in a configuration path it should have
one line, defining the program's initial release year. E.g.,
#define YEARS "2012"
Plural is used here since a release year usually becomes a range of years
after some time, as with Icmake's years specification:
#define YEARS "1992-2012"
If the file icmstart.rc does not exist (or is empty) icmstart
will not install any of the files normally found in icmstart.rc, but the
initial project directory, icmconf and VERSION are installed.
)
FILES
The mentioned paths are sugestive only and may be installation dependent:
/usr/share/icmake/icmconf
Example of a icmbuild configuration file;
/usr/share/icmake/CLASSES
Example of a icmbuildCLASSES file.