blob: e4db9bb561640eff03367a084eb942fea1080f4e [file] [log] [blame]
## SPDX-License-Identifier: GPL-2.0-only
build_dir=$(CURDIR)/build
skiboot_dir=$(CURDIR)/skiboot
skiboot_git_repo=$(CONFIG_SKIBOOT_GIT_REPO)
skiboot_revision=$(CONFIG_SKIBOOT_REVISION)
skiboot_elf=$(build_dir)/skiboot.elf
skiboot_cross=$(or $(CROSS),powerpc64-linux-gnu-)
unexport $(COREBOOT_EXPORTS)
.PHONY: all clean distclean
all: $(skiboot_elf)
$(skiboot_elf): | $(skiboot_dir) $(build_dir)
+$(MAKE) -C $(skiboot_dir) CROSS="$(skiboot_cross)"
cp $(skiboot_dir)/skiboot.elf $@
# skiboot is always built with debug information due to unconditional -ggdb
$(skiboot_cross)strip $@
$(skiboot_dir):
git clone $(skiboot_git_repo) $(skiboot_dir)
git -C $(skiboot_dir) checkout $(skiboot_revision)
$(build_dir):
mkdir -p $(build_dir)
distclean: clean
rm -rf $(skiboot_dir)
clean:
# Redefine RM because it's used like `$(RM) non-existent-file`
# Also ignore useless messages about removing test files
[ ! -d $(skiboot_dir) ] || \
$(MAKE) -C $(skiboot_dir) RM="rm -rf" CROSS="$(skiboot_cross)" clean > /dev/null
rm -rf $(build_dir)