There would be an "Argument list too long" error when the TMPDIR is in a deep dir, for example, when "len(readlink -f TMPDIR) >= 350 (our supported value is 410)". Use "$(foreach ,,$(shell echo))" to fix it.
[YOCTO #5138] Signed-off-by: Robert Yang <[email protected]> --- ...cripts-Makefile.headersinst-args-too-long.patch | 36 ++++++++++++++++++++ .../linux-libc-headers/linux-libc-headers_3.10.bb | 1 + 2 files changed, 37 insertions(+) create mode 100644 meta/recipes-kernel/linux-libc-headers/linux-libc-headers/scripts-Makefile.headersinst-args-too-long.patch diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/scripts-Makefile.headersinst-args-too-long.patch b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/scripts-Makefile.headersinst-args-too-long.patch new file mode 100644 index 0000000..c0e1a06 --- /dev/null +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/scripts-Makefile.headersinst-args-too-long.patch @@ -0,0 +1,36 @@ +Makefile.headersinst: fix "Argument list too long" error + +There would be an "Argument list too long" error when the src is in a +deep dir, for example, when "len(readlink -f src_dir) >= 400", use +"$(foreach ,,$(shell echo))" to fix it. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <[email protected]> +--- + scripts/Makefile.headersinst | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/scripts/Makefile.headersinst b/scripts/Makefile.headersinst +--- a/scripts/Makefile.headersinst ++++ b/scripts/Makefile.headersinst +@@ -98,10 +98,15 @@ __headersinst: $(subdirs) $(install-file) + @: + + targets += $(install-file) ++# Use the $(foreach ,,$(shell echo)) to avoid the "Argument list too ++# long" error, and use the "$(shell echo)" rather than "echo" to keep ++# the order. + $(install-file): scripts/headers_install.sh $(input-files) FORCE + $(if $(unwanted),$(call cmd,remove),) + $(if $(wildcard $(dir $@)),,$(shell mkdir -p $(dir $@))) +- @echo $(input-files) > $(INSTALL_HDR_PATH)/.input-files ++ $(shell echo -n > $(INSTALL_HDR_PATH)/.input-files) ++ $(foreach f,$(input-files),$(shell echo -n "$(f) " >> \ ++ $(INSTALL_HDR_PATH)/.input-files)) + $(call if_changed,install) + @rm $(INSTALL_HDR_PATH)/.input-files + +-- +1.7.10.4 + diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb index 65df230..d056e7c 100644 --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb @@ -2,6 +2,7 @@ require linux-libc-headers.inc SRC_URI += "file://0001-ptrace.h-remove-ptrace_peeksiginfo_args.patch" SRC_URI += "file://scripts-Makefile.headersinst-install-headers-from-sc.patch" +SRC_URI += "file://scripts-Makefile.headersinst-args-too-long.patch" SRC_URI[md5sum] = "72d0a9b3e60cd86fabcd3f24b1708944" SRC_URI[sha256sum] = "46c9e55e1fddf40813b8d697d5645037a8e2af5c1a8dff52b3fe82b5021582b8" -- 1.7.10.4 _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
