File: Makefile.targets

package info (click to toggle)
flashprog 1.4-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,104 kB
  • sloc: ansic: 61,779; makefile: 919; sh: 310
file content (97 lines) | stat: -rw-r--r-- 2,632 bytes parent folder | download
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
86
87
88
89
90
91
92
93
94
95
96
97
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, \
	  $(foreach v,34 33 32 31 30 29, \
	    fedora\:$(v)-$(a))) \
	$(foreach a,ppc64le, \
	  $(foreach v,34 33 29, \
	    fedora\:$(v)-$(a))) \
	$(foreach a,s390x, \
	  $(foreach v,34 33 32 31 29, \
	    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 v3.11 v3.10 v3.9 v3.8, \
	    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)