patches and low-level development discussion
 help / color / mirror / code / Atom feed
blob bb3cdf49407c847832a849990ba1fdca79c60c30 2407 bytes (raw)
name: host/initramfs/Makefile 	 # note: path name is non-authoritative(*)

 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
 
# SPDX-License-Identifier: EUPL-1.2+
# SPDX-FileCopyrightText: 2021-2024 Alyssa Ross <hi@alyssa.is>

.POSIX:

include ../../lib/common.mk
include ../../lib/kcmdline-utils.mk

dest = build/initramfs

RUN_IMAGE = build/live.img

$(dest): $(MICROCODE) build/local.cpio $(PACKAGES_CPIO)
	cat /dev/null $(MICROCODE) > $@
	cat build/local.cpio $(PACKAGES_CPIO) | gzip -9n >> $@

# etc/init isn't included in ETC_FILES, because it gets installed to
# the root.
ETC_FILES = etc/getuuids etc/probe etc/fstab etc/mdev.conf
MOUNTPOINTS = dev mnt/root proc sys tmp

build/local.cpio: $(ETC_FILES) etc/init build/mountpoints
	printf "%s\n" $(ETC_FILES) | \
	    awk '{while (length) { print; sub("/?[^/]*$$", "") }}' | \
	    sort -u | \
	    $(CPIO) -o $(CPIOFLAGS) > $@
	cd etc && echo init | $(CPIO) -o $(CPIOFLAGS) -AF ../$@
	cd build/mountpoints && printf "%s\n" $(MOUNTPOINTS) | \
	    awk '{while (length) { print; sub("/?[^/]*$$", "") }}' | \
	    sort -u | \
	    $(CPIO) -o $(CPIOFLAGS) -AF ../../$@

build/mountpoints:
	rm -rf build/mountpoints
	mkdir -p build/mountpoints
	cd build/mountpoints && mkdir -p $(MOUNTPOINTS)
	find build/mountpoints -mindepth 1 -exec touch -d @0 {} ';'

build/live.img: $(LIVE_IMAGE_DEPS) $(ROOT_FS) $(ROOT_FS_VERITY) $(ROOT_FS_VERITY_ROOTHASH)
	../../scripts/make-live-image.sh live $@

build/loop.tar: build/live.img
	$(TAR) -cf $@ build/live.img

build/loop.img: ../../scripts/make-gpt.sh ../../scripts/make-gpt.bash ../../scripts/sfdisk-field.awk build/loop.ext4
	../../scripts/make-gpt.sh $@.tmp \
	    build/loop.ext4:56a3bbc3-aefa-43d9-a64d-7b3fd59bbc4e
	mv $@.tmp $@

clean:
	rm -rf build
.PHONY: clean

run: $(dest) $(RUN_IMAGE) $(ROOT_FS_VERITY_ROOTHASH)
	@../../scripts/run-qemu.sh -m 4G \
	    -machine virtualization=on \
	    -kernel $(KERNEL) \
	    -initrd $(dest) \
	    -append "ro earlycon console=hvc0 intel_iommu=on roothash=$$(< "$$ROOT_FS_VERITY_ROOTHASH") x-spectrum-version=$$VERSION nokaslr" \
	    -cpu max \
	    -gdb unix:build/gdb.sock,server,nowait \
	    -parallel none \
	    -chardev vc,id=virtiocon0 \
	    -device virtio-serial \
	    -device virtconsole,chardev=virtiocon0 \
	    -device virtio-keyboard \
	    -device virtio-mouse \
	    -device virtio-gpu \
	    -vga none \
	    -device qemu-xhci \
	    -device usb-storage,drive=drive1,removable=true \
	    -drive file=$(RUN_IMAGE),id=drive1,format=raw,if=none,readonly=true
.PHONY: run

debug log:

solving bb3cdf49407c847832a849990ba1fdca79c60c30 ...
found bb3cdf49407c847832a849990ba1fdca79c60c30 in https://inbox.spectrum-os.org/spectrum-devel/20251112-updates-v2-4-88d96bf81b79@gmail.com/
found 102870ecba4456303414e2531ea592473ddfc1cf in https://inbox.spectrum-os.org/spectrum-devel/20251107-refactor-verity-v2-1-2af58b1a4a87@gmail.com/ ||
	https://inbox.spectrum-os.org/spectrum-devel/20251111-refactor-verity-v3-1-575726639f9e@gmail.com/
found cb13fbb35f065b67d291d4a35591d6f12720060c in https://spectrum-os.org/git/spectrum
preparing index
index prepared:
100644 cb13fbb35f065b67d291d4a35591d6f12720060c	host/initramfs/Makefile

applying [1/2] https://inbox.spectrum-os.org/spectrum-devel/20251107-refactor-verity-v2-1-2af58b1a4a87@gmail.com/
diff --git a/host/initramfs/Makefile b/host/initramfs/Makefile
index cb13fbb35f065b67d291d4a35591d6f12720060c..102870ecba4456303414e2531ea592473ddfc1cf 100644

Checking patch host/initramfs/Makefile...
Applied patch host/initramfs/Makefile cleanly.

skipping https://inbox.spectrum-os.org/spectrum-devel/20251111-refactor-verity-v3-1-575726639f9e@gmail.com/ for 102870ecba4456303414e2531ea592473ddfc1cf
index at:
100644 102870ecba4456303414e2531ea592473ddfc1cf	host/initramfs/Makefile

applying [2/2] https://inbox.spectrum-os.org/spectrum-devel/20251112-updates-v2-4-88d96bf81b79@gmail.com/
diff --git a/host/initramfs/Makefile b/host/initramfs/Makefile
index 102870ecba4456303414e2531ea592473ddfc1cf..bb3cdf49407c847832a849990ba1fdca79c60c30 100644

Checking patch host/initramfs/Makefile...
Applied patch host/initramfs/Makefile cleanly.

index at:
100644 bb3cdf49407c847832a849990ba1fdca79c60c30	host/initramfs/Makefile

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://spectrum-os.org/git/doc
	https://spectrum-os.org/git/mktuntap
	https://spectrum-os.org/git/spectrum
	https://spectrum-os.org/git/ucspi-vsock

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).