[Spice-devel] [spice-common] log: Define G_LOG_DOMAIN as early as possible
Frediano Ziglio
fziglio at redhat.com
Fri Jul 7 10:07:33 UTC 2017
>
> "log: Forbid the usage of obsolete SPICE_LOG_DOMAIN" introduced a small
> regression, if G_LOG_DOMAIN is not set when glib.h is included, the
> header will set it to a default value. Redefining it later in log.c is
> going to cause a compile-time warning.
> This commit adds the definition to SPICE_COMMON_CFLAGS so that it's
> defined before any inclusion of glib.h is possible. This is similar to
> what is done in spice/configure.ac.
>
> This avoids this warning:
> CC log.lo
> log.c:44:0: warning: "G_LOG_DOMAIN" redefined
> #define G_LOG_DOMAIN "Spice"
>
> In file included from /usr/include/glib-2.0/glib.h:62:0,
> from log.c:22:
> /usr/include/glib-2.0/glib/gmessages.h:280:0: note: this is the location of
> the previous definition
> #define G_LOG_DOMAIN ((gchar*) 0)
>
> Signed-off-by: Christophe Fergeau <cfergeau at redhat.com>
> ---
> common/log.c | 2 --
> configure.ac | 1 +
> 2 files changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/common/log.c b/common/log.c
> index 9b4757b..69ac63e 100644
> --- a/common/log.c
> +++ b/common/log.c
> @@ -41,8 +41,6 @@ static int abort_mask = 0;
> #endif
> #endif
>
> -#define G_LOG_DOMAIN "Spice"
> -
> typedef enum {
> SPICE_LOG_LEVEL_ERROR,
> SPICE_LOG_LEVEL_CRITICAL,
> diff --git a/configure.ac b/configure.ac
> index efd7317..f9b3f96 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -50,6 +50,7 @@ SPICE_CHECK_OPENSSL
>
> SPICE_COMMON_CFLAGS='$(PIXMAN_CFLAGS) $(SMARTCARD_CFLAGS) $(CELT051_CFLAGS)
> $(GLIB2_CFLAGS) $(OPUS_CFLAGS) $(OPENSSL_CFLAGS)'
> SPICE_COMMON_LIBS='$(PIXMAN_LIBS) $(CELT051_LIBS) $(GLIB2_LIBS) $(OPUS_LIBS)
> $(OPENSSL_LIBS)'
> +SPICE_COMMON_CFLAGS+=' -DG_LOG_DOMAIN=\"Spice\"'
This is not standard shell compatible. The configure uses /bin/sh which
in some Linux systems is not even bash.
Is a weird mix of shell/Makefile which may be hard to quote correctly.
Something that simulate bash is
SPICE_COMMON_CFLAGS="$SPICE_COMMON_CFLAGS -DG_LOG_DOMAIN=\\\"Spice\\\""
> AC_SUBST(SPICE_COMMON_CFLAGS)
> AC_SUBST(SPICE_COMMON_LIBS)
>
Frediano
More information about the Spice-devel
mailing list