diff options
Diffstat (limited to 'src/gtkext/bindings')
| -rw-r--r-- | src/gtkext/bindings/Makefile.am | 42 | ||||
| -rw-r--r-- | src/gtkext/bindings/generated-enums.c.template | 41 | ||||
| -rw-r--r-- | src/gtkext/bindings/generated-enums.h.template | 23 | 
3 files changed, 106 insertions, 0 deletions
| diff --git a/src/gtkext/bindings/Makefile.am b/src/gtkext/bindings/Makefile.am new file mode 100644 index 0000000..71e770d --- /dev/null +++ b/src/gtkext/bindings/Makefile.am @@ -0,0 +1,42 @@ + +EXTRA_DIST = \ +	generated-enums.c.template \ +	generated-enums.h.template + + +noinst_LTLIBRARIES  = libgtkextbindings.la + + +nodist_libgtkextbindings_la_SOURCES = \ +	grid-enums.h grid-enums.c + +libgtkextbindings_la_CFLAGS = $(LIBGTK4_CFLAGS) + + +BUILT_SOURCES = $(nodist_libgtkextbindings_la_SOURCES) +CLEANFILES = $(nodist_libgtkextbindings_la_SOURCES) + + +devdir = $(includedir)/chrysalide/$(subdir:src/%=core/%) + +dev_HEADERS = $(nodist_libgtkextbindings_la_SOURCES:%c=) + + +grid-enums.c: ../../gtkext/grid.h generated-enums.c.template +	$(AM_V_GEN)$(GLIB_MKENUMS) \ +		--fhead "#include \"$(subst .c,.h,$@)\"\n" \ +		--template=$(srcdir)/generated-enums.c.template \ +		--output=$(srcdir)/$@ \ +		$< + +grid-enums.h: ../../gtkext/grid.h generated-enums.h.template +	$(AM_V_GEN)$(GLIB_MKENUMS) \ +		--fhead "#ifndef _GTKEXT_BINDINGS_GRID_ENUM_H\n" \ +		--fhead "#define _GTKEXT_BINDINGS_GRID_ENUM_H\n" \ +		--fhead "\n" \ +		--fhead "#include \"$<\"\n" \ +		--fhead "\n" \ +		--ftail "#endif  /* _GTKEXT_BINDINGS_GRID_ENUM_H */\n" \ +		--template=$(srcdir)/generated-enums.h.template \ +		--output=$(srcdir)/$@ \ +		$< diff --git a/src/gtkext/bindings/generated-enums.c.template b/src/gtkext/bindings/generated-enums.c.template new file mode 100644 index 0000000..8f54149 --- /dev/null +++ b/src/gtkext/bindings/generated-enums.c.template @@ -0,0 +1,41 @@ +// SPDX-License-Identifier: LGPL-2.1-or-later +// SPDX-FileCopyrightText: 2023 Bartosz Golaszewski <bartosz.golaszewski@linaro.org> + +/*** BEGIN file-header ***/ + +/*** END file-header ***/ + +/*** BEGIN file-production ***/ + +/* Enumerations de "@filename@" */ + +/*** END file-production ***/ + +/*** BEGIN value-header ***/ + +GType @enum_name@_get_type(void) +{ +	static gsize static_g_@type@_type_id; + +	if (g_once_init_enter(&static_g_@type@_type_id)) { +		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_@type@_type_id = g_@type@_register_static( +				g_intern_static_string("@EnumName@"), values); + +		g_once_init_leave (&static_g_@type@_type_id, g_@type@_type_id); +	} + +	return static_g_@type@_type_id; +} + +/*** END value-tail ***/ diff --git a/src/gtkext/bindings/generated-enums.h.template b/src/gtkext/bindings/generated-enums.h.template new file mode 100644 index 0000000..58c772d --- /dev/null +++ b/src/gtkext/bindings/generated-enums.h.template @@ -0,0 +1,23 @@ +// SPDX-License-Identifier: LGPL-2.1-or-later +// SPDX-FileCopyrightText: 2023-2024 Bartosz Golaszewski <bartosz.golaszewski@linaro.org> + +/*** BEGIN file-header ***/ + +G_BEGIN_DECLS + +/*** END file-header ***/ + +/*** BEGIN file-production ***/ + +/*** END file-production ***/ + +/*** BEGIN value-header ***/ +GType @enum_name@_get_type(void) G_GNUC_CONST; +#define @ENUMPREFIX@_@ENUMSHORT@_TYPE (@enum_name@_get_type()) +/*** END value-header ***/ + +/*** BEGIN file-tail ***/ + +G_END_DECLS + +/*** END file-tail ***/ | 
