From 7b26e41dbe1554a5237f1660f6726407c1d0af94 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Thu, 27 Nov 2025 15:01:13 +0000 Subject: [PATCH 01/11] Renamed macro seealso, since texi2pdf was complaining about it being already defined (most possibly can be deleted entirely). --- src/doc/manual/macros.txi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/doc/manual/macros.txi b/src/doc/manual/macros.txi index f7e6e580b..57f8110a6 100644 --- a/src/doc/manual/macros.txi +++ b/src/doc/manual/macros.txi @@ -132,7 +132,7 @@ @inlinefmtifelse{html, @code{@ref{\code\}}, @code{\code\}} @end macro -@macro seealso{node} +@macro noseealso{node} @paragraph{See also} @coderef{\node\} @end macro From f22330aee58ad6243675ab355bb552fbc2df4010 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Thu, 27 Nov 2025 15:02:34 +0000 Subject: [PATCH 02/11] Adapted the Makefile to use a pdfetex wrapper when creating the pdf of the manual. The wrapper fixes any .aux file it finds locally, since pdftex was choking on it. Added extra files in the clean rule. --- src/doc/manual/Makefile | 5 +++-- src/doc/manual/z-texi2pdfetex-fix-aux | 21 +++++++++++++++++++++ 2 files changed, 24 insertions(+), 2 deletions(-) create mode 100755 src/doc/manual/z-texi2pdfetex-fix-aux diff --git a/src/doc/manual/Makefile b/src/doc/manual/Makefile index f82c28758..5d3e712a2 100644 --- a/src/doc/manual/Makefile +++ b/src/doc/manual/Makefile @@ -9,7 +9,7 @@ info: ecl.info.gz html: html/index.html manual.pdf: $(FILES) - texi2pdf manual.txi + PDFTEX=z-texi2pdfetex-fix-aux texi2pdf manual.txi ecl.info.gz: $(FILES) $(MAKEINFO) --no-split manual.txi @@ -22,4 +22,5 @@ html/index.html: $(FILES) cp -r figures html clean: - rm -rf *.{aux,cf,cfs,cp,cpp,cpps,cps,ex,exs,fn,fns,ft,fts,log,lsp,lsps,toc,tp,tps,vr,vrs,pdf,info,info-1,info-2,info.gz,html} html + -rm -rf *.{aux,cf,cfs,cp,cpp,cpps,cps,ex,exs,fn,fns,ft,fts,log,lsp,lsps,toc,tp,tps,vr,vrs,pdf,info,info-1,info-2,info.gz,html} html \ + manual.[ceflvpa]* manual.toc manual.tp diff --git a/src/doc/manual/z-texi2pdfetex-fix-aux b/src/doc/manual/z-texi2pdfetex-fix-aux new file mode 100755 index 000000000..c0723703d --- /dev/null +++ b/src/doc/manual/z-texi2pdfetex-fix-aux @@ -0,0 +1,21 @@ +#! /bin/sh - + +for f in x *.aux ; do + if [ -f $f ] ; then + sed -e 's/@unhbox @voidb@x @kern .07em @vbox {@hrule width.3em height.1ex}@kern .07em//' \ + < ${f} > temp + mv temp $f + fi +done + +pdfetex $* + +for f in x *.aux ; do + if [ -f $f ] ; then + sed -e 's/@unhbox @voidb@x @kern .07em @vbox {@hrule width.3em height.1ex}@kern .07em//' \ + < ${f} > temp + mv temp $f + fi +done + +echo 'Called '$0 >&2 From 94f92454b0ed90bfebce03087eba7d53f5b99cbc Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Thu, 27 Nov 2025 15:32:56 +0000 Subject: [PATCH 03/11] Added manual.tps in the files that clean should remove. --- src/doc/manual/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/doc/manual/Makefile b/src/doc/manual/Makefile index 5d3e712a2..83c96be46 100644 --- a/src/doc/manual/Makefile +++ b/src/doc/manual/Makefile @@ -23,4 +23,4 @@ html/index.html: $(FILES) clean: -rm -rf *.{aux,cf,cfs,cp,cpp,cpps,cps,ex,exs,fn,fns,ft,fts,log,lsp,lsps,toc,tp,tps,vr,vrs,pdf,info,info-1,info-2,info.gz,html} html \ - manual.[ceflvpa]* manual.toc manual.tp + manual.[ceflvpa]* manual.toc manual.tp manual.tps From f09058f12fe87e82e1f1f46ae704603cd04889de Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Fri, 28 Nov 2025 12:37:51 +0000 Subject: [PATCH 04/11] Added local script to be called first instead of texi2pdf, so that it can set both the PDFTEX and the PATH variables before calling the real texi2pdf. In this way, the real texi2pdf knows which PDFTEX to use (z-texi2pdfetex-fix-aux) and where to find it (the current directory). --- src/doc/manual/Makefile | 2 +- src/doc/manual/x-texi2pdf | 7 +++++++ src/doc/manual/z-texi2pdfetex-fix-aux | 2 -- 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100755 src/doc/manual/x-texi2pdf diff --git a/src/doc/manual/Makefile b/src/doc/manual/Makefile index 83c96be46..12775c6ec 100644 --- a/src/doc/manual/Makefile +++ b/src/doc/manual/Makefile @@ -9,7 +9,7 @@ info: ecl.info.gz html: html/index.html manual.pdf: $(FILES) - PDFTEX=z-texi2pdfetex-fix-aux texi2pdf manual.txi + ./x-texi2pdf manual.txi ecl.info.gz: $(FILES) $(MAKEINFO) --no-split manual.txi diff --git a/src/doc/manual/x-texi2pdf b/src/doc/manual/x-texi2pdf new file mode 100755 index 000000000..a7382c76c --- /dev/null +++ b/src/doc/manual/x-texi2pdf @@ -0,0 +1,7 @@ +#! /bin/sh - + +export PATH=.:${PATH} + +export PDFTEX=z-texi2pdfetex-fix-aux + +texi2pdf $* diff --git a/src/doc/manual/z-texi2pdfetex-fix-aux b/src/doc/manual/z-texi2pdfetex-fix-aux index c0723703d..eda746321 100755 --- a/src/doc/manual/z-texi2pdfetex-fix-aux +++ b/src/doc/manual/z-texi2pdfetex-fix-aux @@ -17,5 +17,3 @@ for f in x *.aux ; do mv temp $f fi done - -echo 'Called '$0 >&2 From a1a29baf11ca6b8365a852283c19f0e60a1b7ed8 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Fri, 28 Nov 2025 16:13:31 +0000 Subject: [PATCH 05/11] Added the full path to the local script, so that texi2pdf can find it always. --- src/doc/manual/Makefile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/doc/manual/Makefile b/src/doc/manual/Makefile index 12775c6ec..b25aba539 100644 --- a/src/doc/manual/Makefile +++ b/src/doc/manual/Makefile @@ -1,5 +1,7 @@ FILES= *.txi */*.txi figures/* +CWD=$(shell pwd) + .PHONY: all pdf info html all: pdf info html @@ -9,7 +11,7 @@ info: ecl.info.gz html: html/index.html manual.pdf: $(FILES) - ./x-texi2pdf manual.txi + PDFTEX=$(CWD)/z-texi2pdfetex-fix-aux texi2pdf manual.txi ecl.info.gz: $(FILES) $(MAKEINFO) --no-split manual.txi From 18205a73071fa5618d9a913440fb5abef81b252d Mon Sep 17 00:00:00 2001 From: Christos Kloukinas Date: Fri, 28 Nov 2025 16:17:09 +0000 Subject: [PATCH 06/11] Delete x-texi2pdf --- src/doc/manual/x-texi2pdf | 7 ------- 1 file changed, 7 deletions(-) delete mode 100755 src/doc/manual/x-texi2pdf diff --git a/src/doc/manual/x-texi2pdf b/src/doc/manual/x-texi2pdf deleted file mode 100755 index a7382c76c..000000000 --- a/src/doc/manual/x-texi2pdf +++ /dev/null @@ -1,7 +0,0 @@ -#! /bin/sh - - -export PATH=.:${PATH} - -export PDFTEX=z-texi2pdfetex-fix-aux - -texi2pdf $* From 4ead2c628daf5429a8bf4fbc31a8d5a2f9c6b874 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Tue, 2 Dec 2025 15:38:39 +0000 Subject: [PATCH 07/11] Deleted this file as it's no longer needed. --- src/doc/manual/x-texi2pdf | 7 ------- 1 file changed, 7 deletions(-) delete mode 100755 src/doc/manual/x-texi2pdf diff --git a/src/doc/manual/x-texi2pdf b/src/doc/manual/x-texi2pdf deleted file mode 100755 index a7382c76c..000000000 --- a/src/doc/manual/x-texi2pdf +++ /dev/null @@ -1,7 +0,0 @@ -#! /bin/sh - - -export PATH=.:${PATH} - -export PDFTEX=z-texi2pdfetex-fix-aux - -texi2pdf $* From 5e08ada7918e923b1d0de018c579b27007080033 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Tue, 2 Dec 2025 15:39:16 +0000 Subject: [PATCH 08/11] Added braces around argument of @seealso. --- src/doc/manual/user-guide/embedding.txi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/doc/manual/user-guide/embedding.txi b/src/doc/manual/user-guide/embedding.txi index 8ce25c2d4..53609377e 100644 --- a/src/doc/manual/user-guide/embedding.txi +++ b/src/doc/manual/user-guide/embedding.txi @@ -215,7 +215,7 @@ When embedding ECL it is normally advisable to set up an @code{unwind-protect} f Besides this, normal mechanisms for exit, such as @coderef{ext:quit}, and uncaught exceptions, such as serious signals (@xref{Signals and Interrupts - Synchronous signals}), are best handled using @code{unwind-protect} blocks. -@seealso ECL_CATCH_ALL +@seealso{ECL_CATCH_ALL} @end defmac @cppdef ecl_clear_interrupts From 669fe45de8b3a35b18bb49b79bf53ecc5f37f27a Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Tue, 2 Dec 2025 16:04:30 +0000 Subject: [PATCH 09/11] Minor fixes to resolve some warnings when making the html version. --- src/doc/manual/manual.txi | 4 ++-- src/doc/manual/standards/characters.txi | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/doc/manual/manual.txi b/src/doc/manual/manual.txi index a11a9190b..7107e9f2b 100644 --- a/src/doc/manual/manual.txi +++ b/src/doc/manual/manual.txi @@ -26,9 +26,9 @@ @noindent Copyright @copyright{} 2015, Daniel KochmaƄski -@noindent +@c @noindent @c noindent here causes warnings Copyright @copyright{} 2000, Juan Jose Garcia-Ripoll -@noindent +@c @noindent @c noindent here causes warnings Copyright @copyright{} 1990, Giuseppe Attardi @end ifinfo diff --git a/src/doc/manual/standards/characters.txi b/src/doc/manual/standards/characters.txi index e3e498372..f5d6c4352 100644 --- a/src/doc/manual/standards/characters.txi +++ b/src/doc/manual/standards/characters.txi @@ -4,12 +4,12 @@ ECL is fully ANSI Common-Lisp compliant in all aspects of the character data type, with the following peculiarities. @menu -* Characters - Unicode vs. POSIX locale:: +* Characters - Unicode vs POSIX locale:: * Characters - Newline characters:: * Characters - C Reference:: @end menu -@node Characters - Unicode vs. POSIX locale +@node Characters - Unicode vs POSIX locale @subsection Unicode vs. POSIX locale @cfindex --enable-unicode [32|16|no] From 8771084a8d773b3fd313dd4cf28da8fb85c23598 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Tue, 2 Dec 2025 16:14:42 +0000 Subject: [PATCH 10/11] Cleaned up Makefile, to avoid repetitions. --- src/doc/manual/Makefile | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/src/doc/manual/Makefile b/src/doc/manual/Makefile index b25aba539..cd280f49f 100644 --- a/src/doc/manual/Makefile +++ b/src/doc/manual/Makefile @@ -1,28 +1,36 @@ FILES= *.txi */*.txi figures/* +MANNAME=ecl-manual +HTMLDIR=$(MANNAME) +PDFNAME=$(MANNAME).pdf +# left this as "ecl" for historic reasons +INFONAME=ecl.info + CWD=$(shell pwd) .PHONY: all pdf info html all: pdf info html -pdf: manual.pdf +pdf: $(PDFNAME) info: ecl.info.gz -html: html/index.html +html: $(HTMLDIR)/index.html -manual.pdf: $(FILES) - PDFTEX=$(CWD)/z-texi2pdfetex-fix-aux texi2pdf manual.txi +ecl-manual.pdf: $(FILES) + PDFTEX=$(CWD)/z-texi2pdfetex-fix-aux texi2pdf manual.txi \ + && cp -pf manual.pdf $(PDFNAME) ecl.info.gz: $(FILES) - $(MAKEINFO) --no-split manual.txi - gzip < ecl.info > ecl.info.gz + $(MAKEINFO) -o $(INFONAME) --no-split manual.txi + gzip < $(INFONAME) > $(INFONAME).gz -html/index.html: $(FILES) - $(MAKEINFO) --html --css-include=ecl.css --split=section manual.txi - rm -rf html - mv ecl html - cp -r figures html +$(HTMLDIR)/index.html: $(FILES) + -rm -rf $(HTMLDIR)/ + $(MAKEINFO) -o $(HTMLDIR) --html --css-include=ecl.css --split=section manual.txi + cp -r figures $(HTMLDIR)/ clean: - -rm -rf *.{aux,cf,cfs,cp,cpp,cpps,cps,ex,exs,fn,fns,ft,fts,log,lsp,lsps,toc,tp,tps,vr,vrs,pdf,info,info-1,info-2,info.gz,html} html \ - manual.[ceflvpa]* manual.toc manual.tp manual.tps + -rm -rf *.{aux,cf,cfs,cp,cpp,cpps,cps,ex,exs,fn,fns,ft,fts,log,lsp,lsps,toc,tp,tps,vr,vrs,pdf,info,info-1,info-2,info.gz,html} html/ \ + manual.[ceflvpa]* manual.toc manual.tp manual.tps \ + $(PDFNAME) $(HTMLDIR)/ \ + $(INFONAME) $(INFONAME).gz From 5f096a5a636508f6d6dab794d0d50300812504ec Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Tue, 2 Dec 2025 16:40:03 +0000 Subject: [PATCH 11/11] make distclean breaks after a clean - it shouldn't since the latter cleans inside build/ while the former deletes build/ and Makefile. --- Makefile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.in b/Makefile.in index 2d67d7201..fd634ce53 100644 --- a/Makefile.in +++ b/Makefile.in @@ -101,7 +101,7 @@ clean: # `make distclean' should leave only the files that were in the # distribution. -distclean: clean +distclean: rm -rf build Makefile # `realclean'