3 ARCH=$(shell $(CC) -dumpmachine | sed "s/\(-\).*$$//")
4 LIBDIR=$(shell echo $$(cd /usr/lib/$$(gcc -print-multi-os-directory); pwd))
9 -I/usr/include/efi/$(ARCH)
12 -DVERSION=$(VERSION) \
18 -DEFI_FUNCTION_WRAPPER
20 LDFLAGS = -T $(LIBDIR)/gnuefi/elf_$(ARCH)_efi.lds \
26 $(LIBDIR)/gnuefi/crt0-efi-$(ARCH).o
29 $(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@
31 gummiboot.efi: gummiboot.so
32 objcopy -j .text -j .sdata -j .data -j .dynamic \
33 -j .dynsym -j .rel -j .rela -j .reloc \
34 --target=efi-app-$(ARCH) $< $@
36 gummiboot.so: gummiboot.o
37 $(LD) $(LDFLAGS) gummiboot.o -o $@ -lefi -lgnuefi
40 rm -f gummiboot.o gummiboot.so gummiboot.efi
43 @# UUID=677B-ECF2 /boot2 vfat noauto,x-systemd.automount,x-gvfs-hide 1 3
44 cp -v gummiboot.efi /boot2/EFI/gummiboot/
45 @# unmount to sync EFI partition to disk
48 echo 3 > /proc/sys/vm/drop_caches
50 qemu-kvm -m 512 -L /home/kay/data/bios -snapshot /dev/sda