Commit 4939923d authored by Daniel Stone's avatar Daniel Stone

scanner: Reverse expat/libxml include order

libxml2 unconditonally defines XMLCALL to nothing. Expat does not
redefine XMLCALL if it is already defined, but if it is not, and we are
building with gcc on i386 (not x86-64), it will define it as 'cdecl'.

Including Expat before libxml thus results in a warning about XMLCALL
being redefined. Luckily we can get around this by just reversing the
include order: cdecl is a no-op on Unix-like systems, so by having
libxml first define XMLCALL to nothing and including Expat afterwards,
we avoid the warning and lose nothing.
Signed-off-by: Daniel Stone's avatarDaniel Stone <>
Reviewed-by: Pekka Paalanen's avatarPekka Paalanen <>
Reviewed-by: Peter Hutterer's avatarPeter Hutterer <>
parent 5fab243a
......@@ -35,7 +35,6 @@
#include <string.h>
#include <errno.h>
#include <ctype.h>
#include <expat.h>
#include <getopt.h>
#include <limits.h>
#include <unistd.h>
......@@ -48,6 +47,10 @@ extern char DTD_DATA_begin;
extern int DTD_DATA_len;
/* Expat must be included after libxml as both want to declare XMLCALL; see
* the Git commit that 'git blame' for this comment points to for more. */
#include <expat.h>
#include "wayland-util.h"
#define PROGRAM_NAME "wayland-scanner"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment