mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/spice
synced 2025-12-26 14:41:25 +00:00
syntax-check: Use templates for glib-mkenums
Syntax checker complained about autoconf variable expansion used inside Makefile.am. This patch uses template files instead of options. This also reduces quoting making template code more readable. Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Christophe Fergeau <cfergeau@redhat.com>
This commit is contained in:
parent
c18b696f1c
commit
eb02c0653d
@ -201,33 +201,11 @@ endif
|
||||
libspice_server_la_LIBADD = libserver.la
|
||||
libspice_server_la_SOURCES =
|
||||
|
||||
spice-server-enums.c: spice-server.h
|
||||
$(AM_V_GEN)glib-mkenums --fhead "#include \"config.h\"\n\n" \
|
||||
--fhead "#include <glib-object.h>\n" \
|
||||
--fhead "#include \"spice-server-enums.h\"\n\n" \
|
||||
--fprod "\n#include \"spice-server.h\"\n" \
|
||||
--vhead "static const G@Type@Value _@enum_name@_values[] = {" \
|
||||
--vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
|
||||
--vtail " { 0, NULL, NULL }\n};\n\n" \
|
||||
--vtail "GType\n@enum_name@_get_type (void)\n{\n" \
|
||||
--vtail " static GType type = 0;\n" \
|
||||
--vtail " static volatile gsize type_volatile = 0;\n\n" \
|
||||
--vtail " if (g_once_init_enter(&type_volatile)) {\n" \
|
||||
--vtail " type = g_@type@_register_static (\"@EnumName@\", _@enum_name@_values);\n" \
|
||||
--vtail " g_once_init_leave(&type_volatile, type);\n" \
|
||||
--vtail " }\n\n" \
|
||||
--vtail " return type;\n}\n\n" \
|
||||
$^ > $@
|
||||
spice-server-enums.c: spice-server.h spice-server-enums.tmpl.c
|
||||
$(AM_V_GEN)glib-mkenums --template spice-server-enums.tmpl.c $< > $@
|
||||
|
||||
spice-server-enums.h: spice-server.h
|
||||
$(AM_V_GEN)glib-mkenums --fhead "#ifndef SPICE_SERVER_ENUMS_H\n" \
|
||||
--fhead "#define SPICE_SERVER_ENUMS_H\n\n" \
|
||||
--fhead "G_BEGIN_DECLS\n\n" \
|
||||
--ftail "G_END_DECLS\n\n" \
|
||||
--ftail "#endif /* SPICE_SERVER_ENUMS_H */\n" \
|
||||
--eprod "#define SPICE_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n" \
|
||||
--eprod "GType @enum_name@_get_type (void);\n" \
|
||||
$^ > $@
|
||||
spice-server-enums.h: spice-server.h spice-server-enums.tmpl.h
|
||||
$(AM_V_GEN)glib-mkenums --template spice-server-enums.tmpl.h $< > $@
|
||||
|
||||
EXTRA_DIST = \
|
||||
spice-bitmap-utils.tmpl.c \
|
||||
@ -235,6 +213,8 @@ EXTRA_DIST = \
|
||||
glz-encode-match.tmpl.c \
|
||||
glz-encode.tmpl.c \
|
||||
spice-server.syms \
|
||||
spice-server-enums.tmpl.h \
|
||||
spice-server-enums.tmpl.c \
|
||||
$(NULL)
|
||||
|
||||
BUILT_SOURCES = $(spice_built_sources)
|
||||
|
||||
39
server/spice-server-enums.tmpl.c
Normal file
39
server/spice-server-enums.tmpl.c
Normal file
@ -0,0 +1,39 @@
|
||||
/*** BEGIN file-header ***/
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include <glib-object.h>
|
||||
|
||||
#include "spice-server-enums.h"
|
||||
#include "spice-server.h"
|
||||
|
||||
/*** END file-header ***/
|
||||
|
||||
/*** BEGIN value-header ***/
|
||||
static const G@Type@Value _@enum_name@_values[] = {
|
||||
/*** END value-header ***/
|
||||
|
||||
/*** BEGIN value-production ***/
|
||||
{ @VALUENAME@, "@VALUENAME@", "@valuenick@" },
|
||||
/*** END value-production ***/
|
||||
|
||||
/*** BEGIN value-tail ***/
|
||||
{ 0, NULL, NULL }
|
||||
};
|
||||
|
||||
GType
|
||||
@enum_name@_get_type (void)
|
||||
{
|
||||
static GType type = 0;
|
||||
static volatile gsize type_volatile = 0;
|
||||
|
||||
if (g_once_init_enter(&type_volatile)) {
|
||||
type = g_@type@_register_static ("@EnumName@", _@enum_name@_values);
|
||||
g_once_init_leave(&type_volatile, type);
|
||||
}
|
||||
|
||||
return type;
|
||||
}
|
||||
|
||||
/*** END value-tail ***/
|
||||
19
server/spice-server-enums.tmpl.h
Normal file
19
server/spice-server-enums.tmpl.h
Normal file
@ -0,0 +1,19 @@
|
||||
/*** BEGIN file-header ***/
|
||||
#ifndef SPICE_SERVER_ENUMS_H
|
||||
#define SPICE_SERVER_ENUMS_H
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
/*** END file-header ***/
|
||||
|
||||
/*** BEGIN enumeration-production ***/
|
||||
#define SPICE_TYPE_@ENUMSHORT@ @enum_name@_get_type()
|
||||
GType @enum_name@_get_type (void);
|
||||
/*** END enumeration-production ***/
|
||||
|
||||
/*** BEGIN file-tail ***/
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* SPICE_SERVER_ENUMS_H */
|
||||
/*** END file-tail ***/
|
||||
Loading…
Reference in New Issue
Block a user