summaryrefslogtreecommitdiff
path: root/src/Makefile
diff options
context:
space:
mode:
authorPeter Eisentraut2010-11-12 20:15:16 +0000
committerPeter Eisentraut2010-11-12 20:15:16 +0000
commit19e231bbdaef792dce22100012b504e2fb72f971 (patch)
tree011823e7b1b882972eaff7c4f3a6b18571030e4a /src/Makefile
parentd6754f67b08ad6a05640fc5d9d97c6f225512ea0 (diff)
Improved parallel make support
Replace for loops in makefiles with proper dependencies. Parallel make can now span across directories. Also, make -k and make -q work properly. GNU make 3.80 or newer is now required.
Diffstat (limited to 'src/Makefile')
-rw-r--r--src/Makefile47
1 files changed, 14 insertions, 33 deletions
diff --git a/src/Makefile b/src/Makefile
index 0e1e43197a4..0d4a6ee65b9 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -12,20 +12,21 @@ subdir = src
top_builddir = ..
include Makefile.global
+SUBDIRS = \
+ port \
+ timezone \
+ backend \
+ backend/utils/mb/conversion_procs \
+ backend/snowball \
+ include \
+ interfaces \
+ backend/replication/libpqwalreceiver \
+ bin \
+ pl \
+ makefiles \
+ test/regress
-all install installdirs uninstall distprep:
- $(MAKE) -C port $@
- $(MAKE) -C timezone $@
- $(MAKE) -C backend $@
- $(MAKE) -C backend/utils/mb/conversion_procs $@
- $(MAKE) -C backend/snowball $@
- $(MAKE) -C include $@
- $(MAKE) -C interfaces $@
- $(MAKE) -C backend/replication/libpqwalreceiver $@
- $(MAKE) -C bin $@
- $(MAKE) -C pl $@
- $(MAKE) -C makefiles $@
- $(MAKE) -C test/regress $@
+$(recurse)
install: install-local
@@ -46,31 +47,11 @@ uninstall-local:
rm -f $(addprefix '$(DESTDIR)$(pgxsdir)/$(subdir)'/, Makefile.global Makefile.port Makefile.shlib nls-global.mk)
clean:
- $(MAKE) -C port $@
- $(MAKE) -C timezone $@
- $(MAKE) -C backend $@
- $(MAKE) -C backend/snowball $@
- $(MAKE) -C include $@
- $(MAKE) -C interfaces $@
- $(MAKE) -C backend/replication/libpqwalreceiver $@
- $(MAKE) -C bin $@
- $(MAKE) -C pl $@
- $(MAKE) -C makefiles $@
$(MAKE) -C test $@
$(MAKE) -C tutorial NO_PGXS=1 $@
$(MAKE) -C test/thread $@
distclean maintainer-clean:
- $(MAKE) -C port $@
- $(MAKE) -C timezone $@
- $(MAKE) -C backend $@
- $(MAKE) -C backend/snowball $@
- $(MAKE) -C include $@
- $(MAKE) -C interfaces $@
- $(MAKE) -C backend/replication/libpqwalreceiver $@
- $(MAKE) -C bin $@
- $(MAKE) -C pl $@
- $(MAKE) -C makefiles $@
$(MAKE) -C test $@
$(MAKE) -C tutorial NO_PGXS=1 $@
$(MAKE) -C test/thread $@