gcc: fix collect2 host contamination problem properly
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 5 Jul 2012 10:30:14 +0000 (10:30 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 5 Jul 2012 11:36:45 +0000 (12:36 +0100)
We added the autoconf cache line a while back to ensure that configure doesn't
poke into some hardcoded host paths looking for things it shouldn't. Applying
it as part of do_configure wasn't getting it to the do_compile tasks
where much of the configure scripts are run by gcc. This changes it to a simple
export to ensure it reaches the places it needs to and truly gets rid of
the cross compile badness messages from the logs.

(From OE-Core rev: af58d5c3a5c5e632aa20b1d007d47dbbfb4ed6e6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/gcc/gcc-configure-common.inc

index 4d11ef4..3dd9de7 100644 (file)
@@ -46,6 +46,11 @@ EXTRA_OECONF = "${@['--enable-clocale=generic', ''][d.getVar('USE_NLS', True) !=
                 ${@get_gcc_mips_plt_setting(bb, d)} \
                 ${@get_gcc_multiarch_setting(bb, d)}"
 
+export gcc_cv_collect2_libs = 'none required'
+# We need to set gcc_cv_collect2_libs else there is cross-compilation badness
+# in the config.log files (which might not get generated until do_compile
+# hence being missed by the insane do_configure check).
+
 # Build uclibc compilers without cxa_atexit support
 EXTRA_OECONF_append_linux               = " --enable-__cxa_atexit"
 EXTRA_OECONF_append_libc-uclibc        = " --enable-__cxa_atexit"
@@ -110,10 +115,6 @@ do_configure () {
        export CXXFLAGS_FOR_BUILD="${BUILD_CXXFLAGS}"
        export LDFLAGS_FOR_BUILD="${BUILD_LDFLAGS}"
        export ARCH_FLAGS_FOR_TARGET="${ARCH_FLAGS_FOR_TARGET}"
-       # We need to set this else there is cross-compilation badness
-       # in the config.log files (which might not get generated until do_compile
-       # hence being missed by the insane do_configure check).
-       export gcc_cv_collect2_libs="none required"
        export CFLAGS_FOR_TARGET="${TARGET_CFLAGS}"
        export CPPFLAGS_FOR_TARGET="${TARGET_CPPFLAGS}"
        export CXXFLAGS_FOR_TARGET="${TARGET_CXXFLAGS}"