File: LINK

package info (click to toggle)
ifhp 3.3.10-3
  • links: PTS
  • area: main
  • in suites: potato
  • size: 2,736 kB
  • ctags: 1,157
  • sloc: ansic: 11,003; sh: 1,560; makefile: 413; perl: 163
file content (40 lines) | stat: -rwxr-xr-x 1,040 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
#!/usr/local/bin/perl
use Getopt::Std;
$| = 1;
getopts("cd");
$no_checkin = 0;
$no_dist = 0;
if( $opt_c ){
	print "no checkin\n";
	$no_checkin = 1;
}
if( $opt_d ){
	print "no distribution\n";
	$no_dist = 1;
}
($newvernum, $oldvernum) = @ARGV;
($dir) = `pwd`;
chomp $dir;
print "dir $dir\n";
($path, $prog) = ($dir =~ m,(.*)/(.*),);
($name, $ver) = ($prog =~ m,(.*)-(.*),);
print "prog $prog, name $name, ver $ver\n";
@subs = split( /\./, $ver );
@new = @subs;
@old = @subs;
$new[$#new] ++;
$old[$#old] --;
$newvernum = join( '.', @new ) unless $newvernum;
$oldvernum = join( '.', @old ) unless $oldvernum;
$newprog = $name . "-" . $newvernum;
$oldprog = $name . "-" . $oldvernum;
$newdir = $path . "/" . $newprog;
print "prog $prog, name $name, ver $ver, newprog $newprog, oldprog $oldprog, newdir $newdir\n";
print "\nupdating directory name and links\n";

if( -l "$path/$name" ){
 	print "removing link $path/$name\n";
 	@err = `rm $path/$name`;
	if( $? ){ die "rm link $prog failed - @err $!\n"; }
}
@err = `chdir ..; ln -s $dir $name`;