From 7b26e41dbe1554a5237f1660f6726407c1d0af94 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Thu, 27 Nov 2025 15:01:13 +0000 Subject: [PATCH 01/22] 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/22] 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/22] 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/22] 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/22] 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/22] 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/22] 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/22] 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/22] 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/22] 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/22] 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' From 794dd8dc0f9dcbc470ab07d343b9b2a2f9a818c2 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Tue, 2 Dec 2025 17:01:44 +0000 Subject: [PATCH 12/22] Adding back the clean dependency to distclean, since the build fails for some strange reason without it. --- Makefile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.in b/Makefile.in index fd634ce53..2d67d7201 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: +distclean: clean rm -rf build Makefile # `realclean' From 0d7e3010ecb3fe98000a047f9f88c03b06767c8f Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Mon, 23 Mar 2026 14:13:26 +0000 Subject: [PATCH 13/22] Added an action for building the pdf manual. --- .gitlab-ci.yml | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d52f9bea7..68f89705f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,3 +1,19 @@ +build-manual-pdf: + stage: build + # instead of calling g++ directly you can also use some build toolkit like make + # install the necessary build tools when needed + # before_script: + # - apt update && apt -y install make autoconf + artifacts: + paths: + - target-dir + script: + - ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ + - cd build/doc/manual && make + rules: + - if: $CI_COMMIT_BRANCH == "develop" + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + build: stage: build # instead of calling g++ directly you can also use some build toolkit like make @@ -14,7 +30,7 @@ build: rules: - if: $CI_COMMIT_BRANCH == "develop" - if: $CI_PIPELINE_SOURCE == "merge_request_event" - + # run self-tests using the binary built before test-self: stage: test From 0f00fea24c71221a01bdb155b67992beeb0dc734 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Mon, 23 Mar 2026 14:25:35 +0000 Subject: [PATCH 14/22] Combined manual building with building. --- .gitlab-ci.yml | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 68f89705f..1d4292110 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,19 +1,3 @@ -build-manual-pdf: - stage: build - # instead of calling g++ directly you can also use some build toolkit like make - # install the necessary build tools when needed - # before_script: - # - apt update && apt -y install make autoconf - artifacts: - paths: - - target-dir - script: - - ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ - - cd build/doc/manual && make - rules: - - if: $CI_COMMIT_BRANCH == "develop" - - if: $CI_PIPELINE_SOURCE == "merge_request_event" - build: stage: build # instead of calling g++ directly you can also use some build toolkit like make @@ -26,6 +10,7 @@ build: script: - ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ - make + - cd build/doc/manual && make ecl-manual.pdf && ls -l ecl-manual.pdf - make install rules: - if: $CI_COMMIT_BRANCH == "develop" From 37f98ef27cedede34f208a429b34c547d5d6f78e Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Mon, 23 Mar 2026 15:38:32 +0000 Subject: [PATCH 15/22] Added some debugging folder printing and a make of the manual inside the source folder. --- .gitlab-ci.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1d4292110..318889869 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,10 +8,11 @@ build: paths: - target-dir script: - - ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ - - make - - cd build/doc/manual && make ecl-manual.pdf && ls -l ecl-manual.pdf - - make install + - pwd && ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ + - pwd && make + - pwd && cd build/doc/ && make && cd manual && make ecl-manual.pdf && ls -l ecl-manual.pdf + - pwd && cd src/doc/manual && make ecl-manual.pdf && ls -l ecl-manual.pdf + - pwd && make install rules: - if: $CI_COMMIT_BRANCH == "develop" - if: $CI_PIPELINE_SOURCE == "merge_request_event" From 5850efd9406334d43249a0e07e0e40aa0d7fc7f6 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Mon, 23 Mar 2026 16:52:35 +0000 Subject: [PATCH 16/22] Moved doc-making before ecl binary make. --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 318889869..8580fa9be 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -9,9 +9,9 @@ build: - target-dir script: - pwd && ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ + - pwd && make doc && cd build/doc/ ; ls -R ; cat Makefile ; make manual ; ls ; cd manual ; make ecl-manual.pdf ; ls -l ecl-manual.pdf + - pwd && cd src/doc/ ; ls -R ; cat Makefile - pwd && make - - pwd && cd build/doc/ && make && cd manual && make ecl-manual.pdf && ls -l ecl-manual.pdf - - pwd && cd src/doc/manual && make ecl-manual.pdf && ls -l ecl-manual.pdf - pwd && make install rules: - if: $CI_COMMIT_BRANCH == "develop" From 93ab7dd24d60ef81bf1dbc57731778b056d97bb3 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Mon, 23 Mar 2026 17:06:26 +0000 Subject: [PATCH 17/22] Added texinfo/latex prerequisites. --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8580fa9be..b84c926ee 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,8 +2,8 @@ build: stage: build # instead of calling g++ directly you can also use some build toolkit like make # install the necessary build tools when needed - # before_script: - # - apt update && apt -y install make autoconf + before_script: + - apt update && apt -y install texinfo texlive-latex-base texlive-base artifacts: paths: - target-dir From d49f43988f63b8105a750ee78fe8c10de1ed18a0 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Mon, 23 Mar 2026 17:18:09 +0000 Subject: [PATCH 18/22] Added texlive-plain-generic in the prerequisites Copied final manual to the artifacts folder. --- .gitlab-ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b84c926ee..262f26beb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,16 +3,16 @@ build: # instead of calling g++ directly you can also use some build toolkit like make # install the necessary build tools when needed before_script: - - apt update && apt -y install texinfo texlive-latex-base texlive-base + - apt update && apt -y install texinfo texlive-latex-base texlive-base texlive-plain-generic artifacts: paths: - target-dir script: - pwd && ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ - - pwd && make doc && cd build/doc/ ; ls -R ; cat Makefile ; make manual ; ls ; cd manual ; make ecl-manual.pdf ; ls -l ecl-manual.pdf - - pwd && cd src/doc/ ; ls -R ; cat Makefile - - pwd && make - - pwd && make install + - pwd && make doc && cd build/doc/ ; ls ; make manual ; ls ; cd manual ; make ecl-manual.pdf ; ls -l ecl-manual.pdf && cp -p ecl-manual.pdf ${CI_PROJECT_DIR}/target-dir/ + # - pwd && cd src/doc/ ; ls -R ; cat Makefile + # - pwd && make + # - pwd && make install rules: - if: $CI_COMMIT_BRANCH == "develop" - if: $CI_PIPELINE_SOURCE == "merge_request_event" From 8171da6bdc1936ad9680b88d7eac595f840e8585 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Mon, 23 Mar 2026 17:26:23 +0000 Subject: [PATCH 19/22] Removed texlive-latex-base from the prerequisites Creating target-dir before make. --- .gitlab-ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 262f26beb..5b4b2cbac 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,13 +3,13 @@ build: # instead of calling g++ directly you can also use some build toolkit like make # install the necessary build tools when needed before_script: - - apt update && apt -y install texinfo texlive-latex-base texlive-base texlive-plain-generic + - apt update && apt -y install texinfo texlive-base texlive-plain-generic artifacts: paths: - target-dir script: - - pwd && ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ - - pwd && make doc && cd build/doc/ ; ls ; make manual ; ls ; cd manual ; make ecl-manual.pdf ; ls -l ecl-manual.pdf && cp -p ecl-manual.pdf ${CI_PROJECT_DIR}/target-dir/ + - ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ + - mkdir -p ${CI_PROJECT_DIR}/target-dir/ && make doc && cd build/doc/ ; make manual ; cd manual ; make ecl-manual.pdf ; ls -l ecl-manual.pdf && cp -p ecl-manual.pdf ${CI_PROJECT_DIR}/target-dir/ # - pwd && cd src/doc/ ; ls -R ; cat Makefile # - pwd && make # - pwd && make install From 1b5e2fd9ef8a8bca9c1a0b15bb07a5abac76045e Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Mon, 23 Mar 2026 17:38:38 +0000 Subject: [PATCH 20/22] Created a separate job for the PDF manual. --- .gitlab-ci.yml | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5b4b2cbac..5e0d5383d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,18 +1,32 @@ -build: - stage: build +pdf-manual: + stage: doc # instead of calling g++ directly you can also use some build toolkit like make # install the necessary build tools when needed - before_script: + before_script: - apt update && apt -y install texinfo texlive-base texlive-plain-generic artifacts: paths: - target-dir - script: + script: - ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ - - mkdir -p ${CI_PROJECT_DIR}/target-dir/ && make doc && cd build/doc/ ; make manual ; cd manual ; make ecl-manual.pdf ; ls -l ecl-manual.pdf && cp -p ecl-manual.pdf ${CI_PROJECT_DIR}/target-dir/ - # - pwd && cd src/doc/ ; ls -R ; cat Makefile - # - pwd && make - # - pwd && make install + - mkdir -p ${CI_PROJECT_DIR}/target-dir/ ; make doc ; cd build/doc/ ; make manual ; cd manual ; make ecl-manual.pdf ; cp -p ecl-manual.pdf ${CI_PROJECT_DIR}/target-dir/ + rules: + - if: $CI_COMMIT_BRANCH == "develop" + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + +build: + stage: build + # instead of calling g++ directly you can also use some build toolkit like make + # install the necessary build tools when needed + # before_script: + # - apt update && apt -y install texinfo texlive-base texlive-plain-generic + artifacts: + paths: + - target-dir + script: + - ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ + - make + - make install rules: - if: $CI_COMMIT_BRANCH == "develop" - if: $CI_PIPELINE_SOURCE == "merge_request_event" From 2277b522d3fb09bb0127b9689bf30addc7c3181e Mon Sep 17 00:00:00 2001 From: Christos Kloukinas Date: Mon, 23 Mar 2026 17:41:28 +0000 Subject: [PATCH 21/22] Changed stage name "doc" with "build". --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5e0d5383d..7b4d4b451 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,5 @@ pdf-manual: - stage: doc + stage: build # instead of calling g++ directly you can also use some build toolkit like make # install the necessary build tools when needed before_script: From e2be81d40123bdaf2af835bc57ccf75952843cf3 Mon Sep 17 00:00:00 2001 From: c-kloukinas Date: Sun, 29 Mar 2026 23:54:13 +0100 Subject: [PATCH 22/22] Combined manual and ecl building in one task. --- .gitlab-ci.yml | 26 ++++++-------------------- 1 file changed, 6 insertions(+), 20 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7b4d4b451..a4ec90dcb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,31 +1,17 @@ -pdf-manual: - stage: build - # instead of calling g++ directly you can also use some build toolkit like make - # install the necessary build tools when needed - before_script: - - apt update && apt -y install texinfo texlive-base texlive-plain-generic - artifacts: - paths: - - target-dir - script: - - ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ - - mkdir -p ${CI_PROJECT_DIR}/target-dir/ ; make doc ; cd build/doc/ ; make manual ; cd manual ; make ecl-manual.pdf ; cp -p ecl-manual.pdf ${CI_PROJECT_DIR}/target-dir/ - rules: - - if: $CI_COMMIT_BRANCH == "develop" - - if: $CI_PIPELINE_SOURCE == "merge_request_event" - build: stage: build - # instead of calling g++ directly you can also use some build toolkit like make - # install the necessary build tools when needed - # before_script: - # - apt update && apt -y install texinfo texlive-base texlive-plain-generic + before_script: + - apt update && apt -y install texinfo texlive-base texlive-plain-generic + # instead of calling g++ directly you can also use some build toolkit like make + # install the necessary build tools when needed + # - apt update && apt -y install make autoconf artifacts: paths: - target-dir script: - ./configure --prefix=${CI_PROJECT_DIR}/target-dir/ - make + - mkdir -p ${CI_PROJECT_DIR}/target-dir/ ; make doc ; cd build/doc/ ; make manual ; cd manual ; make ecl-manual.pdf ; cp -p ecl-manual.pdf ${CI_PROJECT_DIR}/target-dir/ - make install rules: - if: $CI_COMMIT_BRANCH == "develop"