3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 00:55:31 +00:00

update travis to ubuntu 18.04

just 1 LTS old
This commit is contained in:
Nuno Lopes 2021-02-18 18:46:30 +00:00
parent d396d46bd1
commit 1105f4aea8
7 changed files with 22 additions and 175 deletions

View file

@ -1,52 +0,0 @@
# This base image is not officially supported by Docker it
# is generated by running
# ```
# ./update.sh xenial
# ```
# from git@github.com:daald/docker-brew-ubuntu-core-32bit.git
# at commit 34ea593b40b423755b7d46b6c8c89fc8162ea74b
#
# We could actually store the image generated by this Dockerfile
# rather than just the bare image. However given we have a TravisCI
# cache I'm not sure if it faster to use the TravisCI cache or to
# download from DockerHub everytime.
FROM z3prover/ubuntu32:16.04
RUN apt-get update && \
apt-get -y --no-install-recommends install \
binutils \
clang \
clang-3.9 \
cmake \
doxygen \
default-jdk \
gcc \
gcc-5 \
git \
graphviz \
g++ \
g++ \
libgmp-dev \
libgomp1 \
libomp5 \
libomp-dev \
llvm-3.9 \
make \
ninja-build \
python3 \
python3-setuptools \
python2.7 \
python-setuptools \
sudo
# Create `user` user for container with password `user`. and give it
# password-less sudo access
RUN useradd -m user && \
echo user:user | chpasswd && \
cp /etc/sudoers /etc/sudoers.bak && \
echo 'user ALL=(root) NOPASSWD: ALL' >> /etc/sudoers
USER user
WORKDIR /home/user
# TODO .NET core does not support Linux x86 yet, disable it for now.
# see: https://github.com/dotnet/coreclr/issues/9265
ENV ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-3.9/bin/llvm-symbolizer DOTNET_BINDINGS=0

View file

@ -1,44 +0,0 @@
FROM ubuntu:14.04
RUN apt-get update && \
apt-get -y --no-install-recommends install \
apt-transport-https \
binutils \
clang-3.9 \
curl \
doxygen \
default-jdk \
gcc-multilib \
gcc-4.8-multilib \
git \
graphviz \
g++-multilib \
g++-4.8-multilib \
libgmp-dev \
libgomp1 \
lib32gomp1 \
llvm-3.9 \
make \
ninja-build \
python3 \
python3-setuptools \
python2.7 \
python-setuptools
RUN curl -SL https://packages.microsoft.com/config/ubuntu/14.04/packages-microsoft-prod.deb --output packages-microsoft-prod.deb && \
dpkg -i packages-microsoft-prod.deb && \
apt-get update && \
apt-get -y --no-install-recommends install dotnet-sdk-2.1
RUN curl -SL https://cmake.org/files/v3.12/cmake-3.12.0-Linux-x86_64.sh --output cmake-3.12.0-Linux-x86_64.sh && \
sh cmake-3.12.0-Linux-x86_64.sh --prefix=/usr/local --exclude-subdir
# Create `user` user for container with password `user`. and give it
# password-less sudo access
RUN useradd -m user && \
echo user:user | chpasswd && \
cp /etc/sudoers /etc/sudoers.bak && \
echo 'user ALL=(root) NOPASSWD: ALL' >> /etc/sudoers
USER user
WORKDIR /home/user
ENV ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-3.9/bin/llvm-symbolizer

View file

@ -1,28 +1,17 @@
FROM ubuntu:16.04
FROM ubuntu:18.04
RUN apt-get update && \
apt-get -y --no-install-recommends install \
apt-transport-https \
binutils \
clang \
clang-3.9 \
cmake \
make \
ninja-build \
clang \
g++ \
curl \
doxygen \
default-jdk \
gcc-multilib \
gcc-5-multilib \
git \
graphviz \
g++-multilib \
g++-5-multilib \
libgmp-dev \
libgomp1 \
libomp5 \
libomp-dev \
llvm-3.9 \
make \
ninja-build \
python3 \
python3-setuptools \
python2.7 \

View file

@ -5,7 +5,6 @@ FROM ${DOCKER_IMAGE_BASE}
# Build arguments. This can be changed when invoking
# `docker build`.
ARG ASAN_BUILD
ARG ASAN_DSO
ARG BUILD_DOCS
ARG CC
ARG CXX
@ -34,7 +33,6 @@ ARG Z3_VERBOSE_BUILD_OUTPUT
ENV \
ASAN_BUILD=${ASAN_BUILD} \
ASAN_DSO=${ASAN_DSO} \
BUILD_DOCS=${BUILD_DOCS} \
CC=${CC} \
CXX=${CXX} \

View file

@ -29,33 +29,8 @@ if [ "X${ASAN_BUILD}" = "X1" ]; then
ASAN_OPTIONS="${ASAN_OPTIONS},detect_leaks=0" "${@}"
}
# Check path to ASan DSO
: ${ASAN_DSO?"ASAN_DSO must be specified"}
if [ ! -e "${ASAN_DSO}" ]; then
echo "ASAN_DSO (${ASAN_DSO}) does not exist"
exit 1
fi
# FIXME: We'll need to refactor this when we can do UBSan builds
# against a UBSan DSO.
function run_non_native_binding() {
# We need to preload the ASan DSO that libz3
# will have undefined references to.
# Don't run leak checking because we get lots reported leaks
# in the language runtime (e.g. python).
PLATFORM="$(uname -s)"
case "${PLATFORM}" in
Linux*)
LD_PRELOAD="${ASAN_DSO}" run_no_lsan "${@}"
;;
Darwin*)
DYLD_INSERT_LIBRARIES="${ASAN_DSO}" run_no_lsan "${@}"
;;
*)
echo "Unknown platform \"${PLATFORM}\""
exit 1
;;
esac
unset PLATFORM
"${@}"
}
else
# In non-ASan build just run directly

View file

@ -1,5 +1 @@
# LeakSanitizer suppression file
# Ignore Clang OpenMP leaks.
# See https://github.com/Z3Prover/z3/issues/1308
leak:___kmp_allocate