Newer
Older
## This file can be used to build x86 Linux, x86 Windows and Wasm versions of a Bevy project
RUN cargo install --locked trunk && \
rm -rf ~/.cargo/registry/{cache,src}
COPY --from=msdfgen /usr/bin/msdf-atlas-gen /usr/bin/msdf-atlas-gen
RUN apt-get update -yqq && \
apt-get upgrade -yqq &&\
apt-get install -yqq --no-install-recommends \
clang \
pkg-config \
libx11-dev \
libasound2-dev \
libudev-dev \
lld \
libgtk-3-dev \
libwebkit2gtk-4.0-dev \
curl \
wget \
libssl-dev \
libgtk-3-dev \
libayatana-appindicator3-dev \
librsvg2-dev \
zip \
g++-mingw-w64-x86-64
RUN rustup target add x86_64-pc-windows-gnu
RUN rustup target add wasm32-unknown-unknown
RUN wget https://lab.lcr.gr/microhacks/crunch/-/jobs/artifacts/trunk/raw/target/release/crunch?job=build-linux && \
mv 'crunch?job=build-linux' crunch && \
chmod +x crunch && \
mv crunch /usr/local/bin/crunch
RUN wget https://lab.lcr.gr/microhacks/flit/-/jobs/artifacts/trunk/raw/target/release/flit?job=build-linux && \
mv 'flit?job=build-linux' flit && \
chmod +x flit && \
mv flit /usr/local/bin/flit
RUN wget https://github.com/rui314/mold/releases/download/v1.7.1/mold-1.7.1-x86_64-linux.tar.gz && \
tar -xvzf mold-1.7.1-x86_64-linux.tar.gz && \
mv mold-1.7.1-x86_64-linux/bin/* /usr/bin/ && \
mv mold-1.7.1-x86_64-linux/lib/* /usr/lib/ && \
mv mold-1.7.1-x86_64-linux/libexec/* /usr/libexec/ && \
rm -r mold-1.7.1-x86_64-linux && \
rm mold-1.7.1-x86_64-linux.tar.gz
COPY --from=trunkbuild /usr/local/cargo/bin/trunk /usr/local/cargo/bin/trunk