summaryrefslogtreecommitdiff
path: root/ci
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@altlinux.org>2018-05-04 23:13:45 +0000
committerDmitry V. Levin <ldv@altlinux.org>2018-05-04 23:13:45 +0000
commitee5d88c5b6a1060889dc4d922c3840a6fb46852d (patch)
tree83644cfcb487616bbebf7d3af31d8921902ac2ab /ci
parent3a4bd6b9a75ee1db2aede0ca78e5144450a38e05 (diff)
downloadstrace-ee5d88c5b6a1060889dc4d922c3840a6fb46852d.tar.gz
ci: add more variants of unwinder to test matrices
Check x86_64 builds with libdw, with libunwind, and without stacktrace. As Travis CI doesn't provide a suitable libdw, do not test libdw there. * ci/install-dependencies.sh (common_packages): Remove libdw-dev. Install libdw-dev or libunwind8-dev depending on $STACKTRACE. * ci/run-build-and-tests.sh: Specify --with-libdw=yes, --with-libunwind=yes, or --without-stacktrace depending on $STACKTRACE. * .gitlab-ci.yml (gcc-x86_64): Rename to gcc-x86_64-libdw, add STACKTRACE=libdw. (gcc-x86): Rename to gcc-x86-nounwind, add STACKTRACE=no. (clang-x86_64): Rename to clang-x86_64-libdw, add STACKTRACE=libdw. (clang-x86): Rename to clang-x86-nounwind, add STACKTRACE=no. (gcc-x86_64-libunwind, gcc-x86_64-nounwind, gcc-x86-nounwind, clang-x86_64-libunwind, clang-x86_64-nounwind, clang-x86-nounwind): New test matrix entries. * .travis.yml: Add STACKTRACE=libunwind to all x86_64 test matrix entries except musl-gcc, add STACKTRACE=no to other matrix entries, add test matrix entries with STACKTRACE=no variants on x86_64.
Diffstat (limited to 'ci')
-rwxr-xr-xci/install-dependencies.sh11
-rwxr-xr-xci/run-build-and-tests.sh9
2 files changed, 19 insertions, 1 deletions
diff --git a/ci/install-dependencies.sh b/ci/install-dependencies.sh
index 75cbaf6d3..e704d44e5 100755
--- a/ci/install-dependencies.sh
+++ b/ci/install-dependencies.sh
@@ -1,7 +1,7 @@
#!/bin/sh -ex
type sudo >/dev/null 2>&1 && sudo=sudo || sudo=
-common_packages='autoconf automake faketime file gawk gcc-multilib git gzip libdw-dev make pkg-config xz-utils'
+common_packages='autoconf automake faketime file gawk gcc-multilib git gzip make pkg-config xz-utils'
updated=
apt_get_install()
@@ -90,6 +90,15 @@ case "$CC" in
;;
esac
+case "${STACKTRACE-}" in
+ libdw)
+ apt_get_install libdw-dev libz-dev liblzma-dev
+ ;;
+ libunwind)
+ apt_get_install libunwind8-dev
+ ;;
+esac
+
case "${CHECK-}" in
coverage)
apt_get_install lcov
diff --git a/ci/run-build-and-tests.sh b/ci/run-build-and-tests.sh
index c43e374a2..c3c382e92 100755
--- a/ci/run-build-and-tests.sh
+++ b/ci/run-build-and-tests.sh
@@ -24,6 +24,15 @@ case "${TARGET-}" in
;;
esac
+case "${STACKTRACE-}" in
+ libdw|libunwind)
+ DISTCHECK_CONFIGURE_FLAGS="$DISTCHECK_CONFIGURE_FLAGS --with-$STACKTRACE"
+ ;;
+ no)
+ DISTCHECK_CONFIGURE_FLAGS="$DISTCHECK_CONFIGURE_FLAGS --disable-stacktrace"
+ ;;
+esac
+
case "$KHEADERS" in
*/*)
CPPFLAGS='-isystem /opt/kernel/include'