From 7c3f183356ffacd3dec001808f88a5abfa88ee2b Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Wed, 3 Jan 2007 19:27:37 +0100 Subject: [PATCH] Write *-systems.tex* as last act. Obviates the '% eof' grep. --- make/ly-rules.make | 2 -- scm/framework-eps.scm | 31 ++++++++++++++++++------------- 2 files changed, 18 insertions(+), 15 deletions(-) diff --git a/make/ly-rules.make b/make/ly-rules.make index 8b59dc9619..2e9e5ff022 100644 --- a/make/ly-rules.make +++ b/make/ly-rules.make @@ -7,12 +7,10 @@ $(outdir)/%.latex: %.doc # don't do ``cd $(outdir)'', and assume that $(outdir)/.. is the src dir. # it is not, for --srcdir builds $(outdir)/%.texi: %.tely - rm -f $$(grep -LF '% eof' $(outdir)/lily-*systems.*tex 2>/dev/null) $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --process='$(LILYPOND_BINARY) $(LILYPOND_BOOK_INCLUDES)' --output=$(outdir) --format=$(LILYPOND_BOOK_FORMAT) $(LILYPOND_BOOK_FLAGS) $< $(outdir)/%.texi: $(outdir)/%.tely - rm -f $$(grep -LF '% eof' $(outdir)/lily-*systems.*tex 2>/dev/null) $(PYTHON) $(LILYPOND_BOOK) $(LILYPOND_BOOK_INCLUDES) --process='$(LILYPOND_BINARY) $(LILYPOND_BOOK_INCLUDES)' --output=$(outdir) --format=$(LILYPOND_BOOK_FORMAT) $(LILYPOND_BOOK_FLAGS) $< # # DON'T REMOVE SOURCE FILES, otherwise the .TEXI ALWAYS OUT OF DATE. diff --git a/scm/framework-eps.scm b/scm/framework-eps.scm index f7003bac2a..cf9bec54b3 100644 --- a/scm/framework-eps.scm +++ b/scm/framework-eps.scm @@ -82,18 +82,22 @@ stencil, so LaTeX includegraphics doesn't fuck up the alignment." (dump-stencils-as-separate-EPS rest (1+ count))))) ;; main body - (let* ((tex-system-name (format "~a-systems.tex" basename)) - (texi-system-name (format "~a-systems.texi" basename)) - (tex-system-port (open-output-file tex-system-name)) - (texi-system-port (open-output-file texi-system-name)) + (let* ((write-file (lambda (str-port ext) + (let* + ((name (format "~a-systems.~a" basename ext)) + (port (open-output-file name))) + (ly:message (_ "Writing ~a...") name) + (display (get-output-string str-port) port) + (close-output-port port) + ))) + + (tex-system-port (open-output-string)) + (texi-system-port (open-output-string)) (widened-stencils (widen-left-stencil-edges stencils)) (counted-systems (count-list widened-stencils)) (eps-files (map dump-counted-stencil counted-systems)) ) - (ly:message (_ "Writing ~a...") tex-system-name) - (ly:message (_ "Writing ~a...") texi-system-name) - (if do-pdf ;; par-for-each: a bit faster ... @@ -116,15 +120,16 @@ stencil, so LaTeX includegraphics doesn't fuck up the alignment." basename (1+ c)) texi-system-port)) (iota (length stencils))) - (display "@c eof - 'eof' is a Makefile marker; do not remove. " texi-system-port) - (display "% eof - 'eof' is Makefile marker; do not remove. " tex-system-port) - - (close-output-port texi-system-port) - (close-output-port tex-system-port) + (display "@c eof." texi-system-port) + (display "% eof. " tex-system-port) (dump-infinite-stack-EPS stencils) (postprocess-output book framework-eps-module - (format "~a.eps" basename) (ly:output-formats)))) + (format "~a.eps" basename) (ly:output-formats)) + + (write-file texi-system-port "texi") + (write-file tex-system-port "tex") + )) -- 2.39.5