aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYann Collet <cyan@fb.com>2021-12-16 21:01:10 -0800
committerYann Collet <cyan@fb.com>2021-12-16 21:46:14 -0800
commit9fc7f38e122d6f57bb4a756f7998a3bbc06d6229 (patch)
tree95a6bc57694fdfcca432c7746bc568f73d33ebcf
parent9a32492730a8c5df8ea41b18a7f398baec4457c3 (diff)
downloadzstd-9fc7f38e122d6f57bb4a756f7998a3bbc06d6229.tar.gz
added target update_regressionResults
to automate the creation of updated tests/regression/results.csv
-rw-r--r--Makefile23
1 files changed, 21 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index 77bb4ce8..83ab37dc 100644
--- a/Makefile
+++ b/Makefile
@@ -29,6 +29,7 @@ VOID = /dev/null
# fail on other tested distros (ubuntu, debian) even
# without manually specifying the TARGET_SYSTEM.
TARGET_SYSTEM ?= $(OS)
+CP ?= cp
ifneq (,$(filter Windows%,$(TARGET_SYSTEM)))
EXT =.exe
@@ -69,7 +70,7 @@ zstd zstd-release:
.PHONY: zstdmt
zstdmt:
$(Q)$(MAKE) -C $(PRGDIR) $@
- $(Q)cp $(PRGDIR)/zstd$(EXT) ./zstdmt$(EXT)
+ $(Q)$(CP) $(PRGDIR)/zstd$(EXT) ./zstdmt$(EXT)
.PHONY: zlibwrapper
zlibwrapper: lib
@@ -152,6 +153,8 @@ ifneq (,$(filter $(shell uname),Linux Darwin GNU/kFreeBSD GNU OpenBSD FreeBSD Dr
HOST_OS = POSIX
+MKDIR ?= mkdir -p
+
HAVE_COLORNEVER = $(shell echo a | egrep --color=never a > /dev/null 2> /dev/null && echo 1 || echo 0)
EGREP_OPTIONS ?=
ifeq ($HAVE_COLORNEVER, 1)
@@ -284,6 +287,22 @@ uasanregressiontest:
msanregressiontest:
$(MAKE) -C $(FUZZDIR) regressiontest CC=clang CXX=clang++ CFLAGS="-O3 -fsanitize=memory" CXXFLAGS="-O3 -fsanitize=memory"
+update_regressionResults : REGRESS_RESULTS_DIR := /tmp/regress_results_dir/
+update_regressionResults:
+ $(MAKE) -C programs zstd
+ $(MAKE) -C tests/regression test
+ $(RM) -rf $(REGRESS_RESULTS_DIR)
+ $(MKDIR) $(REGRESS_RESULTS_DIR)
+ ./tests/regression/test \
+ --cache tests/regression/cache \
+ --output $(REGRESS_RESULTS_DIR)/results.csv \
+ --zstd programs/zstd
+ echo "Showing results differences"
+ diff tests/regression/results.csv $(REGRESS_RESULTS_DIR)/results.csv
+ echo "Updating results.csv"
+ $(CP) $(REGRESS_RESULTS_DIR)/results.csv tests/regression/results.csv
+
+
# run UBsan with -fsanitize-recover=pointer-overflow
# this only works with recent compilers such as gcc 8+
usan: clean
@@ -372,7 +391,7 @@ ifneq (,$(filter $(HOST_OS),MSYS POSIX))
cmakebuild:
cmake --version
$(RM) -r $(BUILDIR)/cmake/build
- mkdir $(BUILDIR)/cmake/build
+ $(MKDIR) $(BUILDIR)/cmake/build
cd $(BUILDIR)/cmake/build; cmake -DCMAKE_INSTALL_PREFIX:PATH=~/install_test_dir $(CMAKE_PARAMS) ..
$(MAKE) -C $(BUILDIR)/cmake/build -j4;
$(MAKE) -C $(BUILDIR)/cmake/build install;