package/x11r7/xserver_xorg-server: fix gcc5+ build with version 1.14.7
Fixes sdksyms.c:311:15: error: expected expression before »,« token (void *) &, /* ../../include/os.h:96 */ by backporting an upstream patch, sdksyms.c is generated by hw/xfree86/sdksyms.sh which is broken when used with gcc5+. Problem was found while testing http://patchwork.ozlabs.org/patch/762102/ using this defconfig BR2_TOOLCHAIN_BUILDROOT_WCHAR=y BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_PACKAGE_XORG7=y BR2_PACKAGE_XSERVER_XORG_SERVER=y BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14=y BR2_PACKAGE_XDRIVER_XF86_INPUT_TSLIB=y Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
87f43c3403
commit
99058b2586
|
@ -0,0 +1,50 @@
|
|||
From 21b896939c5bb242f3aacc37baf12379e43254b6 Mon Sep 17 00:00:00 2001
|
||||
From: Egbert Eich <eich@freedesktop.org>
|
||||
Date: Tue, 3 Mar 2015 16:27:05 +0100
|
||||
Subject: symbols: Fix sdksyms.sh to cope with gcc5
|
||||
|
||||
Gcc5 adds additional lines stating line numbers before and
|
||||
after __attribute__() which need to be skipped.
|
||||
|
||||
Downloaded from upstream commit
|
||||
https://cgit.freedesktop.org/xorg/xserver/commit/hw/xfree86/sdksyms.sh?id=21b896939c5bb242f3aacc37baf12379e43254b6
|
||||
|
||||
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||
Signed-off-by: Egbert Eich <eich@freedesktop.org>
|
||||
Tested-by: Daniel Stone <daniels@collabora.com>
|
||||
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||
|
||||
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;
|
||||
|
||||
+ # 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
|
||||
|
Loading…
Reference in a new issue