gtktreestore.c \
gtktreeview.c \
gtktreeviewcolumn.c \
+ gtktypebuiltins.c \
gtktypeutils.c \
gtkvbbox.c \
gtkvbox.c \
stamp-gtk.defs \
stamp-gtktypebuiltins.h \
stamp-gtkmarshalers.h \
- gtktypebuiltins_vars.c \
- gtktypebuiltins_ids.c \
- gtktypebuiltins_evals.c \
+ gtktypebuiltins.c \
gtkmarshalers.c \
gtkmarshalers.h \
gtkmarshal.c \
# their own .lo rules and don't get publically installed
gtk_extra_sources = @STRIP_BEGIN@ \
gtkversion.h.in \
- maketypes.awk \
- makeenums.h \
gtk-boxed.defs \
gtkmarshalers.list \
gtkmarshal.list \
# rules to generate built sources
#
# setup autogeneration dependancies
-gen_sources = xgen-gdef xgen-gtbh xgen-gtbvc xgen-gtbic xgen-gtbec xgen-gmh xgen-gmc xgen-gmlh xgen-gmlc
+gen_sources = xgen-gdef xgen-gtbh xgen-gtic xgen-gmh xgen-gmc xgen-gmlh xgen-gmlc
CLEANFILES = $(gen_sources)
-## automake 1.5 supports this without the horrible 'oldest-source-stamp'
-## hack below
+## automake 1.5 supports this without $(OBJECTS): $(gtk_built_sources) hack
#BUILT_SOURCES = $(gtk_built_sources)
-Makefile: oldest-source-stamp # oh boy, does automake SUCK!
-oldest-source-stamp: $(gtk_built_sources)
-$(OBJECTS): oldest-source-stamp ${gtk_built_public_sources} # this is our oldest file, used for implicit auto-generation deps
+$(libgtk_x11_1_3_la_OBJECTS) $(libgtk_linux_fb_1_3_la_OBJECTS) $(libgtk_win32_1_3_la_OBJECTS): ${gtk_built_public_sources}
-# initial creation of the real stamp-* files
-gtk.defs gtkmarshalers.h gtktypebuiltins.h: # never add deps here
- test -f "$(srcdir)/$(@F)" || touch $(srcdir)/$(@F)
-# normal autogeneration rules
# all autogenerated files need to be generated in the srcdir,
# so old versions get remade and are not confused with newer
# versions in the build dir. thus a development setup requires
# srcdir to be writable, passing --disable-rebuilds to
# ../configure will supress all autogeneration rules.
-$(srcdir)/stamp-gtk.defs: @REBUILD@ gtk.defs gtk-boxed.defs $(gtk_public_h_sources)
- case @GLIB_MKENUMS@ in \
- .*) glib_mkenums=`pwd`/@GLIB_MKENUMS@ ;; \
- *) glib_mkenums=@GLIB_MKENUMS@ ;; \
- esac; \
- cd $(srcdir) \
- && $$glib_mkenums --comments ";; @comment@" \
- --fprod "; enumerations from \"@filename@\"\n " \
- --vhead "(define-@type@ @EnumName@" \
- --vprod " (@valuenick@ @VALUENAME@)" \
- --vtail ")" \
- $(gtk_public_h_sources) > xgen-gdef \
- && cat gtk-boxed.defs >> xgen-gdef \
- && (cmp -s xgen-gdef gtk.defs || cp xgen-gdef gtk.defs) \
- && rm -f xgen-gdef \
- && echo timestamp > $(@F)
-
-$(srcdir)/stamp-gtkmarshalers.h: @REBUILD@ gtkmarshalers.list gtkmarshalers.h
+$(srcdir)/gtk.defs: @REBUILD@ gtk.defs gtk-boxed.defs $(gtk_public_h_sources) \
+ case @GLIB_MKENUMS@ in \
+ .*) glib_mkenums=`pwd`/@GLIB_MKENUMS@ ;; \
+ *) glib_mkenums=@GLIB_MKENUMS@ ;; \
+ esac; \
+ cd $(srcdir) \
+ && $$glib_mkenums --comments ";; @comment@" \
+ --fprod "; enumerations from \"@filename@\"\n " \
+ --vhead "(define-@type@ @EnumName@" \
+ --vprod " (@valuenick@ @VALUENAME@)" \
+ --vtail ")" \
+ $(gtk_public_h_sources) > xgen-gdef \
+ && cat gtk-boxed.defs >> xgen-gdef \
+ && gtk.defs || cp xgen-gdef gtk.defs \
+ && rm -f xgen-gdef
+
+all-local: @REBUILD@ gtk.defs
+
+$(srcdir)/gtkmarshalers.h: stamp-gtkmarshalers.h
+ @true
+stamp-gtkmarshalers.h: @REBUILD@ gtkmarshalers.list
case @GLIB_GENMARSHAL@ in \
.*) glib_genmarshal=`pwd`/@GLIB_GENMARSHAL@ ;; \
*) glib_genmarshal=@GLIB_GENMARSHAL@ ;; \
&& $$glib_genmarshal --prefix=_gtk_marshal gtkmarshalers.list --header >> xgen-gmlh \
&& (cmp -s xgen-gmlh gtkmarshalers.h || cp xgen-gmlh gtkmarshalers.h) \
&& rm -f xgen-gmlh \
- && echo timestamp > $(@F)
-$(srcdir)/gtkmarshalers.c: @REBUILD@ $(srcdir)/stamp-gtkmarshalers.h
+ && echo timestamp > $(@F)
+$(srcdir)/gtkmarshalers.c: @REBUILD@ gtkmarshalers.list
case @GLIB_GENMARSHAL@ in \
.*) glib_genmarshal=`pwd`/@GLIB_GENMARSHAL@ ;; \
*) glib_genmarshal=@GLIB_GENMARSHAL@ ;; \
cd $(srcdir) \
&& $$glib_genmarshal --prefix=_gtk_marshal gtkmarshalers.list --body >> xgen-gmlc \
&& cp xgen-gmlc gtkmarshalers.c \
- && rm -f xgen-gmlc
-$(srcdir)/gtkmarshal.h: @REBUILD@ gtkmarshal.list
+ && rm -f xgen-gmlc
+
+$(srcdir)/gtkmarshal.h: stamp-gtkmarshal.h
+ @true
+stamp-gtkmarshal.h: @REBUILD@ gtkmarshal.list
case @GLIB_GENMARSHAL@ in \
.*) glib_genmarshal=`pwd`/@GLIB_GENMARSHAL@ ;; \
*) glib_genmarshal=@GLIB_GENMARSHAL@ ;; \
&& echo "#ifndef GTK_DISABLE_DEPRECATED" > xgen-gmh \
&& $$glib_genmarshal --prefix=gtk_marshal gtkmarshal.list --header >> xgen-gmh \
&& echo "#endif /* GTK_DISABLE_DEPRECATED */" >> xgen-gmh \
- && cp xgen-gmh gtkmarshal.h \
- && rm -f xgen-gmh
-$(srcdir)/gtkmarshal.c: @REBUILD@ gtkmarshal.h
+ && (cmp -s xgen-gmh gtkmarshal.h || cp xgen-gmh gtkmarshal.h) \
+ && rm -f xgen-gmh \
+ && echo timestamp > $(@F)
+$(srcdir)/gtkmarshal.c: @REBUILD@ gtkmarshal.list
case @GLIB_GENMARSHAL@ in \
.*) glib_genmarshal=`pwd`/@GLIB_GENMARSHAL@ ;; \
*) glib_genmarshal=@GLIB_GENMARSHAL@ ;; \
&& cp xgen-gmc gtkmarshal.c \
&& rm -f xgen-gmc
-$(srcdir)/stamp-gtktypebuiltins.h: @REBUILD@ maketypes.awk $(srcdir)/stamp-gtk.defs gtktypebuiltins.h
- cd $(srcdir) \
- && LC_ALL=C $(AWK) -f maketypes.awk gtk.defs macros > xgen-gtbh \
- && (cmp -s xgen-gtbh gtktypebuiltins.h || cp xgen-gtbh gtktypebuiltins.h) \
+$(srcdir)/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);\n#define GTK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
+ --ftail "G_END_DECLS\n\n#endif /* __GTK_TYPE_BUILTINS_H__ */" \
+ $(gtk_public_h_sources) ) >> xgen-gtbh \
+ && (cmp -s xgen-gtbh $(srcdir)/gtktypebuiltins.h || cp xgen-gtbh $(srcdir)/gtktypebuiltins.h ) \
&& rm -f xgen-gtbh \
&& echo timestamp > $(@F)
-$(srcdir)/gtktypebuiltins_vars.c: @REBUILD@ maketypes.awk $(srcdir)/stamp-gtk.defs
- cd $(srcdir) \
- && LC_ALL=C $(AWK) -f maketypes.awk gtk.defs variables > xgen-gtbvc \
- && cp xgen-gtbvc $(@F) \
- && rm -f xgen-gtbvc
-$(srcdir)/gtktypebuiltins_ids.c: @REBUILD@ maketypes.awk $(srcdir)/stamp-gtk.defs
- cd $(srcdir) \
- && LC_ALL=C $(AWK) -f maketypes.awk gtk.defs entries > xgen-gtbic \
- && cp xgen-gtbic $(@F) \
- && rm -f xgen-gtbic
-$(srcdir)/gtktypebuiltins_evals.c: @REBUILD@ $(gtk_public_h_sources)
- case @GLIB_MKENUMS@ in \
- .*) glib_mkenums=`pwd`/@GLIB_MKENUMS@ ;; \
- *) glib_mkenums=@GLIB_MKENUMS@ ;; \
- esac; \
- cd $(srcdir) \
- && $$glib_mkenums \
+$(srcdir)/gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) Makefile
+ ( cd $(srcdir) && glib-mkenums \
+ --fhead "#define GTK_ENABLE_BROKEN\n#include \"gtk.h\"\n#include \"gtkprivate.h\"" \
--fprod "\n/* enumerations from \"@filename@\" */" \
- --vhead "static const GtkEnumValue _@enum_name@_values[] = {" \
- --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
- --vtail " { 0, NULL, NULL }\n};" \
- $(gtk_public_h_sources) > xgen-gtbec \
- && cp xgen-gtbec $(@F) \
- && rm -f xgen-gtbec
-
+ --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 (\"@EnumName@\", values);\n }\n return etype;\n}\n" \
+ $(gtk_public_h_sources) ) > xgen-gtbc \
+ && cp xgen-gtbc $(srcdir)/gtktypebuiltins.c \
+ && rm -f xgen-gtbc
# target platform:
lib_LTLIBRARIES = $(gtktargetlib)