[OE-core] [PATCH] xserver-xorg: use GCC 5 patch from upstream
Khem Raj
raj.khem at gmail.com
Tue Apr 28 14:33:37 UTC 2015
On Tue, Apr 28, 2015 at 3:58 AM, Ross Burton <ross.burton at intel.com> wrote:
> Upstream has already fixed the GCC 5 problem, so use the patch from upstream.
>
looks good. You need to remove the CPPFLAGS change from recipe now
with this patch
> Signed-off-by: Ross Burton <ross.burton at intel.com>
> ---
> ...sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch | 76 +++++++++++-----------
> 1 file changed, 37 insertions(+), 39 deletions(-)
>
> diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch
> index 215c044..9c9f595 100644
> --- a/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch
> +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg/0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch
> @@ -1,50 +1,48 @@
> -Upstream-Status: Pending
> +Upstream-Status: Backport
> +Signed-off-by: Ross Burton <ross.burton at intel.com>
>
> -From 612eb45a2e7a0b35cc3790870e6d0cc42eb50c74 Mon Sep 17 00:00:00 2001
> -From: Hans de Goede <hdegoede at redhat.com>
> -Date: Wed, 11 Feb 2015 16:26:40 +0100
> -Subject: [PATCH] sdksyms.sh: Make sdksyms.sh work with gcc5.
> +From 21b896939c5bb242f3aacc37baf12379e43254b6 Mon Sep 17 00:00:00 2001
> +From: Egbert Eich <eich at freedesktop.org>
> +Date: Tue, 3 Mar 2015 16:27:05 +0100
> +Subject: symbols: Fix sdksyms.sh to cope with gcc5
>
> -gcc5's cpp inserts patterns like this:
> +Gcc5 adds additional lines stating line numbers before and
> +after __attribute__() which need to be skipped.
>
> -extern
> - __attribute__((visibility("default")))
> - int WaitForSomething(int *
> - );
> +Signed-off-by: Egbert Eich <eich at freedesktop.org>
> +Tested-by: Daniel Stone <daniels at collabora.com>
> +Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
>
> -This patch make sdksyms.sh work with this. Note my awk skills are weak, so
> -there likely is a better way to deal with this.
> -
> -Signed-off-by: Hans de Goede <hdegoede at redhat.com>
> ----
> - hw/xfree86/sdksyms.sh | 17 +++++++++++++++++
> - 1 file changed, 17 insertions(+)
> -
> -Index: xorg-server-1.16.3/hw/xfree86/sdksyms.sh
> -===================================================================
> ---- xorg-server-1.16.3.orig/hw/xfree86/sdksyms.sh
> -+++ xorg-server-1.16.3/hw/xfree86/sdksyms.sh
> -@@ -353,6 +353,23 @@ BEGIN {
> +diff --git a/hw/xfree86/sdksyms.sh b/hw/xfree86/sdksyms.sh
> +index 2305073..05ac410 100755
> +--- a/hw/xfree86/sdksyms.sh
> ++++ b/hw/xfree86/sdksyms.sh
> +@@ -350,13 +350,25 @@ BEGIN {
> if (sdk) {
> n = 3;
>
> -+ # detect the following gcc5 cpp pattern and skip it:
> -+ # extern
> -+ # # 320 "../../include/os.h" 3 4
> -+ # __attribute__((visibility("default")))
> -+ # # 320 "../../include/os.h"
> -+ # Note in this case the "extern " or "extern void " always has
> -+ # a trailing space
> -+ if ($0 ~ "^extern.* $") {
> -+ getline;
> -+ getline;
> -+ getline;
> -+ getline;
> -+ n = 1;
> -+ while ($n == " ")
> -+ n++;
> -+ }
> ++ # skip line numbers GCC 5 adds before __attribute__
> ++ while ($n == "" || $0 ~ /^# [0-9]+ "/) {
> ++ getline;
> ++ n = 1;
> ++ }
> +
> # skip attribute, if any
> while ($n ~ /^(__attribute__|__global)/ ||
> # skip modifiers, if any
> + $n ~ /^\*?(unsigned|const|volatile|struct|_X_EXPORT)$/ ||
> + # skip pointer
> +- $n ~ /^[a-zA-Z0-9_]*\*$/)
> ++ $n ~ /^[a-zA-Z0-9_]*\*$/) {
> + n++;
> ++ # skip line numbers GCC 5 adds after __attribute__
> ++ while ($n == "" || $0 ~ /^# [0-9]+ "/) {
> ++ getline;
> ++ n = 1;
> ++ }
> ++ }
> +
> + # type specifier may not be set, as in
> + # extern _X_EXPORT unsigned name(...)
> +--
> +cgit v0.10.2
> --
> 2.1.4
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
More information about the Openembedded-core
mailing list