1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-10 17:42:29 +03:00
Files
postgres/src/backend/parser/Makefile
Bruce Momjian 210055ad61 here are some patches for 6.5.0 which I already submitted but have never
been applied. The patches are in the .tar.gz attachment at the end:

varchar-array.patch     this patch adds support for arrays of bpchar() and
                        varchar(), which where always missing from postgres.

                        These datatypes can be used to replace the _char4,
                        _char8, etc., which were dropped some time ago.

block-size.patch        this patch fixes many errors in the parser and other
                        program which happen with very large query statements
                        (> 8K) when using a page size larger than 8192.

                        This patch is needed if you want to submit queries
                        larger than 8K. Postgres supports tuples up to 32K
                        but you can't insert them because you can't submit
                        queries larger than 8K. My patch fixes this problem.

                        The patch also replaces all the occurrences of `8192'
                        and `1<<13' in the sources with the proper constants
                        defined in include files. You should now never find
                        8192 hardwired in C code, just to make code clearer.


--
Massimo Dal Zotto
1999-05-03 19:10:48 +00:00

70 lines
1.9 KiB
Makefile

#-------------------------------------------------------------------------
#
# Makefile--
# Makefile for parser
#
# IDENTIFICATION
# $Header: /cvsroot/pgsql/src/backend/parser/Makefile,v 1.20 1999/05/03 19:09:40 momjian Exp $
#
#-------------------------------------------------------------------------
SRCDIR= ../..
include ../../Makefile.global
CFLAGS += -I..
ifeq ($(CC), gcc)
CFLAGS+= -Wno-error
endif
ifdef MULTIBYTE
CFLAGS+= $(MBFLAGS)
endif
OBJS= analyze.o gram.o keywords.o parser.o parse_agg.o parse_clause.o \
parse_expr.o parse_func.o parse_node.o parse_oper.o parse_relation.o \
parse_type.o parse_coerce.o parse_target.o scan.o scansup.o
all: SUBSYS.o
SUBSYS.o: $(OBJS)
$(LD) -r -o SUBSYS.o $(OBJS)
gram.c parse.h: gram.y
$(YACC) $(YFLAGS) $<
mv y.tab.c gram.c
mv y.tab.h parse.h
scan.c: scan.l
$(LEX) $<
sed -e 's/#define YY_BUF_SIZE .*/#define YY_BUF_SIZE 65536/' \
<lex.yy.c >scan.c
rm -f lex.yy.c
# The following dependencies on parse.h are computed by
# make depend, but we state them here explicitly anyway because
# parse.h doesn't even exist at first and if user fails to
# do make depend, we still want the build to succeed.
analyze.o keywords.o scan.o: parse.h
# This is unusual: We actually have to build some of the parts before
# we know what the header file dependencies are.
dep depend: gram.c scan.c
$(CC) -MM $(CFLAGS) *.c >depend
# Remove scan.c from the clean since we want to avoid rebuilding when using
# the original source distribution. This should help Solaris machines whose
# lex has trouble with exclusive states.
# Remove gram.c, parse.h from the clean since we have now started to exceed
# internal limits for some non-bison yaccs. - thomas 1998-02-17
clean:
rm -f SUBSYS.o $(OBJS) # gram.c parse.h # scan.c
# And the garbage that might have been left behind by partial build:
rm -f y.tab.c y.tab.h lex.yy.c
ifeq (depend,$(wildcard depend))
include depend
endif