From 06993b14b4c46f46e5956228cc0bfe50d71a173f Mon Sep 17 00:00:00 2001 From: Hannes Diethelm Date: Wed, 10 Jun 2026 13:30:12 +0200 Subject: [PATCH 1/6] CI: Add artefacts to doc --- .github/workflows/ci.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f24d4ed7f4c..3f64d0e363c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -161,6 +161,12 @@ jobs: run: | #*.po and documentation.pot are modifyed by build. Ignore them for now. .github/scripts/verify-clean-repo.sh ':(exclude)docs/po/*.po' ':(exclude)docs/po/documentation.pot' + - name: Upload build artifacts + uses: actions/upload-artifact@v7 + with: + name: linuxcnc-doc + path: docs/html*/ #Preserve the path for html + if-no-files-found: error package-arch: runs-on: ${{ matrix.runner }} From 23d7d5336ad5638756f02b5d0c2b3abac644f837 Mon Sep 17 00:00:00 2001 From: Hannes Diethelm Date: Wed, 10 Jun 2026 17:26:10 +0200 Subject: [PATCH 2/6] CI: Allow fail on sid The sid build shows still failed but other packages are built. --- .github/workflows/ci.yml | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3f64d0e363c..a7202a3f91e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -174,16 +174,27 @@ jobs: matrix: runner: ["ubuntu-24.04", "ubuntu-24.04-arm"] image: ["debian:bullseye", "debian:bookworm", "debian:trixie", "debian:sid"] + include: + - allow_fail: False + image: debian:bullseye + - allow_fail: False + image: debian:bookworm + - allow_fail: False + image: debian:trixie + - allow_fail: True + image: debian:sid container: image: ${{ matrix.image }} # IPC_OWNER is needed for shmget IPC_CREAT # SYS_ADMIN is needed for shmctl IPC_SET options: --cap-add=IPC_OWNER --cap-add=SYS_ADMIN + continue-on-error: ${{ matrix.allow_fail }} steps: - name: Dump GitHub context env: GITHUB_CONTEXT: ${{ toJson(github) }} run: | + echo Allow failure: ${{ matrix.allow_fail }} echo Number of CPUs: $(nproc) echo "$GITHUB_CONTEXT" - name: Install pre-dependencies @@ -257,16 +268,27 @@ jobs: strategy: matrix: image: ["debian:bullseye", "debian:bookworm", "debian:trixie", "debian:sid"] + include: + - allow_fail: False + image: debian:bullseye + - allow_fail: False + image: debian:bookworm + - allow_fail: False + image: debian:trixie + - allow_fail: True + image: debian:sid container: image: ${{ matrix.image }} # IPC_OWNER is needed for shmget IPC_CREAT # SYS_ADMIN is needed for shmctl IPC_SET options: --cap-add=IPC_OWNER --cap-add=SYS_ADMIN + continue-on-error: ${{ matrix.allow_fail }} steps: - name: Dump GitHub context env: GITHUB_CONTEXT: ${{ toJson(github) }} run: | + echo Allow failure: ${{ matrix.allow_fail }} echo Number of CPUs: $(nproc) echo "$GITHUB_CONTEXT" - name: Install pre-dependencies From f6e8efc7f385b5e03eb1cfadbac03416b6ce72d1 Mon Sep 17 00:00:00 2001 From: Hannes Diethelm Date: Thu, 18 Jun 2026 21:42:30 +0200 Subject: [PATCH 3/6] Remove executable flag from images There is no reason to have images executable --- configs/sim/woodpecker/tool_icons/ball_end_mill.png | Bin .../sim/woodpecker/tool_icons/ballend_straight.png | Bin configs/sim/woodpecker/tool_icons/center_drill.png | Bin configs/sim/woodpecker/tool_icons/drill.png | Bin configs/sim/woodpecker/tool_icons/gauge.png | Bin configs/sim/woodpecker/tool_icons/not_found.png | Bin configs/sim/woodpecker/tool_icons/probe.png | Bin .../sim/woodpecker/tool_icons/spiral_ball_end.png | Bin .../sim/woodpecker/tool_icons/spiral_downcut_2F.png | Bin configs/sim/woodpecker/tool_icons/spiral_upcut.png | Bin configs/sim/woodpecker/tool_icons/surfacing.png | Bin .../sim/woodpecker/tool_icons/tapered_ball_end.png | Bin configs/sim/woodpecker/tool_icons/upcut_spiral.png | Bin configs/sim/woodpecker/tool_icons/vbit-60.png | Bin configs/sim/woodpecker/tool_icons/vbit-90.png | Bin configs/sim/woodpecker/tool_icons/vbit-90deg.png | Bin .../src/getting-started/images/upgrading-to-2.9.png | Bin docs/src/gui/images/gremlin_extents_non-rotated.png | Bin docs/src/gui/images/gremlin_extents_rotated_30.png | Bin .../qtvcp/lib/auto_height/images/auto_height.png | Bin .../qtdragon_hd/images/tool_icons/ball_end_mill.png | Bin .../qtdragon_hd/images/tool_icons/center_drill.png | Bin .../screens/qtdragon_hd/images/tool_icons/drill.png | Bin .../qtdragon_hd/images/tool_icons/not_found.png | Bin .../screens/qtdragon_hd/images/tool_icons/probe.png | Bin .../qtdragon_hd/images/tool_icons/surfacing.png | Bin .../qtdragon_hd/images/tool_icons/upcut_spiral.png | Bin .../qtdragon_hd/images/tool_icons/vbit-90deg.png | Bin .../images/tool_icons/ball_end_mill.png | Bin .../images/tool_icons/center_drill.png | Bin .../qtdragon_hd_vert/images/tool_icons/drill.png | Bin .../images/tool_icons/not_found.png | Bin .../qtdragon_hd_vert/images/tool_icons/probe.png | Bin .../images/tool_icons/surfacing.png | Bin .../images/tool_icons/upcut_spiral.png | Bin .../images/tool_icons/vbit-90deg.png | Bin .../screens/woodpecker/tool_icons/ball_end_mill.png | Bin .../woodpecker/tool_icons/ballend_straight.png | Bin .../screens/woodpecker/tool_icons/center_drill.png | Bin share/qtvcp/screens/woodpecker/tool_icons/drill.png | Bin .../screens/woodpecker/tool_icons/not_found.png | Bin share/qtvcp/screens/woodpecker/tool_icons/probe.png | Bin .../woodpecker/tool_icons/spiral_downcut_2F.png | Bin .../screens/woodpecker/tool_icons/spiral_upcut.png | Bin .../screens/woodpecker/tool_icons/surfacing.png | Bin .../woodpecker/tool_icons/tapered_ball_end.png | Bin .../screens/woodpecker/tool_icons/upcut_spiral.png | Bin .../screens/woodpecker/tool_icons/vbit-90deg.png | Bin 48 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/ball_end_mill.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/ballend_straight.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/center_drill.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/drill.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/gauge.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/not_found.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/probe.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/spiral_ball_end.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/spiral_downcut_2F.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/spiral_upcut.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/surfacing.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/tapered_ball_end.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/upcut_spiral.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/vbit-60.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/vbit-90.png mode change 100755 => 100644 configs/sim/woodpecker/tool_icons/vbit-90deg.png mode change 100755 => 100644 docs/src/getting-started/images/upgrading-to-2.9.png mode change 100755 => 100644 docs/src/gui/images/gremlin_extents_non-rotated.png mode change 100755 => 100644 docs/src/gui/images/gremlin_extents_rotated_30.png mode change 100755 => 100644 lib/python/qtvcp/lib/auto_height/images/auto_height.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd/images/tool_icons/ball_end_mill.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd/images/tool_icons/center_drill.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd/images/tool_icons/drill.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd/images/tool_icons/not_found.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd/images/tool_icons/probe.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd/images/tool_icons/surfacing.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd/images/tool_icons/upcut_spiral.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd/images/tool_icons/vbit-90deg.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/ball_end_mill.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/center_drill.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/drill.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/not_found.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/probe.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/surfacing.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/upcut_spiral.png mode change 100755 => 100644 share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/vbit-90deg.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/ball_end_mill.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/ballend_straight.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/center_drill.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/drill.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/not_found.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/probe.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/spiral_downcut_2F.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/spiral_upcut.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/surfacing.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/tapered_ball_end.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/upcut_spiral.png mode change 100755 => 100644 share/qtvcp/screens/woodpecker/tool_icons/vbit-90deg.png diff --git a/configs/sim/woodpecker/tool_icons/ball_end_mill.png b/configs/sim/woodpecker/tool_icons/ball_end_mill.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/ballend_straight.png b/configs/sim/woodpecker/tool_icons/ballend_straight.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/center_drill.png b/configs/sim/woodpecker/tool_icons/center_drill.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/drill.png b/configs/sim/woodpecker/tool_icons/drill.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/gauge.png b/configs/sim/woodpecker/tool_icons/gauge.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/not_found.png b/configs/sim/woodpecker/tool_icons/not_found.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/probe.png b/configs/sim/woodpecker/tool_icons/probe.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/spiral_ball_end.png b/configs/sim/woodpecker/tool_icons/spiral_ball_end.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/spiral_downcut_2F.png b/configs/sim/woodpecker/tool_icons/spiral_downcut_2F.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/spiral_upcut.png b/configs/sim/woodpecker/tool_icons/spiral_upcut.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/surfacing.png b/configs/sim/woodpecker/tool_icons/surfacing.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/tapered_ball_end.png b/configs/sim/woodpecker/tool_icons/tapered_ball_end.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/upcut_spiral.png b/configs/sim/woodpecker/tool_icons/upcut_spiral.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/vbit-60.png b/configs/sim/woodpecker/tool_icons/vbit-60.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/vbit-90.png b/configs/sim/woodpecker/tool_icons/vbit-90.png old mode 100755 new mode 100644 diff --git a/configs/sim/woodpecker/tool_icons/vbit-90deg.png b/configs/sim/woodpecker/tool_icons/vbit-90deg.png old mode 100755 new mode 100644 diff --git a/docs/src/getting-started/images/upgrading-to-2.9.png b/docs/src/getting-started/images/upgrading-to-2.9.png old mode 100755 new mode 100644 diff --git a/docs/src/gui/images/gremlin_extents_non-rotated.png b/docs/src/gui/images/gremlin_extents_non-rotated.png old mode 100755 new mode 100644 diff --git a/docs/src/gui/images/gremlin_extents_rotated_30.png b/docs/src/gui/images/gremlin_extents_rotated_30.png old mode 100755 new mode 100644 diff --git a/lib/python/qtvcp/lib/auto_height/images/auto_height.png b/lib/python/qtvcp/lib/auto_height/images/auto_height.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd/images/tool_icons/ball_end_mill.png b/share/qtvcp/screens/qtdragon_hd/images/tool_icons/ball_end_mill.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd/images/tool_icons/center_drill.png b/share/qtvcp/screens/qtdragon_hd/images/tool_icons/center_drill.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd/images/tool_icons/drill.png b/share/qtvcp/screens/qtdragon_hd/images/tool_icons/drill.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd/images/tool_icons/not_found.png b/share/qtvcp/screens/qtdragon_hd/images/tool_icons/not_found.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd/images/tool_icons/probe.png b/share/qtvcp/screens/qtdragon_hd/images/tool_icons/probe.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd/images/tool_icons/surfacing.png b/share/qtvcp/screens/qtdragon_hd/images/tool_icons/surfacing.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd/images/tool_icons/upcut_spiral.png b/share/qtvcp/screens/qtdragon_hd/images/tool_icons/upcut_spiral.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd/images/tool_icons/vbit-90deg.png b/share/qtvcp/screens/qtdragon_hd/images/tool_icons/vbit-90deg.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/ball_end_mill.png b/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/ball_end_mill.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/center_drill.png b/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/center_drill.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/drill.png b/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/drill.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/not_found.png b/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/not_found.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/probe.png b/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/probe.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/surfacing.png b/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/surfacing.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/upcut_spiral.png b/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/upcut_spiral.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/vbit-90deg.png b/share/qtvcp/screens/qtdragon_hd_vert/images/tool_icons/vbit-90deg.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/ball_end_mill.png b/share/qtvcp/screens/woodpecker/tool_icons/ball_end_mill.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/ballend_straight.png b/share/qtvcp/screens/woodpecker/tool_icons/ballend_straight.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/center_drill.png b/share/qtvcp/screens/woodpecker/tool_icons/center_drill.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/drill.png b/share/qtvcp/screens/woodpecker/tool_icons/drill.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/not_found.png b/share/qtvcp/screens/woodpecker/tool_icons/not_found.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/probe.png b/share/qtvcp/screens/woodpecker/tool_icons/probe.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/spiral_downcut_2F.png b/share/qtvcp/screens/woodpecker/tool_icons/spiral_downcut_2F.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/spiral_upcut.png b/share/qtvcp/screens/woodpecker/tool_icons/spiral_upcut.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/surfacing.png b/share/qtvcp/screens/woodpecker/tool_icons/surfacing.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/tapered_ball_end.png b/share/qtvcp/screens/woodpecker/tool_icons/tapered_ball_end.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/upcut_spiral.png b/share/qtvcp/screens/woodpecker/tool_icons/upcut_spiral.png old mode 100755 new mode 100644 diff --git a/share/qtvcp/screens/woodpecker/tool_icons/vbit-90deg.png b/share/qtvcp/screens/woodpecker/tool_icons/vbit-90deg.png old mode 100755 new mode 100644 From 0ae9315c72be84aac045e722d9c9022f8c2d0068 Mon Sep 17 00:00:00 2001 From: Hannes Diethelm Date: Wed, 17 Jun 2026 21:46:21 +0200 Subject: [PATCH 4/6] CI: Upload doc as tar --- .github/workflows/ci.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a7202a3f91e..22439a68bc0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -161,11 +161,16 @@ jobs: run: | #*.po and documentation.pot are modifyed by build. Ignore them for now. .github/scripts/verify-clean-repo.sh ':(exclude)docs/po/*.po' ':(exclude)docs/po/documentation.pot' - - name: Upload build artifacts + - name: Tar linuxcnc-doc + run: | + set -x + tar -czf linuxcnc-doc.tar.gz -C docs html + - name: Upload linuxcnc-doc artifact uses: actions/upload-artifact@v7 with: name: linuxcnc-doc - path: docs/html*/ #Preserve the path for html + archive: false + path: linuxcnc-doc.tar.gz if-no-files-found: error package-arch: From fc54da72d7981a3bf568679a57d91a30a68336e0 Mon Sep 17 00:00:00 2001 From: Luca Toniolo <10792599+grandixximo@users.noreply.github.com> Date: Mon, 25 May 2026 13:27:47 +0800 Subject: [PATCH 5/6] CI: cancel in-flight runs when a new push lands on the same PR Add a concurrency block keyed on workflow + ref so a fresh push to a pull request automatically cancels any still-running prior run for that ref. cancel-in-progress is gated on the pull_request event, so master / release / check_suite triggers are left alone (they should never cancel themselves). --- .github/workflows/ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 22439a68bc0..6d2f0a15dda 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,6 +13,10 @@ on: permissions: contents: read # to fetch code (actions/checkout) +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.event_name == 'pull_request' }} + env: DEBIAN_FRONTEND: noninteractive From f81bb6f5e2398eaaf9a58b7d2c56788dd7b967f2 Mon Sep 17 00:00:00 2001 From: Hannes Diethelm Date: Fri, 19 Jun 2026 16:21:35 +0200 Subject: [PATCH 6/6] HTML Doc: Copy missing files to the translation folders Patch by grandixximo --- docs/src/Submakefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/src/Submakefile b/docs/src/Submakefile index 9dd06732ecf..a906742b4a4 100644 --- a/docs/src/Submakefile +++ b/docs/src/Submakefile @@ -518,6 +518,8 @@ $(DOC_DIR)/html/%/index.html: $(DOC_SRCDIR)/index_%.tmpl ../VERSION $(DOC_SRCDIR cat $(filter-out ../VERSION, $^) | \ sed "s/@VERSION@/`cat ../VERSION`/" | \ if [ "yes" != "$(BUILD_DOCS_TRANSLATED)" ]; then sed '/@TRANSLATIONS@/,/@ENDTRANSLATIONS@/d' ; else grep -Ev '@(END)?TRANSLATIONS@'; fi > $@ + cp -f $(DOC_DIR)/html/index.css $(DOC_DIR)/html/linuxcnc-logo-chips.png \ + $(DOC_DIR)/html/plus.png $(DOC_DIR)/html/minus.png $(dir $@) $(DOC_DIR)/html/index.html: $(DOC_SRCDIR)/index.tmpl objects/index.incl $(DOC_SRCDIR)/index.foot ../VERSION $(DOC_SRCDIR)/Submakefile (cat $(DOC_SRCDIR)/index.tmpl objects/index.incl $(DOC_SRCDIR)/index.foot) | sed "s/@VERSION@/`cat ../VERSION`/" | \