Re: [PATCH 4/8] [linux-yocto] allow overriding compiler name in KConfig
From: Bruce Ashfield <hidden>
Date: 2016-08-23 13:41:57
On Tue, Aug 23, 2016 at 9:36 AM, Bruce Ashfield [off-list ref] wrote:
On Tue, Aug 23, 2016 at 3:25 AM, Jérémy Rosen [off-list ref] wrote:quoted
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 infrastructureCan 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.quoted
--- 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.patchdiff --git a/meta/recipes-kernel/linux/linux-yocto.incb/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. Brucequoted
+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.patchquoted
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> +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" ]; thenecho $$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 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"