diff options
Diffstat (limited to 'contrib/syslinux-4.02/version.pl')
-rwxr-xr-x | contrib/syslinux-4.02/version.pl | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/contrib/syslinux-4.02/version.pl b/contrib/syslinux-4.02/version.pl new file mode 100755 index 0000000..a08ce83 --- /dev/null +++ b/contrib/syslinux-4.02/version.pl @@ -0,0 +1,39 @@ +#!/usr/bin/perl +# +# Read the "version" file and produce some macro declarations +# + +use Fcntl; + +sub defx($$$) { + my($def, $name, $val) = @_; + + $def =~ s/\</${name}/g; + $def =~ s/\@/${val}/g; + + return $def."\n"; +} + +($vfile, $vout, $def) = @ARGV; +sysopen(VERSION, $vfile, O_RDONLY) or die "$0: Cannot open $vfile\n"; +$vfile = <VERSION>; +chomp $vfile; +close(VERSION); + +unless ( $vfile =~ /^(([0-9]+)\.([0-9]+))\s+([0-9]+)$/ ) { + die "$0: Cannot parse version format\n"; +} +$version = $1; +$vma = $2+0; +$vmi = $3+0; +$year = $4; + +sysopen(VI, $vout, O_WRONLY|O_CREAT|O_TRUNC) + or die "$0: Cannot create $vout: $!\n"; +print VI defx($def, 'VERSION', $version); +print VI defx($def, 'VERSION_STR', '"'.$version.'"'); +print VI defx($def, 'VERSION_MAJOR', $vma); +print VI defx($def, 'VERSION_MINOR', $vmi); +print VI defx($def, 'YEAR', $year); +print VI defx($def, 'YEAR_STR', '"'.$year.'"'); +close(VI); |