stagex/packages/libdeflate/Containerfile

43 lines
1.2 KiB
Text
Raw Normal View History

2024-09-27 20:12:07 +00:00
FROM scratch AS base
ARG ARCH=x86_64
ENV VERSION=1.20
ENV PACKAGE_NAME=libdeflate
ENV SRC_HASH=ed1454166ced78913ff3809870a4005b7170a6fd30767dc478a09b96847b9c2a
ENV SRC_FILE=v${VERSION}.tar.gz
ENV SRC_SITE=https://github.com/ebiggers/libdeflate/archive/refs/tags/${SRC_FILE}
FROM base AS fetch
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
FROM fetch AS build
COPY --from=stagex/busybox . /
COPY --from=stagex/gcc . /
COPY --from=stagex/binutils . /
COPY --from=stagex/make . /
COPY --from=stagex/cmake . /
COPY --from=stagex/openssl . /
COPY --from=stagex/libgcrypt . /
COPY --from=stagex/musl . /
COPY --from=stagex/samurai . /
COPY --from=stagex/zlib . /
RUN tar -xf ${SRC_FILE}
RUN ln -sf /bin/gas /bin/as
WORKDIR /${PACKAGE_NAME}-${VERSION}
RUN --network=none <<-EOF
set -eux; \
cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr/lib \
-DCMAKE_BUILD_TYPE=Release \
-DLIBDEFLATE_BUILD_TESTS="$(want_check && echo ON || echo OFF)" \
-DLIBDEFLATE_BUILD_SHARED_LIB=OFF \
-DLIBDEFLATE_USE_SHARED_LIB=OFF
cmake --build build
EOF
FROM build AS install
RUN --network=none DESTDIR="/rootfs" cmake --install build
RUN find /rootfs -exec touch -hcd "@0" "{}" +
FROM stagex/filesystem AS package
COPY --from=install /rootfs/. /