[meta-freescale] [meta-fsl-arm][PATCH] xf86-video-imxfb-vivante: fix build with xserver 1.16

Andreas Müller schnitzeltony at googlemail.com
Thu Nov 13 06:53:10 PST 2014


Xserver 1.16 is close: angstrom is already using it and oe-core patches are
pending. 

DisplayModePtr member 'name' was made constant in
xserver:

commit 27b44949a3d2e34ac10e801bd8a8fc2c28791e7e
Author: Keith Packard <keithp at keithp.com>
Date:   Fri Nov 15 16:24:15 2013 +0900

    hw/xfree86: Lots of constant string support

    Make lots of string pointers 'const char' so that we can use constant
    strings with them without eliciting warnings.

    Signed-off-by: Keith Packard <keithp at keithp.com>
    Reviewed-by: Adam Jackson <ajax at redhat.com>

Tested with xserver 1.16 but the casts should work with 1.15 too.

Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
---
 ...0001-casts-to-fix-build-with-xserver-1.16.patch | 57 ++++++++++++++++++++++
 .../xf86-video-imxfb-vivante_3.10.31-1.1.0.bb      |  5 +-
 2 files changed, 61 insertions(+), 1 deletion(-)
 create mode 100644 recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/0001-casts-to-fix-build-with-xserver-1.16.patch

diff --git a/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/0001-casts-to-fix-build-with-xserver-1.16.patch b/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/0001-casts-to-fix-build-with-xserver-1.16.patch
new file mode 100644
index 0000000..dd2dbe5
--- /dev/null
+++ b/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante/0001-casts-to-fix-build-with-xserver-1.16.patch
@@ -0,0 +1,57 @@
+From e95239b803deabcfe62fa7fc2027b6872b3cc556 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
+Date: Thu, 13 Nov 2014 15:14:09 +0100
+Subject: [PATCH] casts to fix build with xserver 1.16
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+vivante_fbdev/vivante_fbdev_driver.c:1641:22: error: assignment discards 'const' qualifier from pointer target type [-Werror]
+             modeName = pScrn->currentMode->name;
+                      ^
+vivante_fbdev/imx_display.c: In function 'imxDisplayDeleteModes':
+vivante_fbdev/imx_display.c:959:4: error: passing argument 1 of 'free' discards 'const' qualifier from pointer target type [-Werror]
+    free(mode->name);
+    ^
+In file included from ./vivante_util/vivante_common.h:30:0,
+                 from vivante_fbdev/imx_display.c:25:
+/home/a.mueller/tmp/oe-core-glibc/sysroots/varsomimx6q/usr/include/stdlib.h:483:13: note: expected 'void *' but argument is of type 'const char *'
+ extern void free (void *__ptr) __THROW;
+             ^
+cc1: all warnings being treated as errors
+
+Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
+---
+ EXA/src/vivante_fbdev/imx_display.c          | 2 +-
+ EXA/src/vivante_fbdev/vivante_fbdev_driver.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/EXA/src/vivante_fbdev/imx_display.c b/EXA/src/vivante_fbdev/imx_display.c
+index 94f561a..2dbe2c5 100644
+--- a/EXA/src/vivante_fbdev/imx_display.c
++++ b/EXA/src/vivante_fbdev/imx_display.c
+@@ -956,7 +956,7 @@ imxDisplayDeleteModes(DisplayModePtr modesList)
+ 		}
+ 
+ 		if (NULL != mode->name) {
+-			free(mode->name);
++			free((void *)mode->name);
+ 		}
+ 		free(mode);
+ 	}
+diff --git a/EXA/src/vivante_fbdev/vivante_fbdev_driver.c b/EXA/src/vivante_fbdev/vivante_fbdev_driver.c
+index 63996b1..6e759e0 100644
+--- a/EXA/src/vivante_fbdev/vivante_fbdev_driver.c
++++ b/EXA/src/vivante_fbdev/vivante_fbdev_driver.c
+@@ -1638,7 +1638,7 @@ RestoreSyncFlags(ScrnInfoPtr pScrn)
+         char *modeName = "current";
+         unsigned int fbSync = 0;
+         if(pScrn->currentMode)
+-            modeName = pScrn->currentMode->name;
++            modeName = (char *)pScrn->currentMode->name;
+ 
+         if(!imxLoadSyncFlags(pScrn, modeName, &fbSync)) {
+             xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
+-- 
+1.8.3.1
+
diff --git a/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_3.10.31-1.1.0.bb b/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_3.10.31-1.1.0.bb
index 0d6bb0b..c9665d3 100644
--- a/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_3.10.31-1.1.0.bb
+++ b/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_3.10.31-1.1.0.bb
@@ -12,7 +12,10 @@ DEPENDS += "virtual/xserver virtual/libx11 virtual/libgal-x11 gpu-viv-bin-mx6q p
 
 LIC_FILES_CHKSUM = "file://EXA/src/vivante_fbdev/vivante.h;endline=19;md5=95cf961a2ceacdf7cf43caef25766779"
 
-SRC_URI = "${FSL_MIRROR}/xserver-xorg-video-imx-viv-${PV}-beta.tar.gz"
+SRC_URI = " \
+    ${FSL_MIRROR}/xserver-xorg-video-imx-viv-${PV}-beta.tar.gz \
+    file://0001-casts-to-fix-build-with-xserver-1.16.patch \
+"
 SRC_URI[md5sum] = "5695e9a3ddc37da0e783862e4108fbae"
 SRC_URI[sha256sum] = "c08def7fb98c11cba08bc21522bfb2785576b77db4b36954b15926401ac31c0e"
 
-- 
1.8.3.1



More information about the meta-freescale mailing list