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,ppc64el armhf mipsel amd64 i386, \
	  $(foreach v,bullseye buster, \
	    debian-debootstrap\:$(a)-$(v))) \
	$(foreach a,arm64 mips, \
	  debian-debootstrap\:$(a)-buster) \
	$(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, \
	    $(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 := arm64v8/fedora\:35

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)
