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:
parent
d396d46bd1
commit
1105f4aea8
7 changed files with 22 additions and 175 deletions
|
@ -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
|
|
@ -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
|
|
@ -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 \
|
|
@ -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} \
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -1,5 +1 @@
|
|||
# LeakSanitizer suppression file
|
||||
|
||||
# Ignore Clang OpenMP leaks.
|
||||
# See https://github.com/Z3Prover/z3/issues/1308
|
||||
leak:___kmp_allocate
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue