diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2011-12-19 17:24:33 +0100 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-03-15 14:14:34 +0100 |
commit | d22def9309d4051ebd82b76f6704f65ad39d98b5 (patch) | |
tree | a3fdf326655bfd3e48c4a438cb5a1394fbdf6165 /build-aux/mm-enums-template.c | |
parent | 4b8b99ee96f16e3f2d623cb896a4d1bf7f12820f (diff) |
build: let enum and error templates be completely generic
Don't include anything in the templates specific to the file to be built, like
#ifdef guards in headers or #include in sources.
Diffstat (limited to 'build-aux/mm-enums-template.c')
-rw-r--r-- | build-aux/mm-enums-template.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/build-aux/mm-enums-template.c b/build-aux/mm-enums-template.c new file mode 100644 index 00000000..1e789c39 --- /dev/null +++ b/build-aux/mm-enums-template.c @@ -0,0 +1,38 @@ +/*** BEGIN file-header ***/ + +/*** END file-header ***/ + +/*** BEGIN file-production ***/ +/* enumerations from "@filename@" */ +/*** END file-production ***/ + +/*** BEGIN value-header ***/ +GType +@enum_name@_get_type (void) +{ + static volatile gsize g_define_type_id__volatile = 0; + + if (g_once_init_enter (&g_define_type_id__volatile)) + { + static const G@Type@Value values[] = { +/*** END value-header ***/ + +/*** BEGIN value-production ***/ + { @VALUENAME@, "@VALUENAME@", "@valuenick@" }, +/*** END value-production ***/ + +/*** BEGIN value-tail ***/ + { 0, NULL, NULL } + }; + GType g_define_type_id = + g_@type@_register_static (g_intern_static_string ("@EnumName@"), values); + g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); + } + + return g_define_type_id__volatile; +} + +/*** END value-tail ***/ + +/*** BEGIN file-tail ***/ +/*** END file-tail ***/ |