stringsext 2.3.5

find multi-byte-encoded strings in binary data
ARG BASE_IMAGE=rust:1.80.1-slim-bullseye
WORKDIR /home/project

FROM $BASE_IMAGE as planner

# Add i686 target
RUN rustup target add i686-unknown-linux-gnu

# Add Musl target
RUN rustup target add i686-unknown-linux-musl
RUN rustup target add x86_64-unknown-linux-musl

# Add RaspberryPi target
RUN rustup target add armv7-unknown-linux-gnueabihf
RUN rustup target add aarch64-unknown-linux-gnu

# Cross compile for Windows
RUN rustup target add x86_64-pc-windows-gnu

# Helper to make deb packages.
RUN cargo install cargo-deb
### use with
# cargo deb --target=x86_64-unknown-linux-gnu

# Tp-Note needs some libs for crosscompilation.
RUN dpkg --add-architecture i386; apt update

RUN apt-get -y install pkg-config apt-utils \
        # Pack artifacts in archive.
        # Some dependencies need Python, `mc` is for convenience.
        zip python3 mc \
        # for `cargo build --target i686-unknown-linux-gnu`
        libc6-dev-i386 build-essential crossbuild-essential-i386 \
        # for `cargo deb --target=i686-unknown-linux-gnu`
        libgcc1:i386 \
        # for `cargo build --target armv7-unknown-linux-gnueabihf`
        musl-tools crossbuild-essential-armhf \
        # for `cargo build --target aarch64-unknown-linux-gnu`
        crossbuild-essential-arm64 \
        # for `cargo build --release --target x86_64-pc-windows-gnu`
        binutils-mingw-w64 mingw-w64
                      


COPY . .