I want to work on getting rid of the SUBSYS.o things in the backend build,
ideally in some way to supports both the current and the new way of building
things (details to be defined). To prepare for that, I have refactored some
common rules in the backend makefiles. See attached patch. This should not
change any functionality of the build system at the moment.
--
Peter Eisentraut
http://developer.postgresql.org/~petere/
diff --git a/src/backend/access/Makefile b/src/backend/access/Makefile
index 4753eac..df05f8e 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 7adc66b..a334816 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 5bab415..c5872d3 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 d1e3266..8d3a6d0 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 f653a83..df7563c 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 abd3212..1674467 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 d849b26..5469970 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 b833ef9..323a2f3 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 9d7c23c..8532d28 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