coreboot-kgpe-d16/payloads/external/FILO/Makefile
Paul Menzel f72568cad3 payloads: FILO: Hook up autoboot options
FILO allows to configure a line to autoboot. Hook this up into
coreboot’s build system.

TEST=Configure coreboot for QEMU i440fx with FILO as payload and
configure:

    CONFIG_FILO_MASTER=y
    CONFIG_FILO_USE_AUTOBOOT=y
    CONFIG_FILO_AUTOBOOT_FILE="hda1:/vmlinuz root=/dev/sda1 console=tty0 console=ttyS0,115200 initrd=hda1:/initrd.img"
    CONFIG_FILO_AUTOBOOT_DELAY=5

Boot Debian image with:

    qemu-system-x86_64 -bios /dev/shm/coreboot/build/coreboot.rom -L /dev/shm -enable-kvm -smp cpus=2 -m 1G -hda /dev/shm/debian-32.img -serial stdio -net nic -net user,hostfwd=tcp::22222-:22

Change-Id: Id167e9a144bf466da87469108002672b299b702a
Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/56213
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2021-07-19 09:20:52 +00:00

62 lines
1.8 KiB
Makefile

TAG-$(CONFIG_FILO_MASTER)=origin/master
NAME-$(CONFIG_FILO_MASTER)=MASTER
TAG-$(CONFIG_FILO_STABLE)=c2fa1ea6125c63e84cdf7779c37d76da8c5bc412
NAME-$(CONFIG_FILO_STABLE)=STABLE
project_git_repo=https://review.coreboot.org/filo.git
project_dir=filo
unexport KCONFIG_AUTOHEADER
unexport KCONFIG_AUTOCONFIG
unexport KCONFIG_DEPENDENCIES
unexport KCONFIG_SPLITCONFIG
unexport KCONFIG_TRISTATE
unexport KCONFIG_NEGATIVES
all: filo
checkout:
echo " GIT FILO $(NAME-y)"
test -d filo || \
git clone $(project_git_repo) $(project_dir)
cd filo && \
git checkout master && \
git remote update && \
test -n $(TAG-y) && \
git branch -f $(NAME-y) $(TAG-y) && \
git checkout $(NAME-y)
config: libpayload
echo " CONFIG FILO $(NAME-y)"
$(MAKE) -C filo defconfig LIBCONFIG_PATH=../../../libpayload
# This shows how to force a previously unset .config option *on*
#echo "CONFIG_VGAHOOKS=y" >> filo/.config
# This shows how to force a previously set .config option *off*
#echo "# CONFIG_SMBIOS is not set" >> filo/.config
ifeq ($(CONFIG_FILO_USE_AUTOBOOT),y)
echo "# CONFIG_USE_GRUB is not set" >> filo/.config
echo "CONFIG_USE_AUTOBOOT=y" >> filo/.config
echo 'CONFIG_AUTOBOOT_FILE="$(CONFIG_FILO_AUTOBOOT_FILE)"' >> filo/.config
echo "CONFIG_AUTOBOOT_DELAY=$(CONFIG_FILO_AUTOBOOT_DELAY)" >> filo/.config
endif
$(MAKE) -C filo oldconfig LIBCONFIG_PATH=../../../libpayload
filo: config
echo " MAKE FILO $(NAME-y)"
$(MAKE) -C filo LIBCONFIG_PATH=../../../libpayload
libpayload: checkout
cd ../../libpayload && $(MAKE) defconfig && \
$(MAKE) && $(MAKE) DESTDIR=../external/FILO/filo/build install
clean:
test -d filo && $(MAKE) -C filo clean LIBCONFIG_PATH=../../../libpayload || exit 0
distclean:
rm -rf filo
print-repo-info:
echo "$(project_git_repo) $(project_dir)"
.PHONY: checkout config filo clean distclean print-repo-info