summaryrefslogtreecommitdiffstats
path: root/fs/initramfs/initramfs.mk
blob: 1cd48b6c8ba233f9cfc2a5892ce9017803f09a82 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#############################################################
#
# Make a initramfs_list file to be used by gen_init_cpio
# gen_init_cpio is part of the 2.6 linux kernels to build an
# initial ramdisk filesystem based on cpio
#
#############################################################

ifeq ($(BR2_ROOTFS_DEVICE_CREATION_STATIC),y)

define ROOTFS_INITRAMFS_ADD_INIT
	if [ ! -e $(TARGET_DIR)/init ]; then \
		ln -sf sbin/init $(TARGET_DIR)/init; \
	fi
endef

else
# devtmpfs does not get automounted when initramfs is used.
# Add a pre-init script to mount it before running init
define ROOTFS_INITRAMFS_ADD_INIT
	if [ ! -e $(TARGET_DIR)/init ]; then \
		$(INSTALL) -m 0755 fs/initramfs/init $(TARGET_DIR)/init; \
	fi
endef

endif # BR2_ROOTFS_DEVICE_CREATION_STATIC

ROOTFS_INITRAMFS_PRE_GEN_HOOKS += ROOTFS_INITRAMFS_ADD_INIT

define ROOTFS_INITRAMFS_CMD
	$(SHELL) fs/initramfs/gen_initramfs_list.sh -u 0 -g 0 $(TARGET_DIR) > $$@
endef

ROOTFS_INITRAMFS_POST_TARGETS += linux26-rebuild-with-initramfs

$(eval $(call ROOTFS_TARGET,initramfs))