1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
ANITA_TAGS := anita\:amd64 anita\:i386
MULTIARCH_TAGS := \
centos\:7.3-aarch64-clean centos\:7.3-amd64-clean \
centos\:7.2-amd64-clean \
$(foreach a,x86_64 ppc64le aarch64, \
$(foreach v,25 24, \
fedora\:$(v)-$(a))) \
$(foreach a,ppc64el arm64 armhf mips mipsel amd64 i386, \
$(foreach v,sid buster stretch, \
debian-debootstrap\:$(a)-$(v))) \
$(foreach a,ppc64el arm64 armhf amd64 i386, \
$(foreach v,bionic xenial, \
ubuntu-debootstrap\:$(a)-$(v))) \
ubuntu-debootstrap\:powerpc-xenial \
$(foreach a,aarch64 armhf amd64 i386, \
$(foreach v,v3.8 v3.7 v3.6, \
alpine\:$(a)-$(v))) \
OTHER_TAGS := djgpp\:6.1.0
ALL_TAGS := $(ANITA_TAGS) $(MULTIARCH_TAGS) $(OTHER_TAGS)
arch_filter = $(sort \
$(foreach arch,$(1), \
$(filter-out $(subst $(arch),,$(MULTIARCH_TAGS)),$(MULTIARCH_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\:amd64 \
djgpp\:6.1.0 \
fedora\:25-x86_64 \
fedora\:25-ppc64le \
fedora\:25-aarch64 \
fedora\:24-x86_64 \
centos\:7.3-aarch64-clean \
centos\:7.3-amd64-clean \
centos\:7.2-amd64-clean \
debian-debootstrap\:ppc64el-stretch \
debian-debootstrap\:armhf-stretch \
debian-debootstrap\:mips-stretch \
debian-debootstrap\:mipsel-stretch \
debian-debootstrap\:amd64-stretch \
debian-debootstrap\:i386-stretch \
debian-debootstrap\:amd64-sid \
ubuntu-debootstrap\:arm64-xenial \
ubuntu-debootstrap\:amd64-xenial \
ubuntu-debootstrap\:powerpc-xenial \
ubuntu-debootstrap\:amd64-bionic \
alpine\:amd64-v3.7 \
alpine\:amd64-v3.8 \
# also run all native tests by default
DEFAULT_TAGS += $(filter-out $(DEFAULT_TAGS),$(NATIVE_TAGS))
default: $(DEFAULT_TAGS)
native: $(NATIVE_TAGS)
all: $(ALL_TAGS)
show-default:
@printf "%s\n" $(DEFAULT_TAGS)
show-native:
@printf "%s\n" $(NATIVE_TAGS)
show-all:
@printf "%s\n" $(ALL_TAGS)
.PHONY: default native all
.PHONY: show-default show-native show-all
.PHONY: $(ALL_TAGS)
|