stagex/packages/jq/Containerfile

40 lines
952 B
Text
Raw Normal View History

2024-05-09 01:16:55 +00:00
FROM scratch as base
ARG ARCH=x86_64
ENV VERSION=1.7.1
ENV SRC_HASH=478c9ca129fd2e3443fe27314b455e211e0d8c60bc8ff7df703873deeee580c2
ENV SRC_FILE=jq-${VERSION}.tar.gz
ENV SRC_SITE=https://github.com/jqlang/jq/releases/download/jq-${VERSION}/${SRC_FILE}
FROM base as fetch
ADD --checksum=sha256:${SRC_HASH} ${SRC_SITE} .
FROM fetch as build
COPY --from=stagex/busybox . /
COPY --from=stagex/binutils . /
COPY --from=stagex/musl . /
COPY --from=stagex/make . /
COPY --from=stagex/gcc . /
RUN tar -xf ${SRC_FILE}
WORKDIR jq-${VERSION}
RUN --network=none <<-EOF
set -ex
./configure \
--build=${ARCH}-linux-musl \
--host=${ARCH}-linux-musl \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/etc \
--mandir=/usr/share/man \
--disable-docs
make -j "$(nproc)"
EOF
FROM build as install
RUN --network=none <<-EOF
set -eu
make DESTDIR="/rootfs" install
EOF
FROM stagex/filesystem as package
COPY --from=install /rootfs/. /