From a697a2d59e030680e1f4b2faf1d618df85ce9d6a Mon Sep 17 00:00:00 2001 From: Chris Beck Date: Wed, 15 May 2024 12:03:30 -0600 Subject: [PATCH 1/3] install sccache in the image --- Dockerfile.arm64 | 3 +++ Dockerfile.x86_64 | 3 +++ 2 files changed, 6 insertions(+) diff --git a/Dockerfile.arm64 b/Dockerfile.arm64 index af4a399..de28b8e 100644 --- a/Dockerfile.arm64 +++ b/Dockerfile.arm64 @@ -154,5 +154,8 @@ ENV PATH=/root/.cargo/bin:$PREFIX/bin:$PATH \ DEBIAN_FRONTEND=noninteractive \ TZ=Etc/UTC +# Install sccache +RUN cargo install sccache + # Allow ditching the -w /volume flag to docker run WORKDIR /volume diff --git a/Dockerfile.x86_64 b/Dockerfile.x86_64 index 8a3759d..a041b56 100644 --- a/Dockerfile.x86_64 +++ b/Dockerfile.x86_64 @@ -152,5 +152,8 @@ ENV PATH=/root/.cargo/bin:$PREFIX/bin:$PATH \ DEBIAN_FRONTEND=noninteractive \ TZ=Etc/UTC +# Install sccache +RUN cargo install sccache + # Allow ditching the -w /volume flag to docker run WORKDIR /volume From a83ca44cf6e8f9338a2d8c24e272db777ba5f4ae Mon Sep 17 00:00:00 2001 From: Chris Beck Date: Sun, 19 May 2024 12:28:49 -0600 Subject: [PATCH 2/3] download prebuilt sccache --- Dockerfile.arm64 | 7 +++++++ Dockerfile.x86_64 | 10 +++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/Dockerfile.arm64 b/Dockerfile.arm64 index de28b8e..cd86b0d 100644 --- a/Dockerfile.arm64 +++ b/Dockerfile.arm64 @@ -59,6 +59,7 @@ ENV SSL_VER="1.1.1w" \ PQ_VER="11.12" \ SQLITE_VER="3450100" \ PROTOBUF_VER="25.2" \ + SCCACHE_VERSION="0.3.0" \ CC=musl-gcc \ PREFIX=/musl \ PATH=/usr/local/bin:/root/.cargo/bin:$PATH \ @@ -72,6 +73,12 @@ RUN cd /tmp && \ cp bin/protoc /usr/bin/protoc && \ rm -rf * +# Install prebuilt sccache based on platform +RUN curl -sSL https://github.com/mozilla/sccache/releases/download/v${SCCACHE_VERSION}/sccache-v${SCCACHE_VERSION}-aarch64-unknown-linux-musl.tar.gz | tar xz && \ + mv sccache-v${SCCACHE_VERSION}-*-unknown-linux-musl/sccache /usr/local/bin/ && \ + chmod +x /usr/local/bin/sccache && \ + rm -rf sccache-v${SCCACHE_VERSION}-*-unknown-linux-musl + # Set up a prefix for musl build libraries, make the linker's job of finding them easier # Primarily for the benefit of postgres. # Lastly, link some linux-headers for openssl 1.1 (not used herein) diff --git a/Dockerfile.x86_64 b/Dockerfile.x86_64 index a041b56..2652476 100644 --- a/Dockerfile.x86_64 +++ b/Dockerfile.x86_64 @@ -58,6 +58,7 @@ ENV SSL_VER="1.1.1w" \ PQ_VER="11.12" \ SQLITE_VER="3450100" \ PROTOBUF_VER="25.2" \ + SCCACHE_VERSION="0.3.0" \ CC=musl-gcc \ PREFIX=/musl \ PATH=/usr/local/bin:/root/.cargo/bin:$PATH \ @@ -71,6 +72,12 @@ RUN cd /tmp && \ cp bin/protoc /usr/bin/protoc && \ rm -rf * +# Install prebuilt sccache based on platform +RUN curl -sSL https://github.com/mozilla/sccache/releases/download/v${SCCACHE_VERSION}/sccache-v${SCCACHE_VERSION}-x86_64-unknown-linux-musl.tar.gz | tar xz && \ + mv sccache-v${SCCACHE_VERSION}-*-unknown-linux-musl/sccache /usr/local/bin/ && \ + chmod +x /usr/local/bin/sccache && \ + rm -rf sccache-v${SCCACHE_VERSION}-*-unknown-linux-musl + # Set up a prefix for musl build libraries, make the linker's job of finding them easier # Primarily for the benefit of postgres. # Lastly, link some linux-headers for openssl 1.1 (not used herein) @@ -152,8 +159,5 @@ ENV PATH=/root/.cargo/bin:$PREFIX/bin:$PATH \ DEBIAN_FRONTEND=noninteractive \ TZ=Etc/UTC -# Install sccache -RUN cargo install sccache - # Allow ditching the -w /volume flag to docker run WORKDIR /volume From f10541ce1ae4bedaeb0358d236016c59b27fd247 Mon Sep 17 00:00:00 2001 From: Chris Beck Date: Mon, 20 May 2024 14:40:35 -0600 Subject: [PATCH 3/3] fix previous --- Dockerfile.arm64 | 5 +---- Dockerfile.x86_64 | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/Dockerfile.arm64 b/Dockerfile.arm64 index cd86b0d..a29c3b6 100644 --- a/Dockerfile.arm64 +++ b/Dockerfile.arm64 @@ -59,7 +59,7 @@ ENV SSL_VER="1.1.1w" \ PQ_VER="11.12" \ SQLITE_VER="3450100" \ PROTOBUF_VER="25.2" \ - SCCACHE_VERSION="0.3.0" \ + SCCACHE_VERSION="0.8.0" \ CC=musl-gcc \ PREFIX=/musl \ PATH=/usr/local/bin:/root/.cargo/bin:$PATH \ @@ -161,8 +161,5 @@ ENV PATH=/root/.cargo/bin:$PREFIX/bin:$PATH \ DEBIAN_FRONTEND=noninteractive \ TZ=Etc/UTC -# Install sccache -RUN cargo install sccache - # Allow ditching the -w /volume flag to docker run WORKDIR /volume diff --git a/Dockerfile.x86_64 b/Dockerfile.x86_64 index 2652476..1c15e5c 100644 --- a/Dockerfile.x86_64 +++ b/Dockerfile.x86_64 @@ -58,7 +58,7 @@ ENV SSL_VER="1.1.1w" \ PQ_VER="11.12" \ SQLITE_VER="3450100" \ PROTOBUF_VER="25.2" \ - SCCACHE_VERSION="0.3.0" \ + SCCACHE_VERSION="0.8.0" \ CC=musl-gcc \ PREFIX=/musl \ PATH=/usr/local/bin:/root/.cargo/bin:$PATH \