29 lines
722 B
Docker
29 lines
722 B
Docker
FROM scratch as base
|
|
ENV VERSION=1.4.18
|
|
ENV SRC_HASH=ab2633921a5cd38e48797bf5521ad259bdc4b979078034a3b790d7fec5493fab
|
|
ENV SRC_FILE=m4-${VERSION}.tar.gz
|
|
ENV SRC_SITE=https://ftp.gnu.org/gnu/m4/${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/musl . /
|
|
RUN tar -xzf ${SRC_FILE}
|
|
WORKDIR m4-${VERSION}
|
|
RUN --network=none <<-EOF
|
|
set -eux; \
|
|
./configure \
|
|
--prefix=/usr; \
|
|
make -j "$(nproc)";
|
|
EOF
|
|
|
|
FROM build as install
|
|
RUN --network=none make DESTDIR=/rootfs install
|
|
|
|
FROM stagex/filesystem as package
|
|
COPY --from=install /rootfs/. /
|