FROM python:3.11-slim AS gpmc-builder

WORKDIR /tmp/GPMC
RUN apt-get update \
    && apt-get install -y --no-install-recommends \
        build-essential cmake libgmp-dev libmpfr-dev zlib1g-dev \
    && rm -rf /var/lib/apt/lists/*
COPY third_party/GPMC /tmp/GPMC
RUN sh ./build.sh r

FROM python:3.11-slim

ENV PYTHONUNBUFFERED=1
ENV GPMC_PATH=/opt/gpmc/bin/gpmc
ENV PATH="/opt/gpmc/bin:${PATH}"

RUN apt-get update \
    && apt-get install -y --no-install-recommends \
        libgmp10 libgmpxx4ldbl libmpfr6 zlib1g \
    && rm -rf /var/lib/apt/lists/*

COPY --from=gpmc-builder /tmp/GPMC/bin/gpmc /opt/gpmc/bin/gpmc
WORKDIR /workspace
COPY . /workspace
RUN python -m pip install --no-cache-dir .

ENTRYPOINT ["ancillaguard"]
CMD ["--help"]
