Module Name: src
Committed By: rillig
Date: Sun Dec 5 14:57:36 UTC 2021
Modified Files:
src/usr.bin/make: test-variants.sh
src/usr.bin/make/unit-tests: Makefile export.mk opt-file.mk
Log Message:
tests/make: migrate to jemalloc > 100
When I started working on usr.bin/make in 2020, I used NetBSD 8, which
used jemalloc 100.
After updating to NetBSD 8 to 9.99.x, the debugging options for jemalloc
stopped working since MALLOC_OPTIONS had been replaced with MALLOC_CONF
in 2019.
Enable malloc debugging again, to reliably reproduce the use-after-free
for the variable modifier ':@'.
To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/usr.bin/make/test-variants.sh
cvs rdiff -u -r1.284 -r1.285 src/usr.bin/make/unit-tests/Makefile
cvs rdiff -u -r1.10 -r1.11 src/usr.bin/make/unit-tests/export.mk
cvs rdiff -u -r1.12 -r1.13 src/usr.bin/make/unit-tests/opt-file.mk
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/usr.bin/make/test-variants.sh
diff -u src/usr.bin/make/test-variants.sh:1.12 src/usr.bin/make/test-variants.sh:1.13
--- src/usr.bin/make/test-variants.sh:1.12 Sun Sep 12 10:28:40 2021
+++ src/usr.bin/make/test-variants.sh Sun Dec 5 14:57:36 2021
@@ -1,5 +1,5 @@
#! /bin/sh
-# $NetBSD: test-variants.sh,v 1.12 2021/09/12 10:28:40 rillig Exp $
+# $NetBSD: test-variants.sh,v 1.13 2021/12/05 14:57:36 rillig Exp $
#
# Build several variants of make and run the tests on them.
#
@@ -30,7 +30,7 @@ testcase() {
&& env -i PATH="$PATH" USETOOLS="no" "$@" \
sh -ce "make -ks -j6 dependall" \
&& size *.o make \
- && env -i PATH="$PATH" USETOOLS="no" MALLOC_OPTIONS="JA" \
+ && env -i PATH="$PATH" USETOOLS="no" MALLOC_CONF="junk:true" \
_MKMSG_TEST=":" "$@" \
sh -ce "make -s test" \
|| fail
Index: src/usr.bin/make/unit-tests/Makefile
diff -u src/usr.bin/make/unit-tests/Makefile:1.284 src/usr.bin/make/unit-tests/Makefile:1.285
--- src/usr.bin/make/unit-tests/Makefile:1.284 Tue Oct 19 15:59:26 2021
+++ src/usr.bin/make/unit-tests/Makefile Sun Dec 5 14:57:36 2021
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.284 2021/10/19 15:59:26 sjg Exp $
+# $NetBSD: Makefile,v 1.285 2021/12/05 14:57:36 rillig Exp $
#
# Unit tests for make(1)
#
@@ -651,7 +651,7 @@ TMPDIR:= /tmp/uid${.MAKE.UID}
x!= echo; mkdir -p ${TMPDIR}
.endif
-MAKE_TEST_ENV?= MALLOC_OPTIONS="JA" # for jemalloc
+MAKE_TEST_ENV?= MALLOC_CONF="junk:true" # for jemalloc
MAKE_TEST_ENV+= TMPDIR=${TMPDIR}
.if ${.MAKE.OS} == "NetBSD"
Index: src/usr.bin/make/unit-tests/export.mk
diff -u src/usr.bin/make/unit-tests/export.mk:1.10 src/usr.bin/make/unit-tests/export.mk:1.11
--- src/usr.bin/make/unit-tests/export.mk:1.10 Sat Oct 24 08:50:17 2020
+++ src/usr.bin/make/unit-tests/export.mk Sun Dec 5 14:57:36 2021
@@ -1,4 +1,4 @@
-# $NetBSD: export.mk,v 1.10 2020/10/24 08:50:17 rillig Exp $
+# $NetBSD: export.mk,v 1.11 2021/12/05 14:57:36 rillig Exp $
UT_TEST= export
UT_FOO= foo${BAR}
@@ -40,7 +40,7 @@ BAR= bar is ${UT_FU}
.MAKE.EXPORTED+= UT_ZOO UT_TEST
-FILTER_CMD?= egrep -v '^(MAKEFLAGS|MALLOC_OPTIONS|PATH|PWD|SHLVL|_|&)='
+FILTER_CMD?= egrep -v '^(MAKEFLAGS|MALLOC_.*|PATH|PWD|SHLVL|_|&)='
all:
@env | ${FILTER_CMD} | sort
Index: src/usr.bin/make/unit-tests/opt-file.mk
diff -u src/usr.bin/make/unit-tests/opt-file.mk:1.12 src/usr.bin/make/unit-tests/opt-file.mk:1.13
--- src/usr.bin/make/unit-tests/opt-file.mk:1.12 Sun Apr 4 10:13:09 2021
+++ src/usr.bin/make/unit-tests/opt-file.mk Sun Dec 5 14:57:36 2021
@@ -1,4 +1,4 @@
-# $NetBSD: opt-file.mk,v 1.12 2021/04/04 10:13:09 rillig Exp $
+# $NetBSD: opt-file.mk,v 1.13 2021/12/05 14:57:36 rillig Exp $
#
# Tests for the -f command line option.
@@ -19,7 +19,7 @@ all: file-containing-null-byte
# outside of the file buffer.
#
# printf '%s' 'VAR=value\' \
-# | MALLOC_OPTIONS=JA make-2014.01.01.00.00.00 -r -f - -V VAR -dA 2>&1 \
+# | MALLOC_CONF="junk:true" make-2014.01.01.00.00.00 -r -f - -V VAR -dA 2>&1 \
# | less
#
# The debug output shows how make happily uses freshly allocated memory (the