Patrick Georgi | 8480c0b | 2020-05-08 22:50:46 +0200 | [diff] [blame] | 1 | ## SPDX-License-Identifier: GPL-2.0-only |
Philipp Deppenwiese | 0f0e4e6 | 2018-06-19 20:22:32 +0200 | [diff] [blame] | 2 | |
Philipp Deppenwiese | 0f0e4e6 | 2018-06-19 20:22:32 +0200 | [diff] [blame] | 3 | unexport $(COREBOOT_EXPORTS) |
Patrick Rudolph | 02c0814 | 2018-03-13 11:22:26 +0100 | [diff] [blame] | 4 | |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 5 | DTC ?= dtc |
Philipp Deppenwiese | 0f0e4e6 | 2018-06-19 20:22:32 +0200 | [diff] [blame] | 6 | |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 7 | LINUX_ARCH-$(CONFIG_LINUXBOOT_X86_64) = x86_64 |
| 8 | LINUX_ARCH-$(CONFIG_LINUXBOOT_X86) = i386 |
| 9 | LINUX_ARCH-$(CONFIG_LINUXBOOT_ARM64) = arm64 |
| 10 | LINUX_ARCH-$(CONFIG_LINUXBOOT_RISCV_RV32) = riscv |
| 11 | LINUX_ARCH-$(CONFIG_LINUXBOOT_RISCV_RV64) = riscv |
Marcello Sylvester Bauer | 78d0256 | 2018-11-11 18:03:26 +0100 | [diff] [blame] | 12 | |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 13 | build/Image: $(CONFIG_LINUXBOOT_KERNEL_PATH) |
| 14 | ln -s -r $< $@ |
Philipp Deppenwiese | 0f0e4e6 | 2018-06-19 20:22:32 +0200 | [diff] [blame] | 15 | |
Maximilian Brune | 6dce55e | 2023-07-24 18:08:07 +0200 | [diff] [blame] | 16 | |
Maximilian Brune | aad4199 | 2023-07-24 18:35:27 +0200 | [diff] [blame^] | 17 | ifeq ($(CONFIG_LINUXBOOT_COMPILE_KERNEL),y) |
Maximilian Brune | 6dce55e | 2023-07-24 18:08:07 +0200 | [diff] [blame] | 18 | include targets/linux.mk |
Maximilian Brune | aad4199 | 2023-07-24 18:35:27 +0200 | [diff] [blame^] | 19 | endif |
Maximilian Brune | 6dce55e | 2023-07-24 18:08:07 +0200 | [diff] [blame] | 20 | ifeq ($(CONFIG_LINUXBOOT_UROOT),y) |
| 21 | include targets/u-root.mk |
| 22 | endif |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 23 | |
| 24 | build/initramfs: $(CONFIG_LINUXBOOT_INITRAMFS_PATH) |
Marcello Sylvester Bauer | e102c5d | 2018-11-21 17:45:43 +0100 | [diff] [blame] | 25 | ifeq ($(CONFIG_LINUXBOOT_INITRAMFS_COMPRESSION_XZ),y) |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 26 | xz --keep --force --check=crc32 --lzma2=dict=1MiB $(CONFIG_LINUXBOOT_INITRAMFS_PATH) |
Marcello Sylvester Bauer | e102c5d | 2018-11-21 17:45:43 +0100 | [diff] [blame] | 27 | endif |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 28 | cp $(CONFIG_LINUXBOOT_INITRAMFS_PATH)$(CONFIG_LINUXBOOT_INITRAMFS_SUFFIX) $@ |
Marcello Sylvester Bauer | e102c5d | 2018-11-21 17:45:43 +0100 | [diff] [blame] | 29 | |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 30 | ifeq ($(CONFIG_LINUXBOOT_KERNEL_BZIMAGE),y) |
Philipp Deppenwiese | 0f0e4e6 | 2018-06-19 20:22:32 +0200 | [diff] [blame] | 31 | |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 32 | build/bzImage: $(kernel_dir)/arch/x86/boot/bzImage | build |
| 33 | cp $< $@ |
| 34 | |
| 35 | else ifeq ($(CONFIG_LINUXBOOT_KERNEL_UIMAGE),y) |
| 36 | |
| 37 | build/target.dtb: $(CONFIG_LINUXBOOT_DTS_FILE) |
| 38 | $(DTC) -o $@ $< |
| 39 | |
| 40 | build/uImage: build/vmlinux.bin.lzma build/initramfs build/target.dtb $(LINUX_ARCH-y)/kernel_fdt_lzma.its | build |
| 41 | mkimage -f $(LINUX_ARCH-y)/kernel_fdt_lzma.its $@ |
| 42 | |
| 43 | endif # CONFIG_LINUXBOOT_KERNEL_BZIMAGE |
| 44 | |
| 45 | build: |
| 46 | mkdir build |
Patrick Rudolph | 02c0814 | 2018-03-13 11:22:26 +0100 | [diff] [blame] | 47 | |
Philipp Deppenwiese | 0f0e4e6 | 2018-06-19 20:22:32 +0200 | [diff] [blame] | 48 | clean: |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 49 | rm -rf build/kernel* |
| 50 | rm -f build/u-root |
| 51 | rm -f build/initramfs* |
| 52 | rm -f build/bzImage |
Philipp Deppenwiese | 0f0e4e6 | 2018-06-19 20:22:32 +0200 | [diff] [blame] | 53 | |
| 54 | distclean: |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 55 | rm -rf build |
Philipp Deppenwiese | 0f0e4e6 | 2018-06-19 20:22:32 +0200 | [diff] [blame] | 56 | |
Maximilian Brune | c202be7 | 2023-06-26 20:04:47 +0200 | [diff] [blame] | 57 | .PHONY: linuxboot clean distclean |