Commit | Line | Data |
---|---|---|
1a141be6 MW |
1 | ### -*-makefile-*- |
2 | ||
3 | .SECONDEXPANSION: #sorry | |
4 | all:: | |
5 | ||
6 | FLAVOURS += linux | |
7 | linux_ARCHS = armel armhf arm64 | |
8 | linux/armel_ARCH = arm-linux-gnueabi | |
9 | linux/armhf_ARCH = arm-linux-gnueabihf | |
10 | linux/arm64_ARCH = aarch64-linux-gnu | |
11 | ||
12 | FLAVOURS += android | |
13 | android_ARCHS = arm arm64 x86 x86_64 | |
14 | android/arm_ARCH = arm-linux-androideabi | |
15 | android/arm64_ARCH = aarch64-linux-android | |
16 | android/x86_ARCH = i686-linux-android | |
17 | android/x86_64_ARCH = x86_64-linux-android | |
18 | ||
19 | V = 0 | |
20 | v_tag = $(call v_tag_$V,$1) | |
21 | v_tag_0 = @printf " %-8s %s\n" "$1" "$@"; | |
22 | ||
23 | SETUPS = \ | |
24 | $(foreach f,$(FLAVOURS),\ | |
25 | $(foreach a,$($f_ARCHS),etc/$f-$a-setup.sh)) | |
26 | TARGETS += $(SETUPS) | |
27 | setup-flavour = $(word 1,$(subst -, ,$1)) | |
28 | setup-arch = $(word 2,$(subst -, ,$1)) | |
29 | ||
30 | $(SETUPS): etc/%-setup.sh: $$(call setup-flavour,$$*)-cross-setup.sh.in Makefile | |
31 | $(call v_tag,GEN)sed 's/@arch@/$($(call setup-flavour,$*)/$(call setup-arch,$*)_ARCH)/g' $< >$@.new && mv $@.new $@ | |
32 | ||
33 | all:: $(TARGETS) | |
34 | ||
35 | CLEANFILES += $(TARGETS) | |
36 | clean::; rm -f $(CLEANFILES) |