From b944137b1fe3e2ba16f3942d14dc5e58d8dd28c6 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 11 Dec 2007 17:07:18 +0100 Subject: Improve `(skribilo config)'. * configure.ac: Don't generate `src/guile/skribilo/config.scm'; don't substitute `SKRIBILO_DOC_DIR', `SKRIBILO_EXT_DIR' and `SKRIBILO_SKR_PATH'. * doc/modules/skribilo/documentation/env.scm (*courtes-mail*): Update. (*skribe-user-doc-url*, *skribe-dir-doc-url*): Update. * src/guile/skribilo/Makefile.am (CLEANFILES, .in): New. Include `substitute.am'. * src/guile/skribilo/config.scm.in: Overhauled. * src/guile/skribilo/engine/context.scm: Use `skribilo-version' instead of `skribilo-release'. * src/guile/skribilo/engine/lout.scm: Likewise. * src/guile/skribilo/utils/compat.scm: Use `(skribilo config)'. (skribe-release, skribe-url, skribe-doc-dir, skribe-ext-dir, skribe-default-path, skribe-scheme): New. --- configure.ac | 5 ---- doc/modules/skribilo/documentation/env.scm | 11 +++++--- src/guile/skribilo/Makefile.am | 8 ++++++ src/guile/skribilo/config.scm.in | 45 ++++++++++++++++++++---------- src/guile/skribilo/engine/context.scm | 4 +-- src/guile/skribilo/engine/lout.scm | 4 +-- src/guile/skribilo/utils/compat.scm | 13 +++++++++ 7 files changed, 62 insertions(+), 28 deletions(-) diff --git a/configure.ac b/configure.ac index 80a0255..dc2b235 100644 --- a/configure.ac +++ b/configure.ac @@ -74,16 +74,11 @@ if test "$guilemoduledir" != "$GUILE_SITE"; then fi -AC_SUBST([SKRIBILO_DOC_DIR], ["$datadir/doc/skribilo"]) -AC_SUBST([SKRIBILO_EXT_DIR], ["$datadir/skribilo/$PACKAGE_VERSION/"]) -AC_SUBST([SKRIBILO_SKR_PATH], ["$GUILE_SITE/"]) - AC_OUTPUT([Makefile po/Makefile.in src/Makefile src/guile/Makefile src/guile/skribilo/Makefile - src/guile/skribilo/config.scm src/guile/skribilo/utils/Makefile src/guile/skribilo/engine/Makefile src/guile/skribilo/reader/Makefile diff --git a/doc/modules/skribilo/documentation/env.scm b/doc/modules/skribilo/documentation/env.scm index 569f194..6e31afa 100644 --- a/doc/modules/skribilo/documentation/env.scm +++ b/doc/modules/skribilo/documentation/env.scm @@ -1,7 +1,7 @@ ;;; env.scm -- The environment variables for the documentation. ;;; +;;; Copyright 2005, 2006, 2007 Ludovic Courtès ;;; Copyright 2003, 2004 Manuel Serrano -;;; Copyright 2005, 2006 Ludovic Courtès ;;; ;;; ;;; This program is free software; you can redistribute it and/or modify @@ -25,7 +25,7 @@ (define-public *serrano-url* "http://www.inria.fr/mimosa/Manuel.Serrano") (define-public *serrano-mail* "Manuel.Serrano@sophia.inria.fr") -(define-public *courtes-mail* "ludovic.courtes@laas.fr") +(define-public *courtes-mail* "ludo@gnu.org") (define-public *html-url* "http://www.w3.org/TR/html4") (define-public *html-form* "interact/forms.html") (define-public *emacs-url* "http://www.gnu.org/software/emacs") @@ -33,8 +33,11 @@ (define-public *texinfo-url* "http://www.texinfo.org") (define-public *r5rs-url* "http://www.inria.fr/mimosa/fp/Bigloo/doc/r5rs.html") (define-public *bigloo-url* "http://www.inria.fr/mimosa/fp/Bigloo") -(define-public *skribe-user-doc-url* (string-append (skribe-doc-dir) "/user.html")) -(define-public *skribe-dir-doc-url* (string-append (skribe-doc-dir) "/dir.html")) + +(define-public *skribe-user-doc-url* + (string-append (skribilo-doc-directory) "/user.html")) +(define-public *skribe-dir-doc-url* + (string-append (skribilo-doc-directory) "/dir.html")) (define-public *prgm-width* 97.) (define-public *prgm-skribe-color* "#ffffcc") diff --git a/src/guile/skribilo/Makefile.am b/src/guile/skribilo/Makefile.am index c872d64..3846af4 100644 --- a/src/guile/skribilo/Makefile.am +++ b/src/guile/skribilo/Makefile.am @@ -10,4 +10,12 @@ dist_module_DATA = biblio.scm color.scm config.scm \ SUBDIRS = utils reader engine package source biblio +CLEANFILES = config.scm + +include $(top_srcdir)/substitute.am + +.in: + $(substitute) "$^" > "$@.tmp" && \ + mv "$@.tmp" "$@" + include $(top_srcdir)/guile-lint.am diff --git a/src/guile/skribilo/config.scm.in b/src/guile/skribilo/config.scm.in index 545612c..3d9c027 100644 --- a/src/guile/skribilo/config.scm.in +++ b/src/guile/skribilo/config.scm.in @@ -1,20 +1,35 @@ -;;; -*- Scheme -*- +;;; config.scm -- Skribilo configuration. ;;; +;;; Copyright 2005, 2006, 2007 Ludovic Courtès +;;; +;;; +;;; 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. -(define-module (skribilo config)) +(define-module (skribilo config) + :export (skribilo-version skribilo-url + skribilo-module-directory skribilo-doc-directory + skribilo-scheme)) -(define-public (skribilo-release) "1.2") -(define-public (skribilo-url) "http://www.nongnu.org/skribilo/") -(define-public (skribilo-doc-directory) "@SKRIBILO_DOC_DIR@") -(define-public (skribilo-extension-directory) "@SKRIBILO_EXT_DIR@") -(define-public (skribilo-default-path) "@SKRIBILO_SKR_PATH@") -(define-public (skribilo-scheme) "guile") +(define (skribilo-version) "@PACKAGE_VERSION@") +(define (skribilo-url) "http://www.nongnu.org/skribilo/") +(define (skribilo-module-directory) "@guilemoduledir@") +(define (skribilo-scheme) "@GUILE@") +(define (skribilo-doc-directory) "@docdir@") -;; Compatibility. -(define-public skribe-release skribilo-release) -(define-public skribe-url skribilo-url) -(define-public skribe-doc-dir skribilo-doc-directory) -(define-public skribe-ext-dir skribilo-extension-directory) -(define-public skribe-default-path skribilo-default-path) -(define-public skribe-scheme skribilo-scheme) +;;; Local Variables: +;;; coding: latin-1 +;;; End: diff --git a/src/guile/skribilo/engine/context.scm b/src/guile/skribilo/engine/context.scm index c56c9cf..970b35f 100644 --- a/src/guile/skribilo/engine/context.scm +++ b/src/guile/skribilo/engine/context.scm @@ -33,7 +33,7 @@ :autoload (skribilo output) (output *document-being-output*) :autoload (skribilo color) (color->rgb document-used-colors) - :autoload (skribilo config) (skribilo-release) + :autoload (skribilo config) (skribilo-version) :use-module (ice-9 optargs) :use-module (ice-9 receive) :export (context-engine @@ -430,7 +430,7 @@ (display "% interface=en output=pdftex\n") (display "%%%% -*- TeX -*-\n") (format #t "%%%% File automatically generated by Skribilo ~A\n\n" - (skribilo-release)) + (skribilo-version)) ;; Make URLs active (display "\\setupinteraction[state=start]\n") ;; Choose the document font diff --git a/src/guile/skribilo/engine/lout.scm b/src/guile/skribilo/engine/lout.scm index e9483dd..49365ca 100644 --- a/src/guile/skribilo/engine/lout.scm +++ b/src/guile/skribilo/engine/lout.scm @@ -710,8 +710,8 @@ ;; Extra PDF information, an alist of key-value ;; pairs (string pairs). - (pdf-extra-info (("SkribeVersion" - ,(skribilo-release)))) + (pdf-extra-info (("SkribiloVersion" + ,(skribilo-version)))) ;; Tells whether to produce PDF "docinfo" ;; (meta-information with title, author, diff --git a/src/guile/skribilo/utils/compat.scm b/src/guile/skribilo/utils/compat.scm index 8ba4a7d..8af3240 100644 --- a/src/guile/skribilo/utils/compat.scm +++ b/src/guile/skribilo/utils/compat.scm @@ -24,6 +24,7 @@ :use-module (skribilo utils files) :use-module (skribilo parameters) :use-module (skribilo evaluator) + :use-module (skribilo config) :use-module (skribilo color) :use-module (skribilo lib) :use-module (srfi srfi-1) @@ -68,6 +69,18 @@ ((string? (car obj)) (list (car obj))) (else (skribe-error 'gensym "invalid argument" obj)))))) + +;;; +;;; Configuration. +;;; + +(define-public skribe-release skribilo-version) +(define-public skribe-url skribilo-url) +(define-public skribe-doc-dir skribilo-doc-directory) +(define-public skribe-ext-dir skribilo-module-directory) +(define-public skribe-default-path skribilo-module-directory) +(define-public skribe-scheme skribilo-scheme) + ;;; ;;; Global variables that have been replaced by parameter objects -- cgit v1.2.3