# Copyright 2005, 2006, 2007, 2008, 2009, 2010, 2012, # 2015, 2018, 2020 Ludovic Courtès <ludo@gnu.org> # Copyright 2022 Arun Isaac <arunisaac@systemreboot.net> # # This file is part of Skribilo. # # Skribilo is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 3 of the License, or (at # your option) any later version. # # Skribilo 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 Lesser # General Public License for more details. # # You should have received a copy of the GNU Lesser General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. moduledir = $(guilemoduledir) EXTRA_DIST = \ README \ skribilo/source/lisp-lex.l \ skribilo/source/xml-lex.l skribilo/source/c-lex.l \ skribilo/utils/images.in skribilo/config.in SOURCES = \ skribilo.scm diff.scm \ skribilo/biblio/bibtex.scm skribilo/biblio/author.scm \ skribilo/biblio/abbrev.scm skribilo/biblio/template.scm \ skribilo/utils/syntax.scm skribilo/utils/compat.scm \ skribilo/utils/files.scm skribilo/utils/keywords.scm \ skribilo/utils/strings.scm \ skribilo/source/parameters.scm skribilo/source/c.scm \ skribilo/source/lisp.scm skribilo/source/xml.scm \ skribilo/biblio.scm skribilo/color.scm \ skribilo/debug.scm skribilo/engine.scm skribilo/evaluator.scm \ skribilo/index.scm skribilo/lib.scm skribilo/module.scm \ skribilo/output.scm skribilo/prog.scm \ skribilo/reader.scm skribilo/resolve.scm \ skribilo/source.scm skribilo/parameters.scm skribilo/verify.scm \ skribilo/writer.scm skribilo/ast.scm skribilo/location.scm \ skribilo/condition.scm skribilo/sui.scm \ skribilo/table.scm skribilo/utils/justify.scm \ skribilo/utils/text-table.scm SOURCES += $(readers) $(packages) $(engines) readers = \ skribilo/reader/skribe.scm skribilo/reader/outline.scm if BUILD_RSS2_READER readers += skribilo/reader/rss-2.scm else !BUILD_RSS2_READER EXTRA_DIST += skribilo/reader/rss-2.scm endif !BUILD_RSS2_READER if BUILD_GEMTEXT_READER readers += skribilo/reader/gemtext.scm else !BUILD_GEMTEXT_READER EXTRA_DIST += skribilo/reader/gemtext.scm endif !BUILD_GEMTEXT_READER engines = \ skribilo/engine/base.scm skribilo/engine/context.scm \ skribilo/engine/html.scm skribilo/engine/html4.scm \ skribilo/engine/latex.scm skribilo/engine/lout.scm \ skribilo/engine/xml.scm skribilo/engine/info.scm packages = \ skribilo/package/acmproc.scm skribilo/package/french.scm \ skribilo/package/jfp.scm skribilo/package/letter.scm \ skribilo/package/lncs.scm skribilo/package/scribe.scm \ skribilo/package/sigplan.scm skribilo/package/slide.scm \ skribilo/package/web-article.scm skribilo/package/web-book.scm \ skribilo/package/eq.scm skribilo/package/pie.scm \ skribilo/package/base.scm skribilo/package/diff.scm \ skribilo/package/html-navtabs.scm skribilo/package/web-book2.scm \ skribilo/package/pie/lout.scm skribilo/package/eq/lout.scm \ skribilo/package/slide/base.scm skribilo/package/slide/latex.scm \ skribilo/package/slide/html.scm skribilo/package/slide/lout.scm # Generated files part of the distribution. SOURCES += \ skribilo/source/lisp-lex.scm skribilo/source/xml-lex.scm \ skribilo/source/c-lex.scm CLEANFILES = $(nobase_nodist_module_DATA) include $(top_srcdir)/substitute.am include $(top_srcdir)/guilec.am # Generated files not part of the distribution. nobase_nodist_module_DATA = \ skribilo/config.scm \ skribilo/utils/images.scm nobase_nodist_guileobject_DATA += \ skribilo/config.go \ skribilo/utils/images.go BUILT_SOURCES = \ skribilo/config.scm \ skribilo/utils/images.scm .in.scm: $(AM_V_SUBSTITUTE)$(MKDIR_P) "`dirname $@`" ; \ $(substitute) "$^" > "$@.tmp" && \ mv "$@.tmp" "$@" #all-local: # if ! test -d "skribilo"; then mkdir "skribilo"; fi skribilo: mkdir "skribilo" && mkdir -p "skribilo/utils" && \ mkdir -p "skribilo/source" clean-local: -if test "$(top_builddir)" != "$(top_srcdir)"; \ then rm -rf "skribilo" ; fi # Building the lexers with SILex. You must have SILex installed in # `$(top_srcdir)/src/guile/silex'. The Git repository already contains # it. Otherwise, you can fetch it from # http://www.iro.umontreal.ca/~dube/silex-src.tar.gz . # # Note: Those files should normally be part of the distribution, making # this rule useless to the user. .l.scm: $(GUILE) -L $(top_srcdir)/src/guile/silex \ -c '(load-from-path "lex.scm") (lex "$^" "$@")' && \ mv "$@" "$@.tmp" && \ echo '(define-module (skribilo source $(^:skribilo/source/%.l=%))' \ > "$@" && \ echo ' #:use-module (skribilo lib)' >> "$@" && \ echo ' #:use-module (skribilo source parameters)' \ >> "$@" && \ echo ' #:use-module (srfi srfi-1)' >> "$@" && \ echo ' #:export (lexer-init lexer' >> "$@" && \ echo ' lexer-get-func-column' >> "$@" && \ echo ' lexer-get-func-offset' >> "$@" && \ echo ' lexer-get-line lexer-getc' >> "$@" && \ echo ' lexer-ungetc))' >> "$@" && \ cat "$@.tmp" >> "$@" && \ rm "$@.tmp"