mirror of
https://github.com/postgres/postgres.git
synced 2025-09-02 04:21:28 +03:00
This reverts commitsd204ef6377
,83454e3c2b
and a few more commits thereafter (complete list at the end) related to MERGE feature. While the feature was fully functional, with sufficient test coverage and necessary documentation, it was felt that some parts of the executor and parse-analyzer can use a different design and it wasn't possible to do that in the available time. So it was decided to revert the patch for PG11 and retry again in the future. Thanks again to all reviewers and bug reporters. List of commits reverted, in reverse chronological order:f1464c5380
Improve parse representation for MERGEddb4158579
MERGE syntax diagram correction530e69e59b
Allow cpluspluscheck to pass by renaming variable01b88b4df5
MERGE minor errata3af7b2b0d4
MERGE fix variable warning in non-assert buildsa5d86181ec
MERGE INSERT allows only one VALUES clause4b2d44031f
MERGE post-commit review4923550c20
Tab completion for MERGEaa3faa3c7a
WITH support in MERGE83454e3c2b
New files for MERGEd204ef6377
MERGE SQL Command following SQL:2016 Author: Pavan Deolasee Reviewed-by: Michael Paquier
55 lines
1.8 KiB
Makefile
55 lines
1.8 KiB
Makefile
#-------------------------------------------------------------------------
|
|
#
|
|
# Makefile for parser
|
|
#
|
|
# src/backend/parser/Makefile
|
|
#
|
|
#-------------------------------------------------------------------------
|
|
|
|
subdir = src/backend/parser
|
|
top_builddir = ../../..
|
|
include $(top_builddir)/src/Makefile.global
|
|
|
|
override CPPFLAGS := -I. -I$(srcdir) $(CPPFLAGS)
|
|
|
|
OBJS= analyze.o gram.o scan.o parser.o \
|
|
parse_agg.o parse_clause.o parse_coerce.o parse_collate.o parse_cte.o \
|
|
parse_enr.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
|
|
|
|
include $(top_srcdir)/src/backend/common.mk
|
|
|
|
|
|
# There is no correct way to write a rule that generates two files.
|
|
# Rules with two targets don't have that meaning, they are merely
|
|
# shorthand for two otherwise separate rules. If we have an action
|
|
# that in fact generates two or more files, we must choose one of them
|
|
# as primary and show it as the action's output, then make all of the
|
|
# other output files dependent on the primary, like this. Furthermore,
|
|
# the "touch" action is essential, because it ensures that gram.h is
|
|
# marked as newer than (or at least no older than) gram.c. Without that,
|
|
# make is likely to try to rebuild gram.h in subsequent runs, which causes
|
|
# failures in VPATH builds from tarballs.
|
|
|
|
gram.h: gram.c
|
|
touch $@
|
|
|
|
gram.c: BISONFLAGS += -d
|
|
gram.c: BISON_CHECK_CMD = $(PERL) $(srcdir)/check_keywords.pl $< $(top_srcdir)/src/include/parser/kwlist.h
|
|
|
|
|
|
scan.c: FLEXFLAGS = -CF -p -p
|
|
scan.c: FLEX_NO_BACKUP=yes
|
|
scan.c: FLEX_FIX_WARNING=yes
|
|
|
|
|
|
# Force these dependencies to be known even without dependency info built:
|
|
gram.o scan.o parser.o: gram.h
|
|
|
|
|
|
# gram.c, gram.h, and scan.c are in the distribution tarball, so they
|
|
# are not cleaned here.
|
|
clean distclean maintainer-clean:
|
|
rm -f lex.backup
|