65 lines
1.1 KiB
Docker
65 lines
1.1 KiB
Docker
FROM alpine:3.21
|
|
|
|
# Install build dependencies
|
|
# TODO: trim dependencies?
|
|
RUN apk update && apk add \
|
|
build-base abuild \
|
|
rustup \
|
|
build-base \
|
|
musl-dev \
|
|
gcc \
|
|
cmake \
|
|
make \
|
|
pkgconfig \
|
|
perl \
|
|
python3 \
|
|
curl \
|
|
git \
|
|
llvm \
|
|
clang \
|
|
clang-libclang \
|
|
protobuf-dev \
|
|
libc-dev \
|
|
linux-headers \
|
|
freetype-dev \
|
|
freetype-static \
|
|
fontconfig-dev \
|
|
fontconfig-static \
|
|
bzip2-dev \
|
|
bzip2-static \
|
|
brotli-dev \
|
|
brotli-static \
|
|
expat-dev \
|
|
expat-static \
|
|
libx11-dev \
|
|
libxcursor-dev \
|
|
libxkbcommon-dev \
|
|
libxkbcommon-static \
|
|
wayland-dev \
|
|
wayland-libs-client \
|
|
wayland-libs-server \
|
|
wayland-static \
|
|
openssl-dev \
|
|
openssl-libs-static \
|
|
zlib-dev \
|
|
zlib-static \
|
|
libpng-dev \
|
|
libpng-static \
|
|
libwebp-dev \
|
|
libwebp-static \
|
|
tiff-dev \
|
|
libjpeg-turbo-dev \
|
|
libjpeg-turbo-static
|
|
|
|
RUN rustup-init -y --default-toolchain stable
|
|
|
|
# Set pkg-config to use static libraries
|
|
ENV PKG_CONFIG_ALLOW_STATIC=1
|
|
ENV PKG_CONFIG_ALL_STATIC=1
|
|
|
|
# Slint/winit does not work when statically compiled
|
|
ENV RUSTFLAGS="-C target-feature=-crt-static"
|
|
|
|
WORKDIR /build
|
|
|