Run x86_64-unknown-linux-gnu tests under valgrind
This commit is contained in:
parent
0b7c2fdbb4
commit
74eb0389fd
15
.travis.yml
15
.travis.yml
|
@ -46,16 +46,23 @@ matrix:
|
|||
- name: "powerpc64le-unknown-linux-gnu"
|
||||
env: TARGET=powerpc64le-unknown-linux-gnu
|
||||
- name: "x86_64-unknown-linux-gnu (nightly)"
|
||||
env: TARGET=x86_64-unknown-linux-gnu #JEMALLOC_SYS_VERIFY_CONFIGURE=1
|
||||
env: TARGET=x86_64-unknown-linux-gnu VALGRIND=1 #JEMALLOC_SYS_VERIFY_CONFIGURE=1
|
||||
install: true
|
||||
addons: &valgrind
|
||||
apt:
|
||||
packages:
|
||||
- valgrind
|
||||
- autoconf
|
||||
- name: "x86_64-unknown-linux-gnu (beta)"
|
||||
env: TARGET=x86_64-unknown-linux-gnu
|
||||
env: TARGET=x86_64-unknown-linux-gnu VALGRIND=1
|
||||
rust: beta
|
||||
install: true
|
||||
addons: *valgrind
|
||||
- name: "x86_64-unknown-linux-gnu (stable)"
|
||||
env: TARGET=x86_64-unknown-linux-gnu
|
||||
env: TARGET=x86_64-unknown-linux-gnu VALGRIND=1
|
||||
rust: stable
|
||||
install: true
|
||||
addons: *valgrind
|
||||
- name: "x86_64-unknown-linux-musl"
|
||||
env: TARGET=x86_64-unknown-linux-musl NOBGT=1
|
||||
|
||||
|
@ -80,6 +87,8 @@ matrix:
|
|||
os: osx
|
||||
osx_image: xcode10
|
||||
rust: stable
|
||||
# FIXME: valgrind fails on OSX
|
||||
# https://github.com/alexcrichton/jemallocator/issues/86
|
||||
- name: "x86_64-apple-darwin (nightly)"
|
||||
env: TARGET=x86_64-apple-darwin
|
||||
os: osx
|
||||
|
|
53
README.md
53
README.md
|
@ -36,36 +36,37 @@ The following table describes the supported platforms:
|
|||
|
||||
* `build`: does the library compile for the target?
|
||||
* `run`: do the tests pass on the target?
|
||||
* `valgrind`: do the tests pass under valgrind?
|
||||
|
||||
Tier 1 targets are tested on all Rust channels (stable, beta, and nightly). All
|
||||
other targets are only tested on Rust nightly.
|
||||
|
||||
| Linux targets: | build | run |
|
||||
|-------------------------------------|-----------|---------|
|
||||
| `aarch64-unknown-linux-gnu` | ✓ | ✓ |
|
||||
| `arm-unknown-linux-gnueabi` | ✓ | ✓ |
|
||||
| `armv7-unknown-linux-gnueabi` | ✓ | ✓ |
|
||||
| `i586-unknown-linux-gnu` | ✓ | ✓ |
|
||||
| `i686-unknown-linux-gnu` (tier 1) | ✓ | ✓ |
|
||||
| `mips-unknown-linux-gnu` | ✓ | ✓ |
|
||||
| `mipsel-unknown-linux-musl` | ✓ | ✓ |
|
||||
| `mips64-unknown-linux-gnuabi64` | ✓ | ✓ |
|
||||
| `mips64el-unknown-linux-gnuabi64` | ✓ | ✓ |
|
||||
| `powerpc-unknown-linux-gnu` | ✓ | ✓ |
|
||||
| `powerpc64-unknown-linux-gnu` | ✓ | ✓ |
|
||||
| `powerpc64le-unknown-linux-gnu` | ✓ | ✓ |
|
||||
| `x86_64-unknown-linux-gnu` (tier 1) | ✓ | ✓ |
|
||||
| **MacOSX targets:** | **build** | **run** |
|
||||
| `x86_64-apple-darwin` (tier 1) | ✓ | ✓ |
|
||||
| `i686-apple-darwin` (tier 1) | ✓ | ✓ |
|
||||
| **Windows targets:** | **build** | **run** |
|
||||
| `x86_64-pc-windows-msvc` (tier 1) | ✗ | ✗ |
|
||||
| `i686-pc-windows-msvc` (tier 1) | ✗ | ✗ |
|
||||
| `x86_64-pc-windows-gnu` (tier 1) | ✓ | ✓ |
|
||||
| `i686-pc-windows-gnu` (tier 1) | ✓ | ✓ |
|
||||
| **Android targets:** | **build** | **run** |
|
||||
| `aarch64-linux-android` | ✓ | ✓ |
|
||||
| `x86_64-linux-android` | ✓ | ✓ |
|
||||
| Linux targets: | build | run | valgrind |
|
||||
|-------------------------------------|-----------|---------|--------------|
|
||||
| `aarch64-unknown-linux-gnu` | ✓ | ✓ | ✗ |
|
||||
| `arm-unknown-linux-gnueabi` | ✓ | ✓ | ✗ |
|
||||
| `armv7-unknown-linux-gnueabi` | ✓ | ✓ | ✗ |
|
||||
| `i586-unknown-linux-gnu` | ✓ | ✓ | ✗ |
|
||||
| `i686-unknown-linux-gnu` (tier 1) | ✓ | ✓ | ✗ |
|
||||
| `mips-unknown-linux-gnu` | ✓ | ✓ | ✗ |
|
||||
| `mipsel-unknown-linux-musl` | ✓ | ✓ | ✗ |
|
||||
| `mips64-unknown-linux-gnuabi64` | ✓ | ✓ | ✗ |
|
||||
| `mips64el-unknown-linux-gnuabi64` | ✓ | ✓ | ✗ |
|
||||
| `powerpc-unknown-linux-gnu` | ✓ | ✓ | ✗ |
|
||||
| `powerpc64-unknown-linux-gnu` | ✓ | ✓ | ✗ |
|
||||
| `powerpc64le-unknown-linux-gnu` | ✓ | ✓ | ✗ |
|
||||
| `x86_64-unknown-linux-gnu` (tier 1) | ✓ | ✓ | ✓ |
|
||||
| **MacOSX targets:** | **build** | **run** | **valgrind** |
|
||||
| `x86_64-apple-darwin` (tier 1) | ✓ | ✓ | ✗ |
|
||||
| `i686-apple-darwin` (tier 1) | ✓ | ✓ | ✗ |
|
||||
| **Windows targets:** | **build** | **run** | **valgrind** |
|
||||
| `x86_64-pc-windows-msvc` (tier 1) | ✗ | ✗ | ✗ |
|
||||
| `i686-pc-windows-msvc` (tier 1) | ✗ | ✗ | ✗ |
|
||||
| `x86_64-pc-windows-gnu` (tier 1) | ✓ | ✓ | ✗ |
|
||||
| `i686-pc-windows-gnu` (tier 1) | ✓ | ✓ | ✗ |
|
||||
| **Android targets:** | **build** | **run** | **valgrind** |
|
||||
| `aarch64-linux-android` | ✓ | ✓ | ✗ |
|
||||
| `x86_64-linux-android` | ✓ | ✓ | ✗ |
|
||||
|
||||
## Features
|
||||
|
||||
|
|
16
ci/run.sh
16
ci/run.sh
|
@ -25,6 +25,22 @@ then
|
|||
cargo install cross || echo "cross is already installed"
|
||||
fi
|
||||
|
||||
if [ "${VALGRIND}" = "1" ]
|
||||
then
|
||||
case "${TARGET}" in
|
||||
"x86_64-unknown-linux-gnu")
|
||||
export CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUNNER=valgrind
|
||||
;;
|
||||
"x86_64-apple-darwin")
|
||||
export CARGO_TARGET_X86_64_APPLE_DARWIN_RUNNER=valgrind
|
||||
;;
|
||||
*)
|
||||
echo "Specify how to run valgrind for TARGET=${TARGET}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
${CARGO_CMD} test -vv --target "${TARGET}"
|
||||
${CARGO_CMD} test -vv --target "${TARGET}" --features profiling
|
||||
${CARGO_CMD} test -vv --target "${TARGET}" --features debug
|
||||
|
|
Loading…
Reference in New Issue