File: version

package info (click to toggle)
fidogate 4.4.7-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 5,784 kB
  • ctags: 2,957
  • sloc: ansic: 24,413; perl: 4,932; makefile: 885; sh: 824; yacc: 662; tcl: 415
file content (48 lines) | stat: -rwxr-xr-x 796 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/perl
#
# $Id: version,v 4.1 2001/12/27 19:51:20 mj Exp $
#
# Print FIDOGATE version number from version.h
#

use strict;

my $PROGRAM = 'version';
my $VERSION = '$Revision: 4.1 $'; #'


use vars qw($opt_v $opt_h $opt_l);
use Getopt::Std;

getopts('vhl');

if($opt_h || $#ARGV>0) {
    print STDERR
      "usage:   $PROGRAM [-l] [VERSION.H]\n",
      "";
    exit 1;
}



my $H = $ARGV[0] ? $ARGV[0] : "version.h";


my ($maj, $min, $pl, $state);

open(F, "<$H")
  || die "$PROGRAM: can't open $H: $!\n";
while(<F>) {
    chop;
    $maj   = $1 if(/VERSION_MAJOR\s*(\d+)/);
    $min   = $1 if(/VERSION_MINOR\s*(\d+)/);
    $pl    = $1 if(/PATCHLEVEL\s*(\d+)/);
    $state = $1 if(/STATE\s*\"(\w+)\"/);
}
close(F);

print "$maj.$min.$pl";
print "-$state" if($opt_l);
print "\n";

exit 0;