From e8e1f96c497bda50ec02ed7360a6ed56c5f70f60 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 22 Mar 2023 07:43:23 +0900 Subject: [PATCH] Fix make maintainer-clean with queryjumblefuncs.*.c files in src/backend/nodes/ The files generated by gen_node_support.pl for query jumbling (queryjumblefuncs.funcs.c and queryjumblefuncs.switch.c) were not being removed on make maintainer-clean (they need to remain around after a simple "clean"). This commit makes the operation consistent with the copy, equal, out and read files. While on it, update a comment in the nodes'README where a reference to queryjumblefuncs.funcs.c was missing. Reported-by: Nathan Bossart Reviewed-by: Richard Guo, Daniel Gustafsson Discussion: https://postgr.es/m/ZBgAfTHcL6W7zGdW@paquier.xyz --- src/backend/nodes/Makefile | 3 ++- src/backend/nodes/README | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/backend/nodes/Makefile b/src/backend/nodes/Makefile index af12c64878e..0a95e683d0f 100644 --- a/src/backend/nodes/Makefile +++ b/src/backend/nodes/Makefile @@ -95,7 +95,8 @@ $(top_builddir)/src/include/nodes/header-stamp: node-support-stamp copyfuncs.o: copyfuncs.c copyfuncs.funcs.c copyfuncs.switch.c | node-support-stamp equalfuncs.o: equalfuncs.c equalfuncs.funcs.c equalfuncs.switch.c | node-support-stamp outfuncs.o: outfuncs.c outfuncs.funcs.c outfuncs.switch.c | node-support-stamp +queryjumblefuncs.o: queryjumblefuncs.c queryjumblefuncs.funcs.c queryjumblefuncs.switch.c | node-support-stamp readfuncs.o: readfuncs.c readfuncs.funcs.c readfuncs.switch.c | node-support-stamp maintainer-clean: clean - rm -f node-support-stamp $(addsuffix funcs.funcs.c,copy equal out read) $(addsuffix funcs.switch.c,copy equal out read) nodetags.h + rm -f node-support-stamp $(addsuffix funcs.funcs.c,copy equal out queryjumble read) $(addsuffix funcs.switch.c,copy equal out queryjumble read) nodetags.h diff --git a/src/backend/nodes/README b/src/backend/nodes/README index 7cf6e3b0410..52364470205 100644 --- a/src/backend/nodes/README +++ b/src/backend/nodes/README @@ -88,10 +88,10 @@ Suppose you want to define a node Foo: If you intend to inherit from, say a Plan node, put Plan as the first field of your struct definition. (The T_Foo tag is created automatically.) 2. Check that the generated support functions in copyfuncs.funcs.c, - equalfuncs.funcs.c, outfuncs.funcs.c and readfuncs.funcs.c look - correct. Add attributes as necessary to control the outcome. (For - some classes of node types, you don't need all four support functions. - Use node attributes similar to those of related node types.) + equalfuncs.funcs.c, outfuncs.funcs.c, queryjumblefuncs.funcs.c and + readfuncs.funcs.c look correct. Add attributes as necessary to control the + outcome. (For some classes of node types, you don't need all the support + functions. Use node attributes similar to those of related node types.) 3. Add cases to the functions in nodeFuncs.c as needed. There are many other places you'll probably also need to teach about your new node type. Best bet is to grep for references to one or two similar existing