]> Pileus Git - ~andy/gtk/blobdiff - gtk/Makefile.am
Use templates for glib-mkenums calls instead of complicated commandlines
[~andy/gtk] / gtk / Makefile.am
index 79e2327320d5e115599b0442d0eba5b7967bd018..33b7695bbe1f1b5f1a07cb8bb803ca7e6065b2e9 100644 (file)
@@ -795,28 +795,18 @@ gtkmarshal.c: @REBUILD@ gtkmarshal.list
         echo "#define __gtk_marshal_MARSHAL_C__"; \
         echo "#include \"gtkaliasdef.c\"") >> xgen-gmc \
        && cp xgen-gmc gtkmarshal.c \
-       && rm -f xgen-gmc 
+       && rm -f xgen-gmc
 
 gtktypebuiltins.h: stamp-gtktypebuiltins.h
        @true
-stamp-gtktypebuiltins.h: @REBUILD@ $(gtk_public_h_sources) Makefile
-       ( cd $(srcdir) && $(GLIB_MKENUMS) \
-                       --fhead "#ifndef __GTK_TYPE_BUILTINS_H__\n#define __GTK_TYPE_BUILTINS_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
-                       --fprod "/* enumerations from \"@filename@\" */\n" \
-                       --vhead "GType @enum_name@_get_type (void) G_GNUC_CONST;\n#define GTK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
-                       --ftail "G_END_DECLS\n\n#endif /* __GTK_TYPE_BUILTINS_H__ */" \
+stamp-gtktypebuiltins.h: @REBUILD@ $(gtk_public_h_sources) gtktypebuiltins.h.template
+       ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.h.template \
                $(gtk_public_h_sources) ) >> xgen-gtbh \
        && (cmp -s xgen-gtbh gtktypebuiltins.h || cp xgen-gtbh gtktypebuiltins.h ) \
        && rm -f xgen-gtbh \
        && echo timestamp > $(@F)
-gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) Makefile
-       ( cd $(srcdir) && $(GLIB_MKENUMS) \
-                       --fhead "#undef GTK_DISABLE_DEPRECATED\n#define GTK_ENABLE_BROKEN\n#include \"gtk.h\"\n#include \"gtkprivate.h\"\n#include \"gtkalias.h\"\n" \
-                       --ftail "#define __GTK_TYPE_BUILTINS_C__\n#include \"gtkaliasdef.c\"\n" \
-                       --fprod "\n/* enumerations from \"@filename@\" */" \
-                       --vhead "GType\n@enum_name@_get_type (void)\n{\n  static GType etype = 0;\n  if (etype == 0) {\n    static const G@Type@Value values[] = {" \
-                       --vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
-                       --vtail "      { 0, NULL, NULL }\n    };\n    etype = g_@type@_register_static (g_intern_static_string (\"@EnumName@\"), values);\n  }\n  return etype;\n}\n" \
+gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) gtktypebuiltins.c.template
+       ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.c.template \
                $(gtk_public_h_sources) ) > xgen-gtbc \
        && cp xgen-gtbc gtktypebuiltins.c  \
        && rm -f xgen-gtbc
@@ -1219,6 +1209,9 @@ EXTRA_DIST +=                   \
        makegtkalias.pl         \
        aliasfilescheck.sh      \
        abicheck.sh             \
-       pltcheck.sh
+       pltcheck.sh             \
+       gtktypebuiltins.c.template      \
+       gtktypebuiltins.h.template
+
 
 install-data-local: