[oe] autoconf and --program-prefix insanity
Geoffrey Wossum
geoffrey at pager.net
Tue Jun 3 23:17:41 UTC 2008
Hi all,
I thought I'd drag ya'll into my current autoconf hell, and hopefully someone
would know where the exit is located.
The packages/binutils/binutils-avr32.inc got changed so that instead of
explicitly invoking autoconf-2.13 (which comes from outside OE) in the
top-level binutils directory, it just invokes autoconf. This will use OE's
autoconf, which happens to be autoconf 2.61. Makes good sense.
So somewhere between autoconf 2.13 and 2.61, the handling of
the "--program-prefix" and how it interacts with cross compilation changed.
I've personally almost never used "--program-prefix", just specifying cross
compilation seems to always set the prefix correctly. However,
binutils-cross.inc explicitly specifies "--program-prefix" when configuring
binutils, in addition to specifying cross compilation.
This worked fine when the configure script was built by autoconf 2.13. But
when configure is built by autoconf 2.61, I get binaries named
avr32-angstrom-linux-uclibc-avr32-angstrom-linux-uclibc-ar and similar, which
obviously won't work when you need to use them. Modifying binutils-cross.inc
to not put "--program-prefix" in EXTRA_OECONF fixes the issue.
So, is there really a need to specify "--program-prefix"? Will this break
when configure is built by an older autoconf? I don't think it would, but I
really can't guess why "--program-prefix" was specified.
---
Geoffrey
#
# old_revision [0b3a1625ab319665b65cdff67a448a4657c6a3b1]
#
# patch "packages/binutils/binutils-cross.inc"
# from [06c8460191f6e42d0bb389ff55a7ed29314fa2a6]
# to [602bfb4f4c4561234706c9de42730c6b3825d724]
#
============================================================
--- packages/binutils/binutils-cross.inc
06c8460191f6e42d0bb389ff55a7ed29314fa2a6
+++ packages/binutils/binutils-cross.inc
602bfb4f4c4561234706c9de42730c6b3825d724
@@ -1,10 +1,9 @@ EXTRA_OECONF = "--with-sysroot=${STAGING
SECTION = "devel"
inherit cross
DEPENDS += "flex-native bison-native"
PROVIDES = "virtual/${TARGET_PREFIX}binutils"
PACKAGES = ""
EXTRA_OECONF = "--with-sysroot=${STAGING_DIR_TARGET} \
- --program-prefix=${TARGET_PREFIX} \
--enable-install-libbfd \
--disable-werror"
More information about the Openembedded-devel
mailing list