| ANITA_TAGS := \ |
| anita\:10.0-amd64 anita\:10.0-i386 \ |
| anita\:9.3-amd64 anita\:9.3-i386 anita\:9.3-sparc64 \ |
| anita\:8.2-amd64 anita\:8.2-i386 \ |
| anita\:7.1-amd64 anita\:7.1-i386 \ |
| |
| MULTIARCH_TAGS := \ |
| centos\:7.6-armhfp-clean centos\:7.6-amd64-clean \ |
| centos\:7.3-aarch64-clean centos\:7.3-amd64-clean \ |
| centos\:7.2-amd64-clean \ |
| $(foreach a,x86_64 aarch64, \ |
| $(foreach v,34 33 32 31 30 29 25 24, \ |
| fedora\:$(v)-$(a))) \ |
| $(foreach a,ppc64le, \ |
| $(foreach v,34 33 29 25 24, \ |
| fedora\:$(v)-$(a))) \ |
| $(foreach a,s390x, \ |
| $(foreach v,34 33 32 31 30 29, \ |
| fedora\:$(v)-$(a))) \ |
| fedora\:28-armhfp \ |
| $(foreach a,ppc64el armhf mipsel amd64 i386, \ |
| $(foreach v,bullseye buster stretch, \ |
| debian-debootstrap\:$(a)-$(v))) \ |
| $(foreach a,arm64 mips, \ |
| $(foreach v,buster stretch, \ |
| debian-debootstrap\:$(a)-$(v))) \ |
| $(foreach a,ppc64el arm64 armhf amd64, \ |
| $(foreach v,jammy focal bionic xenial, \ |
| ubuntu-debootstrap\:$(a)-$(v))) \ |
| $(foreach a,i386, \ |
| $(foreach v,bionic xenial, \ |
| ubuntu-debootstrap\:$(a)-$(v))) \ |
| ubuntu-debootstrap\:powerpc-xenial \ |
| $(foreach a,aarch64 armhf amd64 i386, \ |
| $(foreach v,v3.14 v3.13 v3.12 v3.11 v3.10 v3.9 v3.8 v3.7 v3.6, \ |
| alpine\:$(a)-$(v))) \ |
| |
| ALMALINUX_TAGS := \ |
| $(foreach a,amd64 arm64v8 ppc64le s390x, \ |
| $(foreach v,8 9, \ |
| $(a)/almalinux\:$(v))) |
| |
| OFFICIAL_TAGS := \ |
| $(foreach a,ppc64le s390x arm64v8 amd64, \ |
| $(foreach v,40 39 38 37 36 35, \ |
| $(a)/fedora\:$(v))) \ |
| $(foreach a,ppc64le mips64le s390x arm64v8 arm32v7 arm32v5 amd64 i386, \ |
| $(foreach v,bookworm, \ |
| $(a)/debian\:$(v))) \ |
| $(foreach a,amd64 arm32v7 arm64v8 ppc64le s390x, \ |
| $(foreach v,noble, \ |
| $(a)/ubuntu\:$(v))) \ |
| $(foreach a,ppc64le s390x arm64v8 arm32v7 arm32v6 amd64 i386, \ |
| $(foreach v,3.19 3.18 3.17 3.16 3.15, \ |
| $(a)/alpine\:$(v))) \ |
| $(ALMALINUX_TAGS) |
| |
| OTHER_TAGS := djgpp\:6.1.0 |
| |
| ALL_TAGS := $(ANITA_TAGS) $(MULTIARCH_TAGS) $(OFFICIAL_TAGS) $(OTHER_TAGS) |
| |
| BROKEN_TAGS := anita\:7.1-amd64 anita\:7.1-i386 \ |
| centos\:7.6-armhfp-clean \ |
| arm64v8/fedora\:35 fedora\:30-s390x fedora\:28-armhfp \ |
| |
| WORKING_TAGS := $(filter-out $(BROKEN_TAGS),$(ALL_TAGS)) |
| |
| arch_filter = $(sort \ |
| $(foreach arch,$(1), \ |
| $(filter-out $(subst $(arch),,$(MULTIARCH_TAGS) $(OFFICIAL_TAGS)), \ |
| $(MULTIARCH_TAGS) $(OFFICIAL_TAGS)))) |
| |
| machine_map = \ |
| $(if $(filter i386 i686 x86,$(1)),i386 x86, \ |
| $(if $(filter x86_64,$(1)),amd64 i386 x86, \ |
| $(if $(filter armv7l armv6l,$(1)),armhf, \ |
| $(if $(filter aarch64,$(1)),aarch64 arm64, \ |
| $(if $(filter ppc64le,$(1)),ppc64le ppc64el, \ |
| $(if $(filter ppc,$(1)),powerpc, \ |
| $(if $(filter mips,$(1)),mips mipsel, \ |
| $(1)))))))) |
| |
| NATIVE_TAGS := $(call arch_filter,$(call machine_map,$(shell uname -m))) |
| |
| # rather arbitrary selection of images that seem to work (focus on amd64) |
| DEFAULT_TAGS := \ |
| anita\:9.3-amd64 \ |
| anita\:9.3-i386 \ |
| anita\:8.2-amd64 \ |
| anita\:8.2-i386 \ |
| djgpp\:6.1.0 \ |
| fedora\:30-aarch64 \ |
| fedora\:30-x86_64 \ |
| fedora\:31-x86_64 \ |
| fedora\:32-aarch64 \ |
| fedora\:32-x86_64 \ |
| fedora\:33-ppc64le \ |
| fedora\:33-x86_64 \ |
| fedora\:34-aarch64 \ |
| fedora\:34-ppc64le \ |
| fedora\:34-s390x \ |
| fedora\:34-x86_64 \ |
| centos\:7.6-amd64-clean \ |
| debian-debootstrap\:amd64-stretch \ |
| debian-debootstrap\:arm64-stretch \ |
| debian-debootstrap\:armhf-stretch \ |
| debian-debootstrap\:i386-stretch \ |
| debian-debootstrap\:mipsel-stretch \ |
| debian-debootstrap\:amd64-buster \ |
| debian-debootstrap\:arm64-buster \ |
| debian-debootstrap\:armhf-buster \ |
| debian-debootstrap\:i386-buster \ |
| debian-debootstrap\:mips-buster \ |
| debian-debootstrap\:mipsel-buster \ |
| debian-debootstrap\:ppc64el-buster \ |
| debian-debootstrap\:amd64-bullseye \ |
| debian-debootstrap\:armhf-bullseye \ |
| debian-debootstrap\:i386-bullseye \ |
| debian-debootstrap\:mipsel-bullseye \ |
| debian-debootstrap\:ppc64el-bullseye \ |
| ubuntu-debootstrap\:amd64-bionic \ |
| ubuntu-debootstrap\:arm64-bionic \ |
| ubuntu-debootstrap\:i386-bionic \ |
| ubuntu-debootstrap\:amd64-focal \ |
| ubuntu-debootstrap\:arm64-focal \ |
| ubuntu-debootstrap\:armhf-focal \ |
| ubuntu-debootstrap\:ppc64el-focal \ |
| ubuntu-debootstrap\:amd64-jammy \ |
| ubuntu-debootstrap\:arm64-jammy \ |
| ubuntu-debootstrap\:armhf-jammy \ |
| ubuntu-debootstrap\:ppc64el-jammy \ |
| alpine\:aarch64-v3.9 \ |
| alpine\:amd64-v3.9 \ |
| alpine\:i386-v3.9 \ |
| alpine\:aarch64-v3.10 \ |
| alpine\:amd64-v3.10 \ |
| alpine\:armhf-v3.10 \ |
| alpine\:i386-v3.10 \ |
| alpine\:aarch64-v3.10 \ |
| alpine\:amd64-v3.10 \ |
| alpine\:armhf-v3.10 \ |
| alpine\:i386-v3.10 \ |
| alpine\:aarch64-v3.12 \ |
| alpine\:amd64-v3.12 \ |
| alpine\:i386-v3.12 \ |
| alpine\:amd64-v3.14 \ |
| alpine\:i386-v3.14 \ |
| |
| # also run all native tests by default |
| DEFAULT_TAGS += $(filter-out $(DEFAULT_TAGS),$(NATIVE_TAGS)) |
| |
| default: $(DEFAULT_TAGS) |
| |
| native: $(NATIVE_TAGS) |
| |
| working: $(WORKING_TAGS) |
| |
| all: $(ALL_TAGS) |
| |
| show-default: |
| @printf "%s\n" $(DEFAULT_TAGS) |
| |
| show-native: |
| @printf "%s\n" $(NATIVE_TAGS) |
| |
| show-working: |
| @printf "%s\n" $(WORKING_TAGS) |
| |
| show-all: |
| @printf "%s\n" $(ALL_TAGS) |
| |
| .PHONY: default native all |
| .PHONY: show-default show-native show-all |
| .PHONY: $(ALL_TAGS) |