-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
thomas
authored
Apr 16, 2024
1 parent
b11a183
commit 356e667
Showing
23 changed files
with
168 additions
and
176 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
examples | ||
tests/bazel_integration | ||
tests/bazel_integration | ||
.sl |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
6.1.1 | ||
6.5.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,63 +1,75 @@ | ||
FROM ubuntu:latest | ||
FROM debian:bookworm | ||
MAINTAINER Thomas Bailleux <[email protected]> | ||
|
||
SHELL ["/bin/bash", "-c"] | ||
|
||
RUN apt update | ||
RUN apt install -y clang-15 | ||
RUN apt install -y lld-15 | ||
RUN apt install -y git | ||
RUN apt install -y rsync | ||
RUN apt install -y graphviz | ||
RUN apt install -y cmake | ||
RUN apt install -y ninja-build | ||
RUN apt install -y curl | ||
RUN apt install -y clang-format-15 | ||
RUN apt install -y python3-pip | ||
RUN apt-get update && apt-get install --yes --no-install-recommends \ | ||
bash \ | ||
ca-certificates \ | ||
cmake \ | ||
curl \ | ||
gcc \ | ||
g++ \ | ||
git \ | ||
gnupg \ | ||
graphviz \ | ||
gzip \ | ||
lsb-release \ | ||
make \ | ||
ninja-build \ | ||
openjdk-17-jdk-headless \ | ||
patch \ | ||
python3-pip \ | ||
rsync \ | ||
software-properties-common \ | ||
ssh \ | ||
sudo \ | ||
tar \ | ||
wget \ | ||
zlib1g \ | ||
zlib1g-dev \ | ||
zstd && \ | ||
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - && \ | ||
echo 'deb http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-18 main' | sudo tee /etc/apt/sources.list && \ | ||
apt-get update && \ | ||
apt-get install --yes --no-install-recommends \ | ||
llvm-18 \ | ||
llvm-18-dev \ | ||
clang-18 \ | ||
clang-format-18 \ | ||
libclang-rt-18-dev \ | ||
lld-18 && \ | ||
apt-get clean && \ | ||
rm -rf /var/lib/apt/lists/* | ||
|
||
ENV CC=clang-15 | ||
ENV CXX=clang++-15 | ||
ENV LD=lld-15 | ||
ENV LLVM_CONFIG=/usr/lib/llvm-15/bin/llvm-config | ||
ENV CLANG_FORMAT=clang-format-15 | ||
ENV GOBIN='/usr/local/go/bin' | ||
ENV PATH="${PATH}:${GOBIN}" | ||
RUN wget -qLO- https://go.dev/dl/go1.22.0.linux-amd64.tar.gz | tar -C /usr/local -xz && \ | ||
wget -L https://github.com/bazelbuild/bazelisk/releases/download/v1.19.0/bazelisk-linux-amd64 -O /usr/bin/bazelisk && \ | ||
wget -L https://github.com/bazelbuild/buildtools/releases/download/v6.4.0/buildifier-linux-amd64 -O /usr/bin/buildifier && \ | ||
chmod +x /usr/bin/bazelisk /usr/bin/buildifier && \ | ||
pip3 install cmake-format --break-system-packages | ||
|
||
RUN curl -Lo bazelisk-linux-amd64 'https://github.com/bazelbuild/bazelisk/releases/download/v1.16.0/bazelisk-linux-amd64' | ||
RUN sha384sum -c <<< "55d9ef786360f97902c886eff515c5dd2e05985c52d43809645f963b9a7e19ccf87cef3d07d2cfda8c2cf16aed119616 bazelisk-linux-amd64" | ||
RUN mv bazelisk-linux-amd64 /usr/bin/bazel | ||
RUN chmod +x /usr/bin/bazel | ||
ARG USER="pawn" | ||
RUN useradd -ms /bin/bash "${USER}" && \ | ||
adduser "${USER}" sudo && \ | ||
echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers | ||
|
||
RUN curl -Lo /tmp/doxygen.tar.gz 'https://github.com/doxygen/doxygen/releases/download/Release_1_9_6/doxygen-1.9.6.linux.bin.tar.gz' | ||
RUN sha384sum -c <<< "f06f1668637572695d11747a6527797beb4d184f11a5df03ccf87a4a094c2df0e6f38a3a57ea9ec2c3de625e87fc1d8e /tmp/doxygen.tar.gz" | ||
WORKDIR /tmp | ||
RUN tar xf doxygen.tar.gz doxygen-1.9.6/bin/doxygen | ||
RUN mv doxygen-1.9.6/bin/doxygen /usr/bin/doxygen | ||
RUN chmod +x /usr/bin/doxygen | ||
RUN rm -rf doxygen-1.9.6 doxygen.tar.gz | ||
USER "${USER}" | ||
WORKDIR "/home/${USER}" | ||
RUN git config --global --add safe.directory '*' | ||
RUN USE_BAZEL_VERSION=6.5.0 bazelisk version | ||
|
||
# Cargo | ||
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal | ||
ENV PATH="${PATH}:/home/${USER}/.cargo/bin" | ||
ENV HOME="/home/${USER}" | ||
|
||
RUN curl -Lo /tmp/go.tar.gz 'https://go.dev/dl/go1.20.3.linux-amd64.tar.gz' | ||
RUN sha384sum -c <<< "66fccde4a792c96fed6a85c789d0bf0eb954183b9cc70eb10b1c4c485bccfc5cfbebb82966d53d475150ae6fb8670c80 /tmp/go.tar.gz" | ||
WORKDIR /tmp/ | ||
RUN tar -C /usr/local -xf /tmp/go.tar.gz | ||
ENV PATH=$PATH:/usr/local/go/bin | ||
RUN go version | ||
ENV GOPATH=/usr/local/go | ||
|
||
RUN go install github.com/bazelbuild/buildtools/buildifier@latest | ||
RUN buildifier --version | ||
|
||
RUN pip3 install cmake-format | ||
|
||
RUN useradd -ms /bin/bash pawn | ||
USER pawn | ||
WORKDIR /home/pawn | ||
ENV GOOGLE_APPLICATION_CREDENTIALS=/home/pawn/gcloud-service-key.json | ||
|
||
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y | ||
ENV PATH=$PATH:/home/pawn/.cargo/bin | ||
RUN source /home/pawn/.cargo/env | ||
RUN rustup update | ||
|
||
RUN go version | ||
RUN buildifier --version | ||
RUN cmake-format --version | ||
RUN rustc --version | ||
ENV CC=clang-18 | ||
ENV CXX=clang++-18 | ||
ENV LD=lld-18 | ||
ENV LDFLAGS="-no-canonical-prefixes -L/usr/lib/llvm-18/lib" | ||
ENV LLVM_CONFIG=/usr/lib/llvm-18/bin/llvm-config | ||
ENV LLVM_DIR=/usr/lib/llvm-18/lib/cmake/ | ||
ENV CLANG_FORMAT=clang-format-18 | ||
ENV GOOGLE_APPLICATION_CREDENTIALS="$HOME/gcloud-service-key.json" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.