-
Notifications
You must be signed in to change notification settings - Fork 287
Expand file tree
/
Copy pathMakefile
More file actions
96 lines (81 loc) · 3.75 KB
/
Copy pathMakefile
File metadata and controls
96 lines (81 loc) · 3.75 KB
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
export GO111MODULE=on
# Canonical version of this in https://github.com/coreos/coreos-assembler/blob/6eb97016f4dab7d13aa00ae10846f26c1cd1cb02/Makefile#L19
GOARCH:=$(shell uname -m)
ifeq ($(GOARCH),x86_64)
GOARCH=amd64
else ifeq ($(GOARCH),aarch64)
GOARCH=arm64
else ifeq ($(GOARCH),loongarch64)
GOARCH=loong64
else ifeq ($(patsubst armv%,arm,$(GOARCH)),arm)
GOARCH=arm
else ifeq ($(patsubst i%86,386,$(GOARCH)),386)
GOARCH=386
endif
export GOARCH
BIN_PATH ?= bin
export BIN_PATH
.PHONY: all
all: ignition ignition-validate ignition-validate-cross butane butane-cross
.PHONY: ignition
ignition:
./build ignition
.PHONY: ignition-validate
ignition-validate:
./build ignition-validate
.PHONY: ignition-validate-cross
ignition-validate-cross:
./build ignition-validate-cross
.PHONY: butane
butane:
./build butane
.PHONY: butane-cross
butane-cross:
./build butane-cross
.PHONY: install
install:
for x in dracut/*; do \
bn=$$(basename $$x); \
install -m 0644 -D -t $(DESTDIR)/usr/lib/dracut/modules.d/$${bn} $$x/*; \
done
chmod a+x $(DESTDIR)/usr/lib/dracut/modules.d/*/*.sh $(DESTDIR)/usr/lib/dracut/modules.d/*/*-generator
install -m 0644 -D -t $(DESTDIR)/usr/lib/systemd/system systemd/ignition-delete-config.service
install -m 0755 -D -t $(DESTDIR)/usr/lib/dracut/modules.d/30ignition $(BIN_PATH)/ignition
install -m 0755 -D -t $(DESTDIR)/usr/bin $(BIN_PATH)/ignition-validate
install -m 0755 -d $(DESTDIR)/usr/libexec
ln -sf ../lib/dracut/modules.d/30ignition/ignition $(DESTDIR)/usr/libexec/ignition-apply
ln -sf ../lib/dracut/modules.d/30ignition/ignition $(DESTDIR)/usr/libexec/ignition-rmcfg
# For distros that need to build cross platform ignition-validate binaries
# Used in fedora for now. See ignition rpm spec for details.
.PHONY: install-ignition-validate-cross
install-ignition-validate-cross:
install -d -p $(DESTDIR)/usr/share/ignition
install -p -m 0644 $(BIN_PATH)/ignition-validate-aarch64-apple-darwin $(DESTDIR)/usr/share/ignition
install -p -m 0644 $(BIN_PATH)/ignition-validate-aarch64-unknown-linux-gnu-static $(DESTDIR)/usr/share/ignition
install -p -m 0644 $(BIN_PATH)/ignition-validate-ppc64le-unknown-linux-gnu-static $(DESTDIR)/usr/share/ignition
install -p -m 0644 $(BIN_PATH)/ignition-validate-s390x-unknown-linux-gnu-static $(DESTDIR)/usr/share/ignition
install -p -m 0644 $(BIN_PATH)/ignition-validate-x86_64-apple-darwin $(DESTDIR)/usr/share/ignition
install -p -m 0644 $(BIN_PATH)/ignition-validate-x86_64-pc-windows-gnu.exe $(DESTDIR)/usr/share/ignition
install -p -m 0644 $(BIN_PATH)/ignition-validate-x86_64-unknown-linux-gnu-static $(DESTDIR)/usr/share/ignition
.PHONY: install-butane
install-butane:
install -m 0755 -D -t $(DESTDIR)/usr/bin $(BIN_PATH)/butane
# For distros that need to build cross platform butane binaries
.PHONY: install-butane-cross
install-butane-cross:
install -d -p $(DESTDIR)/usr/share/butane
install -p -m 0644 $(BIN_PATH)/butane-aarch64-apple-darwin $(DESTDIR)/usr/share/butane
install -p -m 0644 $(BIN_PATH)/butane-aarch64-unknown-linux-gnu-static $(DESTDIR)/usr/share/butane
install -p -m 0644 $(BIN_PATH)/butane-ppc64le-unknown-linux-gnu-static $(DESTDIR)/usr/share/butane
install -p -m 0644 $(BIN_PATH)/butane-s390x-unknown-linux-gnu-static $(DESTDIR)/usr/share/butane
install -p -m 0644 $(BIN_PATH)/butane-x86_64-apple-darwin $(DESTDIR)/usr/share/butane
install -p -m 0644 $(BIN_PATH)/butane-x86_64-pc-windows-gnu.exe $(DESTDIR)/usr/share/butane
install -p -m 0644 $(BIN_PATH)/butane-x86_64-unknown-linux-gnu-static $(DESTDIR)/usr/share/butane
.PHONY: install-grub-for-bootupd
install-grub-for-bootupd:
install -d -p $(DESTDIR)/usr/lib/bootupd/grub2-static/configs.d
install -m 0644 -D -t $(DESTDIR)/usr/lib/bootupd/grub2-static/configs.d grub2/05_ignition.cfg
.PHONY: vendor
vendor:
@go mod vendor
@go mod tidy