summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorGordon GECOS <u@adam>2023-11-22 17:42:07 -0500
committerGordon GECOS <u@adam>2023-11-22 17:46:25 -0500
commit198b40c70815899a67c412e67ffe033b46ec80f0 (patch)
tree180342c55ca6a61d4d1ee8638961d23cfaa57588 /Makefile
parente015b8cbe957a1913f178dc5e4ba166972f79320 (diff)
the cleaner i make it, the cleaner it gets
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile47
1 files changed, 25 insertions, 22 deletions
diff --git a/Makefile b/Makefile
index 8cd7130..c4a16d9 100644
--- a/Makefile
+++ b/Makefile
@@ -32,10 +32,6 @@ _build/dynmenu: src/dynmenu.cpp | build-deps
32 $(CXX) $(CFLAGS) $< -o $@ -lcurses 32 $(CXX) $(CFLAGS) $< -o $@ -lcurses
33_build/samizdat-pinentry: src/samizdat-pinentry.c | build-deps 33_build/samizdat-pinentry: src/samizdat-pinentry.c | build-deps
34 $(CC) $(CFLAGS) $< -o $@ -lcurses 34 $(CC) $(CFLAGS) $< -o $@ -lcurses
35_build/krng-add-entropy: src/krng-add-entropy.c | build-deps
36 $(CC) $(CFLAGS) $< -o $@
37_build/wait_for_files: src/wait_for_files.c | build-deps
38 $(CC) $(CFLAGS) $< -o $@
39_build/%: src/%.c | build-deps 35_build/%: src/%.c | build-deps
40 $(CC) $(CFLAGS) $< -o $@ 36 $(CC) $(CFLAGS) $< -o $@
41 37
@@ -46,7 +42,7 @@ bin_programs=$(addprefix src/, $(src_bin_programs)) ${btrfs_utils}
46btrfs_utils=$(addprefix src/btrfs-utils/, btarfs with-btrfs-seed) 42btrfs_utils=$(addprefix src/btrfs-utils/, btarfs with-btrfs-seed)
47 43
48initrd_files = $(addprefix src/initrd/,btrfs-create.sh common.sh firstboot.service grok-block \ 44initrd_files = $(addprefix src/initrd/,btrfs-create.sh common.sh firstboot.service grok-block \
49loop-layer.sh make-total-destroy mdadm-dup.sh menu-select patchroot.sh) 45loop-layer.sh make-total-destroy mdadm-dup.sh menu-select patchroot.sh samizdat-eject.sh)
50 46
51initrd_files += $(addprefix _build/, dynmenu wait_for_files) 47initrd_files += $(addprefix _build/, dynmenu wait_for_files)
52 48
@@ -61,7 +57,7 @@ install-nested-kvm: conf/kvm.conf
61 install -m0644 conf/kvm.conf ${instdir}/etc/modprobe.d/ 57 install -m0644 conf/kvm.conf ${instdir}/etc/modprobe.d/
62 modprobe -r kvm-intel kvm-amd kvm; modprobe kvm; modprobe kvm-intel; modprobe kvm-amd; true 58 modprobe -r kvm-intel kvm-amd kvm; modprobe kvm; modprobe kvm-intel; modprobe kvm-amd; true
63 59
64network_filter := $(shell ./src/generate-network-filter.sh) 60# network_filter := $(shell ./src/generate-network-filter.sh)
65 61
66conf_files_out = conf/br0 conf/dnsmasq.conf conf/network_if-up.d_samizdat 62conf_files_out = conf/br0 conf/dnsmasq.conf conf/network_if-up.d_samizdat
67conf_files_in = $(addsuffix .in, $(conf_files_out)) 63conf_files_in = $(addsuffix .in, $(conf_files_out))
@@ -128,7 +124,7 @@ rootfs_verity = $(addprefix _build/,$(addsuffix .verity,$(notdir $(rootfs) $(pat
128.PHONY: rootfs rootfs-deps 124.PHONY: rootfs rootfs-deps
129rootfs-deps: 125rootfs-deps:
130 [ -e install-submodules-stamp ] || make install-submodules-stamp 126 [ -e install-submodules-stamp ] || make install-submodules-stamp
131 [ -e install-stamp ] || $(SUDO_MAKE) install-stamp 127 [ -e install-stamp ] || make install
132 128
133btrfs_images = $(rootfs) $(patchfs) 129btrfs_images = $(rootfs) $(patchfs)
134rootfs-clean: 130rootfs-clean:
@@ -166,7 +162,7 @@ _build/%.verity: rootfs/_filesystem/% | _build
166 mv -f $@.log~tmp $@.log 162 mv -f $@.log~tmp $@.log
167 mv -f $@~tmp $@ 163 mv -f $@~tmp $@
168 164
169root_hash = $(shell sed -ne 's/^Root hash: *//p' < $<.log) 165# root_hash = $(shell sed -ne 's/^Root hash: *//p' < $<.log)
170 166
171veritymount: _build/$(notdir $(rootfs)).verity.log 167veritymount: _build/$(notdir $(rootfs)).verity.log
172 @sudo veritysetup remove samizverity >/dev/null 2>&1 || true 168 @sudo veritysetup remove samizverity >/dev/null 2>&1 || true
@@ -175,7 +171,7 @@ veritymount: _build/$(notdir $(rootfs)).verity.log
175 $(verity_root_hash) 171 $(verity_root_hash)
176 sudo veritysetup remove samizverity 172 sudo veritysetup remove samizverity
177 173
178debian_dist := $(shell . /etc/os-release && printf %s $$VERSION_CODENAME) 174# debian_dist := $(shell . /etc/os-release && printf %s $$VERSION_CODENAME)
179 175
180stale = [ ! -e $@ ] || [ $$(( $$(date +%s) - $$(date -r $@ +%s) )) -gt 36000 ] 176stale = [ ! -e $@ ] || [ $$(( $$(date +%s) - $$(date -r $@ +%s) )) -gt 36000 ]
181 177
@@ -205,9 +201,8 @@ rootfs/seed.iso: $(rootfs) $(if $(VERITY),$(addprefix $(rootfs),.verity .verity.
205 -follow default 201 -follow default
206 mv $@~tmp $@ 202 mv $@~tmp $@
207 203
208.PHONY: install 204.PHONY: install install-real update-initramfs initrd-install
209install: 205install: install-stamp initrd-install-stamp
210 $(SUDO_MAKE) install-stamp initrd-install-stamp
211 206
212build-submodules-stamp: build-submodules 207build-submodules-stamp: build-submodules
213 touch $@ 208 touch $@
@@ -217,35 +212,43 @@ install-submodules-stamp: install-submodules
217 212
218initrd_deps = $(initrd_conf_files) $(initrd_files) 213initrd_deps = $(initrd_conf_files) $(initrd_files)
219 214
220initrd-stamp: initrd-install-stamp 215initrd-install-stamp: $(initrd_deps)
221 sudo update-initramfs -u 216 $(SUDO_MAKE) initrd-install
222 touch $@ 217 touch $@
218update-initramfs:
219 update-initramfs -u
223 220
224initrd-install-stamp: $(initrd_deps) 221update-initramfs-stamp: initrd-install-stamp
222 $(SUDO_MAKE) update-initramfs
223 touch $@
224initrd-install: $(initrd_deps)
225 install -D -t $(initrd_bindir) -- $(initrd_files) 225 install -D -t $(initrd_bindir) -- $(initrd_files)
226 install -D -t /etc/initramfs-tools/hooks -- initramfs-tools/hooks/samizdat 226 install -D -t /etc/initramfs-tools/hooks -- initramfs-tools/hooks/samizdat
227 install -D -t /etc/initramfs-tools/scripts -- initramfs-tools/scripts/samizdat 227 install -D -t /etc/initramfs-tools/scripts -- initramfs-tools/scripts/samizdat
228 touch $@
229 228
230conf_files = conf/bookworm.list conf/eschew-unstable.pref conf/grub.default 229conf_files = $(addprefix conf/, bookworm.list eschew-unstable.pref grub.default)
231initrd_conf_files = initramfs-tools/hooks/samizdat initramfs-tools/scripts/samizdat 230initrd_conf_files = $(addprefix initramfs-tools/, hooks/samizdat scripts/samizdat)
232 231
233install-stamp: $(conf_files) ${bin_programs} 232install-stamp: $(conf_files) ${bin_programs}
233 $(SUDO_MAKE) install-real
234 touch $@
235install-real:
234 install -D -p -t ${instdir}${bindir} -- ${bin_programs} 236 install -D -p -t ${instdir}${bindir} -- ${bin_programs}
235 rm -f /etc/apt/apt.conf.d/default-release 237 rm -f /etc/apt/apt.conf.d/default-release
236 install -m644 -t /etc/apt/preferences.d -- conf/eschew-unstable.pref 238 install -m644 -t /etc/apt/preferences.d -- conf/eschew-unstable.pref
237 install -m644 -t /etc/apt/sources.list.d -- conf/bookworm.list 239 install -m644 -t /etc/apt/sources.list.d -- conf/bookworm.list
238 install -m644 --backup=t -T -- conf/grub.default /etc/default/grub 240 install -m644 --backup=t -T -- conf/grub.default /etc/default/grub
239 touch $@
240 241
241.PHONY: update upgrade up upgrade-key initrd 242.PHONY: update upgrade up upgrade-key initrd
242 243
243initrd: initrd-stamp 244initrd: update-initramfs-stamp
244 245
245update: apt-get-update-stamp 246update: apt-get-update-stamp
246 git pull --ff-only --recurse-submodules 247 git pull --ff-only --recurse-submodules
247 248
248upgrade: install-submodules install 249upgrade: install-submodules install update-initramfs
250
251initrd-stamp:
249 sudo update-initramfs -u 252 sudo update-initramfs -u
250 253
251upgrade-key: upgrade key 254upgrade-key: upgrade key
@@ -256,7 +259,7 @@ PERSIST_FILE = partitions/_liveboot/persist.img
256 259
257persist: | $(PERSIST_FILE) 260persist: | $(PERSIST_FILE)
258$(PERSIST_FILE): 261$(PERSIST_FILE):
259 $(MAKE) -C partitions $(patsubst partitions/%,%,$@) 262 $(MAKE) -C partitions $(@:partitions/%=%)
260 263
261usb emu efi: initrd rootfs 264usb emu efi: initrd rootfs
262key keymu emu-key: initrd 265key keymu emu-key: initrd