]> git.donarmstrong.com Git - debbugs.git/commitdiff
allow gen-indices to work with local-debbugs debbugs-local
authorDon Armstrong <don@donarmstrong.com>
Mon, 29 Aug 2016 15:31:38 +0000 (08:31 -0700)
committerDon Armstrong <don@donarmstrong.com>
Mon, 29 Aug 2016 15:31:38 +0000 (08:31 -0700)
debian/libdebbugs-perl.install
scripts/gen-indices

index bc1da7eaf90cccce28eb371f0415961ed53fe6da..6856dfc13be7843debce7f2e62fa416c2c82eda8 100644 (file)
@@ -1,3 +1,4 @@
 usr/share/man/man3/Debbugs*
 usr/share/perl5/Debbugs*
+usr/lib/debbugs/gen-indices
 #etc/debbugs/config
index 7a8670d96ffb8c69fe90e73185e78a156792183b..340140dda413f18798dad04e3d13b5a08d460ef6 100755 (executable)
@@ -13,6 +13,8 @@ use DB_File;
 use MLDBM qw(DB_FILE Storable);
 use Fcntl qw/O_RDWR O_CREAT O_TRUNC/;
 use File::Copy;
+use File::Path qw(make_path);
+use Cwd qw(abs_path);
 
 use Getopt::Long;
 use Pod::Usage;
@@ -68,27 +70,28 @@ Display this manual.
 $MLDBM::DumpMeth=q(portable);
 
 
+use Debbugs::Config qw(:config);
+use Debbugs::Common qw(getparsedaddrs getbugcomponent lockpid);
+use Debbugs::Status qw(readbug split_status_fields);
+use Debbugs::Log;
+use Debbugs::UTF8 qw(encode_utf8_structure);
+
 my %options = (debug           => 0,
               help            => 0,
               man             => 0,
               quick           => 0,
               index_path      => undef,
+              spool_dir       => $config{spool_dir},
               );
 
-GetOptions(\%options,'quick!','index_path|index-path=s','debug|d+','help|h|?','man|m') or pod2usage(2);
+GetOptions(\%options,'quick!','index_path|index-path=s',
+          'spool_dir|spool-dir=s',
+          'debug|d+','help|h|?','man|m') or pod2usage(2);
 pod2usage(1) if $options{help};
 pod2usage(-verbose=>2) if $options{man};
 
-use Debbugs::Config qw(:config);
-use Debbugs::Common qw(getparsedaddrs getbugcomponent lockpid);
-use Debbugs::Status qw(readbug split_status_fields);
-use Debbugs::Log;
-use Debbugs::UTF8 qw(encode_utf8_structure);
-
-chdir($config{spool_dir}) or die "chdir $config{spool_dir} failed: $!";
-
 my $verbose = $options{debug};
-my $indexdest = $options{index_path} || $config{spool_dir};
+my $indexdest = abs_path($options{index_path}) || abs_path($options{spool_dir});
 
 my $initialdir = "db-h";
 my $suffix = "";
@@ -97,8 +100,11 @@ if (defined $ARGV[0] and $ARGV[0] eq "archive") {
     $initialdir = "archive";
     $suffix = "-arc";
 }
+$config{spool_dir} = $options{spool_dir};
 
-if (not lockpid($config{spool_dir}.'/lock/gen-indices')) {
+chdir($options{spool_dir}) or die "chdir $options{spool_dir} failed: $!";
+make_path('lock');
+if (not lockpid('lock/gen-indices')) {
      if ($options{quick}) {
          # If this is a quick run, just exit
          print STDERR "Another gen-indices is running; stopping\n" if $verbose;
@@ -251,4 +257,4 @@ for my $i (@indexes) {
     }
 }
 
-unlink($config{spool_dir}.'/lock/gen-indices')
+unlink('lock/gen-indices')