From 723a271a9cea35c0f71f668350fd4ca30fc232dd Mon Sep 17 00:00:00 2001 From: Hojun-Cho Date: Sun, 16 Aug 2026 18:29:03 +0900 Subject: [PATCH] build: name the Valgrind run the container is prepared for The Dockerfile installs valgrind and the ld.so debug info it needs, but no target used them; docker-valgrind runs the unit suite under it, so the dependency is visible and the run is one command. --- Makefile | 6 +++++- README.md | 5 +++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index fc4a521..13a9d60 100644 --- a/Makefile +++ b/Makefile @@ -70,6 +70,10 @@ docker-check-stress: docker-bench: $(DOCKER_RUN) sh -c 'make clean && make bench' +docker-valgrind: + $(DOCKER_RUN) sh -c 'make clean && make -C tests unit_test && \ + cd tests && valgrind -q --error-exitcode=1 ./unit_test $(UNITARGS)' + docker: docker-image $(MAKE) docker-build @@ -95,4 +99,4 @@ verify-map: .PHONY: all check check-live check-stress test verify-map clean gtk bench \ docker docker-image docker-build docker-check docker-check-live \ - docker-check-stress docker-bench + docker-check-stress docker-bench docker-valgrind diff --git a/README.md b/README.md index ec02c81..b437548 100644 --- a/README.md +++ b/README.md @@ -76,8 +76,9 @@ make check-stress # randomized, capacity, collision, failure, and restart test `UNITARGS` filters only the focused C unit suite, for example `make check UNITARGS=hangul`. It does not select or skip live and stress -tests. `make docker-check` force-rebuilds and runs all three tiers in the -container; run `make docker-image` first after changing `Dockerfile`. +tests. `make docker-check` rebuilds and runs all three tiers in the +container, and `make docker-valgrind` runs the unit suite under Valgrind +there; run `make docker-image` first after changing `Dockerfile`. Native Linux source builds require a C toolchain, Make, pkg-config, Python 3, and cmp/diff, plus development files for: