27 while ($line = <FILE>) |
28 while ($line = <FILE>) |
28 { |
29 { |
29 next if ($line !~ /\t/); |
30 next if ($line !~ /\t/); |
30 |
31 |
31 chomp $line; |
32 chomp $line; |
32 my ($romdest,$srcfile) = split /\t/,$line; |
33 my ($romdest,$srcfile,$ibyfile) = split /\t/,$line; |
33 $romdest =~ s/\s*$//; # strip off trailing spaces |
34 $romdest =~ s/\s*$//; # strip off trailing spaces |
|
35 $romdest =~ s/\//\\/g; # convert to EPOC directory separators |
|
36 |
34 $srcfile =~ s/\\/\//g; # Unix directory separators please |
37 $srcfile =~ s/\\/\//g; # Unix directory separators please |
35 |
38 $srcfile =~ s/^"(.*)"$/$1/; # Remove quotes |
|
39 $srcfile =~ s/\/\//\//g; # Convert // to / |
36 $srcfile =~ s/^\[0x[0-9a-fA-F]+\]//; # remove HVID, if present |
40 $srcfile =~ s/^\[0x[0-9a-fA-F]+\]//; # remove HVID, if present |
|
41 $srcfile =~ s/mbm_rom$/mbm/i; # use original name of derived file |
37 $srcfile = lc $srcfile; # sigh... |
42 $srcfile = lc $srcfile; # sigh... |
38 |
43 |
|
44 $ibyfile =~ s/\\/\//g; # Unix directory separators please |
|
45 $ibyfile =~ s/^.*\/rom\/include\///; # normalise path to rom\include |
|
46 |
39 $romfiles{$srcfile} = $romdest; |
47 $romfiles{$srcfile} = $romdest; |
|
48 $ibyfiles{$romdest} = $ibyfile; |
40 } |
49 } |
41 close FILE; |
50 close FILE; |
42 } |
51 } |
43 |
52 |
44 my %packages; |
53 my %packages; |
80 $tsvfile =~ s/\\/\//g; |
89 $tsvfile =~ s/\\/\//g; |
81 scan_tsv($tsvfile); |
90 scan_tsv($tsvfile); |
82 } |
91 } |
83 } |
92 } |
84 |
93 |
85 print "File\tPackage\n"; |
94 print "ROM file,Host file,Iby file,Package,In/Out,Who,Why\n"; |
86 my $unknowns = 0; |
95 my $unknowns = 0; |
87 foreach my $file (sort keys %romfiles) |
96 foreach my $file (sort keys %romfiles) |
88 { |
97 { |
|
98 my $romfile = $romfiles{$file}; |
|
99 my $ibyfile = $ibyfiles{$romfile}; |
89 my $package = $package_by_romfile{$file}; |
100 my $package = $package_by_romfile{$file}; |
|
101 |
90 if (!defined $package) |
102 if (!defined $package) |
91 { |
103 { |
92 $package = "(unknown)"; |
104 $package = "(unknown)"; |
93 $package_by_romfile{$file} = $package; |
105 $package_by_romfile{$file} = $package; |
94 $unknowns += 1; |
106 $unknowns += 1; |
95 } |
107 } |
96 printf "%s\t%s\n", $file, $package; |
108 print join(",", $romfile, $file, $ibyfile, $package, "","",""), "\n"; |
97 } |
109 } |
98 printf "\n%d files in %s, %d unknowns\n", scalar keys %romfiles, $romlisting, $unknowns; |
110 printf STDERR "\n%d files in %s, %d unknowns\n", scalar keys %romfiles, $romlisting, $unknowns; |