diff options
author | Eric Wong <e@80x24.org> | 2019-12-22 22:17:39 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2019-12-24 03:48:12 +0000 |
commit | cd8dd7b08fddc7c2b5f218c3fcaa5dca5f9ad945 (patch) | |
tree | 0989e4981be20e2408dda31314da019bd1841647 /lib/PublicInbox/TestCommon.pm | |
parent | 9484944697a1bf76d00d84d081e6a7d633074336 (diff) | |
download | public-inbox-cd8dd7b08fddc7c2b5f218c3fcaa5dca5f9ad945.tar.gz |
Xapian upstream is slowly phasing out the XS-based Search::Xapian in favor of the SWIG-generated "Xapian" package. While Debian and both FreeBSD have Search::Xapian, OpenBSD only includes the "Xapian" binding. More information about the status of the "Xapian" Perl module here: https://trac.xapian.org/ticket/523
Diffstat (limited to 'lib/PublicInbox/TestCommon.pm')
-rw-r--r-- | lib/PublicInbox/TestCommon.pm | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/PublicInbox/TestCommon.pm b/lib/PublicInbox/TestCommon.pm index 9680b94c..b0b1f4d9 100644 --- a/lib/PublicInbox/TestCommon.pm +++ b/lib/PublicInbox/TestCommon.pm @@ -64,7 +64,15 @@ sub require_mods { my $maybe = pop @mods if $mods[-1] =~ /\A[0-9]+\z/; my @need; for my $mod (@mods) { - eval "require $mod"; + if ($mod eq 'Search::Xapian') { + require PublicInbox::Search; + PublicInbox::Search::load_xapian() and next; + } elsif ($mod eq 'Search::Xapian::WritableDatabase') { + require PublicInbox::SearchIdx; + PublicInbox::SearchIdx::load_xapian_writable() and next; + } else { + eval "require $mod"; + } push @need, $mod if $@; } return unless @need; |