From: Gabor Juhos Subject: usr: sanitize deps_initramfs list If any filename in the intramfs dependency list contains a colon, that causes a kernel build error like this: /devel/openwrt/build_dir/linux-ar71xx_generic/linux-3.6.6/usr/Makefile:58: *** multiple target patterns. Stop. make[5]: *** [usr] Error 2 Fix it by removing such filenames from the deps_initramfs list. Signed-off-by: Gabor Juhos --- usr/Makefile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) --- a/usr/Makefile +++ b/usr/Makefile @@ -39,20 +39,22 @@ ifneq ($(wildcard $(obj)/$(datafile_d_y) include $(obj)/$(datafile_d_y) endif +deps_initramfs_sane := $(foreach v,$(deps_initramfs),$(if $(findstring :,$(v)),,$(v))) + quiet_cmd_initfs = GEN $@ cmd_initfs = $(initramfs) -o $@ $(ramfs-args) $(ramfs-input) targets := $(datafile_y) # do not try to update files included in initramfs -$(deps_initramfs): ; +$(deps_initramfs_sane): ; -$(deps_initramfs): klibcdirs +$(deps_initramfs_sane): klibcdirs # We rebuild initramfs_data.cpio if: # 1) Any included file is newer then 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)/$(datafile_y): $(obj)/gen_init_cpio $(deps_initramfs) klibcdirs +$(obj)/$(datafile_y): $(obj)/gen_init_cpio $(deps_initramfs_sane) klibcdirs $(Q)$(initramfs) -l $(ramfs-input) > $(obj)/$(datafile_d_y) $(call if_changed,initfs)