travis.yml: Move the -fsanitize=undefined test to the gitlab-CI
Add it to the existing Clang job and also add a job that covers the linux-user code with this compiler flag. To make sure that the detected problems are not simply ignored, let's also use "-fno-sanitize-recover=..." now instead. Signed-off-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20210211045455.456371-3-thuth@redhat.com> Message-Id: <20210211122750.22645-3-alex.bennee@linaro.org>
This commit is contained in:
parent
04250c69bc
commit
c2b33c43fd
@ -432,14 +432,24 @@ build-some-softmmu-plugins:
|
|||||||
TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
|
TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
|
||||||
MAKE_CHECK_ARGS: check-tcg
|
MAKE_CHECK_ARGS: check-tcg
|
||||||
|
|
||||||
build-clang:
|
clang-system:
|
||||||
<<: *native_build_job_definition
|
<<: *native_build_job_definition
|
||||||
variables:
|
variables:
|
||||||
IMAGE: fedora
|
IMAGE: fedora
|
||||||
CONFIGURE_ARGS: --cc=clang --cxx=clang++
|
CONFIGURE_ARGS: --cc=clang --cxx=clang++
|
||||||
|
--extra-cflags=-fsanitize=undefined --extra-cflags=-fno-sanitize-recover=undefined
|
||||||
TARGETS: alpha-softmmu arm-softmmu m68k-softmmu mips64-softmmu
|
TARGETS: alpha-softmmu arm-softmmu m68k-softmmu mips64-softmmu
|
||||||
ppc-softmmu s390x-softmmu arm-linux-user
|
ppc-softmmu s390x-softmmu
|
||||||
MAKE_CHECK_ARGS: check
|
MAKE_CHECK_ARGS: check-qtest check-tcg
|
||||||
|
|
||||||
|
clang-user:
|
||||||
|
<<: *native_build_job_definition
|
||||||
|
variables:
|
||||||
|
IMAGE: debian-all-test-cross
|
||||||
|
CONFIGURE_ARGS: --cc=clang --cxx=clang++ --disable-system
|
||||||
|
--target-list-exclude=microblazeel-linux-user,aarch64_be-linux-user,i386-linux-user,m68k-linux-user,mipsn32el-linux-user,xtensaeb-linux-user
|
||||||
|
--extra-cflags=-fsanitize=undefined --extra-cflags=-fno-sanitize-recover=undefined
|
||||||
|
MAKE_CHECK_ARGS: check-unit check-tcg
|
||||||
|
|
||||||
# These targets are on the way out
|
# These targets are on the way out
|
||||||
build-deprecated:
|
build-deprecated:
|
||||||
|
27
.travis.yml
27
.travis.yml
@ -138,33 +138,6 @@ jobs:
|
|||||||
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
|
- CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-default"
|
||||||
|
|
||||||
|
|
||||||
# Test with Clang for compile portability (Travis uses clang-5.0)
|
|
||||||
- name: "Clang (user)"
|
|
||||||
env:
|
|
||||||
- CONFIG="--disable-system --host-cc=clang --cxx=clang++"
|
|
||||||
- CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-default"
|
|
||||||
compiler: clang
|
|
||||||
|
|
||||||
|
|
||||||
- name: "Clang (main-softmmu)"
|
|
||||||
env:
|
|
||||||
- CONFIG="--target-list=${MAIN_SOFTMMU_TARGETS}
|
|
||||||
--host-cc=clang --cxx=clang++"
|
|
||||||
- CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-sanitize"
|
|
||||||
compiler: clang
|
|
||||||
before_script:
|
|
||||||
- mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
|
|
||||||
- ${SRC_DIR}/configure ${CONFIG} --extra-cflags="-fsanitize=undefined -Werror" || { cat config.log meson-logs/meson-log.txt && exit 1; }
|
|
||||||
|
|
||||||
|
|
||||||
- name: "Clang (other-softmmu)"
|
|
||||||
env:
|
|
||||||
- CONFIG="--disable-user --target-list-exclude=${MAIN_SOFTMMU_TARGETS}
|
|
||||||
--host-cc=clang --cxx=clang++"
|
|
||||||
- CACHE_NAME="${TRAVIS_BRANCH}-linux-clang-default"
|
|
||||||
compiler: clang
|
|
||||||
|
|
||||||
|
|
||||||
# Using newer GCC with sanitizers
|
# Using newer GCC with sanitizers
|
||||||
- name: "GCC9 with sanitizers (softmmu)"
|
- name: "GCC9 with sanitizers (softmmu)"
|
||||||
dist: bionic
|
dist: bionic
|
||||||
|
Loading…
Reference in New Issue
Block a user