[OE-core] [PATCH 4/8] [linux-yocto] allow overriding compiler name in KConfig

Bruce Ashfield bruce.ashfield at gmail.com
Tue Aug 23 13:41:58 UTC 2016


On Tue, Aug 23, 2016 at 9:36 AM, Bruce Ashfield <bruce.ashfield at gmail.com>
wrote:

> On Tue, Aug 23, 2016 at 3:25 AM, Jérémy Rosen <jeremy.rosen at smile.fr>
> wrote:
>
>> The KConfig infrastructure hardwires the compiler name to gcc, which
>> breaks
>> the BUILD_CC feature. This is needed even when cross compiling because
>> make *config rely on the kconfig infrastructure
>>
>
> Can you elaborate ? I'm not aware of any issues with either the host
> builds or
> target builds with the kernel.
>

Aha. I found the 0/N for the series.

And my answer is still the same. These belong upstream, and since the
kernel is fairly
picky about the compiler and compiler versions, I don't see a pressing need
to carry
something like this until it makes it into the mainline kernel.

My answer to 'can't assume the name of gcc', is to make sure that your
environment
and path is fully understood, and make your compiler available as 'gcc',
versus trying
to patch multiple recipes.

Cheers,

Bruce


>
> If there's an issue, we need to fix it upstream .. not here.
>
>
>> ---
>>  meta/recipes-kernel/linux/linux-yocto.inc
>>                                |  4 ++++
>>  meta/recipes-kernel/linux/linux-yocto/0001-Allow-overriding
>> -host-compiler-name-from-environment.patch | 32
>> ++++++++++++++++++++++++++++++++
>>  2 files changed, 36 insertions(+), 0 deletions(-)
>>  create mode 100644 meta/recipes-kernel/linux/linu
>> x-yocto/0001-Allow-overriding-host-compiler-name-from-environment.patch
>>
>> diff --git a/meta/recipes-kernel/linux/linux-yocto.inc
>> b/meta/recipes-kernel/linux/linux-yocto.inc
>> index 98a48ec..63c1531 100644
>> --- a/meta/recipes-kernel/linux/linux-yocto.inc
>> +++ b/meta/recipes-kernel/linux/linux-yocto.inc
>> @@ -58,3 +58,7 @@ do_install_append(){
>>  addtask kernel_link_images after do_compile before do_install
>>  addtask validate_branches before do_patch after do_kernel_checkout
>>  addtask kernel_configcheck after do_configure before do_compile
>> +
>> +SRC_URI_append = " file://0001-Allow-overriding-h
>> ost-compiler-name-from-environment.patch"
>>
>
> We don't carry patches to linux-yocto like this, they are sent to the
> linux-yocto mailing list, and
> integrated into the tree itself.
>
> Bruce
>
>
>> +export HOSTCC = "${BUILD_CC}"
>> +export HOSTCXX = "${BUILD_CXX}"
>> diff --git a/meta/recipes-kernel/linux/linux-yocto/0001-Allow-overridin
>> g-host-compiler-name-from-environment.patch
>> b/meta/recipes-kernel/linux/linux-
>
> yocto/0001-Allow-overriding-host-compiler-name-from-environment.patch
>> new file mode 100644
>> index 0000000..6fcfbc8
>> --- /dev/null
>> +++ b/meta/recipes-kernel/linux/linux-yocto/0001-Allow-overridin
>> g-host-compiler-name-from-environment.patch
>> @@ -0,0 +1,32 @@
>> +From 0ce4c4f29b5d456a7707e870c7affe524f7c8807 Mon Sep 17 00:00:00 2001
>> +From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Rosen?= <jeremy.rosen at smile.fr>
>> +Date: Tue, 16 Aug 2016 22:39:29 +0200
>> +Subject: [PATCH] Allow overriding host-compiler name from environment
>> + variables
>> +
>> +---
>> + Makefile | 8 ++++----
>> + 1 file changed, 4 insertions(+), 4 deletions(-)
>> +
>> +diff --git a/Makefile b/Makefile
>> +index 70dea02..1f0d2d2 100644
>> +--- a/Makefile
>> ++++ b/Makefile
>> +@@ -295,10 +295,10 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then
>> echo $$BASH; \
>> +         else if [ -x /bin/bash ]; then echo /bin/bash; \
>> +         else echo sh; fi ; fi)
>> +
>> +-HOSTCC       = gcc
>> +-HOSTCXX      = g++
>> +-HOSTCFLAGS   = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2
>> -fomit-frame-pointer -std=gnu89
>> +-HOSTCXXFLAGS = -O2
>> ++HOSTCC       ?= gcc
>> ++HOSTCXX      ?= g++
>> ++HOSTCFLAGS   ?= -Wall -Wmissing-prototypes -Wstrict-prototypes -O2
>> -fomit-frame-pointer -std=gnu89
>> ++HOSTCXXFLAGS ?= -O2
>> +
>> + ifeq ($(shell $(HOSTCC) -v 2>&1 | grep -c "clang version"), 1)
>> + HOSTCFLAGS  += -Wno-unused-value -Wno-unused-parameter \
>> +--
>> +2.8.1
>> +
>> --
>> git-series 0.8.9
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>>
>
>
>
> --
> "Thou shalt not follow the NULL pointer, for chaos and madness await thee
> at its end"
>



-- 
"Thou shalt not follow the NULL pointer, for chaos and madness await thee
at its end"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20160823/6f8ff4c8/attachment-0002.html>


More information about the Openembedded-core mailing list