37 lines
1.3 KiB
Makefile
37 lines
1.3 KiB
Makefile
################################################################################
|
|
#
|
|
# Build a kernel with an integrated initial ramdisk filesystem based on cpio.
|
|
#
|
|
################################################################################
|
|
|
|
# The generic fs infrastructure isn't very useful here.
|
|
#
|
|
# The initramfs image does not actually build an image; its only purpose is:
|
|
# 1- to ensure rootfs.cpio is generated,
|
|
# 2- to then rebuild the kernel with rootfs.cpio as initramfs
|
|
#
|
|
# Note: ordering of the dependencies is not guaranteed here, but in
|
|
# linux/linux.mk, via the linux-rebuild-with-initramfs rule, which depends
|
|
# on the rootfs-cpio filesystem rule.
|
|
#
|
|
# Note: the trick here is that we directly depend on rebuilding the Linux
|
|
# kernel image (which itself depends on the rootfs-cpio rule), while we
|
|
# advertise that our dependency is on the rootfs-cpio rule, which is
|
|
# cleaner in the dependency graph.
|
|
|
|
rootfs-initramfs: linux-rebuild-with-initramfs
|
|
|
|
rootfs-initramfs-show-depends:
|
|
@echo rootfs-cpio
|
|
|
|
.PHONY: rootfs-initramfs rootfs-initramfs-show-depends
|
|
|
|
ifeq ($(BR2_TARGET_ROOTFS_INITRAMFS),y)
|
|
TARGETS_ROOTFS += rootfs-initramfs
|
|
endif
|
|
|
|
# Not using the rootfs infra, so fake the variables
|
|
ROOTFS_INITRAMFS_NAME = rootfs-initramfs
|
|
ROOTFS_INITRAMFS_TYPE = rootfs
|
|
ROOTFS_INITRAMFS_DEPENDENCIES = rootfs-cpio linux
|