[Spice-devel] uxa-damage: error: implicit declaration of function

Christophe Fergeau cfergeau at redhat.com
Tue Aug 4 00:20:20 PDT 2015


Hey,

On Mon, Aug 03, 2015 at 11:10:56PM +0200, poma wrote:
> On 03.08.2015 10:30, Christophe Fergeau wrote:
> ...
> > 
> > The function is still in libxfont, it was exported both by xserver and
> > xfont in older x.org. I came up with the attached patch last Friday
> > which fixes the build, but there are still some potentially worrying
> > warnings I haven't had time to look at yet.
> > 
> > Christophe
> > 
> 
> Your xfont.patch produces:
> ...
> [    14.150] (EE) 
> [    14.150] (EE) Backtrace:
> [    14.150] (EE) 0: /usr/libexec/Xorg (OsLookupColor+0x139) [0x598cf9]
> [    14.151] (EE) 1: /lib64/libc.so.6 (__restore_rt+0x0) [0x7fa4f7794c3f]
> [    14.151] (EE) 2: /usr/lib64/xorg/modules/drivers/qxl_drv.so (_init+0x13657) [0x7fa4f24faa17]
> [    14.151] (EE) 3: /usr/lib64/xorg/modules/drivers/qxl_drv.so (_init+0x105b1) [0x7fa4f24f4971]
> [    14.151] (EE) 4: /usr/lib64/xorg/modules/drivers/qxl_drv.so (_init+0xd55c) [0x7fa4f24ee7fc]
> [    14.151] (EE) 5: /usr/libexec/Xorg (remove_fs_handlers+0x326) [0x43a566]
> [    14.168] (EE) 6: /lib64/libc.so.6 (__libc_start_main+0xf0) [0x7fa4f777f6c0]
> [    14.168] (EE) 7: /usr/libexec/Xorg (_start+0x29) [0x424b09]
> [    14.168] (EE) 8: ? (?+0x29) [0x29]
> [    14.168] (EE) 
> [    14.168] (EE) Segmentation fault at address 0x0
> [    14.169] (EE) 
> Fatal server error:
> [    14.169] (EE) Caught signal 11 (Segmentation fault). Server aborting
> [    14.169] (EE) 
> [    14.169] (EE) 
> Please consult the Fedora Project support 
> 	 at http://wiki.x.org
>  for help. 
> [    14.169] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
> [    14.169] (EE) 
> [    14.217] (EE) Server terminated with error (1). Closing log file.
> 

Ah, thanks for testing :-/ I'm attaching the latest iteration of the
patch to that mail, but I doubt this will make a difference

> 
> However works built with:
> CFLAGS="${CFLAGS} -Wno-error=implicit-function-declaration"

What do you mean ? If you don't patch, and only append that flags to the
build flags, then the resulting build does not crash?

Christophe
-------------- next part --------------
diff --git a/configure.ac b/configure.ac
index 6555a8d..7e95b01 100644
--- a/configure.ac
+++ b/configure.ac
@@ -61,7 +61,7 @@ XORG_DRIVER_CHECK_EXT(XV, videoproto)
 XORG_DRIVER_CHECK_EXT(XFreeXDGA, xf86dgaproto)
 
 # Obtain compiler/linker options for the driver dependencies
-PKG_CHECK_MODULES(XORG, [xorg-server >= 1.0.99.901] xproto fontsproto $REQUIRED_MODULES)
+PKG_CHECK_MODULES(XORG, [xorg-server >= 1.0.99.901] xproto fontsproto xfont $REQUIRED_MODULES)
 
 
 save_CFLAGS="$CFLAGS"
diff --git a/src/uxa/uxa-damage.c b/src/uxa/uxa-damage.c
index 3e4c075..78e9248 100644
--- a/src/uxa/uxa-damage.c
+++ b/src/uxa/uxa-damage.c
@@ -23,14 +23,17 @@
 #ifdef HAVE_DIX_CONFIG_H
 #include <dix-config.h>
 #endif
-
-#include <stdlib.h>
 #include "uxa-priv.h"
 
-#include    <X11/X.h>
+#include <stdlib.h>
+
+#include    <X11/fonts/font.h>
+#include    <X11/fonts/fontstruct.h>
+#include    "dixfontstr.h"
+#include    <X11/fonts/fontutil.h>
+
 #include    "scrnintstr.h"
 #include    "windowstr.h"
-#include    "dixfontstr.h"
 #include    "gcstruct.h"
 #include    "picturestr.h"
 #include    "uxa-damage.h"
diff --git a/src/uxa/uxa-glyphs.c b/src/uxa/uxa-glyphs.c
index fe3d6e8..394835f 100644
--- a/src/uxa/uxa-glyphs.c
+++ b/src/uxa/uxa-glyphs.c
@@ -61,11 +61,15 @@
 #ifdef HAVE_DIX_CONFIG_H
 #include <dix-config.h>
 #endif
-
-#include <stdlib.h>
-
 #include "uxa-priv.h"
 
+#include <stdlib.h>
+
+#include <X11/fonts/font.h>
+#include <X11/fonts/fontstruct.h>
+#include <X11/fonts/fontutil.h>
+
+
 #include "mipict.h"
 
 /* Width of the pixmaps we use for the caches; this should be less than
diff --git a/src/uxa/uxa-render.c b/src/uxa/uxa-render.c
index 937ac2e..ce9d2d5 100644
--- a/src/uxa/uxa-render.c
+++ b/src/uxa/uxa-render.c
@@ -25,10 +25,10 @@
 #ifdef HAVE_DIX_CONFIG_H
 #include <dix-config.h>
 #endif
-
-#include <stdlib.h>
-
 #include "uxa-priv.h"
+
+#include <stdlib.h>
+
 #include <xorgVersion.h>
 
 #ifdef RENDER
diff --git a/src/uxa/uxa.c b/src/uxa/uxa.c
index 36d610e..1b85a2f 100644
--- a/src/uxa/uxa.c
+++ b/src/uxa/uxa.c
@@ -31,10 +31,10 @@
 #ifdef HAVE_DIX_CONFIG_H
 #include <dix-config.h>
 #endif
-
-#include <stdlib.h>
-
 #include "uxa-priv.h"
+
+#include <stdlib.h>
+
 #include "uxa.h"
 
 #if HAS_DEVPRIVATEKEYREC
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20150804/ad2e86bb/attachment.sig>


More information about the Spice-devel mailing list