11ARG arch=amd64
22ARG ubuntu=20.04
3- FROM ${arch}/ubuntu:${ubuntu} as base
3+ FROM ${arch}/ubuntu:${ubuntu} AS base
44
55ARG proxy=""
66ARG compiler=clang-11
@@ -14,22 +14,27 @@ ENV DEBIAN_FRONTEND=noninteractive
1414
1515RUN apt-get update -y -q && \
1616 apt-get install -y -q --no-install-recommends \
17- ${compiler} \
18- ${ubsan_enabled:+llvm-$(echo ${compiler} | cut -d- -f2)} \
19- ca-certificates \
20- ccache \
21- curl \
22- git \
23- less \
24- libomp-dev \
25- libomp5 \
26- make-guile \
27- ninja-build \
28- python3 \
29- valgrind \
30- wget \
31- zlib1g \
32- zlib1g-dev && \
17+ ${compiler} \
18+ ${ubsan_enabled:+llvm-$(echo ${compiler} | cut -d- -f2)} \
19+ brotli \
20+ ca-certificates \
21+ ccache \
22+ curl \
23+ git \
24+ less \
25+ libomp-dev \
26+ libomp5 \
27+ make-guile \
28+ ninja-build \
29+ python3 \
30+ python3-brotli \
31+ python3-deepdiff \
32+ python3-pip \
33+ python3-schema \
34+ valgrind \
35+ wget \
36+ zlib1g \
37+ zlib1g-dev && \
3338 apt-get clean && \
3439 rm -rf /var/lib/apt/lists/*
3540
@@ -52,10 +57,7 @@ ENV PATH=/cmake/bin/:$PATH
5257ENV LESSCHARSET=utf-8
5358
5459COPY ./ci/deps/mpich.sh mpich.sh
55- RUN if [ "$ubuntu" = "18.04" ]; then \
56- ./mpich.sh 3.3.2 -j4; else \
57- ./mpich.sh 4.0.2 -j4; \
58- fi
60+ RUN ./mpich.sh 4.0.2 -j4
5961
6062ENV MPI_EXTRA_FLAGS="" \
6163 CMAKE_PREFIX_PATH="/lib/x86_64-linux-gnu/" \
@@ -64,52 +66,9 @@ ENV MPI_EXTRA_FLAGS="" \
6466
6567FROM base as build
6668COPY . /vt
67-
68- ARG BUILD_SHARED_LIBS
69- ARG CMAKE_BUILD_TYPE
70- ARG VT_ASAN_ENABLED
71- ARG VT_DOXYGEN_ENABLED
72- ARG VT_EXTENDED_TESTS_ENABLED
73- ARG VT_FCONTEXT_ENABLED
74- ARG VT_LB_ENABLED
75- ARG VT_MIMALLOC_ENABLED
76- ARG VT_NO_COLOR_ENABLED
77- ARG VT_POOL_ENABLED
78- ARG VT_PRODUCTION_BUILD_ENABLED
79- ARG VT_TRACE_ENABLED
80- ARG VT_TRACE_RUNTIME_ENABLED
81- ARG VT_UBSAN_ENABLED
82- ARG VT_WERROR_ENABLED
83- ARG CMAKE_CXX_STANDARD
84- ARG VT_DEBUG_VERBOSE
85- ARG VT_CI_BUILD
86-
87- ENV BUILD_SHARED_LIBS=${BUILD_SHARED_LIBS} \
88- CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \
89- VT_ASAN_ENABLED=${VT_ASAN_ENABLED} \
90- VT_DIAGNOSTICS_ENABLED=${VT_DIAGNOSTICS_ENABLED} \
91- VT_DIAGNOSTICS_RUNTIME_ENABLED=${VT_DIAGNOSTICS_RUNTIME_ENABLED} \
92- VT_DOXYGEN_ENABLED=${VT_DOXYGEN_ENABLED} \
93- VT_EXTENDED_TESTS_ENABLED=${VT_EXTENDED_TESTS_ENABLED} \
94- VT_FCONTEXT_ENABLED=${VT_FCONTEXT_ENABLED} \
95- VT_LB_ENABLED=${VT_LB_ENABLED} \
96- VT_MIMALLOC_ENABLED=${VT_MIMALLOC_ENABLED} \
97- VT_MPI_GUARD_ENABLED=${VT_MPI_GUARD_ENABLED} \
98- VT_NO_COLOR_ENABLED=${VT_NO_COLOR_ENABLED} \
99- VT_POOL_ENABLED=${VT_POOL_ENABLED} \
100- VT_PRODUCTION_BUILD_ENABLED=${VT_PRODUCTION_BUILD_ENABLED} \
101- VT_TRACE_ENABLED=${VT_TRACE_ENABLED} \
102- VT_TRACE_RUNTIME_ENABLED=${VT_TRACE_RUNTIME} \
103- VT_UBSAN_ENABLED=${VT_UBSAN_ENABLED} \
104- VT_UNITY_BUILD_ENABLED=${VT_UNITY_BUILD_ENABLED} \
105- VT_WERROR_ENABLED=${VT_WERROR_ENABLED} \
106- CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} \
107- VT_DEBUG_VERBOSE=${VT_DEBUG_VERBOSE} \
108- VT_CI_BUILD=${VT_CI_BUILD}
109-
11069RUN /vt/ci/build_cpp.sh /vt /build
11170
112- FROM build as test
71+ FROM build AS test
11372RUN /vt/ci/test_cpp.sh /vt /build
11473
11574RUN /vt/ci/build_vt_sample.sh /vt /build
0 commit comments