autotools.bbclass: using relative paths for acpaths
cover autotools.bbclass: using relative paths for acpaths
From: Wenzong Fan <[email protected]>
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]
The following changes since commit 0b09e50810162a07ef0aecee91ee32b4a36334a3:
busybox: Fix misplaced quote (2012-09-26 18:28:36 +0100)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib wenzong/2766
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=wenzong/2766
Wenzong Fan (1):
autotools.bbclass: using relative paths for acpaths
meta/classes/autotools.bbclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
Signature · 1 line
1.7.9.5
PATCH 1/1 autotools.bbclass: using relative paths for acpaths
From: Wenzong Fan <[email protected]>
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]
--- meta/classes/autotools.bbclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
meta/classes/autotools.bbclass +2 -1
@@ -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
Signature · 1 line
1.7.9.5
Quoted 23 lines · On Thu, 2012-09-27 at 16:23 +0800, [email protected] wrote:
From: Wenzong Fan <[email protected]>
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 <[email protected]>--- meta/classes/autotools.bbclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)meta/classes/autotools.bbclass +0
-0
meta/classes/autotools.bbclass autotools_do_configure() { · line 137
Quoted 9 lines
meta/classes/autotools.bbclass +2
-1@@ -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
Quoted 38 lines · Richard Purdie
Quoted 23 lines · On Thu, 2012-09-27 at 16:23 +0800, [email protected] wrote:
From: Wenzong Fan<[email protected]>
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<[email protected]>--- meta/classes/autotools.bbclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)meta/classes/autotools.bbclass +0
-0meta/classes/autotools.bbclass autotools_do_configure() { · line 137
Quoted 9 lines
meta/classes/autotools.bbclass +2
-1@@ -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 elseWe 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.
Quoted 1 line
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
Quoted 6 lines
Cheers,
Richard
Saul Wold
AppliedQuoted 19 lines · On 09/27/2012 01:23 AM, [email protected] wrote:
From: Wenzong Fan <[email protected]>
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]
The following changes since commit
0b09e50810162a07ef0aecee91ee32b4a36334a3:busybox: Fix misplaced quote (2012-09-26 18:28:36 +0100)are available in the git repository at:
Quoted 9 lines
git://git.pokylinux.org/poky-contrib wenzong/2766 http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=wenzong/2766Wenzong Fan (1):
autotools.bbclass: using relative paths for acpathsmeta/classes/autotools.bbclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
Merged into OE-Core
Thanks
Sau!