While experimenting with a patch that adds a GUC, I was befuddled by
the new GUC's failure to be available after I rebuilt and reinstalled.
I eventually realized that the problem is that utils/misc/Makefile
has no idea that guc_tables.o needs to be rebuilt after changing
guc_tables.inc.c.  Of course, this isn't a problem if you use
--enable-depend, but I generally don't.  IMO we have a project
policy that dependencies other than dependencies on .h files should
be understood by the Makefiles, so I think we need the attached.

                        regards, tom lane

diff --git a/src/backend/utils/misc/Makefile b/src/backend/utils/misc/Makefile
index b362ae43771..f142d17178b 100644
--- a/src/backend/utils/misc/Makefile
+++ b/src/backend/utils/misc/Makefile
@@ -40,6 +40,9 @@ ifdef krb_srvtab
 override CPPFLAGS += -DPG_KRB_SRVTAB='"$(krb_srvtab)"'
 endif
 
+# Force this dependency to be known even without dependency info built:
+guc_tables.o: guc_tables.c $(top_builddir)/src/backend/utils/guc_tables.inc.c
+
 include $(top_srcdir)/src/backend/common.mk
 
 clean:

Reply via email to