--- a/contrib/Makefile
+++ b/contrib/Makefile
@@ -5,57 +5,9 @@
 include $(top_builddir)/src/Makefile.global
 
 SUBDIRS = \
-		adminpack	\
-		auth_delay	\
-		auto_explain	\
-		bloom		\
-		btree_gin	\
-		btree_gist	\
-		chkpass		\
-		citext		\
-		cube		\
-		dblink		\
-		dict_int	\
-		dict_xsyn	\
-		earthdistance	\
-		file_fdw	\
-		fuzzystrmatch	\
-		hstore		\
-		intagg		\
-		intarray	\
-		isn		\
-		lo		\
-		ltree		\
 		oid2name	\
-		pageinspect	\
-		passwordcheck	\
-		pg_buffercache	\
-		pg_freespacemap \
-		pg_prewarm	\
-		pg_standby	\
-		pg_stat_statements \
-		pg_trgm		\
-		pgcrypto	\
-		pgrowlocks	\
-		pgstattuple	\
-		pg_visibility	\
-		postgres_fdw	\
-		seg		\
-		spi		\
-		tablefunc	\
-		tcn		\
-		test_decoding	\
-		tsm_system_rows \
-		tsm_system_time \
-		tsearch2	\
-		unaccent	\
 		vacuumlo
 
-ifeq ($(with_openssl),yes)
-SUBDIRS += sslinfo
-else
-ALWAYS_SUBDIRS += sslinfo
-endif
 
 ifneq ($(with_uuid),no)
 SUBDIRS += uuid-ossp
--- a/src/backend/Makefile
+++ b/src/backend/Makefile
@@ -51,7 +51,7 @@
 
 ##########################################################################
 
-all: submake-libpgport submake-schemapg postgres $(POSTGRES_IMP)
+all: generated-headers
 
 ifneq ($(PORTNAME), cygwin)
 ifneq ($(PORTNAME), win32)
@@ -218,23 +218,7 @@
 
 ##########################################################################
 
-install: all installdirs install-bin
-ifeq ($(PORTNAME), cygwin)
-ifeq ($(MAKE_DLL), true)
-	$(INSTALL_DATA) libpostgres.a '$(DESTDIR)$(libdir)/libpostgres.a'
-endif
-endif
-ifeq ($(PORTNAME), win32)
-ifeq ($(MAKE_DLL), true)
-	$(INSTALL_DATA) libpostgres.a '$(DESTDIR)$(libdir)/libpostgres.a'
-endif
-endif
-	$(MAKE) -C catalog install-data
-	$(MAKE) -C tsearch install-data
-	$(INSTALL_DATA) $(srcdir)/libpq/pg_hba.conf.sample '$(DESTDIR)$(datadir)/pg_hba.conf.sample'
-	$(INSTALL_DATA) $(srcdir)/libpq/pg_ident.conf.sample '$(DESTDIR)$(datadir)/pg_ident.conf.sample'
-	$(INSTALL_DATA) $(srcdir)/utils/misc/postgresql.conf.sample '$(DESTDIR)$(datadir)/postgresql.conf.sample'
-	$(INSTALL_DATA) $(srcdir)/access/transam/recovery.conf.sample '$(DESTDIR)$(datadir)/recovery.conf.sample'
+install:
 
 install-bin: postgres $(POSTGRES_IMP) installdirs
 	$(INSTALL_PROGRAM) postgres$(X) '$(DESTDIR)$(bindir)/postgres$(X)'
--- a/src/bin/Makefile
+++ b/src/bin/Makefile
@@ -14,19 +14,8 @@
 include $(top_builddir)/src/Makefile.global
 
 SUBDIRS = \
-	initdb \
-	pg_archivecleanup \
-	pg_basebackup \
 	pg_config \
-	pg_controldata \
-	pg_ctl \
 	pg_dump \
-	pg_resetxlog \
-	pg_rewind \
-	pg_test_fsync \
-	pg_test_timing \
-	pg_upgrade \
-	pg_xlogdump \
 	pgbench \
 	psql \
 	scripts
--- a/src/Makefile
+++ b/src/Makefile
@@ -15,19 +15,12 @@
 SUBDIRS = \
 	common \
 	port \
-	timezone \
 	backend \
-	backend/utils/mb/conversion_procs \
-	backend/snowball \
 	include \
 	interfaces \
-	backend/replication/libpqwalreceiver \
 	fe_utils \
 	bin \
-	pl \
-	makefiles \
-	test/regress \
-	test/perl
+	makefiles
 
 # There are too many interdependencies between the subdirectories, so
 # don't attempt parallel make here.
