blob: a3f3582f162dcaae0908ea6b4c85bbac14ee7f53 [file] [log] [blame]
Nico Huberc0b52db2022-12-15 12:42:32 +00001ANITA_TAGS := \
Nico Huber5e8b3392024-04-21 13:33:56 +02002 anita\:10.0-amd64 anita\:10.0-i386 \
Nico Huberb50d73d2023-03-01 17:25:12 +00003 anita\:9.3-amd64 anita\:9.3-i386 anita\:9.3-sparc64 \
Nico Huberc0b52db2022-12-15 12:42:32 +00004 anita\:8.2-amd64 anita\:8.2-i386 \
5 anita\:7.1-amd64 anita\:7.1-i386 \
6
7MULTIARCH_TAGS := \
8 centos\:7.6-armhfp-clean centos\:7.6-amd64-clean \
9 centos\:7.3-aarch64-clean centos\:7.3-amd64-clean \
10 centos\:7.2-amd64-clean \
11 $(foreach a,x86_64 aarch64, \
12 $(foreach v,34 33 32 31 30 29 25 24, \
13 fedora\:$(v)-$(a))) \
14 $(foreach a,ppc64le, \
15 $(foreach v,34 33 29 25 24, \
16 fedora\:$(v)-$(a))) \
17 $(foreach a,s390x, \
18 $(foreach v,34 33 32 31 30 29, \
19 fedora\:$(v)-$(a))) \
20 fedora\:28-armhfp \
21 $(foreach a,ppc64el armhf mipsel amd64 i386, \
22 $(foreach v,bullseye buster stretch, \
23 debian-debootstrap\:$(a)-$(v))) \
24 $(foreach a,arm64 mips, \
25 $(foreach v,buster stretch, \
26 debian-debootstrap\:$(a)-$(v))) \
27 $(foreach a,ppc64el arm64 armhf amd64, \
28 $(foreach v,jammy focal bionic xenial, \
29 ubuntu-debootstrap\:$(a)-$(v))) \
30 $(foreach a,i386, \
31 $(foreach v,bionic xenial, \
32 ubuntu-debootstrap\:$(a)-$(v))) \
33 ubuntu-debootstrap\:powerpc-xenial \
34 $(foreach a,aarch64 armhf amd64 i386, \
35 $(foreach v,v3.14 v3.13 v3.12 v3.11 v3.10 v3.9 v3.8 v3.7 v3.6, \
36 alpine\:$(a)-$(v))) \
37
Nico Huber59848a92023-03-04 00:41:18 +000038ALMALINUX_TAGS := \
39 $(foreach a,amd64 arm64v8 ppc64le s390x, \
40 $(foreach v,8 9, \
41 $(a)/almalinux\:$(v)))
42
Nico Huberf137f442023-03-03 17:12:14 +000043OFFICIAL_TAGS := \
Nico Huber2044af02023-03-04 00:40:47 +000044 $(foreach a,ppc64le s390x arm64v8 amd64, \
Nico Huberb8b35932024-04-21 13:37:48 +020045 $(foreach v,40 39 38 37 36 35, \
Nico Huber2044af02023-03-04 00:40:47 +000046 $(a)/fedora\:$(v))) \
Nico Huber494561a2023-03-03 17:12:32 +000047 $(foreach a,ppc64le mips64le s390x arm64v8 arm32v7 arm32v5 amd64 i386, \
48 $(foreach v,bookworm, \
49 $(a)/debian\:$(v))) \
Nico Huber7b05f092024-04-21 13:38:41 +020050 $(foreach a,arm32v7 arm64v8 ppc64le s390x, \
51 $(foreach v,noble, \
52 $(a)/ubuntu\:$(v))) \
Nico Huberf137f442023-03-03 17:12:14 +000053 $(foreach a,ppc64le s390x arm64v8 arm32v7 arm32v6 amd64 i386, \
Nico Huber82794572024-04-21 14:14:53 +020054 $(foreach v,3.19 3.18 3.17 3.16 3.15, \
Nico Huberf137f442023-03-03 17:12:14 +000055 $(a)/alpine\:$(v))) \
Nico Huber59848a92023-03-04 00:41:18 +000056 $(ALMALINUX_TAGS)
Nico Huberf137f442023-03-03 17:12:14 +000057
Nico Huberc0b52db2022-12-15 12:42:32 +000058OTHER_TAGS := djgpp\:6.1.0
59
Nico Huber05f0f7c2023-03-03 17:08:16 +000060ALL_TAGS := $(ANITA_TAGS) $(MULTIARCH_TAGS) $(OFFICIAL_TAGS) $(OTHER_TAGS)
Nico Huberc0b52db2022-12-15 12:42:32 +000061
62BROKEN_TAGS := anita\:7.1-amd64 anita\:7.1-i386 \
63 centos\:7.6-armhfp-clean \
Nico Huber2044af02023-03-04 00:40:47 +000064 arm64v8/fedora\:35 fedora\:30-s390x fedora\:28-armhfp \
Nico Huberc0b52db2022-12-15 12:42:32 +000065
66WORKING_TAGS := $(filter-out $(BROKEN_TAGS),$(ALL_TAGS))
67
68arch_filter = $(sort \
69 $(foreach arch,$(1), \
Nico Huber05f0f7c2023-03-03 17:08:16 +000070 $(filter-out $(subst $(arch),,$(MULTIARCH_TAGS) $(OFFICIAL_TAGS)), \
71 $(MULTIARCH_TAGS) $(OFFICIAL_TAGS))))
Nico Huberc0b52db2022-12-15 12:42:32 +000072
73machine_map = \
74 $(if $(filter i386 i686 x86,$(1)),i386 x86, \
75 $(if $(filter x86_64,$(1)),amd64 i386 x86, \
76 $(if $(filter armv7l armv6l,$(1)),armhf, \
77 $(if $(filter aarch64,$(1)),aarch64 arm64, \
78 $(if $(filter ppc64le,$(1)),ppc64le ppc64el, \
79 $(if $(filter ppc,$(1)),powerpc, \
80 $(if $(filter mips,$(1)),mips mipsel, \
81 $(1))))))))
82
83NATIVE_TAGS := $(call arch_filter,$(call machine_map,$(shell uname -m)))
84
85# rather arbitrary selection of images that seem to work (focus on amd64)
86DEFAULT_TAGS := \
Nico Huberb50d73d2023-03-01 17:25:12 +000087 anita\:9.3-amd64 \
88 anita\:9.3-i386 \
Nico Huberc0b52db2022-12-15 12:42:32 +000089 anita\:8.2-amd64 \
Nico Hubere49c2202022-12-11 17:31:39 +000090 anita\:8.2-i386 \
Nico Huberc0b52db2022-12-15 12:42:32 +000091 djgpp\:6.1.0 \
92 fedora\:30-aarch64 \
Nico Hubere49c2202022-12-11 17:31:39 +000093 fedora\:30-x86_64 \
94 fedora\:31-x86_64 \
95 fedora\:32-aarch64 \
96 fedora\:32-x86_64 \
97 fedora\:33-ppc64le \
98 fedora\:33-x86_64 \
99 fedora\:34-aarch64 \
100 fedora\:34-ppc64le \
101 fedora\:34-s390x \
102 fedora\:34-x86_64 \
103 centos\:7.6-amd64-clean \
Nico Huberc0b52db2022-12-15 12:42:32 +0000104 debian-debootstrap\:amd64-stretch \
Nico Hubere49c2202022-12-11 17:31:39 +0000105 debian-debootstrap\:arm64-stretch \
106 debian-debootstrap\:armhf-stretch \
Nico Huberc0b52db2022-12-15 12:42:32 +0000107 debian-debootstrap\:i386-stretch \
Nico Hubere49c2202022-12-11 17:31:39 +0000108 debian-debootstrap\:mipsel-stretch \
109 debian-debootstrap\:amd64-buster \
110 debian-debootstrap\:arm64-buster \
111 debian-debootstrap\:armhf-buster \
112 debian-debootstrap\:i386-buster \
113 debian-debootstrap\:mips-buster \
114 debian-debootstrap\:mipsel-buster \
115 debian-debootstrap\:ppc64el-buster \
116 debian-debootstrap\:amd64-bullseye \
117 debian-debootstrap\:armhf-bullseye \
118 debian-debootstrap\:i386-bullseye \
119 debian-debootstrap\:mipsel-bullseye \
120 debian-debootstrap\:ppc64el-bullseye \
Nico Huberc0b52db2022-12-15 12:42:32 +0000121 ubuntu-debootstrap\:amd64-bionic \
Nico Hubere49c2202022-12-11 17:31:39 +0000122 ubuntu-debootstrap\:arm64-bionic \
123 ubuntu-debootstrap\:i386-bionic \
124 ubuntu-debootstrap\:amd64-focal \
125 ubuntu-debootstrap\:arm64-focal \
126 ubuntu-debootstrap\:armhf-focal \
127 ubuntu-debootstrap\:ppc64el-focal \
128 ubuntu-debootstrap\:amd64-jammy \
129 ubuntu-debootstrap\:arm64-jammy \
130 ubuntu-debootstrap\:armhf-jammy \
131 ubuntu-debootstrap\:ppc64el-jammy \
Nico Huberc0b52db2022-12-15 12:42:32 +0000132 alpine\:aarch64-v3.9 \
Nico Hubere49c2202022-12-11 17:31:39 +0000133 alpine\:amd64-v3.9 \
134 alpine\:i386-v3.9 \
135 alpine\:aarch64-v3.10 \
136 alpine\:amd64-v3.10 \
137 alpine\:armhf-v3.10 \
138 alpine\:i386-v3.10 \
139 alpine\:aarch64-v3.10 \
140 alpine\:amd64-v3.10 \
141 alpine\:armhf-v3.10 \
142 alpine\:i386-v3.10 \
143 alpine\:aarch64-v3.12 \
144 alpine\:amd64-v3.12 \
145 alpine\:i386-v3.12 \
146 alpine\:amd64-v3.14 \
147 alpine\:i386-v3.14 \
Nico Huberc0b52db2022-12-15 12:42:32 +0000148
149# also run all native tests by default
150DEFAULT_TAGS += $(filter-out $(DEFAULT_TAGS),$(NATIVE_TAGS))
151
Nico Huberc0b52db2022-12-15 12:42:32 +0000152default: $(DEFAULT_TAGS)
153
154native: $(NATIVE_TAGS)
155
156working: $(WORKING_TAGS)
157
158all: $(ALL_TAGS)
159
Nico Huberc0b52db2022-12-15 12:42:32 +0000160show-default:
161 @printf "%s\n" $(DEFAULT_TAGS)
162
163show-native:
164 @printf "%s\n" $(NATIVE_TAGS)
165
166show-working:
167 @printf "%s\n" $(WORKING_TAGS)
168
169show-all:
170 @printf "%s\n" $(ALL_TAGS)
171
Nico Huber3127db12024-04-21 15:46:19 +0200172.PHONY: default native all
173.PHONY: show-default show-native show-all
Nico Huberc0b52db2022-12-15 12:42:32 +0000174.PHONY: $(ALL_TAGS)