summaryrefslogtreecommitdiff
path: root/xapian.i.in
diff options
context:
space:
mode:
Diffstat (limited to 'xapian.i.in')
-rw-r--r--xapian.i.in38
1 files changed, 38 insertions, 0 deletions
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 <arunisaac@systemreboot.net>
+ *
+ * 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
+ * <https://www.gnu.org/licenses/>.
+ */
+
+%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