mirror of
https://github.com/postgres/postgres.git
synced 2025-11-28 11:44:57 +03:00
Gen_fmgrtab.sh is strange: it is a platform dependent way (because it uses
CPP) to create platform independent files. Unfortunately, that means that every config.status (or configure) run invariably causes a relink of the postmaster and also that we can't put these files in the distribution (usefully). So we make it a little smarter: when the output files already exist and it notices that it would recreate them in identical form, it doesn't touch them. In order to avoid re-running the make rule all the time we update a timestamp file instead. Update release_prep accordingly. Also make Gen_fmgrtab.sh use the awk that is detected at configure time, not necessarily named `awk' and have it check for exit statuses a little better. In other news... Remove USE_LOCALE from the templates, it was set to `no' everywhere anyway. Also remove YACC and YFLAGS from the templates, configure is smart enough to find bison or yacc itself. Use AC_PROG_YACC for that instead of the hand-crafted code. Do not set YFLAGS to `-d'. The make rules that need this flag should explicitly invoke it. YFLAGS should be a user variable. Update the makefiles to that effect.
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
# Makefile for utils
|
||||
#
|
||||
# IDENTIFICATION
|
||||
# $Header: /cvsroot/pgsql/src/backend/utils/Makefile,v 1.12 2000/05/29 05:45:18 tgl Exp $
|
||||
# $Header: /cvsroot/pgsql/src/backend/utils/Makefile,v 1.13 2000/06/07 16:26:48 petere Exp $
|
||||
#
|
||||
#-------------------------------------------------------------------------
|
||||
|
||||
@@ -31,11 +31,20 @@ SUBSYS.o: $(OBJS)
|
||||
submake:
|
||||
for i in $(DIRS); do $(MAKE) -C $$i SUBSYS.o; done
|
||||
|
||||
fmgroids.h fmgrtab.c: Gen_fmgrtab.sh $(SRCDIR)/include/catalog/pg_proc.h
|
||||
$(SHELL) $(SHOPTS) Gen_fmgrtab.sh $(SRCDIR)/include/catalog/pg_proc.h
|
||||
# Gen_fmgrtab.sh will not change the timestamp of its output files
|
||||
# if they already exist and would not be changed. This is to avoid
|
||||
# unnecessary recompilations. In order to avoid re-running it all
|
||||
# the time we update a stamp file instead. (Idea stolen from
|
||||
# autoconf and autoheader.)
|
||||
|
||||
fmgroids.h fmgrtab.c: fmgrstamp-h
|
||||
fmgrstamp-h: Gen_fmgrtab.sh $(SRCDIR)/include/catalog/pg_proc.h
|
||||
$(SHELL) $(SHOPTS) Gen_fmgrtab.sh $(SRCDIR)/include/catalog/pg_proc.h
|
||||
echo timestamp > fmgrstamp-h
|
||||
|
||||
# don't clean fmgroids.h and fmgrtab.c
|
||||
clean:
|
||||
rm -f SUBSYS.o fmgroids.h fmgrtab.o fmgrtab.c
|
||||
rm -f SUBSYS.o fmgrtab.o
|
||||
for i in $(DIRS); do $(MAKE) -C $$i clean; done
|
||||
|
||||
dep depend: fmgroids.h fmgrtab.c
|
||||
|
||||
Reference in New Issue
Block a user