| Submitter | wenzong.fan@windriver.com |
|---|---|
| Date | Sept. 27, 2012, 8:23 a.m. |
| Message ID | <ae8afc91a951339570a19ea607c8452037078a73.1348734058.git.wenzong.fan@windriver.com> |
| Download | mbox | patch |
| Permalink | /patch/37337/ |
| State | Accepted |
| Commit | aa66ef6598c84231577d139ec7be413e73fac2b1 |
| Headers | show |
Comments
On Thu, 2012-09-27 at 16:23 +0800, wenzong.fan@windriver.com wrote: > From: Wenzong Fan <wenzong.fan@windriver.com> > > Fix autotools.bbclass to use relative paths for acpaths instead of > absolute ones. Since absolute paths may cause potential autoreconf > error like: > > Can't exec "/bin/sh": Argument list too long ... > > This error occurs while building coreutils with long TMPDIR, because > it has bunch of m4 files need to be expanded. > > [YOCTO #2766] > > Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> > --- > meta/classes/autotools.bbclass | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass > index e4e034b..874e01d 100644 > --- a/meta/classes/autotools.bbclass > +++ b/meta/classes/autotools.bbclass > @@ -130,7 +130,8 @@ autotools_do_configure() { > if [ x"${acpaths}" = xdefault ]; then > acpaths= > for i in `find ${S} -maxdepth 2 -name \*.m4|grep -v 'aclocal.m4'| \ > - grep -v 'acinclude.m4' | sed -e 's,\(.*/\).*$,\1,'|sort -u`; do > + grep -v 'acinclude.m4' | sed -e 's,\(.*/\).*$,\1,'|sort -u| \ > + sed -e 's,${S},\.,'`; do > acpaths="$acpaths -I $i" > done > else We applied this but it nearly instantly caused build failure reports. Anything with multiple configure.ac files where sub configures are used such as bdwgc-native will fail after this. I've therefore reverted it and we need to find another way. Cheers, Richard
On 09/28/2012 12:59 AM, Richard Purdie wrote: > On Thu, 2012-09-27 at 16:23 +0800, wenzong.fan@windriver.com wrote: >> From: Wenzong Fan<wenzong.fan@windriver.com> >> >> Fix autotools.bbclass to use relative paths for acpaths instead of >> absolute ones. Since absolute paths may cause potential autoreconf >> error like: >> >> Can't exec "/bin/sh": Argument list too long ... >> >> This error occurs while building coreutils with long TMPDIR, because >> it has bunch of m4 files need to be expanded. >> >> [YOCTO #2766] >> >> Signed-off-by: Wenzong Fan<wenzong.fan@windriver.com> >> --- >> meta/classes/autotools.bbclass | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass >> index e4e034b..874e01d 100644 >> --- a/meta/classes/autotools.bbclass >> +++ b/meta/classes/autotools.bbclass >> @@ -130,7 +130,8 @@ autotools_do_configure() { >> if [ x"${acpaths}" = xdefault ]; then >> acpaths= >> for i in `find ${S} -maxdepth 2 -name \*.m4|grep -v 'aclocal.m4'| \ >> - grep -v 'acinclude.m4' | sed -e 's,\(.*/\).*$,\1,'|sort -u`; do >> + grep -v 'acinclude.m4' | sed -e 's,\(.*/\).*$,\1,'|sort -u| \ >> + sed -e 's,${S},\.,'`; do >> acpaths="$acpaths -I $i" >> done >> else > > We applied this but it nearly instantly caused build failure reports. > Anything with multiple configure.ac files where sub configures are used > such as bdwgc-native will fail after this. > > I've therefore reverted it and we need to find another way. Sorry, I didn't figure this out while building a sato image. If we can't make everything happy, could we get back the original ways which only fix it for coreutils? With the limit to length of TMPDIR, this issue should rarely occurs. Thanks Wenzong > > Cheers, > > Richard > >
Patch
diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass index e4e034b..874e01d 100644 --- a/meta/classes/autotools.bbclass +++ b/meta/classes/autotools.bbclass @@ -130,7 +130,8 @@ autotools_do_configure() { if [ x"${acpaths}" = xdefault ]; then acpaths= for i in `find ${S} -maxdepth 2 -name \*.m4|grep -v 'aclocal.m4'| \ - grep -v 'acinclude.m4' | sed -e 's,\(.*/\).*$,\1,'|sort -u`; do + grep -v 'acinclude.m4' | sed -e 's,\(.*/\).*$,\1,'|sort -u| \ + sed -e 's,${S},\.,'`; do acpaths="$acpaths -I $i" done else