From 722a3040237736bb262f7b9e05643eb3bfb21bda Mon Sep 17 00:00:00 2001 From: Joe Carstairs Date: Wed, 17 Jun 2026 09:23:42 +0100 Subject: [PATCH] factors out prune_out to bin --- http/Makefile | 27 +-------------------------- http/bin/prune_out | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 26 deletions(-) create mode 100755 http/bin/prune_out diff --git a/http/Makefile b/http/Makefile index 1a2b1bf..da2a8d6 100644 --- a/http/Makefile +++ b/http/Makefile @@ -3,34 +3,9 @@ all: microlog blog public out .PHONY: prune prune: prune_microlog prune_blog prune_out -.SILENT: prune_out .PHONY: prune_out prune_out: - for out in $$(find out -type f); do \ - out_basename="$$(basename "$$out")"; \ - out_ext="$${out_basename##*\.}"; \ - rel_path="$$(echo "$${out}" | cut -c5-)"; \ - if [ -f "public/$${rel_path}" ]; then \ - continue 2; \ - fi; \ - base_rel_path="$${rel_path%%.$${out_ext}}"; \ - src_path="src/$${base_rel_path}.upp$${out_ext}"; \ - if [ -f "$$src_path" ]; then \ - continue 2; \ - fi; \ - for layout in $$(find share/layouts -name "*.layout.upp$${out_ext}"); do \ - layout="$$(basename "$$layout")"; \ - layout="$${layout::$${#layout}-15}"; \ - rel_path="$$(echo "$${out}" | cut -c5-)"; \ - base_rel_path="$${rel_path%%.$${out_ext}}"; \ - src_path="src/$${base_rel_path}.$${layout}.upp$${out_ext}"; \ - if [ -f "$$src_path" ]; then \ - continue 2; \ - fi; \ - done; \ - echo "No source file found to match $${out}: removing it"; \ - rm "$$out"; \ - done + ./bin/prune_out .SILENT: prune_microlog .PHONY: prune_microlog diff --git a/http/bin/prune_out b/http/bin/prune_out new file mode 100755 index 0000000..1670ffd --- /dev/null +++ b/http/bin/prune_out @@ -0,0 +1,32 @@ +#!/bin/sh -e + +for out in $(find out -type f) +do + out_basename="$(basename "$out")" + out_ext="${out_basename##*\.}" + rel_path="$(echo "${out}" | cut -c5-)" + + if [ -f "public/${rel_path}" ]; then + continue 2 + fi + + base_rel_path="${rel_path%%.${out_ext}}" + src_path="src/${base_rel_path}.upp${out_ext}" + if [ -f "$src_path" ]; then + continue 2 + fi + + for layout in $(find share/layouts -name "*.layout.upp${out_ext}"); do + layout="$(basename "$layout")" + layout="${layout::${#layout}-15}" + rel_path="$(echo "${out}" | cut -c5-)" + base_rel_path="${rel_path%%.${out_ext}}" + src_path="src/${base_rel_path}.${layout}.upp${out_ext}" + if [ -f "$src_path" ]; then + continue 2 + fi + done + + echo "No source file found to match ${out}: removing it" + rm "$out" +done