[SOLUTION] autogenerated file problems




Ok, I did some digging into the Makefile generated and discovered the
problem.

Right now you use 
$(OBJECTS): some deps
This never gets interpreted by automake 1.5 as dependencies of |.c.o| or
any of the other object rules.

To fix this, I changed
$(OBJECTS): $(gdk_pixbuf_built_headers) $(gdk_pixbuf_built_cfiles) \
            gdk-pixbuf-marshal.c
 to
$(libgdk_pixbuf_1_3_la_OBJECTS): $(gdk_pixbuf_built_headers) \
                                 $(gdk_pixbuf_built_cfiles) \
                                 gdk-pixbuf-marshal.c

Gtk now compiles fine (apart from an awk error on solaris which I fixed
as well)

This patch has a gratuitous dep on gdk-pixbuf-marshal.h for
gtk-pixbuf-marshal.c, since automake 1.5 doesn't seem to handle
autogenerated files depending on other autogenerated files.

-- 
Frank Belew
aka frb or Myth


? autom4te.cache
? stamp-h1
Index: gdk-pixbuf/Makefile.am
===================================================================
RCS file: /cvs/gnome/gtk+/gdk-pixbuf/Makefile.am,v
retrieving revision 1.106
diff -u -r1.106 Makefile.am
--- gdk-pixbuf/Makefile.am	2001/09/19 02:10:37	1.106
+++ gdk-pixbuf/Makefile.am	2001/09/19 18:52:59
@@ -239,7 +239,7 @@
 gdk_pixbuf_built_headers = gdk-pixbuf-enum-types.h gdk-pixbuf-marshal.h
 gdk_pixbuf_built_cfiles = gdk-pixbuf-enum-types.c
 MAINTAINERCLEANFILES += $(gdk_pixbuf_built_headers) $(gdk_pixbuf_built_cfiles) gdk-pixbuf-marshal.c
-$(OBJECTS): $(gdk_pixbuf_built_headers) $(gdk_pixbuf_built_cfiles) gdk-pixbuf-marshal.c
+$(libgdk_pixbuf_1_3_la_OBJECTS): $(gdk_pixbuf_built_headers) $(gdk_pixbuf_built_cfiles) gdk-pixbuf-marshal.c
 
 $(srcdir)/gdk-pixbuf-enum-types.h: s-enum-types-h
 	@true
@@ -281,7 +281,7 @@
 	&& rm -f xgen-gmh xgen-gmh~	\
 	&& echo timestamp > $(@F)
 CLEANFILES += xgen-gmh
-$(srcdir)/gdk-pixbuf-marshal.c: @REBUILD@ $(srcdir)/gdk-pixbuf-marshal.list
+$(srcdir)/gdk-pixbuf-marshal.c: @REBUILD@ $(srcdir)/gdk-pixbuf-marshal.list gdk-pixbuf-marshal.h
 	case @GLIB_GENMARSHAL@ in									\
 	   .*) glib_genmarshal=`pwd`/@GLIB_GENMARSHAL@ ;;				\
 	   *) glib_genmarshal= GLIB_GENMARSHAL@ ;;							\
Index: gtk/maketypes.awk
===================================================================
RCS file: /cvs/gnome/gtk+/gtk/maketypes.awk,v
retrieving revision 1.7
diff -u -r1.7 maketypes.awk
--- gtk/maketypes.awk	2000/10/25 22:34:14	1.7
+++ gtk/maketypes.awk	2001/09/19 18:52:59
@@ -133,7 +133,7 @@
 	      sub (";.*", "", $0);
 	  } while ($0 ~ /^[ \t]*$/);
 	  tmp_var2 = $1;
-	  sub ("\).*", "", tmp_var2);
+	  sub (/\).*/, "", tmp_var2);
 	  if (tmp_var1 ~ /^[_A-Za-z][_A-Za-z0-9]*$/ &&
 	      tmp_var2 ~ /^[_A-Za-z][_A-Za-z0-9]*$/)
 	      {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]