shtool-version - GNU shtool maintain version information file
shtool version [-l|--language lang] [-n|--name name] [-p|--prefix prefix] [-s|--set version] [-e|--edit] [-i|--increase knob] [-d|--display type] file
This command displays and maintains version information in file.
The version is always described with a triple <version,revision,level> and is represented by a string which always matches the regular expression "[0-9]+\.[0-9]+[sabp.][0-9]+
".
The hexadecimal format for a version v.rtl
is VVRRTLL
where VV
and RR
directly correspond to v
and r
, T
encodes the level type as 9
, 2
, 1
, 0
(representing s
, p
/.
, b
, a
in this order) and LL
is either directly corresponding to l
or set to 99
if level type is s
.
The following command line options are available.
Print verbose information during processing.
Choose format of version file file. lang="txt
", ANSI C (lang=c), M4 (lang=m4), Perl (lang=perl) or Python (lang=python). Default is txt
.
Name the program the version is maintained for. Default is unknown
.
Set the version to version.
Interactively enter a new version.
When option ``-i'' is used, the current version in file is updated by increasing one element of the version where knob can be one of the following: ``v
'' for increasing the version by 1 (and resetting revision and level to 0), ``r
'' for increasing the revision by 1 (and resetting level to 0) or ``l
'' for increasing the level by 1.
Control the display type: "short
for a short version display, long
for a longer version display, hex
for a hexadecimal display of the version and libtool
" for a format suitable for use with GNU libtool.
# shell script shtool version -l c -n FooBar -p foobar -s 1.2b3 version.c # configure.in V=`shtool version -l c -d long version.c` echo "Configuring FooBar, Version $V"
The GNU shtool version command was originally written by Ralf S. Engelschall <rse@engelschall.com> in 1994 for OSSP eperl. It was later rewritten from scratch for inclusion into GNU shtool.