[OE-core] [PATCH v2 0/8] Fix BUILD_* family of variables

Burton, Ross ross.burton at intel.com
Mon Sep 12 15:22:54 UTC 2016


It's in my staging branch and works for me, just needs a run through the AB
and then a decision on whether it is a bug fix (good for M4) or enhancement
(too late for M3)...

Ross

On 12 September 2016 at 16:19, Jérémy Rosen <jeremy.rosen at smile.fr> wrote:

> Any news ?
>
>
>
> On 07/09/2016 11:08, Jérémy Rosen wrote:
>
>> The BUILD_* family of variables allow the user to specify the name of the
>> host
>> compiler to use at build time. This feature is particularly important for
>> long
>> term maintainance. Future versions of gcc might not be compatible with old
>> yocto distributions and we can't assume that "gcc" is the correct name
>> for the
>> compiler.
>>
>> This problem is already an issue with Jethro which can't be compiled on a
>> machine wher gcc-6 is the default compiler. pkgconfig-native will refuse
>> to
>> compile because it uses -Werror and gcc-6 has new warnings compared to
>> gcc-5
>>
>> This patch serie fixes multiple hard-coded references to gcc in various
>> recipes
>> and build infrastructure
>>
>> This patch was tested by building core-image-minimal for qemu-x86_64 with
>> a
>> directory with the following content added to the PATH
>>
>>   g++ -> /bin/false
>>   gcc -> /bin/false
>>   myg++ -> /usr/bin/g++
>>   mygcc -> /usr/bin/gcc
>>
>> And the following variables added to local.conf
>>
>> export BUILD_CC = "mygcc"
>> export BUILD_CXX = "myg++"
>> export BUILD_CPP = "mygcc -E"
>> export BUILD_CCLD = "mygcc"
>>
>> ---
>> V2
>> * rewording in some commits messages
>> * no need for a patch to KConfig, use OE_RUNMAKE_FLAGS instead
>> * change all patch titles to use : in the short commit message
>> * rpm : manually remove files instead of calling make distclean
>> * libpcre : explicitely set CCLD_FOR_BUILD in the recipe since it's the
>> only
>>    recipe using it.
>> * glibc patch has been submited upstream
>>
>> It would be interesting to modify yocto's builders to use the BUILD_*
>> variable in order to have some early warning wrt gcc polution in recipes,
>> but
>> seeing the various recipes I had to patch, I would expect such a change to
>> trigger a high number of build failures.
>>
>> Jérémy Rosen (8):
>>    cross: export CC family from BUILD_* for cross compilers
>>    linux-yocto: allow overriding compiler name in KConfig
>>    linux-libc-headers: allow overriding compiler name in KConfig
>>    busybox: allow overriding compiler name in KConfig
>>    sanity: fix hardcoded references to gcc
>>    glibc: remove hard-coded reference to gcc -E
>>    rpm: manually cleanup sysck
>>    libpcre: explicitely specify CCLD_FOR_BUILD for this recipe
>>
>>   meta/classes/cross.bbclass
>>           | 12 ++++++++++++
>>   meta/classes/kernel.bbclass
>>            |  1 +
>>   meta/classes/sanity.bbclass
>>            | 14 +++++++-------
>>   meta/recipes-core/busybox/busybox.inc
>>            |  2 +-
>>   meta/recipes-core/glibc/glibc/0001-locale-fix-hard-coded-reference-to-gcc-E.patch
>> | 39 +++++++++++++++++++++++++++++++++++++++
>>   meta/recipes-core/glibc/glibc_2.24.bb
>>            |  3 ++-
>>   meta/recipes-devtools/rpm/rpm_5.4.16.bb
>>            |  2 +-
>>   meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
>>            |  2 ++
>>   meta/recipes-support/libpcre/libpcre_8.39.bb
>>             |  2 ++
>>   9 files changed, 67 insertions(+), 10 deletions(-)
>>   create mode 100644 meta/recipes-core/glibc/glibc/
>> 0001-locale-fix-hard-coded-reference-to-gcc-E.patch
>>
>>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20160912/3f4ee037/attachment-0002.html>


More information about the Openembedded-core mailing list