Skip to content

Commit d6ae112

Browse files
authored
Merge pull request #16219 from argotorg/bump_emscipten_image
dockerfiles: bump emscripten to v21 containing boost 1.83.0
2 parents 917a5bc + 292bfd4 commit d6ae112

File tree

1 file changed

+40
-32
lines changed

1 file changed

+40
-32
lines changed

scripts/docker/buildpack-deps/Dockerfile.emscripten

Lines changed: 40 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -33,26 +33,29 @@
3333
# Using $(em-config CACHE)/sysroot/usr seems to work, though, and still has cmake find the
3434
# dependencies automatically.
3535
FROM emscripten/emsdk:3.1.19 AS base
36-
LABEL version="20"
36+
LABEL version="21"
3737

3838
ADD emscripten.jam /usr/src
39-
RUN set -ex && \
40-
apt-get update && \
39+
RUN <<-EOF
40+
set -ex
41+
apt-get update
4142
apt-get install -qqy --no-install-recommends \
4243
lsof \
4344
lz4 \
4445
python3 \
4546
python3-pip \
4647
sudo && \
47-
pip3 install requests;
48+
pip3 install requests
49+
EOF
4850

4951
# Install Z3
50-
RUN set -ex && \
51-
cd /usr/src && \
52-
git clone https://github.com/Z3Prover/z3.git -b z3-4.13.3 --depth 1 && \
53-
cd z3 && \
54-
mkdir build && \
55-
cd build && \
52+
RUN <<-EOF
53+
set -ex
54+
cd /usr/src
55+
git clone https://github.com/Z3Prover/z3.git -b z3-4.13.3 --depth 1
56+
cd z3
57+
mkdir build
58+
cd build
5659
emcmake cmake \
5760
-DCMAKE_INSTALL_PREFIX=$(em-config CACHE)/sysroot/usr \
5861
-DCMAKE_BUILD_TYPE=MinSizeRel \
@@ -62,33 +65,38 @@ RUN set -ex && \
6265
-DZ3_BUILD_EXECUTABLE=OFF \
6366
-DZ3_SINGLE_THREADED=ON \
6467
-DCMAKE_CXX_FLAGS="-s DISABLE_EXCEPTION_CATCHING=0" \
65-
.. && \
66-
make && \
67-
make install && \
68+
..
69+
make
70+
make install
6871
rm -r /usr/src/z3
72+
EOF
6973

7074
# Install Boost
71-
RUN set -ex && \
72-
cd /usr/src && \
73-
wget -q 'https://archives.boost.io/release/1.75.0/source/boost_1_75_0.tar.bz2' -O boost.tar.bz2 && \
74-
test "$(sha256sum boost.tar.bz2)" = "953db31e016db7bb207f11432bef7df100516eeb746843fa0486a222e3fd49cb boost.tar.bz2" && \
75-
tar -xf boost.tar.bz2 && \
76-
rm boost.tar.bz2 && \
77-
cd boost_1_75_0 && \
78-
mv ../emscripten.jam . && \
79-
./bootstrap.sh && \
80-
echo "using emscripten : : em++ ;" >> project-config.jam && \
75+
RUN <<-EOF
76+
set -ex
77+
cd /usr/src
78+
wget -q 'https://archives.boost.io/release/1.83.0/source/boost_1_83_0.tar.bz2' -O boost.tar.bz2
79+
test "$(sha256sum boost.tar.bz2)" = "6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e boost.tar.bz2"
80+
tar -xf boost.tar.bz2
81+
rm boost.tar.bz2
82+
cd boost_1_83_0
83+
mv ../emscripten.jam .
84+
./bootstrap.sh
85+
echo "using emscripten : : em++ ;" >> project-config.jam
8186
./b2 toolset=emscripten link=static variant=release threading=single runtime-link=static \
8287
--with-system --with-filesystem --with-test --with-program_options \
8388
cxxflags="-s DISABLE_EXCEPTION_CATCHING=0 -Wno-unused-local-typedef -Wno-variadic-macros -Wno-c99-extensions -Wno-all" \
84-
--prefix=$(em-config CACHE)/sysroot/usr install && \
85-
rm -r /usr/src/boost_1_75_0
89+
--prefix=$(em-config CACHE)/sysroot/usr install
90+
rm -r /usr/src/boost_1_83_0
91+
EOF
8692

8793
# CVC5
88-
RUN set -ex; \
89-
cvc5_version="1.2.0"; \
90-
cvc5_archive_name="cvc5-Linux-x86_64-static"; \
91-
wget "https://github.com/cvc5/cvc5/releases/download/cvc5-${cvc5_version}/${cvc5_archive_name}.zip" -O /opt/cvc5.zip; \
92-
test "$(sha256sum /opt/cvc5.zip)" = "d18f174ff9a11923c32c3f871f844ed16bd77a28f51050b8e7c8d821c98a1c2e /opt/cvc5.zip"; \
93-
unzip -j /opt/cvc5.zip "${cvc5_archive_name}/bin/cvc5" -d /usr/bin; \
94-
rm -f /opt/cvc5.zip;
94+
RUN <<-EOF
95+
set -ex
96+
cvc5_version="1.2.0"
97+
cvc5_archive_name="cvc5-Linux-x86_64-static"
98+
wget "https://github.com/cvc5/cvc5/releases/download/cvc5-${cvc5_version}/${cvc5_archive_name}.zip" -O /opt/cvc5.zip
99+
test "$(sha256sum /opt/cvc5.zip)" = "d18f174ff9a11923c32c3f871f844ed16bd77a28f51050b8e7c8d821c98a1c2e /opt/cvc5.zip"
100+
unzip -j /opt/cvc5.zip "${cvc5_archive_name}/bin/cvc5" -d /usr/bin
101+
rm -f /opt/cvc5.zip
102+
EOF

0 commit comments

Comments
 (0)