]> git.deb.at Git - deb/packages.git/blobdiff - bin/parse-contents
fix off-by-one after switching on the brain again
[deb/packages.git] / bin / parse-contents
index 2ee39d71b88e62517410d2378bdfe1e3ca988ed7..16bc7e497f7e9bf25daf0b5c5337415279fd7cff 100755 (executable)
@@ -38,6 +38,7 @@ use English;
 use DB_File;
 use Storable;
 use File::Path;
+use File::Basename;
 use Packages::CommonCode qw(:all);
 use Packages::Config qw( $TOPDIR $DBDIR @ARCHIVES @SUITES @ARCHITECTURES );
 &Packages::Config::init( './' );
@@ -45,6 +46,8 @@ use Packages::Config qw( $TOPDIR $DBDIR @ARCHIVES @SUITES @ARCHITECTURES );
 my @archives = @ARCHIVES;
 my @suites = @SUITES;
 my @archs = @ARCHITECTURES;
+my %deborts_hash;
+@deborts_hash{qw( alpha avr32 hppa m68k powerpcspe sh4 sparc64 )} = ();
 
 $DBDIR .= "/contents";
 mkdirp( $DBDIR );
@@ -140,9 +143,9 @@ for my $suite (@suites) {
            rename("$DBDIR/reverse.tmp", "$DBDIR/reverse_${suite}_${arch}.txt");
 
            activate($filelist_db);
-           #FIXME: hardcoded archs. (gnuab has no contrib/non-free)
-           if ($arch !~ m/^(armel|kfreebsd-.*)$/) {
-               system("ln", "-sf", $filelist_db,
+           #FIXME: hardcoded archs. (debports has no contrib/non-free)
+           if (not exists $deborts_hash{$arch}) {
+               system("ln", "-sf", basename($filelist_db),
                       "$DBDIR/filelists_${suite}_all.db") == 0
                           or die "Oops";
            }