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 \

MULTIARCH_TAGS := \
	$(foreach a,x86_64 aarch64 ppc64le s390x, \
	  $(foreach v,34 33, \
	    fedora\:$(v)-$(a))) \
	$(foreach a,armhf amd64 i386, \
	  debian-debootstrap\:$(a)-bullseye) \
	$(foreach a,ppc64el arm64 armhf amd64, \
	  $(foreach v,jammy focal, \
	    ubuntu-debootstrap\:$(a)-$(v))) \
	$(foreach a,aarch64 armhf amd64 i386, \
	  $(foreach v,v3.14 v3.13 v3.12, \
	    alpine\:$(a)-$(v))) \

ALMALINUX_TAGS := \
	$(foreach a,amd64 arm64v8 ppc64le s390x, \
	  $(foreach v,8 9 10-kitten, \
	    $(a)/almalinux\:$(v)))

OFFICIAL_TAGS := \
	$(foreach a,ppc64le s390x arm64v8 amd64, \
	  $(foreach v,44 43 42 41 40 39 38 37 36 35, \
	    $(a)/fedora\:$(v))) \
	$(foreach a,ppc64le mips64le s390x arm64v8 arm32v7 arm32v5 amd64 i386, \
	  $(a)/debian\:bookworm) \
	$(foreach a,ppc64le riscv64 s390x arm64v8 arm32v7 arm32v5 amd64 i386, \
	  $(a)/debian\:trixie) \
	$(foreach a,amd64 arm32v7 arm64v8 ppc64le s390x, \
	  $(a)/ubuntu\:noble) \
	$(foreach a,amd64 arm32v7 arm64v8 ppc64le riscv64 s390x, \
	  $(a)/ubuntu\:resolute) \
	$(foreach a,ppc64le s390x arm64v8 arm32v7 arm32v6 amd64 i386, \
	  $(foreach v,3.22 3.21 3.20 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 := arm64v8/fedora\:35 arm32v6/alpine\:3.15 alpine\:armhf-v3.14

WORKING_TAGS := $(filter-out $(BROKEN_TAGS),$(ALL_TAGS))

arch_filter = $(sort \
	$(foreach arch,$(1), \
	  $(filter-out $(subst $(arch),,$(ALL_TAGS)), $(ALL_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)))

# for now, build all working targets by default
DEFAULT_TAGS := $(WORKING_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)
