linux: add option to explicitly specify the kernel image name
For example the upcoming qemu-xtensa patch is using this feature, where the target is called "zImage", but the resulting kernel name is "Image.elf". Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
58b748dc48
commit
c78d57637c
|
@ -244,6 +244,16 @@ config BR2_LINUX_KERNEL_IMAGE_TARGET_NAME
|
||||||
Specify the kernel make target to build the kernel that you
|
Specify the kernel make target to build the kernel that you
|
||||||
need.
|
need.
|
||||||
|
|
||||||
|
config BR2_LINUX_KERNEL_IMAGE_NAME
|
||||||
|
string "Kernel image name"
|
||||||
|
depends on BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM
|
||||||
|
help
|
||||||
|
The filename of the kernel image, if it is different from the
|
||||||
|
make target (above). Only Xtensa uses a filename different from
|
||||||
|
the make target. Defaults to BR2_LINUX_KERNEL_IMAGE_TARGET_NAME.
|
||||||
|
|
||||||
|
If unsure, leave it empty.
|
||||||
|
|
||||||
config BR2_LINUX_KERNEL_UIMAGE_LOADADDR
|
config BR2_LINUX_KERNEL_UIMAGE_LOADADDR
|
||||||
string "load address (for 3.7+ multi-platform image)"
|
string "load address (for 3.7+ multi-platform image)"
|
||||||
depends on BR2_arm || BR2_armeb
|
depends on BR2_arm || BR2_armeb
|
||||||
|
|
|
@ -80,7 +80,8 @@ endif
|
||||||
KERNEL_DTBS = $(addsuffix .dtb,$(KERNEL_DTS_NAME))
|
KERNEL_DTBS = $(addsuffix .dtb,$(KERNEL_DTS_NAME))
|
||||||
|
|
||||||
ifeq ($(BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM),y)
|
ifeq ($(BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM),y)
|
||||||
LINUX_IMAGE_NAME = $(call qstrip,$(BR2_LINUX_KERNEL_IMAGE_TARGET_NAME))
|
LINUX_IMAGE_NAME = $(call qstrip,$(BR2_LINUX_KERNEL_IMAGE_NAME))
|
||||||
|
LINUX_TARGET_NAME = $(call qstrip,$(BR2_LINUX_KERNEL_IMAGE_TARGET_NAME))
|
||||||
else
|
else
|
||||||
ifeq ($(BR2_LINUX_KERNEL_UIMAGE),y)
|
ifeq ($(BR2_LINUX_KERNEL_UIMAGE),y)
|
||||||
LINUX_IMAGE_NAME = uImage
|
LINUX_IMAGE_NAME = uImage
|
||||||
|
@ -106,6 +107,9 @@ else ifeq ($(BR2_LINUX_KERNEL_VMLINUZ),y)
|
||||||
LINUX_IMAGE_NAME = vmlinuz
|
LINUX_IMAGE_NAME = vmlinuz
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
ifeq ($(LINUX_IMAGE_NAME),)
|
||||||
|
LINUX_IMAGE_NAME = $(LINUX_TARGET_NAME)
|
||||||
|
endif
|
||||||
|
|
||||||
LINUX_KERNEL_UIMAGE_LOADADDR=$(call qstrip,$(BR2_LINUX_KERNEL_UIMAGE_LOADADDR))
|
LINUX_KERNEL_UIMAGE_LOADADDR=$(call qstrip,$(BR2_LINUX_KERNEL_UIMAGE_LOADADDR))
|
||||||
ifneq ($(LINUX_KERNEL_UIMAGE_LOADADDR),)
|
ifneq ($(LINUX_KERNEL_UIMAGE_LOADADDR),)
|
||||||
|
@ -259,7 +263,7 @@ endif
|
||||||
define LINUX_BUILD_CMDS
|
define LINUX_BUILD_CMDS
|
||||||
$(if $(BR2_LINUX_KERNEL_USE_CUSTOM_DTS),
|
$(if $(BR2_LINUX_KERNEL_USE_CUSTOM_DTS),
|
||||||
cp $(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH) $(KERNEL_ARCH_PATH)/boot/dts/)
|
cp $(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH) $(KERNEL_ARCH_PATH)/boot/dts/)
|
||||||
$(TARGET_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_IMAGE_NAME)
|
$(TARGET_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_TARGET_NAME)
|
||||||
@if grep -q "CONFIG_MODULES=y" $(@D)/.config; then \
|
@if grep -q "CONFIG_MODULES=y" $(@D)/.config; then \
|
||||||
$(TARGET_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) modules ; \
|
$(TARGET_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) modules ; \
|
||||||
fi
|
fi
|
||||||
|
@ -332,7 +336,7 @@ endif
|
||||||
$(LINUX_DIR)/.stamp_initramfs_rebuilt: $(LINUX_DIR)/.stamp_target_installed $(LINUX_DIR)/.stamp_images_installed $(BINARIES_DIR)/rootfs.cpio
|
$(LINUX_DIR)/.stamp_initramfs_rebuilt: $(LINUX_DIR)/.stamp_target_installed $(LINUX_DIR)/.stamp_images_installed $(BINARIES_DIR)/rootfs.cpio
|
||||||
@$(call MESSAGE,"Rebuilding kernel with initramfs")
|
@$(call MESSAGE,"Rebuilding kernel with initramfs")
|
||||||
# Build the kernel.
|
# Build the kernel.
|
||||||
$(TARGET_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_IMAGE_NAME)
|
$(TARGET_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_TARGET_NAME)
|
||||||
$(LINUX_APPEND_DTB)
|
$(LINUX_APPEND_DTB)
|
||||||
# Copy the kernel image to its final destination
|
# Copy the kernel image to its final destination
|
||||||
cp $(LINUX_IMAGE_PATH) $(BINARIES_DIR)
|
cp $(LINUX_IMAGE_PATH) $(BINARIES_DIR)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user