From: wenzong fan <wenzong.fan@windriver.com>
To: Saul Wold <sgw@linux.intel.com>
Cc: Zhenfeng.Zhao@windriver.com, openembedded-core@lists.openembedded.org
Subject: Re: [PATCH 1/1] coreutils: fix do_configure error with long TMPDIR
Date: Fri, 24 Aug 2012 12:33:00 +0800 [thread overview]
Message-ID: <503703FC.60008@windriver.com> (raw)
In-Reply-To: <50365A14.4050601@linux.intel.com>
On 08/24/2012 12:28 AM, Saul Wold wrote:
> On 08/19/2012 07:55 PM, wenzong.fan@windriver.com wrote:
>> From: Wenzong Fan <wenzong.fan@windriver.com>
>>
>> By default the 'm4/*' files will be extended with absolute path while
>> autoreconf running, if the length of TMPDIR is too long such as 410
>> which is the maximum value allowed by 'sanity.bbclass', autoreconf
>> will fail with error:
>>
>> Can't exec "/bin/sh": Argument list too long ...
>>
>> Fix this issue by specific the 'acpaths' to '-I ./m4'.
>>
>> [YOCTO #2766]
>>
>> Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
>> ---
>> meta/recipes-core/coreutils/coreutils_8.14.bb | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/meta/recipes-core/coreutils/coreutils_8.14.bb
>> b/meta/recipes-core/coreutils/coreutils_8.14.bb
>> index 9a714a9..c7c8e13 100644
>> --- a/meta/recipes-core/coreutils/coreutils_8.14.bb
>> +++ b/meta/recipes-core/coreutils/coreutils_8.14.bb
>> @@ -7,7 +7,7 @@ BUGTRACKER = "http://debbugs.gnu.org/coreutils"
>> LICENSE = "GPLv3+"
>> LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504\
>> file://src/ls.c;startline=5;endline=16;md5=e1a509558876db58fb6667ba140137ad"
>>
>> -PR = "r5"
>> +PR = "r6"
>> DEPENDS = "gmp libcap"
>> DEPENDS_virtclass-native = ""
>>
>> @@ -36,6 +36,8 @@ base_bindir_progs = "cat chgrp chmod chown cp date
>> dd echo false kill ln ls mkdi
>>
>> sbindir_progs= "chroot"
>>
>> +acpaths = "-I ./m4"
>> +
> This is a poor work-around to the problem, and does not give any idea as
> to what your fixing. Please investigate a proper fix not just a
> work-around.
Hi Saul,
Because a too long TMPDIR will caused the failure:
Can't exec "/bin/sh": Argument list too long at
/usr/lib/perl/5.10/IO/File.pm line 66.
So we have a limitation in the sanity.bbclass that the tmpdir can't be
longer than 410. See commit 2dee999ab2731c2a96e82762ae04fe44f27edac6.
This limitation works for mostly packages but except for coreutils.
There are 378 m4 files under '.../coreutils-8.14/m4', so if all of them
extended with absolute path while the TMPDIR is long enough, it will be
a very long argument list and over the ARG_MAX value that kernel defined.
I think the best solution is reducing the length of argument list,
because autoreconf will be run in $S dir, so absolute path is not
necessary here. The acpaths is generated by autotools.bbclass and allow
to overwrite by a pre-defined value. Another option is getting
autotools.bbclass generate acpatchs with relative path directly, this
might work, but will effect all autotool packages instead of coreutils only.
Thanks
Wenzong
>
> Thanks
> Sau!
>
>> do_install_append() {
>> for i in df mktemp base64; do mv ${D}${bindir}/$i
>> ${D}${bindir}/$i.${BPN}; done
>>
>>
>
next prev parent reply other threads:[~2012-08-24 4:45 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-20 2:55 [PATCH 0/1] coreutils: fix do_configure error with long TMPDIR wenzong.fan
2012-08-20 2:55 ` [PATCH 1/1] " wenzong.fan
2012-08-23 16:28 ` Saul Wold
2012-08-24 4:33 ` wenzong fan [this message]
2012-08-24 4:41 ` wenzong fan
2012-09-20 4:37 ` Robert Yang
2012-09-21 9:51 ` Richard Purdie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=503703FC.60008@windriver.com \
--to=wenzong.fan@windriver.com \
--cc=Zhenfeng.Zhao@windriver.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=sgw@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox