File tree Expand file tree Collapse file tree 5 files changed +39
-5
lines changed
src/ci/docker/host-x86_64 Expand file tree Collapse file tree 5 files changed +39
-5
lines changed Original file line number Diff line number Diff line change 1+ #! /bin/sh
2+
3+ set -ex
4+
5+ # Setting up folders for GCC
6+ git clone https://github.com/antoyo/gcc gcc-src
7+ cd gcc-src
8+ git checkout $( head -1 /scripts/libgccjit.version)
9+
10+ mkdir ../gcc-build ../gcc-install
11+ cd ../gcc-build
12+
13+ # Building GCC.
14+ ../gcc-src/configure \
15+ --enable-host-shared \
16+ --enable-languages=jit \
17+ --enable-checking=release \
18+ --disable-bootstrap \
19+ --disable-multilib \
20+ --prefix=$( pwd) /../gcc-install
21+ make
22+ make install
23+
24+ # Making the generated `.so` library available to linker.
25+ ln -s ../gcc-install/libgccjit.so /usr/lib/libgccjit.so
26+
27+ rm -rf ../gcc-src
Original file line number Diff line number Diff line change 1+ cf9554126
Original file line number Diff line number Diff line change @@ -24,7 +24,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
2424 xz-utils \
2525 nodejs \
2626 mingw-w64 \
27- libgccjit-12-dev \
2827 && rm -rf /var/lib/apt/lists/*
2928
3029# Note: libgccjit needs to match the default gcc version for the linker to find it.
Original file line number Diff line number Diff line change @@ -24,7 +24,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
2424 xz-utils \
2525 nodejs \
2626 mingw-w64 \
27- libgccjit-13-dev \
2827 && rm -rf /var/lib/apt/lists/*
2928
3029# Note: libgccjit needs to match the default gcc version for the linker to find it.
Original file line number Diff line number Diff line change @@ -15,7 +15,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
1515 sudo \
1616 xz-utils \
1717 tidy \
18- libgccjit-12-dev \
1918 \
2019# Install dependencies for chromium browser
2120 gconf-service \
@@ -57,13 +56,17 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
5756 lsb-release \
5857 xdg-utils \
5958 wget \
59+ # libgccjit dependencies
60+ flex \
61+ libmpfr-dev \
62+ libgmp-dev \
63+ libmpc3 \
64+ libmpc-dev \
6065 && rm -rf /var/lib/apt/lists/*
6166
6267COPY scripts/sccache.sh /scripts/
6368RUN sh /scripts/sccache.sh
6469
65- # Make `libgccjit.so` accessible.
66- RUN ln -s /usr/lib/gcc/x86_64-linux-gnu/12/libgccjit.so /usr/lib/x86_64-linux-gnu/libgccjit.so
6770# Fix rustc_codegen_gcc lto issues.
6871ENV GCC_EXEC_PREFIX="/usr/lib/gcc/"
6972
@@ -92,6 +95,11 @@ ENV RUST_CONFIGURE_ARGS \
9295
9396ENV HOST_TARGET x86_64-unknown-linux-gnu
9497
98+ COPY host-x86_64/dist-x86_64-linux/libgccjit.version /scripts/
99+ COPY host-x86_64/dist-x86_64-linux/build-gccjit.sh /scripts/
100+
101+ RUN sh /scripts/build-gccjit.sh
102+
95103ENV SCRIPT /tmp/checktools.sh ../x.py && \
96104 NODE_PATH=`npm root -g` python3 ../x.py test tests/rustdoc-gui --stage 2 \
97105 --test-args "'--no-sandbox --jobs 1'"
You can’t perform that action at this time.
0 commit comments