From 071af2e516e7be088d798e11a4cdf3b24df7f1a1 Mon Sep 17 00:00:00 2001 From: trapexit Date: Fri, 29 Aug 2025 08:51:05 -0400 Subject: [PATCH] More build process updates (#1516) --- Makefile | 103 ++++++++---------- buildtools/build-mergerfs | 38 ++++--- buildtools/build-release | 37 ++++--- buildtools/containerfiles/debian.12.amd64 | 9 -- buildtools/containerfiles/debian.12.arm64 | 9 -- buildtools/containerfiles/debian.12.armhf | 9 -- buildtools/containerfiles/debian.12.i386 | 9 -- buildtools/containerfiles/debian.13.amd64 | 9 -- buildtools/containerfiles/debian.13.arm64 | 9 -- buildtools/containerfiles/debian.13.armhf | 9 -- buildtools/containerfiles/debian.13.i386 | 9 -- .../{debian.11.i386 => debian:11.amd64} | 7 +- buildtools/containerfiles/debian:11.arm64 | 10 ++ buildtools/containerfiles/debian:11.armhf | 10 ++ .../{debian.11.amd64 => debian:11.i386} | 7 +- buildtools/containerfiles/debian:12.amd64 | 10 ++ buildtools/containerfiles/debian:12.arm64 | 10 ++ buildtools/containerfiles/debian:12.armhf | 10 ++ .../{debian.11.arm64 => debian:12.i386} | 7 +- buildtools/containerfiles/debian:13.amd64 | 10 ++ buildtools/containerfiles/debian:13.arm64 | 10 ++ buildtools/containerfiles/debian:13.armhf | 10 ++ .../{debian.11.armhf => debian:13.i386} | 7 +- buildtools/containerfiles/debian:13.riscv64 | 10 ++ buildtools/containerfiles/fedora.37.amd64 | 9 -- buildtools/containerfiles/fedora.37.arm64 | 9 -- buildtools/containerfiles/fedora.37.armhf | 9 -- buildtools/containerfiles/fedora.37.i386 | 9 -- buildtools/containerfiles/fedora.38.amd64 | 9 -- buildtools/containerfiles/fedora.38.arm64 | 9 -- buildtools/containerfiles/fedora.38.armhf | 9 -- buildtools/containerfiles/fedora.38.i386 | 9 -- buildtools/containerfiles/fedora.39.amd64 | 9 -- buildtools/containerfiles/fedora.40.amd64 | 9 -- buildtools/containerfiles/fedora.41.amd64 | 9 -- buildtools/containerfiles/fedora.42.amd64 | 9 -- buildtools/containerfiles/fedora.43.amd64 | 9 -- buildtools/containerfiles/fedora.43.arm64 | 9 -- buildtools/containerfiles/fedora:40.amd64 | 10 ++ buildtools/containerfiles/fedora:40.arm64 | 10 ++ buildtools/containerfiles/fedora:41.amd64 | 10 ++ buildtools/containerfiles/fedora:41.arm64 | 10 ++ buildtools/containerfiles/fedora:42.amd64 | 10 ++ buildtools/containerfiles/fedora:42.arm64 | 10 ++ buildtools/containerfiles/fedora:43.amd64 | 10 ++ buildtools/containerfiles/fedora:43.arm64 | 10 ++ buildtools/containerfiles/rockylinux.10.amd64 | 9 -- buildtools/containerfiles/rockylinux.10.arm64 | 9 -- .../containerfiles/rockylinux.10.riscv64 | 9 -- buildtools/containerfiles/rockylinux.8.amd64 | 9 -- buildtools/containerfiles/rockylinux.8.arm64 | 9 -- buildtools/containerfiles/rockylinux.8.armhf | 9 -- buildtools/containerfiles/rockylinux.8.i386 | 9 -- buildtools/containerfiles/rockylinux.9.amd64 | 9 -- buildtools/containerfiles/rockylinux.9.arm64 | 9 -- buildtools/containerfiles/rockylinux.9.armhf | 9 -- buildtools/containerfiles/rockylinux.9.i386 | 9 -- buildtools/containerfiles/rockylinux:10.amd64 | 10 ++ buildtools/containerfiles/rockylinux:10.arm64 | 10 ++ buildtools/containerfiles/rockylinux:8.amd64 | 10 ++ buildtools/containerfiles/rockylinux:8.arm64 | 10 ++ buildtools/containerfiles/rockylinux:9.amd64 | 10 ++ buildtools/containerfiles/rockylinux:9.arm64 | 10 ++ buildtools/containerfiles/ubuntu.20.04.amd64 | 9 -- buildtools/containerfiles/ubuntu.20.04.arm64 | 9 -- buildtools/containerfiles/ubuntu.20.04.armhf | 9 -- buildtools/containerfiles/ubuntu.20.04.i386 | 9 -- buildtools/containerfiles/ubuntu.22.04.amd64 | 9 -- buildtools/containerfiles/ubuntu.22.04.arm64 | 9 -- buildtools/containerfiles/ubuntu.22.04.armhf | 9 -- buildtools/containerfiles/ubuntu.22.04.i386 | 9 -- buildtools/containerfiles/ubuntu.24.04.amd64 | 9 -- buildtools/containerfiles/ubuntu.24.04.arm64 | 9 -- buildtools/containerfiles/ubuntu.24.04.armhf | 9 -- buildtools/containerfiles/ubuntu.24.04.i386 | 9 -- buildtools/containerfiles/ubuntu:22.04.amd64 | 10 ++ buildtools/containerfiles/ubuntu:22.04.arm64 | 10 ++ buildtools/containerfiles/ubuntu:22.04.armhf | 10 ++ .../containerfiles/ubuntu:22.04.riscv64 | 10 ++ buildtools/containerfiles/ubuntu:24.04.amd64 | 10 ++ buildtools/containerfiles/ubuntu:24.04.arm64 | 10 ++ buildtools/containerfiles/ubuntu:24.04.armhf | 10 ++ .../containerfiles/ubuntu:24.04.riscv64 | 10 ++ buildtools/gen-containerfiles | 27 +++++ buildtools/install-build-pkgs | 7 +- buildtools/target-containers.txt | 35 ++++++ libfuse/Makefile | 49 +++++---- 87 files changed, 506 insertions(+), 533 deletions(-) delete mode 100644 buildtools/containerfiles/debian.12.amd64 delete mode 100644 buildtools/containerfiles/debian.12.arm64 delete mode 100644 buildtools/containerfiles/debian.12.armhf delete mode 100644 buildtools/containerfiles/debian.12.i386 delete mode 100644 buildtools/containerfiles/debian.13.amd64 delete mode 100644 buildtools/containerfiles/debian.13.arm64 delete mode 100644 buildtools/containerfiles/debian.13.armhf delete mode 100644 buildtools/containerfiles/debian.13.i386 rename buildtools/containerfiles/{debian.11.i386 => debian:11.amd64} (56%) create mode 100644 buildtools/containerfiles/debian:11.arm64 create mode 100644 buildtools/containerfiles/debian:11.armhf rename buildtools/containerfiles/{debian.11.amd64 => debian:11.i386} (56%) create mode 100644 buildtools/containerfiles/debian:12.amd64 create mode 100644 buildtools/containerfiles/debian:12.arm64 create mode 100644 buildtools/containerfiles/debian:12.armhf rename buildtools/containerfiles/{debian.11.arm64 => debian:12.i386} (56%) create mode 100644 buildtools/containerfiles/debian:13.amd64 create mode 100644 buildtools/containerfiles/debian:13.arm64 create mode 100644 buildtools/containerfiles/debian:13.armhf rename buildtools/containerfiles/{debian.11.armhf => debian:13.i386} (56%) create mode 100644 buildtools/containerfiles/debian:13.riscv64 delete mode 100644 buildtools/containerfiles/fedora.37.amd64 delete mode 100644 buildtools/containerfiles/fedora.37.arm64 delete mode 100644 buildtools/containerfiles/fedora.37.armhf delete mode 100644 buildtools/containerfiles/fedora.37.i386 delete mode 100644 buildtools/containerfiles/fedora.38.amd64 delete mode 100644 buildtools/containerfiles/fedora.38.arm64 delete mode 100644 buildtools/containerfiles/fedora.38.armhf delete mode 100644 buildtools/containerfiles/fedora.38.i386 delete mode 100644 buildtools/containerfiles/fedora.39.amd64 delete mode 100644 buildtools/containerfiles/fedora.40.amd64 delete mode 100644 buildtools/containerfiles/fedora.41.amd64 delete mode 100644 buildtools/containerfiles/fedora.42.amd64 delete mode 100644 buildtools/containerfiles/fedora.43.amd64 delete mode 100644 buildtools/containerfiles/fedora.43.arm64 create mode 100644 buildtools/containerfiles/fedora:40.amd64 create mode 100644 buildtools/containerfiles/fedora:40.arm64 create mode 100644 buildtools/containerfiles/fedora:41.amd64 create mode 100644 buildtools/containerfiles/fedora:41.arm64 create mode 100644 buildtools/containerfiles/fedora:42.amd64 create mode 100644 buildtools/containerfiles/fedora:42.arm64 create mode 100644 buildtools/containerfiles/fedora:43.amd64 create mode 100644 buildtools/containerfiles/fedora:43.arm64 delete mode 100644 buildtools/containerfiles/rockylinux.10.amd64 delete mode 100644 buildtools/containerfiles/rockylinux.10.arm64 delete mode 100644 buildtools/containerfiles/rockylinux.10.riscv64 delete mode 100644 buildtools/containerfiles/rockylinux.8.amd64 delete mode 100644 buildtools/containerfiles/rockylinux.8.arm64 delete mode 100644 buildtools/containerfiles/rockylinux.8.armhf delete mode 100644 buildtools/containerfiles/rockylinux.8.i386 delete mode 100644 buildtools/containerfiles/rockylinux.9.amd64 delete mode 100644 buildtools/containerfiles/rockylinux.9.arm64 delete mode 100644 buildtools/containerfiles/rockylinux.9.armhf delete mode 100644 buildtools/containerfiles/rockylinux.9.i386 create mode 100644 buildtools/containerfiles/rockylinux:10.amd64 create mode 100644 buildtools/containerfiles/rockylinux:10.arm64 create mode 100644 buildtools/containerfiles/rockylinux:8.amd64 create mode 100644 buildtools/containerfiles/rockylinux:8.arm64 create mode 100644 buildtools/containerfiles/rockylinux:9.amd64 create mode 100644 buildtools/containerfiles/rockylinux:9.arm64 delete mode 100644 buildtools/containerfiles/ubuntu.20.04.amd64 delete mode 100644 buildtools/containerfiles/ubuntu.20.04.arm64 delete mode 100644 buildtools/containerfiles/ubuntu.20.04.armhf delete mode 100644 buildtools/containerfiles/ubuntu.20.04.i386 delete mode 100644 buildtools/containerfiles/ubuntu.22.04.amd64 delete mode 100644 buildtools/containerfiles/ubuntu.22.04.arm64 delete mode 100644 buildtools/containerfiles/ubuntu.22.04.armhf delete mode 100644 buildtools/containerfiles/ubuntu.22.04.i386 delete mode 100644 buildtools/containerfiles/ubuntu.24.04.amd64 delete mode 100644 buildtools/containerfiles/ubuntu.24.04.arm64 delete mode 100644 buildtools/containerfiles/ubuntu.24.04.armhf delete mode 100644 buildtools/containerfiles/ubuntu.24.04.i386 create mode 100644 buildtools/containerfiles/ubuntu:22.04.amd64 create mode 100644 buildtools/containerfiles/ubuntu:22.04.arm64 create mode 100644 buildtools/containerfiles/ubuntu:22.04.armhf create mode 100644 buildtools/containerfiles/ubuntu:22.04.riscv64 create mode 100644 buildtools/containerfiles/ubuntu:24.04.amd64 create mode 100644 buildtools/containerfiles/ubuntu:24.04.arm64 create mode 100644 buildtools/containerfiles/ubuntu:24.04.armhf create mode 100644 buildtools/containerfiles/ubuntu:24.04.riscv64 create mode 100755 buildtools/gen-containerfiles create mode 100644 buildtools/target-containers.txt diff --git a/Makefile b/Makefile index 6a013d64..6008710a 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -# Copyright (c) 2024, Antonio SJ Musumeci +# Copyright (c) 2025, Antonio SJ Musumeci # # Permission to use, copy, modify, and/or distribute this software for any # purpose with or without fee is hereby granted, provided that the above @@ -12,6 +12,10 @@ # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +ifeq ($(shell id -u),0) +FAKEROOT ?= +endif + CP ?= cp FAKEROOT ?= fakeroot FIND ?= find @@ -29,7 +33,7 @@ TAR ?= tar TOUCH ?= touch BUILDDIR := build -GITREF = $(shell git describe --exact-match --tags HEAD 2>/dev/null || git symbolic-ref --short HEAD 2>/dev/null || git rev-parse --short HEAD) +GITHUB_REPO ?= "https://github.com/trapexit/mergerfs" ifndef GIT_REPO ifneq ($(shell $(GIT) --version 2> /dev/null),) @@ -61,13 +65,13 @@ LTO_FLAGS := endif SRC := $(wildcard src/*.cpp) -OBJS := $(SRC:src/%.cpp=build/.src/%.o) -DEPS := $(SRC:src/%.cpp=build/.src/%.d) +OBJS := $(SRC:src/%.cpp=build/.objs/%.cpp.o) +DEPS := $(SRC:src/%.cpp=build/.objs/%.cpp.d) TESTS := $(wildcard tests/*.cpp) -TESTS_OBJS := $(filter-out build/.src/mergerfs.o,$(OBJS)) -TESTS_OBJS += $(TESTS:tests/%.cpp=build/.tests/%.o) -TESTS_DEPS := $(TESTS:tests/%.cpp=build/.tests/%.d) +TESTS_OBJS := $(filter-out build/.objs/mergerfs.o,$(OBJS)) +TESTS_OBJS += $(TESTS:tests/%.cpp=build/.test_objs/%.cpp.o) +TESTS_DEPS := $(TESTS:tests/%.cpp=build/.test_objs/%.cpp.d) TESTS_DEPS += $(DEPS) MANPAGE := mergerfs.1 @@ -140,10 +144,13 @@ all: libfuse $(BUILDDIR)/mergerfs $(BUILDDIR)/fsck.mergerfs $(BUILDDIR)/mergerfs .PHONY: help help: - @echo "usage: make\n" - @echo "make USE_XATTR=0 - build program without xattrs functionality" - @echo "make STATIC=1 - build static binary" - @echo "make LTO=1 - build with link time optimization" + @echo "usage: make ARG\n" + @echo "USE_XATTR=0 - build program without xattrs functionality" + @echo "STATIC=1 - build static binary" + @echo "LTO=1 - build with link time optimization" + @echo "CLEANUP=1 - cleanup images between release build process" + @echo "PKGDIR=/dir/ - location for release build pkgs" + @echo "GITREF=gitref - gitref to use for release builds" $(BUILDDIR)/mergerfs: $(LIBFUSE) src/version.hpp $(OBJS) @@ -165,6 +172,7 @@ libfuse: tests: $(BUILDDIR)/tests +.PHONY: changelog: ifdef GIT_REPO $(GIT2DEBCL) --name mergerfs > ChangeLog @@ -179,13 +187,14 @@ src/version.hpp: ./buildtools/update-version $(BUILDDIR)/stamp: - $(MKDIR) -p $(BUILDDIR)/.src $(BUILDDIR)/.tests + $(MKDIR) -p $(BUILDDIR)/.objs + $(MKDIR) -p $(BUILDDIR)/.test_objs $(TOUCH) $@ -$(BUILDDIR)/.src/%.o: src/%.cpp $(BUILDDIR)/stamp +$(BUILDDIR)/.objs/%.cpp.o: src/%.cpp $(BUILDDIR)/stamp $(CXX) $(CXXFLAGS) $(INC_FLAGS) $(MFS_FLAGS) $(CPPFLAGS) -c $< -o $@ -$(BUILDDIR)/.tests/%.o: tests/%.cpp +$(BUILDDIR)/.test_objs/%.cpp.o: tests/%.cpp $(CXX) $(CXXFLAGS) $(TESTS_FLAGS) $(INC_FLAGS) $(MFS_FLAGS) $(CPPFLAGS) -c $< -o $@ $(BUILDDIR)/preload.so: $(BUILDDIR)/stamp tools/preload.c @@ -199,6 +208,7 @@ clean: rpm-clean $(FIND) . -name "*~" -delete $(MAKE) -C libfuse clean +.PHONY: distclean distclean: clean ifdef GIT_REPO $(GIT) clean -xfd @@ -302,62 +312,35 @@ install-build-pkgs: install-build-tools: ./bulidtools/install-build-tools -.PHONY: release -release: +define build_release + $(eval GITREF ?= $(shell git describe --exact-match --tags HEAD 2>/dev/null || git symbolic-ref --short HEAD 2>/dev/null || git rev-parse --short HEAD)) ./buildtools/build-release \ - --target=all \ + --target=$(1) \ $(if $(CLEANUP),--cleanup) \ + $(if $(PKGDIR),--pkgdirpath=$(PKGDIR)) \ + --git-repo=$(if $(REMOTE_REPO),$(GITHUB_REPO),".") \ --branch=$(GITREF) +endef -.PHONY: release-sample +.PHONY: release +.PHONY: release-amd64 release-arm64 release-armhf release-riscv64 +.PHONY: release-sample release-static release-tarball +release: + $(call build_release,"all") release-sample: - ./buildtools/build-release \ - --target=debian.12.amd64 \ - $(if $(CLEANUP),--cleanup) \ - --branch=$(GITREF) - -.PHONY: release-amd64 + $(call build_release,"debian:13.amd64") release-amd64: - ./buildtools/build-release \ - --target=amd64 \ - $(if $(CLEANUP),--cleanup) \ - --branch=$(GITREF) - -.PHONY: release-arm64 + $(call build_release,"amd64") release-arm64: - ./buildtools/build-release \ - --target=arm64 \ - $(if $(CLEANUP),--cleanup) \ - --branch=$(GITREF) - -.PHONY: release-riscv64 -release-riscv64: - ./buildtools/build-release \ - --target=riscv64 \ - $(if $(CLEANUP),--cleanup) \ - --branch=$(GITREF) - -.PHONY: release-armhf + $(call build_release,"arm64") release-armhf: - ./buildtools/build-release \ - --target=armhf \ - $(if $(CLEANUP),--cleanup) \ - --branch=$(GITREF) - -.PHONY: release-static + $(call build_release,"armhf") +release-riscv64: + $(call build_release,"risc64") release-static: - ./buildtools/build-release \ - --target=static \ - $(if $(CLEANUP),--cleanup) \ - --branch=$(GITREF) - -.PHONY: release-tarball + $(call build_release,"static") release-tarball: - ./buildtools/build-release \ - --target=tarball \ - $(if $(CLEANUP),--cleanup) \ - --branch=$(GITREF) - + $(call build_release,"tarball") .PHONY: tags tags: diff --git a/buildtools/build-mergerfs b/buildtools/build-mergerfs index 0e15c2b4..a530e5df 100755 --- a/buildtools/build-mergerfs +++ b/buildtools/build-mergerfs @@ -1,44 +1,47 @@ #!/bin/sh +set -e -BRANCH="${1:-master}" -SRCDIR="/tmp/mergerfs" -REPO_URL="https://github.com/trapexit/mergerfs" +if [ $# -ne 2 ]; then + echo "usage: $0 " + echo "argv: $@" + echo "argc: $#" + exit 1 +fi + +GIT_REPO="${1}" +BRANCH="${2}" +BUILDDIR="/tmp/build" +echo "Clone source from ${GIT_REPO} to ${BUILDDIR}" git \ clone \ --single-branch \ --branch="${BRANCH}" \ - "${REPO_URL}" \ - "${SRCDIR}" + "${GIT_REPO}" \ + "${BUILDDIR}" -cd "${SRCDIR}" +cd "${BUILDDIR}" git log HEAD^1.. -mkdir /build +mkdir "/build" if [ -e /usr/bin/apt-get ]; then make deb - if [ $? -ne 0 ]; then - . /etc/lsb-release - cp -v /etc/lsb-release "/build/${DISTRIB_ID}.${DISTRIB_CODENAME}.${DISTRIB_RELEASE}.$(arch).FAILED" - fi find /tmp/ \ -type f \ -name "*.deb" \ -not -name "*dbgsym*" \ -exec cp -v {} /build/ \; + exit 0 elif [ -e /usr/bin/dnf ]; then make rpm - if [ $? -ne 0 ]; then - . /etc/lsb-release - cp -v /etc/lsb-release "/build/${DISTRIB_ID}.${DISTRIB_CODENAME}.${DISTRIB_RELEASE}.$(arch).FAILED" - fi find /tmp/ \ -type f \ -name "*.rpm" \ -not -name "*sym*" \ -not -name "*src.rpm" \ -exec cp -v {} /build/ \; + exit 0 elif [ -e /usr/bin/yum ]; then . /opt/rh/devtoolset-9/enable make rpm @@ -48,8 +51,13 @@ elif [ -e /usr/bin/yum ]; then -not -name "*sym*" \ -not -name "*src.rpm" \ -exec cp -v {} /build/ \; + exit 0 elif [ -e /sbin/apk ]; then echo "NOT YET SUPPORTED" elif [ -e /usr/sbin/pkg ]; then echo "NOT YET SUPPORTED" +else + echo "NOT YET SUPPORTED" fi + +exit 1 diff --git a/buildtools/build-release b/buildtools/build-release index 5f15a7ab..146abd61 100755 --- a/buildtools/build-release +++ b/buildtools/build-release @@ -7,19 +7,26 @@ import argparse import time -def build(containerfile, - pkgdirpath, - branch): +def build(git_repo, + branch, + containerfile, + pkgdirpath): timestamp = time.time_ns() args = ['podman', 'build', '--pull=always', - '--force-rm', - '-o',pkgdirpath, - '-f',containerfile, - f'--build-arg=BRANCH={branch}', - f'--build-arg=BUILD_TIMESTAMP={timestamp}', - 'buildtools/'] + '--force-rm'] + if os.path.exists(git_repo): + git_repo = os.path.realpath(git_repo) + args += ['-v',f'{git_repo}:/tmp/mergerfs.git:ro'] + args += ['--build-arg=GIT_REPO=/tmp/mergerfs.git'] + else: + args += [f'--build-arg=GIT_REPO={git_repo}'] + args += ['-o',pkgdirpath, + '-f',containerfile, + f'--build-arg=BRANCH={branch}', + f'--build-arg=BUILD_TIMESTAMP={timestamp}', + 'buildtools/'] # TODO: Capture output and write to log print(args) rv = subprocess.run(args) @@ -62,7 +69,7 @@ def podman_cleanup(): def parse_args(): p = argparse.ArgumentParser() p.add_argument('--target', - default='debian.12.amd64') + default='debian:13.amd64') p.add_argument('--pkgdirpath', default='build/pkgs/') p.add_argument('--branch', @@ -73,6 +80,9 @@ def parse_args(): p.add_argument('--cleanup', required=False, action='store_true') + p.add_argument('--git-repo', + required=True, + type=str) return p.parse_args() @@ -117,9 +127,10 @@ def main(): for containerfile in containerfiles: if args.cleanup: podman_cleanup() - build(containerfile, - args.pkgdirpath, - args.branch) + build(git_repo=args.git_repo, + branch=args.branch, + containerfile=containerfile, + pkgdirpath=args.pkgdirpath) sys.exit(0) diff --git a/buildtools/containerfiles/debian.12.amd64 b/buildtools/containerfiles/debian.12.amd64 deleted file mode 100644 index ca428a90..00000000 --- a/buildtools/containerfiles/debian.12.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 debian:12 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.12.arm64 b/buildtools/containerfiles/debian.12.arm64 deleted file mode 100644 index b26a1949..00000000 --- a/buildtools/containerfiles/debian.12.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 debian:12 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.12.armhf b/buildtools/containerfiles/debian.12.armhf deleted file mode 100644 index 2793487e..00000000 --- a/buildtools/containerfiles/debian.12.armhf +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/armhf debian:12 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.12.i386 b/buildtools/containerfiles/debian.12.i386 deleted file mode 100644 index 2118d8a1..00000000 --- a/buildtools/containerfiles/debian.12.i386 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/i386 debian:12 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.13.amd64 b/buildtools/containerfiles/debian.13.amd64 deleted file mode 100644 index a1ff23f0..00000000 --- a/buildtools/containerfiles/debian.13.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 debian:trixie as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.13.arm64 b/buildtools/containerfiles/debian.13.arm64 deleted file mode 100644 index ea38da9a..00000000 --- a/buildtools/containerfiles/debian.13.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 debian:trixie as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.13.armhf b/buildtools/containerfiles/debian.13.armhf deleted file mode 100644 index 0483589a..00000000 --- a/buildtools/containerfiles/debian.13.armhf +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/armhf debian:trixie as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.13.i386 b/buildtools/containerfiles/debian.13.i386 deleted file mode 100644 index 546c9f71..00000000 --- a/buildtools/containerfiles/debian.13.i386 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/i386 debian:trixie as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.11.i386 b/buildtools/containerfiles/debian:11.amd64 similarity index 56% rename from buildtools/containerfiles/debian.11.i386 rename to buildtools/containerfiles/debian:11.amd64 index 3d2458c1..befd8a58 100644 --- a/buildtools/containerfiles/debian.11.i386 +++ b/buildtools/containerfiles/debian:11.amd64 @@ -1,9 +1,10 @@ -FROM --platform=linux/i386 debian:11 as build +FROM --platform=amd64 debian:11 as build COPY install-build-pkgs build-mergerfs /tmp/ RUN /tmp/install-build-pkgs ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH FROM scratch COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian:11.arm64 b/buildtools/containerfiles/debian:11.arm64 new file mode 100644 index 00000000..7acaf016 --- /dev/null +++ b/buildtools/containerfiles/debian:11.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 debian:11 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian:11.armhf b/buildtools/containerfiles/debian:11.armhf new file mode 100644 index 00000000..d0bfe045 --- /dev/null +++ b/buildtools/containerfiles/debian:11.armhf @@ -0,0 +1,10 @@ +FROM --platform=armhf debian:11 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.11.amd64 b/buildtools/containerfiles/debian:11.i386 similarity index 56% rename from buildtools/containerfiles/debian.11.amd64 rename to buildtools/containerfiles/debian:11.i386 index f200f774..e7f7b06f 100644 --- a/buildtools/containerfiles/debian.11.amd64 +++ b/buildtools/containerfiles/debian:11.i386 @@ -1,9 +1,10 @@ -FROM --platform=linux/amd64 debian:11 as build +FROM --platform=i386 debian:11 as build COPY install-build-pkgs build-mergerfs /tmp/ RUN /tmp/install-build-pkgs ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH FROM scratch COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian:12.amd64 b/buildtools/containerfiles/debian:12.amd64 new file mode 100644 index 00000000..1fe1c960 --- /dev/null +++ b/buildtools/containerfiles/debian:12.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 debian:12 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian:12.arm64 b/buildtools/containerfiles/debian:12.arm64 new file mode 100644 index 00000000..e603bd27 --- /dev/null +++ b/buildtools/containerfiles/debian:12.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 debian:12 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian:12.armhf b/buildtools/containerfiles/debian:12.armhf new file mode 100644 index 00000000..be93164a --- /dev/null +++ b/buildtools/containerfiles/debian:12.armhf @@ -0,0 +1,10 @@ +FROM --platform=armhf debian:12 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.11.arm64 b/buildtools/containerfiles/debian:12.i386 similarity index 56% rename from buildtools/containerfiles/debian.11.arm64 rename to buildtools/containerfiles/debian:12.i386 index 873378d7..98340ba4 100644 --- a/buildtools/containerfiles/debian.11.arm64 +++ b/buildtools/containerfiles/debian:12.i386 @@ -1,9 +1,10 @@ -FROM --platform=linux/arm64 debian:11 as build +FROM --platform=i386 debian:12 as build COPY install-build-pkgs build-mergerfs /tmp/ RUN /tmp/install-build-pkgs ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH FROM scratch COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian:13.amd64 b/buildtools/containerfiles/debian:13.amd64 new file mode 100644 index 00000000..c5b264b9 --- /dev/null +++ b/buildtools/containerfiles/debian:13.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 debian:13 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian:13.arm64 b/buildtools/containerfiles/debian:13.arm64 new file mode 100644 index 00000000..8502dd53 --- /dev/null +++ b/buildtools/containerfiles/debian:13.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 debian:13 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian:13.armhf b/buildtools/containerfiles/debian:13.armhf new file mode 100644 index 00000000..624218c3 --- /dev/null +++ b/buildtools/containerfiles/debian:13.armhf @@ -0,0 +1,10 @@ +FROM --platform=armhf debian:13 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian.11.armhf b/buildtools/containerfiles/debian:13.i386 similarity index 56% rename from buildtools/containerfiles/debian.11.armhf rename to buildtools/containerfiles/debian:13.i386 index 61aa8fb2..2e2e538b 100644 --- a/buildtools/containerfiles/debian.11.armhf +++ b/buildtools/containerfiles/debian:13.i386 @@ -1,9 +1,10 @@ -FROM --platform=linux/armhf debian:11 as build +FROM --platform=i386 debian:13 as build COPY install-build-pkgs build-mergerfs /tmp/ RUN /tmp/install-build-pkgs ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH FROM scratch COPY --from=build /build/ / diff --git a/buildtools/containerfiles/debian:13.riscv64 b/buildtools/containerfiles/debian:13.riscv64 new file mode 100644 index 00000000..7710c020 --- /dev/null +++ b/buildtools/containerfiles/debian:13.riscv64 @@ -0,0 +1,10 @@ +FROM --platform=riscv64 debian:13 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.37.amd64 b/buildtools/containerfiles/fedora.37.amd64 deleted file mode 100644 index 01edb437..00000000 --- a/buildtools/containerfiles/fedora.37.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 fedora:37 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.37.arm64 b/buildtools/containerfiles/fedora.37.arm64 deleted file mode 100644 index 4f93e1e5..00000000 --- a/buildtools/containerfiles/fedora.37.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 fedora:37 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.37.armhf b/buildtools/containerfiles/fedora.37.armhf deleted file mode 100644 index c118bd81..00000000 --- a/buildtools/containerfiles/fedora.37.armhf +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/armhf fedora:37 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.37.i386 b/buildtools/containerfiles/fedora.37.i386 deleted file mode 100644 index db3327ca..00000000 --- a/buildtools/containerfiles/fedora.37.i386 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/i386 fedora:37 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.38.amd64 b/buildtools/containerfiles/fedora.38.amd64 deleted file mode 100644 index 7a855521..00000000 --- a/buildtools/containerfiles/fedora.38.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 fedora:38 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.38.arm64 b/buildtools/containerfiles/fedora.38.arm64 deleted file mode 100644 index d6f9d8f7..00000000 --- a/buildtools/containerfiles/fedora.38.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 fedora:38 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.38.armhf b/buildtools/containerfiles/fedora.38.armhf deleted file mode 100644 index b5607b5d..00000000 --- a/buildtools/containerfiles/fedora.38.armhf +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/armhf fedora:38 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.38.i386 b/buildtools/containerfiles/fedora.38.i386 deleted file mode 100644 index 23a7ef45..00000000 --- a/buildtools/containerfiles/fedora.38.i386 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/i386 fedora:38 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.39.amd64 b/buildtools/containerfiles/fedora.39.amd64 deleted file mode 100644 index 4c043579..00000000 --- a/buildtools/containerfiles/fedora.39.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 fedora:39 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.40.amd64 b/buildtools/containerfiles/fedora.40.amd64 deleted file mode 100644 index f858b260..00000000 --- a/buildtools/containerfiles/fedora.40.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 fedora:40 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.41.amd64 b/buildtools/containerfiles/fedora.41.amd64 deleted file mode 100644 index 40f7d4c9..00000000 --- a/buildtools/containerfiles/fedora.41.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 fedora:41 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.42.amd64 b/buildtools/containerfiles/fedora.42.amd64 deleted file mode 100644 index 9be9784b..00000000 --- a/buildtools/containerfiles/fedora.42.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 fedora:42 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.43.amd64 b/buildtools/containerfiles/fedora.43.amd64 deleted file mode 100644 index 2179ebe4..00000000 --- a/buildtools/containerfiles/fedora.43.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 fedora:43 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora.43.arm64 b/buildtools/containerfiles/fedora.43.arm64 deleted file mode 100644 index b0416c69..00000000 --- a/buildtools/containerfiles/fedora.43.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 fedora:43 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora:40.amd64 b/buildtools/containerfiles/fedora:40.amd64 new file mode 100644 index 00000000..7247b0b5 --- /dev/null +++ b/buildtools/containerfiles/fedora:40.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 fedora:40 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora:40.arm64 b/buildtools/containerfiles/fedora:40.arm64 new file mode 100644 index 00000000..a29ad395 --- /dev/null +++ b/buildtools/containerfiles/fedora:40.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 fedora:40 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora:41.amd64 b/buildtools/containerfiles/fedora:41.amd64 new file mode 100644 index 00000000..825d6db7 --- /dev/null +++ b/buildtools/containerfiles/fedora:41.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 fedora:41 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora:41.arm64 b/buildtools/containerfiles/fedora:41.arm64 new file mode 100644 index 00000000..a140e7a6 --- /dev/null +++ b/buildtools/containerfiles/fedora:41.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 fedora:41 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora:42.amd64 b/buildtools/containerfiles/fedora:42.amd64 new file mode 100644 index 00000000..14152dde --- /dev/null +++ b/buildtools/containerfiles/fedora:42.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 fedora:42 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora:42.arm64 b/buildtools/containerfiles/fedora:42.arm64 new file mode 100644 index 00000000..63048edf --- /dev/null +++ b/buildtools/containerfiles/fedora:42.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 fedora:42 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora:43.amd64 b/buildtools/containerfiles/fedora:43.amd64 new file mode 100644 index 00000000..736968b2 --- /dev/null +++ b/buildtools/containerfiles/fedora:43.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 fedora:43 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/fedora:43.arm64 b/buildtools/containerfiles/fedora:43.arm64 new file mode 100644 index 00000000..ca0bc04f --- /dev/null +++ b/buildtools/containerfiles/fedora:43.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 fedora:43 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.10.amd64 b/buildtools/containerfiles/rockylinux.10.amd64 deleted file mode 100644 index ce906a95..00000000 --- a/buildtools/containerfiles/rockylinux.10.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 quay.io/rockylinux/rockylinux:10 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.10.arm64 b/buildtools/containerfiles/rockylinux.10.arm64 deleted file mode 100644 index f5844254..00000000 --- a/buildtools/containerfiles/rockylinux.10.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 quay.io/rockylinux/rockylinux:10 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.10.riscv64 b/buildtools/containerfiles/rockylinux.10.riscv64 deleted file mode 100644 index 6b890900..00000000 --- a/buildtools/containerfiles/rockylinux.10.riscv64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/riscv64 quay.io/rockylinux/rockylinux:10 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.8.amd64 b/buildtools/containerfiles/rockylinux.8.amd64 deleted file mode 100644 index 5d0feb36..00000000 --- a/buildtools/containerfiles/rockylinux.8.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 quay.io/rockylinux/rockylinux:8 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.8.arm64 b/buildtools/containerfiles/rockylinux.8.arm64 deleted file mode 100644 index 8b42b562..00000000 --- a/buildtools/containerfiles/rockylinux.8.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 quay.io/rockylinux/rockylinux:8 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.8.armhf b/buildtools/containerfiles/rockylinux.8.armhf deleted file mode 100644 index c1edf38e..00000000 --- a/buildtools/containerfiles/rockylinux.8.armhf +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/armhf quay.io/rockylinux/rockylinux:8 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.8.i386 b/buildtools/containerfiles/rockylinux.8.i386 deleted file mode 100644 index 17e859e8..00000000 --- a/buildtools/containerfiles/rockylinux.8.i386 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/i386 quay.io/rockylinux/rockylinux:8 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.9.amd64 b/buildtools/containerfiles/rockylinux.9.amd64 deleted file mode 100644 index dd36ec6a..00000000 --- a/buildtools/containerfiles/rockylinux.9.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 quay.io/rockylinux/rockylinux:9 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.9.arm64 b/buildtools/containerfiles/rockylinux.9.arm64 deleted file mode 100644 index 38edf970..00000000 --- a/buildtools/containerfiles/rockylinux.9.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 quay.io/rockylinux/rockylinux:9 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.9.armhf b/buildtools/containerfiles/rockylinux.9.armhf deleted file mode 100644 index 489c7380..00000000 --- a/buildtools/containerfiles/rockylinux.9.armhf +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/armhf quay.io/rockylinux/rockylinux:9 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux.9.i386 b/buildtools/containerfiles/rockylinux.9.i386 deleted file mode 100644 index 277dc7e1..00000000 --- a/buildtools/containerfiles/rockylinux.9.i386 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/i386 quay.io/rockylinux/rockylinux:9 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux:10.amd64 b/buildtools/containerfiles/rockylinux:10.amd64 new file mode 100644 index 00000000..9e6922be --- /dev/null +++ b/buildtools/containerfiles/rockylinux:10.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 quay.io/rockylinux/rockylinux:10 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux:10.arm64 b/buildtools/containerfiles/rockylinux:10.arm64 new file mode 100644 index 00000000..3bc86f6b --- /dev/null +++ b/buildtools/containerfiles/rockylinux:10.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 quay.io/rockylinux/rockylinux:10 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux:8.amd64 b/buildtools/containerfiles/rockylinux:8.amd64 new file mode 100644 index 00000000..39b758e5 --- /dev/null +++ b/buildtools/containerfiles/rockylinux:8.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 quay.io/rockylinux/rockylinux:8 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux:8.arm64 b/buildtools/containerfiles/rockylinux:8.arm64 new file mode 100644 index 00000000..da00e359 --- /dev/null +++ b/buildtools/containerfiles/rockylinux:8.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 quay.io/rockylinux/rockylinux:8 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux:9.amd64 b/buildtools/containerfiles/rockylinux:9.amd64 new file mode 100644 index 00000000..f616015f --- /dev/null +++ b/buildtools/containerfiles/rockylinux:9.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 quay.io/rockylinux/rockylinux:9 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/rockylinux:9.arm64 b/buildtools/containerfiles/rockylinux:9.arm64 new file mode 100644 index 00000000..f14aea90 --- /dev/null +++ b/buildtools/containerfiles/rockylinux:9.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 quay.io/rockylinux/rockylinux:9 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.20.04.amd64 b/buildtools/containerfiles/ubuntu.20.04.amd64 deleted file mode 100644 index 40c38788..00000000 --- a/buildtools/containerfiles/ubuntu.20.04.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 ubuntu:20.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.20.04.arm64 b/buildtools/containerfiles/ubuntu.20.04.arm64 deleted file mode 100644 index 7e0d8aa9..00000000 --- a/buildtools/containerfiles/ubuntu.20.04.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 ubuntu:20.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.20.04.armhf b/buildtools/containerfiles/ubuntu.20.04.armhf deleted file mode 100644 index 082b01b0..00000000 --- a/buildtools/containerfiles/ubuntu.20.04.armhf +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/armhf ubuntu:20.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.20.04.i386 b/buildtools/containerfiles/ubuntu.20.04.i386 deleted file mode 100644 index 53da35fd..00000000 --- a/buildtools/containerfiles/ubuntu.20.04.i386 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/i386 ubuntu:20.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.22.04.amd64 b/buildtools/containerfiles/ubuntu.22.04.amd64 deleted file mode 100644 index 1acdbf3b..00000000 --- a/buildtools/containerfiles/ubuntu.22.04.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 ubuntu:22.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.22.04.arm64 b/buildtools/containerfiles/ubuntu.22.04.arm64 deleted file mode 100644 index 2a9cd535..00000000 --- a/buildtools/containerfiles/ubuntu.22.04.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 ubuntu:22.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.22.04.armhf b/buildtools/containerfiles/ubuntu.22.04.armhf deleted file mode 100644 index 76753bb1..00000000 --- a/buildtools/containerfiles/ubuntu.22.04.armhf +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/armhf ubuntu:22.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.22.04.i386 b/buildtools/containerfiles/ubuntu.22.04.i386 deleted file mode 100644 index a7e036d5..00000000 --- a/buildtools/containerfiles/ubuntu.22.04.i386 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/i386 ubuntu:22.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.24.04.amd64 b/buildtools/containerfiles/ubuntu.24.04.amd64 deleted file mode 100644 index f3cf97f7..00000000 --- a/buildtools/containerfiles/ubuntu.24.04.amd64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/amd64 ubuntu:24.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.24.04.arm64 b/buildtools/containerfiles/ubuntu.24.04.arm64 deleted file mode 100644 index a8da15a3..00000000 --- a/buildtools/containerfiles/ubuntu.24.04.arm64 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/arm64 ubuntu:24.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.24.04.armhf b/buildtools/containerfiles/ubuntu.24.04.armhf deleted file mode 100644 index 04c369b2..00000000 --- a/buildtools/containerfiles/ubuntu.24.04.armhf +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/armhf ubuntu:24.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu.24.04.i386 b/buildtools/containerfiles/ubuntu.24.04.i386 deleted file mode 100644 index 76b751d6..00000000 --- a/buildtools/containerfiles/ubuntu.24.04.i386 +++ /dev/null @@ -1,9 +0,0 @@ -FROM --platform=linux/i386 ubuntu:24.04 as build -COPY install-build-pkgs build-mergerfs /tmp/ -RUN /tmp/install-build-pkgs -ARG BUILD_TIMESTAMP=0 -ARG BRANCH=master -RUN /tmp/build-mergerfs $BRANCH - -FROM scratch -COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu:22.04.amd64 b/buildtools/containerfiles/ubuntu:22.04.amd64 new file mode 100644 index 00000000..ccc572e6 --- /dev/null +++ b/buildtools/containerfiles/ubuntu:22.04.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 ubuntu:22.04 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu:22.04.arm64 b/buildtools/containerfiles/ubuntu:22.04.arm64 new file mode 100644 index 00000000..7d8257c1 --- /dev/null +++ b/buildtools/containerfiles/ubuntu:22.04.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 ubuntu:22.04 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu:22.04.armhf b/buildtools/containerfiles/ubuntu:22.04.armhf new file mode 100644 index 00000000..6691f36d --- /dev/null +++ b/buildtools/containerfiles/ubuntu:22.04.armhf @@ -0,0 +1,10 @@ +FROM --platform=armhf ubuntu:22.04 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu:22.04.riscv64 b/buildtools/containerfiles/ubuntu:22.04.riscv64 new file mode 100644 index 00000000..47a8b7dd --- /dev/null +++ b/buildtools/containerfiles/ubuntu:22.04.riscv64 @@ -0,0 +1,10 @@ +FROM --platform=riscv64 ubuntu:22.04 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu:24.04.amd64 b/buildtools/containerfiles/ubuntu:24.04.amd64 new file mode 100644 index 00000000..36c192e0 --- /dev/null +++ b/buildtools/containerfiles/ubuntu:24.04.amd64 @@ -0,0 +1,10 @@ +FROM --platform=amd64 ubuntu:24.04 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu:24.04.arm64 b/buildtools/containerfiles/ubuntu:24.04.arm64 new file mode 100644 index 00000000..b8fdc5e8 --- /dev/null +++ b/buildtools/containerfiles/ubuntu:24.04.arm64 @@ -0,0 +1,10 @@ +FROM --platform=arm64 ubuntu:24.04 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu:24.04.armhf b/buildtools/containerfiles/ubuntu:24.04.armhf new file mode 100644 index 00000000..f5226b2e --- /dev/null +++ b/buildtools/containerfiles/ubuntu:24.04.armhf @@ -0,0 +1,10 @@ +FROM --platform=armhf ubuntu:24.04 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/containerfiles/ubuntu:24.04.riscv64 b/buildtools/containerfiles/ubuntu:24.04.riscv64 new file mode 100644 index 00000000..7177c613 --- /dev/null +++ b/buildtools/containerfiles/ubuntu:24.04.riscv64 @@ -0,0 +1,10 @@ +FROM --platform=riscv64 ubuntu:24.04 as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs $GIT_REPO $BRANCH + +FROM scratch +COPY --from=build /build/ / diff --git a/buildtools/gen-containerfiles b/buildtools/gen-containerfiles new file mode 100755 index 00000000..1d66fdd3 --- /dev/null +++ b/buildtools/gen-containerfiles @@ -0,0 +1,27 @@ +#!/bin/sh + +input_file="${1}" + +while IFS= read -r line || [ -n "$line" ]; do + # Skip empty lines + if [ -z "$line" ]; then + continue + fi + + image=$(echo "$line" | cut -d' ' -f1) + platform=$(echo "$line" | cut -d' ' -f2-) + + echo "${image} ${platform}" + cat < "containerfiles/${image##*/}.${platform}" +FROM --platform=${platform} ${image} as build +COPY install-build-pkgs build-mergerfs /tmp/ +RUN /tmp/install-build-pkgs +ARG BUILD_TIMESTAMP=0 +ARG GIT_REPO +ARG BRANCH +RUN /tmp/build-mergerfs \$GIT_REPO \$BRANCH + +FROM scratch +COPY --from=build /build/ / +EOF +done < "$input_file" diff --git a/buildtools/install-build-pkgs b/buildtools/install-build-pkgs index 0040b1f7..1b00faeb 100755 --- a/buildtools/install-build-pkgs +++ b/buildtools/install-build-pkgs @@ -17,23 +17,20 @@ elif [ -e /usr/bin/dnf ]; then dnf -y update dnf -y install \ git rpm-build gcc-c++ make which libatomic - dnf -y install lsb_release || true elif [ -e /usr/bin/yum ]; then yum -y update yum -y install \ git rpm-build gcc-c++ make which - yum -y install lsb_release || true yum -y install centos-release-scl yum -y install devtoolset-9-gcc\* elif [ -e /usr/bin/zypper ]; then zypper update -y zypper install -y \ - git rpm-build gcc-c++ make which \ - lsb_release + git rpm-build gcc-c++ make which elif [ -e /sbin/apk ]; then apk add \ abuild git gcc g++ make \ - linux-headers lsb-release + linux-headers elif [ -e /usr/sbin/pkg ]; then pkg install \ git gmake gcc diff --git a/buildtools/target-containers.txt b/buildtools/target-containers.txt new file mode 100644 index 00000000..2e03708f --- /dev/null +++ b/buildtools/target-containers.txt @@ -0,0 +1,35 @@ +debian:11 amd64 +debian:11 arm64 +debian:11 armhf +debian:11 i386 +debian:12 amd64 +debian:12 arm64 +debian:12 armhf +debian:12 i386 +debian:13 amd64 +debian:13 arm64 +debian:13 armhf +debian:13 i386 +debian:13 riscv64 +fedora:40 amd64 +fedora:40 arm64 +fedora:41 amd64 +fedora:41 arm64 +fedora:42 amd64 +fedora:42 arm64 +fedora:43 amd64 +fedora:43 arm64 +quay.io/rockylinux/rockylinux:10 amd64 +quay.io/rockylinux/rockylinux:10 arm64 +quay.io/rockylinux/rockylinux:8 amd64 +quay.io/rockylinux/rockylinux:8 arm64 +quay.io/rockylinux/rockylinux:9 amd64 +quay.io/rockylinux/rockylinux:9 arm64 +ubuntu:22.04 amd64 +ubuntu:22.04 arm64 +ubuntu:22.04 armhf +ubuntu:22.04 riscv64 +ubuntu:24.04 amd64 +ubuntu:24.04 arm64 +ubuntu:24.04 armhf +ubuntu:24.04 riscv64 diff --git a/libfuse/Makefile b/libfuse/Makefile index 585fc2f0..444cee5a 100644 --- a/libfuse/Makefile +++ b/libfuse/Makefile @@ -1,3 +1,17 @@ +# Copyright (c) 2025, Antonio SJ Musumeci +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + AR ?= ar CHMOD ?= chmod CHOWN ?= chown @@ -48,29 +62,18 @@ BUILDDIR := build SRC_C = \ lib/buffer.c \ lib/crc32b.c \ - lib/debug.c \ lib/fuse_dirents.c \ - lib/fuse_lowlevel.c \ lib/fuse_opt.c \ lib/fuse_session.c \ lib/fuse_signals.c \ lib/helper.c \ lib/mount.c -SRC_CXX = \ - lib/fuse.cpp \ - lib/cpu.cpp \ - lib/fuse_config.cpp \ - lib/fuse_loop.cpp \ - lib/fuse_msgbuf.cpp \ - lib/pin_threads.cpp \ - lib/format.cpp \ - lib/node.cpp \ - lib/maintenance_thread.cpp - -OBJS_C = $(SRC_C:lib/%.c=$(BUILDDIR)/%.o) -OBJS_CXX = $(SRC_CXX:lib/%.cpp=$(BUILDDIR)/%.o) -DEPS_C = $(SRC_C:lib/%.c=$(BUILDDIR)/%.d) -DEPS_CXX = $(SRC_CXX:lib/%.cpp=$(BUILDDIR)/%.d) +SRC_CXX = $(wildcard lib/*.cpp) + +OBJS := $(SRC_C:lib/%.c=$(BUILDDIR)/.objs/%.c.o) +OBJS += $(SRC_CXX:lib/%.cpp=$(BUILDDIR)/.objs/%.cpp.o) +DEPS := $(SRC_C:lib/%.c=$(BUILDDIR)/.objs/%.c.d) +DEPS += $(SRC_CXX:lib/%.cpp=$(BUILDDIR)/.objs/%.cpp.d) CPPFLAGS ?= CFLAGS ?= \ @@ -107,11 +110,11 @@ LDLIBS := \ all: $(BUILDDIR)/libfuse.a $(UTILS) $(BUILDDIR)/stamp: - $(MKDIR) -p $(BUILDDIR) + $(MKDIR) -p $(BUILDDIR)/.objs/ $(TOUCH) $@ -$(BUILDDIR)/libfuse.a: $(OBJS_C) $(OBJS_CXX) - $(AR) rcs $(BUILDDIR)/libfuse.a $(OBJS_C) $(OBJS_CXX) +$(BUILDDIR)/libfuse.a: $(OBJS) + $(AR) rcs $(BUILDDIR)/libfuse.a $(OBJS) .PHONY: utils utils: mergerfs-fusermount mount.mergerfs @@ -126,10 +129,10 @@ $(BUILDDIR)/mount.mergerfs: $(BUILDDIR)/libfuse.a util/mount.mergerfs.c mount.mergerfs: $(BUILDDIR)/mount.mergerfs -$(BUILDDIR)/%.o: lib/%.c | $(BUILDDIR)/stamp +$(BUILDDIR)/.objs/%.c.o: lib/%.c | $(BUILDDIR)/stamp $(CC) $(CFLAGS) $(FUSE_FLAGS) -c $< -o $@ -$(BUILDDIR)/%.o: lib/%.cpp | $(BUILDDIR)/stamp +$(BUILDDIR)/.objs/%.cpp.o: lib/%.cpp | $(BUILDDIR)/stamp $(CXX) $(CXXFLAGS) $(FUSE_FLAGS) -c $< -o $@ .PHONY: clean @@ -154,4 +157,4 @@ install: $(INSTALLUTILS) .PHONY: objects strip utils install install-utils --include $(DEPS_C) $(DEPS_CXX) +-include $(DEPS)