summaryrefslogtreecommitdiff
path: root/src/backend/parser
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2012-10-11 06:57:04 -0400
committerPeter Eisentraut <peter_e@gmx.net>2012-10-11 06:57:04 -0400
commit8521d131941be5a177270bc428fa8e684cd645b5 (patch)
treebfbf285859f3770aedc6b3c674a45d45cc4be5fe /src/backend/parser
parentab112068b657a2bd30a7f953c732e2ee75a606f5 (diff)
Refactor flex and bison make rules
Numerous flex and bison make rules have appeared in the source tree over time, and they are all virtually identical, so we can replace them by pattern rules with some variables for customization. Users of pgxs will also be able to benefit from this.
Diffstat (limited to 'src/backend/parser')
-rw-r--r--src/backend/parser/Makefile20
1 files changed, 4 insertions, 16 deletions
diff --git a/src/backend/parser/Makefile b/src/backend/parser/Makefile
index 1f48e16a76a..0395bd5934a 100644
--- a/src/backend/parser/Makefile
+++ b/src/backend/parser/Makefile
@@ -17,8 +17,6 @@ OBJS= analyze.o gram.o keywords.o kwlookup.o parser.o \
parse_expr.o parse_func.o parse_node.o parse_oper.o parse_param.o \
parse_relation.o parse_target.o parse_type.o parse_utilcmd.o scansup.o
-FLEXFLAGS = -CF -b -p -p
-
include $(top_srcdir)/src/backend/common.mk
@@ -40,22 +38,12 @@ endif
gram.h: gram.c ;
-gram.c: gram.y
- $(PERL) $(srcdir)/check_keywords.pl $< $(top_srcdir)/src/include/parser/kwlist.h
-ifdef BISON
- $(BISON) -d $(BISONFLAGS) -o $@ $<
-else
- @$(missing) bison $< $@
-endif
+gram.c: BISONFLAGS += -d
+gram.c: BISON_CHECK_CMD = $(PERL) $(srcdir)/check_keywords.pl $< $(top_srcdir)/src/include/parser/kwlist.h
-scan.c: scan.l
-ifdef FLEX
- $(FLEX) $(FLEXFLAGS) -o'$@' $<
- @if [ `wc -l <lex.backup` -eq 1 ]; then rm lex.backup; else echo "Scanner requires backup, see lex.backup."; exit 1; fi
-else
- @$(missing) flex $< $@
-endif
+scan.c: FLEXFLAGS = -CF -p -p
+scan.c: FLEX_NO_BACKUP=yes
# Force these dependencies to be known even without dependency info built: