mirror of
https://github.com/qpdf/qpdf.git
synced 2024-12-22 10:58:58 +00:00
Remove valgrind -- address santizer is better
This commit is contained in:
parent
abb3191c32
commit
d7d446e0b8
@ -13,14 +13,7 @@
|
||||
LDFLAGS="-fsanitize=address" \
|
||||
--enable-werror --disable-shared
|
||||
```
|
||||
As of gcc 6.3.0, this exposes some good things but appears to also have some false positive leak reports. Valgrind is more reliable but also may miss some things that this catches.
|
||||
* Consider running tests with latest gcc and/or valgrind. To test with valgrind:
|
||||
```
|
||||
./configure --disable-shared
|
||||
make -j8 -k VALGRIND=1
|
||||
make -k check NO_REBUILD=1
|
||||
```
|
||||
This moves each binary into a subdirectory and replaces it with a link to make/exec-z. See make/exec-z.
|
||||
The test suite should run clean with this. This seems to be more reliable than valgrind.
|
||||
* Test with clang.
|
||||
* Check all open issues in the sourceforge trackers and on github.
|
||||
* If any interfaces were added or changed, check C API to see whether changes are appropriate there as well. If necessary, review the casting policy in the manual, and ensure that integer types are properly handled.
|
||||
@ -83,7 +76,7 @@ If building or editing documentation, configure with `--enable-doc-maintenance`.
|
||||
|
||||
If you want to run `make maintainer-clean`, `make distclean`, or `make autofiles.zip` and you haven't run `./configure`, you can pass `CLEAN=1` to make on the command line to prevent it from complaining about configure not having been run.
|
||||
|
||||
If you want to run checks without rerunning the build, pass `NO_REBUILD=1` to make. This can be useful for special testing scenarios such as valgrind or binary compatibility.
|
||||
If you want to run checks without rerunning the build, pass `NO_REBUILD=1` to make. This can be useful for special testing scenarios such as validation of memory fixes or binary compatibility.
|
||||
|
||||
# Local Windows Testing Procedure
|
||||
|
||||
|
24
make/exec-z
24
make/exec-z
@ -1,24 +0,0 @@
|
||||
#!/bin/sh
|
||||
# This script is used for valgrind testing. See README-maintainer.md.
|
||||
|
||||
# Create a suppressions file. This can be updated by running valgrind
|
||||
# with --gen-suppressions=yes.
|
||||
test -f /tmp/a.supp || cat > /tmp/a.supp <<EOF
|
||||
{
|
||||
zlib1
|
||||
Memcheck:Cond
|
||||
fun:inflateReset2
|
||||
fun:inflateInit2_
|
||||
}
|
||||
{
|
||||
index
|
||||
Memcheck:Cond
|
||||
fun:index
|
||||
fun:expand_dynamic_string_token
|
||||
fun:_dl_map_object
|
||||
fun:map_doit
|
||||
}
|
||||
EOF
|
||||
|
||||
exec valgrind --suppressions=/tmp/a.supp -q \
|
||||
`dirname $0`/z/`basename $0` ${1+"$@"}
|
@ -102,7 +102,6 @@ endef
|
||||
# Usage: $(call makebin,objs,binary,ldflags,libs)
|
||||
define makebin
|
||||
$(LIBTOOL) --mode=link $(CXX) $(CXXFLAGS) $(1) -o $(2) $(4) $(3)
|
||||
if [ "$(VALGRIND)" = 1 ]; then make/valgrind-wrap $(2); fi
|
||||
endef
|
||||
|
||||
# Install target
|
||||
|
@ -1,10 +0,0 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
pwd
|
||||
dir=$(dirname $1)
|
||||
if [ ! -x $dir/exec-z ]; then
|
||||
ln -f make/exec-z $dir/exec-z
|
||||
fi
|
||||
mkdir -p $dir/z
|
||||
mv $1 $dir/z
|
||||
ln -f $dir/exec-z $1
|
Loading…
Reference in New Issue
Block a user