aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/user/Makefile.am2
-rw-r--r--src/Makefile.am4
-rwxr-xr-xsrc/pre-inst-skribilo.in32
3 files changed, 37 insertions, 1 deletions
diff --git a/doc/user/Makefile.am b/doc/user/Makefile.am
index 3b67dea..0501ff6 100644
--- a/doc/user/Makefile.am
+++ b/doc/user/Makefile.am
@@ -11,7 +11,7 @@ EXTRA_DIST = bib.skb char.skb colframe.skb document.skb emacs.skb \
BUILT_SOURCES = doc-config.scm
html_DATA = user.html
-skribilo = $(top_builddir)/src/skribilo
+skribilo = $(top_builddir)/src/pre-inst-skribilo
load_path = $(top_srcdir)/src/guile:$(top_srcdir)/src/guile/skribilo/package:$(top_builddir)/src/guile:$(top_srcdir)/doc/modules
diff --git a/src/Makefile.am b/src/Makefile.am
index 806d358..da3623c 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -3,9 +3,13 @@ SUBDIRS = guile
EXTRA_DIST = skribilo.in
bin_SCRIPTS = skribilo
+noinst_SCRIPTS = pre-inst-skribilo
+
CLEANFILES = $(bin_SCRIPTS)
substitute = sed -e 's,[@]guilemoduledir[@],$(guilemoduledir),g' \
+ -e 's,[@]abs_top_srcdir[@],$(abs_top_srcdir),g' \
+ -e 's,[@]abs_top_builddir[@],$(abs_top_builddir),g' \
-e 's,[@]GUILE[@],$(GUILE),g' \
-e 's,[@]PACKAGE_STRING[@],$(PACKAGE_STRING),g' \
-e 's,[@]PACKAGE_NAME[@],$(PACKAGE_NAME),g' \
diff --git a/src/pre-inst-skribilo.in b/src/pre-inst-skribilo.in
new file mode 100755
index 0000000..96343b9
--- /dev/null
+++ b/src/pre-inst-skribilo.in
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+# Copyright 2007 Ludovic Courtès <ludo@gnu.org>
+#
+#
+# This program 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.
+#
+# This program 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 this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+# USA.
+
+# A pre-installation `skribilo' executable that makes sure to load
+# stuff from the source directory rather than the installation directory.
+
+main='(module-ref (resolve-module '\''(skribilo)) '\'main')'
+exec ${GUILE-@GUILE@} -L "@abs_top_srcdir@/src/guile" \
+ -L "@abs_top_builddir@/src/guile" \
+ -c "
+(use-modules (skribilo condition))
+
+(call-with-skribilo-error-catch
+ (lambda ()
+ (apply $main (cdr (command-line)))))" "$@"