36 lines
1.1 KiB
Docker
36 lines
1.1 KiB
Docker
FROM scratch as base
|
|
ENV VERSION=1.16.0
|
|
ENV SRC_HASH=bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0
|
|
ENV SRC_FILE=cffi-${VERSION}.tar.gz
|
|
ENV SRC_SITE=https://files.pythonhosted.org/packages/source/c/cffi/${SRC_FILE}
|
|
|
|
FROM base as fetch
|
|
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
|
|
|
|
FROM fetch as build
|
|
COPY --from=stagex/busybox . /
|
|
COPY --from=stagex/musl . /
|
|
COPY --from=stagex/zlib . /
|
|
COPY --from=stagex/gcc . /
|
|
COPY --from=stagex/binutils . /
|
|
COPY --from=stagex/libffi . /
|
|
COPY --from=stagex/python . /
|
|
COPY --from=stagex/py-flit . /
|
|
COPY --from=stagex/py-wheel . /
|
|
COPY --from=stagex/py-setuptools . /
|
|
COPY --from=stagex/py-gpep517 . /
|
|
COPY --from=stagex/py-installer . /
|
|
RUN tar -xzf ${SRC_FILE}
|
|
WORKDIR cffi-${VERSION}
|
|
RUN gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2
|
|
|
|
FROM build as install
|
|
RUN <<-EOF
|
|
set -eu
|
|
python -m installer -d /rootfs .dist/*.whl
|
|
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
|
|
find /rootfs -exec touch -hcd "@0" "{}" +
|
|
EOF
|
|
|
|
FROM stagex/filesystem as package
|
|
COPY --from=install /rootfs/. /
|