[OE-core] [PATCH 5/8] [linux-libc-headers] allow overriding compiler name in KConfig

Bruce Ashfield bruce.ashfield at gmail.com
Tue Aug 23 13:39:05 UTC 2016


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
> ---
>  meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
>                                                  |  7 ++++++-
>  meta/recipes-kernel/linux-libc-headers/linux-libc-
> headers/0001-Allow-overriding-host-compiler-name-from-environment.patch |
> 32 ++++++++++++++++++++++++++++++++
>  2 files changed, 38 insertions(+), 1 deletion(-)
>  create mode 100644 meta/recipes-kernel/linux-libc-headers/linux-libc-
> headers/0001-Allow-overriding-host-compiler-name-from-environment.patch
>
> diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
> b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
> index 92acf8a..18bd080 100644
> --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
> +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
> @@ -46,7 +46,9 @@ inherit kernel-arch
>
>  KORG_ARCHIVE_COMPRESSION ?= "xz"
>
> -SRC_URI = "${KERNELORG_MIRROR}/linux/kernel/v${HEADER_FETCH_VER}/
> linux-${PV}.tar.${KORG_ARCHIVE_COMPRESSION}"
> +SRC_URI = "${KERNELORG_MIRROR}/linux/kernel/v${HEADER_FETCH_VER}/
> linux-${PV}.tar.${KORG_ARCHIVE_COMPRESSION} \
> +           file://0001-Allow-overriding-host-compiler-name-from-environment.patch
> \
> +           "
>
>
We shouldn't be patching linux-libc-headers, and much less with a build
patch like this. libc-headers
are the c libraries interface to the kernel. If something is building
against the kernel itself, it needs
to go against the kernel source.

If this is broken, it needs to be fixed upstream.

But like the kernel patch, I can't tell exactly what problem you are trying
to fix. Can you be more
specific ?

Bruce


>  S = "${WORKDIR}/linux-${PV}"
>
> @@ -77,3 +79,6 @@ RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
>
>  INHIBIT_DEFAULT_DEPS = "1"
>  DEPENDS += "unifdef-native"
> +
> +export HOSTCC="${BUILD_CC}"
> +export HOSTCXX="${BUILD_CXX}"
> diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-
> headers/0001-Allow-overriding-host-compiler-name-from-environment.patch
> b/meta/recipes-kernel/linux-libc-headers/linux-libc-
> headers/0001-Allow-overriding-host-compiler-name-from-environment.patch
> new file mode 100644
> index 0000000..6fcfbc8
> --- /dev/null
> +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-
> headers/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 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"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20160823/8fc2f909/attachment-0002.html>


More information about the Openembedded-core mailing list