X-Git-Url: http://git.plutz.net/?p=blast;a=blobdiff_plain;f=Makefile;h=36cd2b9c0c30e00e6029f957f912c1327d94ee7c;hp=41a99930c9c58529cf6c3b4c1cff9c41db77a55c;hb=92dfcb2f828b2bb5eaa5b127ffa1a4bf15432335;hpb=ff7369bc28efe05ace7e9900f98083e982caf3fa diff --git a/Makefile b/Makefile index 41a9993..36cd2b9 100644 --- a/Makefile +++ b/Makefile @@ -4,10 +4,11 @@ nul_:= comma_:= , space_:= ${nul_} ${nul_} -.PHONY: clean .FORCE -.PHONY: _config_raspi _partition_raspi -.PHONY: _qemu _bootstrap _install _copy _config_raspi _config _bootloader _squash -.PHONY: _target _partition _format _mount _sparse _umount _partcopy _mbr +.PHONY: clean .FORCE _target +.PHONY: _bootloader_raspi _bootloader_pc _partition_gpt _partition_raspi +.PHONY: _squash_modules +.PHONY: _qemu _bootstrap _install _copy _config _bootloader _squash +.PHONY: _partition _format _mount _sparse _umount _partcopy _mbr ARCH := amd64 KEYRING := keys/debian-archive-stretch-stable.gpg @@ -36,13 +37,13 @@ ifdef disk _target: _mbr _umount _config _install _partition - _partition: + _partition: _partition_gpt _format: _partition _mount: _format _bootstrap: _mount _install: _bootstrap _mount _config: _install _mount - _bootloader: _mount + _bootloader: _mount _bootloader_pc _umount: _mount _config _bootloader _mbr: _umount _bootloader @@ -62,9 +63,9 @@ else ifdef image _mount: _format _copy: _install _mount _config: _copy _mount - _bootloader: _mount + _bootloader: _mount _bootloader_pc _umount: _mount _config _bootloader - _partition: + _partition: _partition_gpt _partcopy: _partition _umount _mbr: _partcopy _bootloader @@ -79,7 +80,7 @@ else ifdef squash _install: _bootstrap _copy: _install _config: _copy - _squash: _config + _squash: _config _squash_modules else ifdef raspi VOLUME := ${raspi} @@ -108,11 +109,11 @@ PACKAGES := ${PACKAGES} firmware-brcm80211 libraspberrypi-bin libraspberrypi0 pi _format: _sparse _mount: _format _copy: _install _mount - _config_raspi: _copy _mount - _config: _copy _mount _config_raspi - _umount: _mount _config - _partition_raspi: - _partcopy: _partition_raspi _umount + _config: _copy _mount + _bootloader: _mount _bootloader_raspi + _umount: _mount _config _bootloader + _partition: _partition_raspi + _partcopy: _partition _umount else _target: @@ -192,10 +193,6 @@ _install: ${SYSROOT} _aptkeys _norecommends _copy: ${SYSROOT} ${CFGROOT} cp -au "$${SYSROOT}/." "$${CFGROOT}/" -_config_raspi: ${CFGROOT}/boot/cmdline.txt -${CFGROOT}/boot/cmdline.txt: ${CFGROOT} - printf 'dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet' >"$@" - .PHONY: _common_config _config: _common_config _common_config: ${CFGROOT} @@ -207,7 +204,10 @@ ${SQUASH}: ${CFGROOT} -rm "$${SQUASH}" mksquashfs "$${CFGROOT}" "$${SQUASH}" -comp xz -_squash: ${SQUASH} +_squash_modules: ${CFGROOT} + printf '%s\n' squashfs nbd >>"${CFGROOT}/etc/initramfs-tools/modules" + +_squash: ${SQUASH} _squash_modules ${VOLUME}: .FORCE ! printf '%s\n' "$${VOLUME}" |grep -q '^/dev/' # abort if volume should be real device @@ -229,7 +229,7 @@ _partition_raspi: ${VOLUME} printf 'label: dos\n\n: start=2MiB, size=%iMiB, type=c\n: start=%iMiB, size=%iMiB, type=83\n' \ ${BOOT_MB} "$$((${BOOT_MB} + 2))" ${ROOT_MB} | sfdisk "$${VOLUME}" -_partition: ${VOLUME} +_partition_gpt: ${VOLUME} printf 'label: gpt\n\n: start=2MiB, size=%iMiB, type=1, attrs="LegacyBIOSBootable"\n: size=%iMiB, type=20\n' \ ${BOOT_MB} ${ROOT_MB} | sfdisk "$${VOLUME}" @@ -272,7 +272,12 @@ _grub_efi64: ${CFGROOT} mkdir -p "$${CFGROOT}/boot/EFI/BOOT" grub-mkimage -p / -O x86_64-efi fat part_gpt normal linux all_video >"$${CFGROOT}/boot/EFI/BOOT/BOOTX64.EFI" -_bootloader: ${CFGROOT} _grub_efi32 _grub_efi64 _syslinux_bios #_syslinux_efi32 _syslinux_efi64 +${CFGROOT}/boot/cmdline.txt: ${CFGROOT} + printf 'dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet' >"$@" + +_bootloader_raspi: ${CFGROOT} ${CFGROOT}/boot/cmdline.txt + +_bootloader_pc: ${CFGROOT} _grub_efi32 _grub_efi64 _syslinux_bios #_syslinux_efi32 _syslinux_efi64 printf 'UI menu.c32\nDEFAULT stretch\nTIMEOUT 30\n' >"$${CFGROOT}/boot/bootmenu.cfg" printf 'set timeout=3\ndefault=stretch\n\n' >"$${CFGROOT}/boot/grub.cfg" k="$$(printf ' %s' "$${CFGROOT}/boot/"vmlinuz-*)"; k="$${k##*/}"; \