# Mein common.mk fuer PASST im WS19 EMU ?= kvm DEBBASE = http://ftp.fau.de/debian/dists/buster/main/installer-amd64/current/images/netboot/debian-installer/amd64/ DISK = passt.img KVMOPTS = -m 1024 -nodefaults -nographic -display none -echr 0x01 -serial mon:stdio -serial tcp::9876,server,nowait,nodelay -net nic,model=virtio -net user -drive file=$(DISK),if=virtio,cache=writeback,format=raw $(KVMUSER) KERNEL ?= ./kernel/arch/x86_64/boot/bzImage CONFIGS = configs DATE != date +%s /var/tmp/kernel: git clone /proj/i4passt/kernel/linux-stable.git $@ kernel: /var/tmp/kernel ln -fs $< $@ initrd.gz linux: wget $(DEBBASE)/$@ kernel/vmlinux: kernel nice $(MAKE) -C kernel -j \$(nproc) $(DISK): dd if=/dev/zero of=$@ bs=1 count=1 seek=8G vm: $(DISK) # kernel/vmlinux $(EMU) $(KVMOPTS) -kernel $(KERNEL) -append "console=ttyS0 root=/dev/vda1" vm-kgdb: $(DISK) # kernel/vmlinux $(EMU) $(KVMOPTS) -kernel $(KERNEL) -append "console=ttyS0 root=/dev/vda1 kgdboc=ttyS1,115200 kgdbwait" debug: gdb kernel/vmlinux -ex "target remote localhost:9876" $(CONFIGS):; mkdir $@ save-config: $(CONFIGS) cp kernel/.config $(CONFIGS)/backup-$(DATE) use-last-config: [ -f kernel/.config ] && mv kernel/.config kernel/.config.backup cp $(shell ls -1t $(CONFIGS) | sed 1q) kernel/.config .PHONY: vm debug cconfig