/[d-i]/trunk/build/update-manifest
ViewVC logotype

Contents of /trunk/build/update-manifest

Parent Directory Parent Directory | Revision Log Revision Log


Revision 8620 - (show annotations) (download)
Mon Feb 9 06:26:56 2004 UTC (9 years, 3 months ago) by joeyh
File size: 1043 byte(s)
Improvements to manifest generation and formatting.
1 #!/usr/bin/perl
2 # Add an item to the manifest, or update an existing item.
3 # Also cleans manifest of any items that do not exist any longer.
4 # May be run with no parameters to only clear old stuff.
5 my $file=shift;
6 my $desc=shift;
7
8 if (length $file && ! length $desc) {
9 print STDERR "warning: no manifest info for $file\n";
10 exit;
11 }
12
13
14 my $sep=" -- ";
15
16 my %manifest;
17 if (-e "dest/MANIFEST") {
18 open (IN, "dest/MANIFEST") || die $!;
19 while (<IN>) {
20 chomp;
21 my ($key, $value)=split(/\s*$sep/, $_, 2);
22 $manifest{$key}=$value;
23 }
24 close IN;
25 }
26
27 if (length $file) {
28 $file=~s!(\./)?dest/!!;
29 $manifest{$file}=$desc;
30 }
31
32 my $longest=0;
33 foreach my $item (keys %manifest) {
34 if (! -e "dest/$item") {
35 delete $manifest{$item};
36 next;
37 }
38 if (length $item > $longest) {
39 $longest=length $item;
40 }
41 }
42
43 if (! %manifest) {
44 unlink "dest/MANIFEST";
45 exit;
46 }
47
48 open (OUT, ">dest/MANIFEST") || die "write dest/MANIFEST: $!";
49 foreach my $item (sort keys %manifest) {
50 print OUT $item.(" " x ($longest - length $item))."$sep$manifest{$item}\n";
51 }
52 close OUT;

Properties

Name Value
svn:executable *

  ViewVC Help
Powered by ViewVC 1.1.5