From db6f96c7c0ee74f0152aca95abf80040cc25c1b4 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Sun, 23 Feb 2020 18:47:06 +0530 Subject: Load libguilexapian with absolute path or through a search path. * xapian.i: Rename to xapian.i.in. * xapian.i.in: Try loading libguilexapian with absolute path first. If it fails, then try searching using LD_LIBRARY_PATH and other mechanisms. * Makefile.am: Generate xapian.i from xapian.i.in. --- xapian.i.in | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 xapian.i.in (limited to 'xapian.i.in') diff --git a/xapian.i.in b/xapian.i.in new file mode 100644 index 0000000..1832786 --- /dev/null +++ b/xapian.i.in @@ -0,0 +1,38 @@ +/* guile-xapian --- Guile bindings for Xapian + * Copyright © 2020 Arun Isaac + * + * This file is part of guile-xapian. + * + * guile-xapian is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation, either version 2 of the + * License, or (at your option) any later version. + * + * guile-xapian is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with guile-xapian. If not, see + * . + */ + +%module wrap +%{ +%} + +%scheme +%{ +;; Try loading the shared library by absolute path. If that fails, try +;; searching for it using LD_LIBRARY_PATH and other mechanisms. We do this +;; so that guile-xapian finds libguilexapian both before and after installation. +(catch #t + (lambda () + (load-extension "@libdir@/libguilexapian" "SWIG_init")) + (lambda _ + (load-extension "libguilexapian" "SWIG_init"))) +%} + +%include xapian-head.i +%include xapian-headers.i -- cgit v1.2.3