Skip to content

Commit

Permalink
Instance: find the xapian-delve binary
Browse files Browse the repository at this point in the history
  • Loading branch information
brong committed Aug 10, 2020
1 parent bf627a9 commit f10eee1
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions cassandane/Cassandane/Instance.pm
Original file line number Diff line number Diff line change
Expand Up @@ -475,6 +475,13 @@ sub _find_binary
return $name if $name =~ m/^\//;

my $base = $self->{cyrus_destdir} . $self->{cyrus_prefix};

if ($name eq 'delve') {
my $lib = `ldd $base/libexec/imapd` || die "can't ldd imapd";
$lib =~ m{(/\S+)/lib/libxapian-([0-9.]+)\.so};
return "$1/bin/xapian-delve-$2";
}

foreach (qw( bin sbin libexec libexec/cyrus-imapd lib cyrus/bin ))
{
my $dir = "$base/$_";
Expand Down Expand Up @@ -507,6 +514,7 @@ sub _binary
my $cassini = Cassandane::Cassini->instance();

if ($cassini->bool_val('valgrind', 'enabled') &&
!($name =~ m/delve$/) &&
!($name =~ m/\.pl$/) &&
!($name =~ m/^\//))
{
Expand Down Expand Up @@ -1666,6 +1674,9 @@ sub _fork_command
{
push(@cmd, $self->_binary($binary), '-C', $self->_imapd_conf());
}
elsif ($binary eq 'delve') {
push(@cmd, $self->_binary($binary));
}
else {
push(@cmd, $binary);
}
Expand Down

0 comments on commit f10eee1

Please sign in to comment.