public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
From: "Jérémy Rosen" <jeremy.rosen@smile.fr>
To: Bruce Ashfield <bruce.ashfield@gmail.com>
Cc: Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 4/8] [linux-yocto] allow overriding compiler name in KConfig
Date: Tue, 23 Aug 2016 15:48:37 +0200	[thread overview]
Message-ID: <bddc80dd-d95d-5cfc-0aea-6f8154c09563@smile.fr> (raw)
In-Reply-To: <CADkTA4OTbF_nTfz7Afi33mDX2yBe7SVC+DXA7NAH9tme=RZ7aA@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 6360 bytes --]



On 23/08/2016 15:41, Bruce Ashfield wrote:
>
>
> On Tue, Aug 23, 2016 at 9:36 AM, Bruce Ashfield 
> <bruce.ashfield@gmail.com <mailto:bruce.ashfield@gmail.com>> wrote:
>
>     On Tue, Aug 23, 2016 at 3:25 AM, Jérémy Rosen
>     <jeremy.rosen@smile.fr <mailto:jeremy.rosen@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.

Ok, my 0/N maybe was not as clear as I hoped. I don't want to compile 
without a gcc binary. I want to make sure that when I set BUILD_* to a 
specific version of gcc (gcc-5 in my case) only that version of the 
compiler can be used.

As pointed, jethro can only be compiled on a machine where the default 
compiler is gcc-5. Having gcc-5 installed is not enough, it needs to be 
default. The BUILD_* feature was meant to prevent that, i'm just fixing it

As I have stated elsewhere, I am upstreaming the patches in parlallel 
(only the glibc patch is left at this point, since I found a way to drop 
the kconfig ones) hopefully I will be able to add the "submitted 
upstream" tag on V2.

In the meantime, I mainly wanted comments on the approch and I was 
wondering how to makes sure some sort of autmated QA test could detect 
that sort of problems.

Hope this helps
Jeremy

>
> 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/linux-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-host-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-overriding-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-overriding-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@smile.fr <mailto:jeremy.rosen@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@lists.openembedded.org
>         <mailto:Openembedded-core@lists.openembedded.org>
>         http://lists.openembedded.org/mailman/listinfo/openembedded-core
>         <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"


[-- Attachment #2: Type: text/html, Size: 14023 bytes --]

  reply	other threads:[~2016-08-23 13:48 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-23  7:25 [PATCH 0/8] Fix BUILD_* family of variables Jérémy Rosen
2016-08-23  7:25 ` [PATCH 1/8] [autotools] export CCLD_FOR_BUILD Jérémy Rosen
2016-08-24  0:50   ` Khem Raj
2016-08-24 11:05     ` Jérémy Rosen
2016-08-24 11:28       ` Jérémy Rosen
2016-08-24 19:56         ` Burton, Ross
2016-08-25 12:40           ` Jérémy Rosen
2016-08-25 13:27             ` Burton, Ross
2016-08-23  7:25 ` [PATCH 2/8] [cross] export CC family from BUILD_* for cross compilers Jérémy Rosen
2016-08-23 13:34   ` Peter Kjellerstedt
2016-08-23 14:46   ` Burton, Ross
2016-08-23 14:49     ` Jérémy Rosen
2016-08-23  7:25 ` [PATCH 3/8] [rpm] force a configure before make distclean Jérémy Rosen
2016-08-23 16:54   ` Burton, Ross
2016-08-23 17:16     ` Mark Hatle
2016-08-24  7:44       ` Jérémy Rosen
2016-08-24 14:13         ` Mark Hatle
2016-08-24 14:17           ` Jérémy Rosen
2016-08-24 14:42             ` Mark Hatle
2016-08-23  7:25 ` [PATCH 4/8] [linux-yocto] allow overriding compiler name in KConfig Jérémy Rosen
2016-08-23 13:36   ` Bruce Ashfield
2016-08-23 13:41     ` Bruce Ashfield
2016-08-23 13:48       ` Jérémy Rosen [this message]
2016-08-23 13:43     ` Jérémy Rosen
2016-08-23  7:25 ` [PATCH 5/8] [linux-libc-headers] " Jérémy Rosen
2016-08-23 13:39   ` Bruce Ashfield
2016-08-24  1:06     ` Khem Raj
2016-08-24  7:45       ` Jérémy Rosen
2016-08-23  7:25 ` [PATCH 6/8] [busybox] " Jérémy Rosen
2016-08-23  7:25 ` [PATCH 7/8] [sanity] fix hardcoded references to gcc Jérémy Rosen
2016-08-23 14:53   ` Burton, Ross
2016-08-23 15:11     ` Burton, Ross
2016-08-23 15:40       ` Jérémy Rosen
2016-08-24  7:47         ` Jérémy Rosen
2016-08-23  7:25 ` [PATCH 8/8] [glibc] remove hard-coded reference to gcc -E Jérémy Rosen
2016-08-23 14:03   ` Burton, Ross
2016-08-23 14:04     ` Jérémy Rosen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bddc80dd-d95d-5cfc-0aea-6f8154c09563@smile.fr \
    --to=jeremy.rosen@smile.fr \
    --cc=bruce.ashfield@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox