FROM alpine:3.22.4 AS builder

RUN apk add --no-cache \
    ca-certificates \
    gcc \
    musl-dev \
    make \
    pkgconf \
    curl-dev \
    curl-static \
    cjson-dev \
    cjson-static \
    zstd-dev \
    zstd-static \
    openssl-dev \
    openssl-libs-static \
    nghttp2-dev \
    nghttp2-static \
    zlib-dev \
    zlib-static \
    brotli-dev \
    brotli-static \
    c-ares-dev \
    libidn2-dev \
    libidn2-static \
    libpsl-dev \
    libpsl-static \
    libunistring-dev \
    libunistring-static

WORKDIR /build
COPY src/ src/
COPY Makefile .

RUN make STATIC=1

FROM scratch

COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
COPY --from=builder /build/build/dns-keeper /dns-keeper

ENTRYPOINT ["/dns-keeper"]
