Something went wrong. Try again.
(I'm so sorry!) Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Something went wrong. Try again.
Makefile
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586# SPDX-License-Identifier: GPL-2.0## kbuild file for usr/ - including initramfs image#
compress-y := copycompress-$(CONFIG_INITRAMFS_COMPRESSION_GZIP) := gzipcompress-$(CONFIG_INITRAMFS_COMPRESSION_BZIP2) := bzip2compress-$(CONFIG_INITRAMFS_COMPRESSION_LZMA) := lzmacompress-$(CONFIG_INITRAMFS_COMPRESSION_XZ) := xzmisccompress-$(CONFIG_INITRAMFS_COMPRESSION_LZO) := lzocompress-$(CONFIG_INITRAMFS_COMPRESSION_LZ4) := lz4compress-$(CONFIG_INITRAMFS_COMPRESSION_ZSTD) := zstd
obj-$(CONFIG_BLK_DEV_INITRD) := initramfs_data.o
$(obj)/initramfs_data.o: $(obj)/initramfs_inc_data
hostprogs := gen_init_cpio
ramfs-input := $(CONFIG_INITRAMFS_SOURCE)cpio-data :=
# If CONFIG_INITRAMFS_SOURCE is empty, generate a small initramfs with the# default contents.ifeq ($(ramfs-input),)ramfs-input := $(src)/default_cpio_listendif
ifeq ($(words $(ramfs-input)),1)
# If CONFIG_INITRAMFS_SOURCE specifies a single file, and it is suffixed with# .cpio, use it directly as an initramfs.ifneq ($(filter %.cpio,$(ramfs-input)),)cpio-data := $(ramfs-input)endif
# If CONFIG_INITRAMFS_SOURCE specifies a single file, and it is suffixed with# .cpio.*, use it directly as an initramfs, and avoid double compression.ifeq ($(words $(subst .cpio.,$(space),$(ramfs-input))),2)cpio-data := $(ramfs-input)compress-y := copyendif
endif
# For other cases, generate the initramfs cpio archive based on the contents# specified by CONFIG_INITRAMFS_SOURCE.ifeq ($(cpio-data),)
cpio-data := $(obj)/initramfs_data.cpio
# .initramfs_data.cpio.d is used to identify all files included# in initramfs and to detect if any files are added/removed.# Removed files are identified by directory timestamp being updated# The dependency list is generated by gen_initramfs.sh -l-include $(obj)/.initramfs_data.cpio.d
# do not try to update files included in initramfs$(deps_initramfs): ;
quiet_cmd_initfs = GEN $@ cmd_initfs = \ $(CONFIG_SHELL) $< -o $@ -l $(obj)/.initramfs_data.cpio.d \ $(addprefix -u , $(CONFIG_INITRAMFS_ROOT_UID)) \ $(addprefix -g , $(CONFIG_INITRAMFS_ROOT_GID)) \ $(if $(KBUILD_BUILD_TIMESTAMP), -d "$(KBUILD_BUILD_TIMESTAMP)") \ $(ramfs-input)
# We rebuild initramfs_data.cpio if:# 1) Any included file is newer than initramfs_data.cpio# 2) There are changes in which files are included (added or deleted)# 3) If gen_init_cpio are newer than initramfs_data.cpio# 4) Arguments to gen_initramfs.sh changes$(obj)/initramfs_data.cpio: $(src)/gen_initramfs.sh $(obj)/gen_init_cpio $(deps_initramfs) FORCE $(call if_changed,initfs)
endif
$(obj)/initramfs_inc_data: $(cpio-data) FORCE $(call if_changed,$(compress-y))
targets += initramfs_data.cpio initramfs_inc_data
subdir-$(CONFIG_UAPI_HEADER_TEST) += include