.TH "icmstart" "1" "1992\-2014" "icmake\&.7\&.21\&.01\&.tar\&.gz" "starts icmbuild program maintenance" .PP .SH "NAME" icmstart \- A startup script for icmbuild program maintenance .PP .SH "SYNOPSIS" \fBicmstart\fP \fI[Options]\fP top\-dir [program|library] .PP .SH "DESCRIPTION" .PP The \fBicmstart\fP script is a generic script that can be used to start program maintenance using \fBicmake\fP(1) and \fBicmbuild\fP(1)\&. \fBIcmstart\fP creates an initial directory \fItop\-dir\fP and installs the files \fICLASSES, VERSION\fP and \fIicmconf\fP below \fItop\-dir\fP\&. A second argument `\fIprogram\fP\(cq\& or `\fIlibrary\fP\(cq\& may be specified as the default mode of operation of the \fBicmbuild\fP(1) script\&. .PP Skeleton files for the main directory and subdirectories, by default listed in the file \fI/etc/icmake/icmstart\&.rc\fP, may be installed as well (cf\&. \fBicmstart\&.rc\fP(7))\&. .PP After changing to the directory created by \fBicmstart\fP the \fBicmbuild\fP(1) script may be used for program maintenance\&. .PP .SH "OPTIONS" .PP \fIIcmstart\fP may be called with the following options, which (if specified) must be the first arguments of \fIicmstart\fP: .IP o \fI\-c confpath\fP .br Use the configuration files (\fIicmstart\&.rc, AUTHOR, YEARS\fP and \fIVERSION\fP) if found in `confpath\(cq\& rather than in \fI~/\&.icmake\fP and/or \fI/etc/icmake/\fP\&. Once a file is found it is used allowing partial overrides of the default files provided by \fBicmake\fP(1)\&. .IP o \fI\-d\fP .br Do not execute any commands, but show the commands that would have been executed on the standard output\&. .IP o \fI\-I\fP .br Do not install files\&. .IP o \fI\-r\fP Unconditionally replace existing files\&. If \fI\-r\fP is not provided \fBicmstart\fP 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\&. .IP o \fI\-s skeleton\-path\fP .br By default skeleton files are listed in the skeleton resource file \fI/usr/share/icmake/icmstart\&.rc\fP\&. Alternatively, the skeleton resource file may be specified by the \fIICM\fP environment variable, which \-in turn\- may be overruled by the path specified with the \fI\-s\fP 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 \fIicmstart\&.rc\fP (see below at \fBSKELETON FILES\fP)\&. Since \fBicmstart\fP uses \fIcp\fP to install files, \fIcp\fP must be available when \fBicmstart\fP should install skeleton files\&. .PP .SH "SKELETON FILES" .PP Skeleton resource files may contain comment (empty lines and lines beginning with the hash\-mark (\fI#\fP)) which is ignored, and should otherwise contain specifications of resource \fBs\fP to install\&. .PP The default resource file is \fI/etc/icmake/icmstart\&.rc\fP, contains .nf CLASSES P main\&.cc P main\&.ih P usage\&.cc P version\&.cc P ? scanner P ? parser .fi This file is overruled by \fI~/\&.icmake/icmstart\&.rc\fP\&. See \fBicmstart\&.rc\fP(7) for details about the format of the \fIicmstart\&.rc\fP file\&. .PP .SH "CONFIGURATION FILES" .PP The configuration files \fIicmstart\&.rc, AUTHOR, YEARS\fP and \fIVERSION\fP are recognized and processed by \fIicmstart\fP\&. .PP If the \fI\-c\fP option was specified configuration files found in the path specified at this option are used\&. If not specified or if a file isn\(cq\&t found then the path \fI~/icmake\fP is inspected\&. If a configuration file isn\(cq\&t found in \fI~/icmake\fP either, configuration files in \fI/etc/icmake\fP are used\&. .PP Configuration files are not required for the proper operation of \fIicmstart\fP\&. When absent \fIicmstart\fP performs the following default actions: .PP .IP o If the file \fIAUTHOR\fP does not exist \fIicmstart\fP uses \fI#define AUTHOR \(dq\&\(dq\&\fP\&. .IP When the file \fIAUTHOR\fP is defined in a configuration path it should have one line, defining the author of the program\&. E\&.g\&., .nf #define AUTHOR \(dq\&Frank B\&. Brokken \(dq\& .fi .IP .IP o If the file \fIVERSION\fP does not exist \fIicmstart\fP uses \fI#define VERSION \(dq\&0\&.00\&.00\(dq\&\fP\&. .IP When the file \fIVERSION\fP is defined in a configuration path it should have one line, defining the program\(cq\&s initial version\&. E\&.g\&., .nf #define VERSION \(dq\&1\&.00\&.00\(dq\& .fi .IP .IP o If the file \fIYEAR\fP does not exist \fIicmstart\fP uses \fI#define YEARS \(dq\&yyyy\(dq\&\fP where \fIyyyy\fP is the current year\&. .IP When the file \fIYEAR\fP is defined in a configuration path it should have one line, defining the program\(cq\&s initial release year\&. E\&.g\&., .nf #define YEARS \(dq\&2012\(dq\& .fi Plural is used here since a release year usually becomes a range of years after some time, as with Icmake\(cq\&s years specification: .nf #define YEARS \(dq\&1992\-2012\(dq\& .fi .PP .IP o If the file \fIicmstart\&.rc\fP does not exist (or is empty) \fIicmstart\fP will not install any of the files normally found in \fIicmstart\&.rc\fP, but the initial project directory, \fIicmconf\fP and \fIVERSION\fP are installed\&. ) .PP .SH "FILES" The mentioned paths are sugestive only and may be installation dependent: .IP o \fB/usr/share/icmake/icmconf\fP Example of a \fBicmbuild\fP configuration file; .IP o \fB/usr/share/icmake/CLASSES\fP Example of a \fBicmbuild\fP \fICLASSES\fP file\&. .IP o \fB/usr/share/icmake/icmstart\&.rc\fP Default skeleton resource file\&. .PP .SH "SEE ALSO" \fBicmake\fP(1), \fBicmbuild\fP(1), \fBicmconf\fP(7), \fBicmstart\&.rc\fP(7)\&. .PP .SH "BUGS" None reported .PP .SH "COPYRIGHT" This is free software, distributed under the terms of the GNU General Public License (GPL)\&. .PP .SH "AUTHOR" Frank B\&. Brokken (\fBf\&.b\&.brokken@rug\&.nl\fP)\&. .PP