From 11404dc2bbfb9033344ff360e72b66372edd0d9b Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Wed, 25 Feb 2026 15:50:45 -0600 Subject: Fix log copy truncation, enable ccache for build cache Fix "Copy all" log truncation: the code unconditionally stripped 2 chars (\r\n) from formatted log messages, but on Linux spdlog only appends \n. Every log message lost its last real character. Now strips trailing \r and \n dynamically. Enable ccache: it was installed in the Docker image but never activated. build-inner.sh now auto-detects ccache and sets CMAKE_*_COMPILER_LAUNCHER. build.sh mounts a persistent ccache volume (~/.cache/fluorine-ccache) into the container. CI workflow uses actions/cache to persist ccache across runs. Co-Authored-By: Claude Opus 4.6 --- docker/build-inner.sh | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'docker') diff --git a/docker/build-inner.sh b/docker/build-inner.sh index 8b7ac93..01a644d 100755 --- a/docker/build-inner.sh +++ b/docker/build-inner.sh @@ -7,6 +7,12 @@ BUILD_PY="${BUILD_PYTHON:-$(command -v python3)}" PYBIND11_DIR="$("${BUILD_PY}" -c 'import pybind11; print(pybind11.get_cmake_dir())' 2>/dev/null || true)" CMAKE_EXTRA_ARGS=() + +# Enable ccache if available and not explicitly overridden. +if [ -z "${CMAKE_C_COMPILER_LAUNCHER:-}" ] && command -v ccache >/dev/null 2>&1; then + CMAKE_C_COMPILER_LAUNCHER=ccache + CMAKE_CXX_COMPILER_LAUNCHER=ccache +fi if [ -n "${CMAKE_C_COMPILER_LAUNCHER:-}" ]; then CMAKE_EXTRA_ARGS+=("-DCMAKE_C_COMPILER_LAUNCHER=${CMAKE_C_COMPILER_LAUNCHER}") fi -- cgit v1.3.1