FROM rust:1.95.0

RUN apt-get update

RUN apt-get install -y \
    mingw-w64 \
    build-essential \
    gcc-arm-linux-gnueabi \
    g++-arm-linux-gnueabi

RUN apt-get install -y \
    clang \
    lld \
    llvm

# Rust cross-compilation targets
RUN rustup target add --toolchain nightly-2026-01-30 x86_64-pc-windows-gnu

RUN rustup target add --toolchain nightly-2026-01-30 aarch64-pc-windows-gnullvm

RUN rustup target add --toolchain nightly-2026-01-30 x86_64-unknown-linux-gnu

RUN rustup target add --toolchain nightly-2026-01-30 aarch64-unknown-linux-gnu

RUN rustup target add --toolchain nightly-2026-01-30 armv7-unknown-linux-gnueabihf

RUN rustup target add --toolchain nightly-2026-01-30 arm-unknown-linux-gnueabi

# Set default Rust toolchain
RUN rustup default nightly-2026-01-30

WORKDIR /src
