aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docker-compose.yml2
-rw-r--r--docker/stretch/Dockerfile7
-rw-r--r--scripts/address-sanitizer-suppressions.txt1
-rwxr-xr-xscripts/build-qbs-with-qbs.sh7
4 files changed, 16 insertions, 1 deletions
diff --git a/docker-compose.yml b/docker-compose.yml
index ef38ec26d..bff8f5d87 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -13,3 +13,5 @@ services:
volumes:
- .:/qbs
network_mode: bridge
+ cap_add:
+ - SYS_PTRACE
diff --git a/docker/stretch/Dockerfile b/docker/stretch/Dockerfile
index 70db3dd8d..d7258f97f 100644
--- a/docker/stretch/Dockerfile
+++ b/docker/stretch/Dockerfile
@@ -37,6 +37,7 @@ RUN apt-get update -qq && \
libfontconfig1-dev \
libfreetype6-dev \
libgmp-dev \
+ libicu-dev \
libmpc-dev \
libmpfr-dev \
libtool \
@@ -67,8 +68,11 @@ RUN mkdir -p qt/build && \
-nomake examples \
-nomake tests \
-platform linux-g++ \
+ -no-use-gold-linker \
+ -R . \
+ -sysconfdir /etc/xdg \
-qt-freetype -qt-harfbuzz -qt-pcre -qt-sqlite -qt-xcb -qt-zlib \
- -no-cups -no-dbus -no-pch \
+ -no-cups -no-dbus -no-pch -no-libudev \
-no-feature-accessibility -no-opengl \
-skip qtactiveqt \
-skip qt3d \
@@ -145,6 +149,7 @@ RUN apt-get update -qq && \
ca-certificates \
git \
libclang-3.9 \
+ libicu57 \
pkg-config \
make \
help2man \
diff --git a/scripts/address-sanitizer-suppressions.txt b/scripts/address-sanitizer-suppressions.txt
new file mode 100644
index 000000000..9381cc58e
--- /dev/null
+++ b/scripts/address-sanitizer-suppressions.txt
@@ -0,0 +1 @@
+leak:libQt5Script.so.5
diff --git a/scripts/build-qbs-with-qbs.sh b/scripts/build-qbs-with-qbs.sh
index ff747622c..0808cbbef 100755
--- a/scripts/build-qbs-with-qbs.sh
+++ b/scripts/build-qbs-with-qbs.sh
@@ -46,6 +46,12 @@ set -e
export QBS_AUTOTEST_SETTINGS_DIR="${QBS_AUTOTEST_SETTINGS_DIR:-/tmp/qbs-settings}"
#
+# Qbs is built with the address sanitizer enabled.
+# Suppress findings in some parts of Qbs / dependencies.
+#
+export LSAN_OPTIONS="suppressions=$( cd "$(dirname "$0")" ; pwd -P )/address-sanitizer-suppressions.txt:print_suppressions=0"
+
+#
# Additional build options
#
BUILD_OPTIONS="\
@@ -69,6 +75,7 @@ qbs build -p "qbs documentation" ${BUILD_OPTIONS}
if [ -z "${QBS_AUTOTEST_PROFILE}" ]; then
export QBS_AUTOTEST_PROFILE=autotestprofile
+
RUN_OPTIONS="\
--settings-dir ${QBS_AUTOTEST_SETTINGS_DIR} \
"