diff options
| author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-04-20 03:45:03 +0000 | 
|---|---|---|
| committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-04-20 03:45:03 +0000 | 
| commit | ae5ab94ef5f0660d381a3c7076e144be5bf37eef (patch) | |
| tree | 956f348606a1c0dd041a533bdd7a1eb979652c05 /scripts | |
| parent | 61ad8a56f8a015d3d9a673eca98971677135935d (diff) | |
add proper package dependency handling
git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@3679 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/timestamp.pl | 34 | 
1 files changed, 25 insertions, 9 deletions
diff --git a/scripts/timestamp.pl b/scripts/timestamp.pl index 108922191..a4bb7ecda 100755 --- a/scripts/timestamp.pl +++ b/scripts/timestamp.pl @@ -1,31 +1,47 @@  #!/usr/bin/perl  use strict; -sub get_ts($) { +sub get_ts($$) {  	my $path = shift; +	my $options = shift;  	my $ts = 0; -	open FIND, "find $path -not -path \\*.svn\\* -and -not -path \\*CVS\\* 2>/dev/null |"; +	my $fn = ""; +	-d "$path" and $path .= "/*"; +	open FIND, "find $path -not -path \\*.svn\\* -and -not -path \\*CVS\\* $options 2>/dev/null |";  	while (<FIND>) { -		open FILE, "<$_"; +		chomp; +		my $file = $_; +		open FILE, "<$file";  		my @stat = stat FILE;  		close FILE; -		$ts = $stat[9] if ($stat[9] > $ts); +		if ($stat[9] > $ts) { +			$ts = $stat[9]; +			$fn = $file; +		}  	}  	close FIND; -	return $ts; +	return ($ts, $fn);  }  (@ARGV > 0) or push @ARGV, ".";  my $ts = 0;  my $n = ".";  my %options; -foreach my $path (@ARGV) { -	if ($path =~ /^-/) { +while (@ARGV > 0) { +	my $path = shift @ARGV; +	if ($path =~ /^-x/) { +		my $str = shift @ARGV; +		$options{"-x"} .= " -and -not -path \\*".$str."\\*" +	} elsif ($path =~ /^-/) {  		$options{$path} = 1;  	} else { -		my $tmp = get_ts($path); +		my ($tmp, $fname) = get_ts($path, $options{"-x"});  		if ($tmp > $ts) { -			$n = $path; +			if ($options{'-f'}) { +				$n = $fname; +			} else { +				$n = $path; +			}  			$ts = $tmp;  		}  	}  | 
