generic-poky/meta/recipes-kernel/linux-libc-headers
Bruce Ashfield 53cc748b93 linux-libc-headers: fix headers install in long path name environments
If a build is started in a deep directory structure, or in a path with
long directory names the installation of linux-libc-headers will fail
with:

  | make[2]: execvp: /bin/sh: Argument list too long
  | make[2]: ***

>From within the kernel Makefiles themselves.

The solution is to patch the kernel build rules with the following
change:

[
    scripts/Makefile.headersinst: install headers from scratch file

    If headers_install is executed from a deep/long directory structure, the
    shell's maximum argument length can be execeeded, which breaks the operation
    with:

    | make[2]: execvp: /bin/sh: Argument list too long
    | make[2]: ***

    By dumping the input files to a scratch file and using xargs to read the
    input list from the scratch file, we can avoid blowing out the maximum
    argument size and install headers in a long path name environment.
]

Until this change, or a similar one, is merged into the mainline kernel, this
change should be applied to any 3.7 or greater libc-headers build.

Upstream-status: Pending

(From OE-Core rev: 1e63a3b7b7915d40bb59976a02b9f53968997ed3)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-10 23:53:51 +00:00
..
linux-libc-headers linux-libc-headers: fix headers install in long path name environments 2013-01-10 23:53:51 +00:00
linux-libc-headers.inc linux-libc-headers: use kernel-arch to set ARCH 2012-06-21 13:03:04 +01:00
linux-libc-headers_3.7.bb linux-libc-headers: fix headers install in long path name environments 2013-01-10 23:53:51 +00:00