diff options
author | Peter Eisentraut | 2008-02-19 10:30:09 +0000 |
---|---|---|
committer | Peter Eisentraut | 2008-02-19 10:30:09 +0000 |
commit | 12b0df3136e13d055be311d9e9be169a2a4d983b (patch) | |
tree | e39154eaf1edce182de33943a51bd7a97cb3a9b3 | |
parent | 34e8f1f56c9f705f6e203a348f3a8d4798197178 (diff) |
Refactor backend makefiles to remove lots of duplicate code
53 files changed, 85 insertions, 391 deletions
diff --git a/src/backend/access/Makefile b/src/backend/access/Makefile index 4e0d90562f..baf3724ae2 100644 --- a/src/backend/access/Makefile +++ b/src/backend/access/Makefile @@ -9,19 +9,5 @@ top_builddir = ../../.. include $(top_builddir)/src/Makefile.global SUBDIRS = common gist hash heap index nbtree transam gin -SUBDIROBJS = $(SUBDIRS:%=%/SUBSYS.o) -all: SUBSYS.o - -SUBSYS.o: $(SUBDIROBJS) - $(LD) $(LDREL) $(LDOUT) $@ $^ - -$(SUBDIROBJS): $(SUBDIRS:%=%-recursive) ; - -.PHONY: $(SUBDIRS:%=%-recursive) -$(SUBDIRS:%=%-recursive): - $(MAKE) -C $(subst -recursive,,$@) SUBSYS.o - -clean: - for dir in $(SUBDIRS); do $(MAKE) -C $$dir $@ || exit; done - rm -f SUBSYS.o +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/access/common/Makefile b/src/backend/access/common/Makefile index 34e14415eb..0cd7c8728f 100644 --- a/src/backend/access/common/Makefile +++ b/src/backend/access/common/Makefile @@ -16,8 +16,4 @@ OBJS = heaptuple.o indextuple.o printtup.o reloptions.o scankey.o tupdesc.o all: SUBSYS.o -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/access/gin/Makefile b/src/backend/access/gin/Makefile index d91cb22a5c..93442ae8c0 100644 --- a/src/backend/access/gin/Makefile +++ b/src/backend/access/gin/Makefile @@ -16,10 +16,4 @@ OBJS = ginutil.o gininsert.o ginxlog.o ginentrypage.o gindatapage.o \ ginbtree.o ginscan.o ginget.o ginvacuum.o ginarrayproc.o \ ginbulk.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/access/gist/Makefile b/src/backend/access/gist/Makefile index ab307ebacf..e1b642a058 100644 --- a/src/backend/access/gist/Makefile +++ b/src/backend/access/gist/Makefile @@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global OBJS = gist.o gistutil.o gistxlog.o gistvacuum.o gistget.o gistscan.o \ gistproc.o gistsplit.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/access/hash/Makefile b/src/backend/access/hash/Makefile index 246ee4d80e..537891d8fb 100644 --- a/src/backend/access/hash/Makefile +++ b/src/backend/access/hash/Makefile @@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global OBJS = hash.o hashfunc.o hashinsert.o hashovfl.o hashpage.o hashscan.o \ hashsearch.o hashutil.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/access/heap/Makefile b/src/backend/access/heap/Makefile index e8fbb8ffc4..f3b9b3d32a 100644 --- a/src/backend/access/heap/Makefile +++ b/src/backend/access/heap/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = heapam.o hio.o pruneheap.o rewriteheap.o syncscan.o tuptoaster.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/access/index/Makefile b/src/backend/access/index/Makefile index ef142a6b7b..9c48792fd3 100644 --- a/src/backend/access/index/Makefile +++ b/src/backend/access/index/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = genam.o indexam.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/access/nbtree/Makefile b/src/backend/access/nbtree/Makefile index f85c703382..4e956685ea 100644 --- a/src/backend/access/nbtree/Makefile +++ b/src/backend/access/nbtree/Makefile @@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global OBJS = nbtcompare.o nbtinsert.o nbtpage.o nbtree.o nbtsearch.o \ nbtutils.o nbtsort.o nbtxlog.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/access/transam/Makefile b/src/backend/access/transam/Makefile index f2737c8591..f8665ed353 100644 --- a/src/backend/access/transam/Makefile +++ b/src/backend/access/transam/Makefile @@ -14,13 +14,7 @@ include $(top_builddir)/src/Makefile.global OBJS = clog.o transam.o varsup.o xact.o xlog.o xlogutils.o rmgr.o slru.o subtrans.o multixact.o twophase.o twophase_rmgr.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk # ensure that version checks in xlog.c get recompiled when catversion.h changes xlog.o: xlog.c $(top_srcdir)/src/include/catalog/catversion.h diff --git a/src/backend/bootstrap/Makefile b/src/backend/bootstrap/Makefile index bb8bf76f12..b9e18b6fd1 100644 --- a/src/backend/bootstrap/Makefile +++ b/src/backend/bootstrap/Makefile @@ -14,10 +14,7 @@ override CPPFLAGS := -I$(srcdir) $(CPPFLAGS) OBJS= bootparse.o bootstrap.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) $@ $^ +include $(top_srcdir)/src/backend/common.mk # bootscanner is compiled as part of bootparse @@ -50,6 +47,5 @@ bootstrap.o bootparse.o: $(srcdir)/bootstrap_tokens.h # bootparse.c, bootstrap_tokens.h, and bootscanner.c are in the distribution # tarball, so they are not cleaned here. clean: - rm -f SUBSYS.o $(OBJS) # And the garbage that might have been left behind by partial build: @rm -f y.tab.h y.tab.c y.output lex.yy.c diff --git a/src/backend/catalog/Makefile b/src/backend/catalog/Makefile index 89e1216e72..39714f0cb3 100644 --- a/src/backend/catalog/Makefile +++ b/src/backend/catalog/Makefile @@ -17,10 +17,9 @@ OBJS = catalog.o dependency.o heap.o index.o indexing.o namespace.o aclchk.o \ BKIFILES = postgres.bki postgres.description postgres.shdescription -all: SUBSYS.o $(BKIFILES) +include $(top_srcdir)/src/backend/common.mk -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) +all: $(BKIFILES) # Note: there are some undocumented dependencies on the ordering in which # the catalog header files are assembled into postgres.bki. In particular, @@ -67,4 +66,4 @@ uninstall-data: rm -f $(addprefix '$(DESTDIR)$(datadir)'/, $(BKIFILES) system_views.sql information_schema.sql sql_features.txt) clean: - rm -f SUBSYS.o $(OBJS) $(BKIFILES) + rm -f $(BKIFILES) diff --git a/src/backend/commands/Makefile b/src/backend/commands/Makefile index 34a15f1275..acd4398df8 100644 --- a/src/backend/commands/Makefile +++ b/src/backend/commands/Makefile @@ -21,10 +21,4 @@ OBJS = aggregatecmds.o alter.o analyze.o async.o cluster.o comment.o \ tsearchcmds.o typecmds.o user.o vacuum.o vacuumlazy.o \ variable.o view.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/common.mk b/src/backend/common.mk new file mode 100644 index 0000000000..17eec6f8da --- /dev/null +++ b/src/backend/common.mk @@ -0,0 +1,25 @@ +# +# Common make rules for backend +# +# $PostgreSQL$ +# + +SUBDIROBJS = $(SUBDIRS:%=%/SUBSYS.o) + +all: SUBSYS.o + +SUBSYS.o: $(SUBDIROBJS) $(OBJS) + $(LD) $(LDREL) $(LDOUT) $@ $^ + +$(SUBDIROBJS): $(SUBDIRS:%=%-recursive) ; + +.PHONY: $(SUBDIRS:%=%-recursive) +$(SUBDIRS:%=%-recursive): + $(MAKE) -C $(subst -recursive,,$@) SUBSYS.o + +clean: clean-local +clean-local: +ifdef SUBDIRS + for dir in $(SUBDIRS); do $(MAKE) -C $$dir clean || exit; done +endif + rm -f SUBSYS.o $(OBJS) diff --git a/src/backend/executor/Makefile b/src/backend/executor/Makefile index 95c0c9302c..e48e1f4707 100644 --- a/src/backend/executor/Makefile +++ b/src/backend/executor/Makefile @@ -23,10 +23,4 @@ OBJS = execAmi.o execCurrent.o execGrouping.o execJunk.o execMain.o \ nodeValuesscan.o nodeLimit.o nodeGroup.o \ nodeSubplan.o nodeSubqueryscan.o nodeTidscan.o tstoreReceiver.o spi.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/lib/Makefile b/src/backend/lib/Makefile index a401c8c50d..6285051390 100644 --- a/src/backend/lib/Makefile +++ b/src/backend/lib/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = dllist.o stringinfo.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/libpq/Makefile b/src/backend/libpq/Makefile index e1039dfe80..8cf99f97d1 100644 --- a/src/backend/libpq/Makefile +++ b/src/backend/libpq/Makefile @@ -17,11 +17,4 @@ include $(top_builddir)/src/Makefile.global OBJS = be-fsstubs.o be-secure.o auth.o crypt.o hba.o ip.o md5.o pqcomm.o \ pqformat.o pqsignal.o - -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/main/Makefile b/src/backend/main/Makefile index 45ed1563a6..11c1b03992 100644 --- a/src/backend/main/Makefile +++ b/src/backend/main/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = main.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/nodes/Makefile b/src/backend/nodes/Makefile index f964fb68d4..4715d816f2 100644 --- a/src/backend/nodes/Makefile +++ b/src/backend/nodes/Makefile @@ -16,10 +16,4 @@ OBJS = nodeFuncs.o nodes.o list.o bitmapset.o tidbitmap.o \ copyfuncs.o equalfuncs.o makefuncs.o \ outfuncs.o readfuncs.o print.o read.o params.o value.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/optimizer/Makefile b/src/backend/optimizer/Makefile index f2061dc8b8..bbd06c5661 100644 --- a/src/backend/optimizer/Makefile +++ b/src/backend/optimizer/Makefile @@ -9,19 +9,5 @@ top_builddir = ../../.. include $(top_builddir)/src/Makefile.global SUBDIRS = geqo path plan prep util -SUBDIROBJS = $(SUBDIRS:%=%/SUBSYS.o) -all: SUBSYS.o - -SUBSYS.o: $(SUBDIROBJS) - $(LD) $(LDREL) $(LDOUT) $@ $^ - -$(SUBDIROBJS): $(SUBDIRS:%=%-recursive) ; - -.PHONY: $(SUBDIRS:%=%-recursive) -$(SUBDIRS:%=%-recursive): - $(MAKE) -C $(subst -recursive,,$@) SUBSYS.o - -clean: - for dir in $(SUBDIRS); do $(MAKE) -C $$dir $@ || exit; done - rm -f SUBSYS.o +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/optimizer/geqo/Makefile b/src/backend/optimizer/geqo/Makefile index 158caee6af..dbc6c28a32 100644 --- a/src/backend/optimizer/geqo/Makefile +++ b/src/backend/optimizer/geqo/Makefile @@ -18,10 +18,4 @@ OBJS = geqo_copy.o geqo_eval.o geqo_main.o geqo_misc.o \ geqo_selection.o \ geqo_erx.o geqo_pmx.o geqo_cx.o geqo_px.o geqo_ox1.o geqo_ox2.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/optimizer/path/Makefile b/src/backend/optimizer/path/Makefile index 8496db9d7d..424ed0f6e5 100644 --- a/src/backend/optimizer/path/Makefile +++ b/src/backend/optimizer/path/Makefile @@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global OBJS = allpaths.o clausesel.o costsize.o equivclass.o indxpath.o \ joinpath.o joinrels.o orindxpath.o pathkeys.o tidpath.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/optimizer/plan/Makefile b/src/backend/optimizer/plan/Makefile index addbdbfb93..c5247774b7 100644 --- a/src/backend/optimizer/plan/Makefile +++ b/src/backend/optimizer/plan/Makefile @@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global OBJS = createplan.o initsplan.o planagg.o planmain.o planner.o \ setrefs.o subselect.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/optimizer/prep/Makefile b/src/backend/optimizer/prep/Makefile index b4e87ce83c..27f2617438 100644 --- a/src/backend/optimizer/prep/Makefile +++ b/src/backend/optimizer/prep/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = prepjointree.o prepqual.o preptlist.o prepunion.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/optimizer/util/Makefile b/src/backend/optimizer/util/Makefile index 1468f9f130..d30b9446a6 100644 --- a/src/backend/optimizer/util/Makefile +++ b/src/backend/optimizer/util/Makefile @@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global OBJS = clauses.o joininfo.o pathnode.o plancat.o predtest.o \ relnode.o restrictinfo.o tlist.o var.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/parser/Makefile b/src/backend/parser/Makefile index ae7f1115e5..70c5045cdb 100644 --- a/src/backend/parser/Makefile +++ b/src/backend/parser/Makefile @@ -18,11 +18,7 @@ OBJS= analyze.o gram.o keywords.o parser.o parse_agg.o parse_clause.o \ FLEXFLAGS = -CF - -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) $@ $^ +include $(top_srcdir)/src/backend/common.mk # scan is compiled as part of gram @@ -63,6 +59,5 @@ gram.o keywords.o parser.o: $(srcdir)/parse.h # gram.c, parse.h, and scan.c are in the distribution tarball, so they # are not cleaned here. clean: - rm -f SUBSYS.o $(OBJS) # And the garbage that might have been left behind by partial build: @rm -f y.tab.h y.tab.c y.output lex.yy.c diff --git a/src/backend/port/Makefile b/src/backend/port/Makefile index 8790376efb..48d0d6c774 100644 --- a/src/backend/port/Makefile +++ b/src/backend/port/Makefile @@ -32,10 +32,7 @@ ifeq ($(PORTNAME), win32) OBJS+=win32/SUBSYS.o endif -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) $@ $^ +include $(top_srcdir)/src/backend/common.mk darwin/SUBSYS.o: darwin.dir @@ -62,6 +59,6 @@ ipc_test: ipc_test.o pg_sema.o pg_shmem.o $(CC) $(CFLAGS) $(LDFLAGS) $(export_dynamic) $^ $(LIBS) -o $@ distclean clean: - rm -f SUBSYS.o $(OBJS) ipc_test ipc_test.o tas_cpp.s + rm -f ipc_test ipc_test.o tas_cpp.s $(MAKE) -C darwin clean $(MAKE) -C win32 clean diff --git a/src/backend/postmaster/Makefile b/src/backend/postmaster/Makefile index 81af7ba7fd..0f1a0b508d 100644 --- a/src/backend/postmaster/Makefile +++ b/src/backend/postmaster/Makefile @@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global OBJS = autovacuum.o bgwriter.o fork_process.o pgarch.o pgstat.o postmaster.o \ syslogger.o walwriter.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/regex/Makefile b/src/backend/regex/Makefile index c2493f86c5..88bceee87a 100644 --- a/src/backend/regex/Makefile +++ b/src/backend/regex/Makefile @@ -14,15 +14,9 @@ include $(top_builddir)/src/Makefile.global OBJS = regcomp.o regerror.o regexec.o regfree.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk # mark inclusion dependencies between .c files explicitly regcomp.o: regcomp.c regc_lex.c regc_color.c regc_nfa.c regc_cvec.c regc_locale.c regexec.o: regexec.c rege_dfa.c - -clean: - rm -f SUBSYS.o $(OBJS) diff --git a/src/backend/rewrite/Makefile b/src/backend/rewrite/Makefile index 53a87c8c4d..f77265f8dc 100644 --- a/src/backend/rewrite/Makefile +++ b/src/backend/rewrite/Makefile @@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global OBJS = rewriteRemove.o rewriteDefine.o \ rewriteHandler.o rewriteManip.o rewriteSupport.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/storage/Makefile b/src/backend/storage/Makefile index c3ac007c01..3567753ae2 100644 --- a/src/backend/storage/Makefile +++ b/src/backend/storage/Makefile @@ -9,19 +9,5 @@ top_builddir = ../../.. include $(top_builddir)/src/Makefile.global SUBDIRS = buffer file freespace ipc large_object lmgr page smgr -SUBDIROBJS = $(SUBDIRS:%=%/SUBSYS.o) -all: SUBSYS.o - -SUBSYS.o: $(SUBDIROBJS) - $(LD) $(LDREL) $(LDOUT) $@ $^ - -$(SUBDIROBJS): $(SUBDIRS:%=%-recursive) ; - -.PHONY: $(SUBDIRS:%=%-recursive) -$(SUBDIRS:%=%-recursive): - $(MAKE) -C $(subst -recursive,,$@) SUBSYS.o - -clean: - for dir in $(SUBDIRS); do $(MAKE) -C $$dir $@ || exit; done - rm -f SUBSYS.o +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/storage/buffer/Makefile b/src/backend/storage/buffer/Makefile index c375e182a8..4232f28df4 100644 --- a/src/backend/storage/buffer/Makefile +++ b/src/backend/storage/buffer/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = buf_table.o buf_init.o bufmgr.o freelist.o localbuf.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/storage/file/Makefile b/src/backend/storage/file/Makefile index 08aa75baa3..24fb246bbb 100644 --- a/src/backend/storage/file/Makefile +++ b/src/backend/storage/file/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = fd.o buffile.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/storage/freespace/Makefile b/src/backend/storage/freespace/Makefile index 2cb0e67f20..f3229c0b48 100644 --- a/src/backend/storage/freespace/Makefile +++ b/src/backend/storage/freespace/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = freespace.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/storage/ipc/Makefile b/src/backend/storage/ipc/Makefile index 0de7694ea3..4d390bd668 100644 --- a/src/backend/storage/ipc/Makefile +++ b/src/backend/storage/ipc/Makefile @@ -18,10 +18,4 @@ endif OBJS = ipc.o ipci.o pmsignal.o procarray.o shmem.o shmqueue.o \ sinval.o sinvaladt.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/storage/large_object/Makefile b/src/backend/storage/large_object/Makefile index 9066b58e5e..c7648237c5 100644 --- a/src/backend/storage/large_object/Makefile +++ b/src/backend/storage/large_object/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = inv_api.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/storage/lmgr/Makefile b/src/backend/storage/lmgr/Makefile index b3b37d7118..0128b7161f 100644 --- a/src/backend/storage/lmgr/Makefile +++ b/src/backend/storage/lmgr/Makefile @@ -14,10 +14,7 @@ include $(top_builddir)/src/Makefile.global OBJS = lmgr.o lock.o proc.o deadlock.o lwlock.o spin.o s_lock.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk ifdef TAS TASPATH = $(top_builddir)/src/backend/port/tas.o @@ -31,4 +28,4 @@ check: s_lock_test ./s_lock_test clean distclean maintainer-clean: - rm -f SUBSYS.o $(OBJS) s_lock_test + rm -f s_lock_test diff --git a/src/backend/storage/page/Makefile b/src/backend/storage/page/Makefile index f64fa3b34f..14a555ec85 100644 --- a/src/backend/storage/page/Makefile +++ b/src/backend/storage/page/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = bufpage.o itemptr.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/storage/smgr/Makefile b/src/backend/storage/smgr/Makefile index 835cb57c79..b86b211ecd 100644 --- a/src/backend/storage/smgr/Makefile +++ b/src/backend/storage/smgr/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = md.o smgr.o smgrtype.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/tcop/Makefile b/src/backend/tcop/Makefile index e1313bb383..13b4b1402d 100644 --- a/src/backend/tcop/Makefile +++ b/src/backend/tcop/Makefile @@ -18,10 +18,4 @@ ifneq (,$(filter $(PORTNAME),cygwin win32)) override CPPFLAGS += -DWIN32_STACK_RLIMIT=$(WIN32_STACK_RLIMIT) endif -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/tsearch/Makefile b/src/backend/tsearch/Makefile index 90ac39ec40..7b8601647e 100644 --- a/src/backend/tsearch/Makefile +++ b/src/backend/tsearch/Makefile @@ -21,13 +21,7 @@ OBJS = ts_locale.o ts_parse.o wparser.o wparser_def.o dict.o \ dict_ispell.o regis.o spell.o \ to_tsany.o ts_utils.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $^ - -depend dep: - $(CC) -MM $(CFLAGS) *.c >depend +include $(top_srcdir)/src/backend/common.mk .PHONY: install-data install-data: $(DICTFILES) installdirs @@ -43,10 +37,3 @@ uninstall-data: for i in $(DICTFILES); \ do rm -rf '$(DESTDIR)$(datadir)/$(DICTDIR)/'$$i || exit; \ done - -clean distclean maintainer-clean: - rm -f SUBSYS.o $(OBJS) - -ifeq (depend,$(wildcard depend)) -include depend -endif diff --git a/src/backend/utils/Makefile b/src/backend/utils/Makefile index 049a417848..c6efd1d0a8 100644 --- a/src/backend/utils/Makefile +++ b/src/backend/utils/Makefile @@ -8,25 +8,17 @@ subdir = src/backend/utils top_builddir = ../../.. include $(top_builddir)/src/Makefile.global +OBJS = fmgrtab.o SUBDIRS = adt cache error fmgr hash init mb misc mmgr resowner sort time -SUBDIROBJS = $(SUBDIRS:%=%/SUBSYS.o) +include $(top_srcdir)/src/backend/common.mk -all: SUBSYS.o fmgroids.h +all: fmgroids.h -SUBSYS.o: fmgrtab.o $(SUBDIROBJS) - $(LD) $(LDREL) $(LDOUT) $@ $^ - -$(SUBDIROBJS): $(SUBDIRS:%=%-recursive) ; - -.PHONY: $(SUBDIRS:%=%-recursive) $(SUBDIRS:%=%-recursive): fmgroids.h - $(MAKE) -C $(subst -recursive,,$@) SUBSYS.o fmgroids.h fmgrtab.c: Gen_fmgrtab.sh $(top_srcdir)/src/include/catalog/pg_proc.h AWK='$(AWK)' $(SHELL) $< $(top_srcdir)/src/include/catalog/pg_proc.h - clean: - for dir in $(SUBDIRS); do $(MAKE) -C $$dir $@ || exit; done - rm -f SUBSYS.o fmgrtab.o fmgroids.h fmgrtab.c + rm -f fmgroids.h fmgrtab.c diff --git a/src/backend/utils/adt/Makefile b/src/backend/utils/adt/Makefile index aa2b922a87..d3a53fa291 100644 --- a/src/backend/utils/adt/Makefile +++ b/src/backend/utils/adt/Makefile @@ -33,10 +33,4 @@ OBJS = acl.o arrayfuncs.o array_userfuncs.o arrayutils.o bool.o \ like.o: like.c like_match.c -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/utils/cache/Makefile b/src/backend/utils/cache/Makefile index a360ca05fb..e612f9b6e1 100644 --- a/src/backend/utils/cache/Makefile +++ b/src/backend/utils/cache/Makefile @@ -15,10 +15,4 @@ include $(top_builddir)/src/Makefile.global OBJS = catcache.o inval.o plancache.o relcache.o \ syscache.o lsyscache.o typcache.o ts_cache.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/utils/error/Makefile b/src/backend/utils/error/Makefile index 28b0bfc048..986f63cd81 100644 --- a/src/backend/utils/error/Makefile +++ b/src/backend/utils/error/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = assert.o elog.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/utils/fmgr/Makefile b/src/backend/utils/fmgr/Makefile index 3c1c512733..b171ba193a 100644 --- a/src/backend/utils/fmgr/Makefile +++ b/src/backend/utils/fmgr/Makefile @@ -16,11 +16,4 @@ OBJS = dfmgr.o fmgr.o funcapi.o override CPPFLAGS += -DDLSUFFIX=\"$(DLSUFFIX)\" - -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/utils/hash/Makefile b/src/backend/utils/hash/Makefile index 37b2269e08..cf0fad82ce 100644 --- a/src/backend/utils/hash/Makefile +++ b/src/backend/utils/hash/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = dynahash.o hashfn.o pg_crc.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/utils/init/Makefile b/src/backend/utils/init/Makefile index 6a6e16626f..031cb2b5aa 100644 --- a/src/backend/utils/init/Makefile +++ b/src/backend/utils/init/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = flatfiles.o globals.o miscinit.o postinit.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/utils/mb/Makefile b/src/backend/utils/mb/Makefile index 4699718d2c..e2eba964ab 100644 --- a/src/backend/utils/mb/Makefile +++ b/src/backend/utils/mb/Makefile @@ -13,15 +13,8 @@ top_builddir = ../../../.. include $(top_builddir)/src/Makefile.global OBJS = encnames.o conv.o mbutils.o wchar.o wstrcmp.o wstrncmp.o -DIRS = conversion_procs -all install installdirs: SUBSYS.o - -uninstall distprep: +include $(top_srcdir)/src/backend/common.mk clean distclean maintainer-clean: - rm -f SUBSYS.o $(OBJS) - @for dir in $(DIRS); do $(MAKE) -C $$dir $@; done - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) $@ $^ + $(MAKE) -C conversion_procs $@ diff --git a/src/backend/utils/misc/Makefile b/src/backend/utils/misc/Makefile index c290bae66d..050cae03eb 100644 --- a/src/backend/utils/misc/Makefile +++ b/src/backend/utils/misc/Makefile @@ -22,11 +22,7 @@ ifdef krb_srvtab override CPPFLAGS += -DPG_KRB_SRVTAB='"$(krb_srvtab)"' endif - -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk # guc-file is compiled as part of guc guc.o: $(srcdir)/guc-file.c @@ -41,5 +37,4 @@ endif # Note: guc-file.c is not deleted by 'make clean', # since we want to ship it in distribution tarballs. clean: - rm -f SUBSYS.o $(OBJS) @rm -f lex.yy.c diff --git a/src/backend/utils/mmgr/Makefile b/src/backend/utils/mmgr/Makefile index ca8e24d6bc..d736b21307 100644 --- a/src/backend/utils/mmgr/Makefile +++ b/src/backend/utils/mmgr/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = aset.o mcxt.o portalmem.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/utils/resowner/Makefile b/src/backend/utils/resowner/Makefile index 1cbac48406..80bf62e89a 100644 --- a/src/backend/utils/resowner/Makefile +++ b/src/backend/utils/resowner/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = resowner.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/utils/sort/Makefile b/src/backend/utils/sort/Makefile index 5271e864dc..2deb8b77b7 100644 --- a/src/backend/utils/sort/Makefile +++ b/src/backend/utils/sort/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = logtape.o tuplesort.o tuplestore.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/utils/time/Makefile b/src/backend/utils/time/Makefile index 91f5245dd6..4e18b77e32 100644 --- a/src/backend/utils/time/Makefile +++ b/src/backend/utils/time/Makefile @@ -14,10 +14,4 @@ include $(top_builddir)/src/Makefile.global OBJS = combocid.o tqual.o -all: SUBSYS.o - -SUBSYS.o: $(OBJS) - $(LD) $(LDREL) $(LDOUT) SUBSYS.o $(OBJS) - -clean: - rm -f SUBSYS.o $(OBJS) +include $(top_srcdir)/src/backend/common.mk |