diff --git a/Makefile b/Makefile
index c5eca7a9d2e925b713154068f278f4dd111233f9..8fbbcbdac2a6cc06d45734b6a77df213ae757ac9 100644
--- a/Makefile
+++ b/Makefile
@@ -1,36 +1,16 @@
-# The PostgreSQL make files exploit features of GNU make that other
-# makes do not have. Because it is a common mistake for users to try
-# to build Postgres with a different make, we have this make file
-# that, as a service, will look for a GNU make and invoke it, or show
-# an error message if none could be found.
+# The Postgres make files exploit features of GNU make that other makes
+# do not have.  Because it is a common mistake for users to try to build
+# Postgres with a different make, we have this make file that does nothing
+# but tell the user to use GNU make.
 
-# If the user were using GNU make now, this file would not get used
-# because GNU make uses a make file named "GNUmakefile" in preference
-# to "Makefile" if it exists. PostgreSQL is shipped with a
-# "GNUmakefile". If the user hasn't run the configure script yet, the
-# GNUmakefile won't exist yet, so we catch that case as well.
+# If the user were using GNU make now, this file would not get used because
+# GNU make uses a make file named "GNUmakefile" in preference to "Makefile"
+# if it exists.  Postgres is shipped with a "GNUmakefile".
 
-
-all install clean dep depend distclean maintainer-clean:
-	@if ! [ -f GNUmakefile ] ; then \
-	   echo "You need to run the \`configure' program first. See the file"; \
-	   echo "\`INSTALL' for installation instructions." ; \
-	   false ; \
-	 fi
-	@IFS=':' ; \
-	 for dir in $$PATH; do \
-	   for prog in gmake gnumake make; do \
-	     if [ -f $$dir/$$prog ] && ( $$dir/$$prog --version | grep GNU >/dev/null 2>&1 ) ; then \
-	       GMAKE=$$dir/$$prog; \
-	       break 2; \
-	     fi; \
-	   done; \
-	 done; \
-	\
-	 if [ x"$${GMAKE+set}" = xset ]; then \
-	   echo "Using GNU make found at $${GMAKE}"; \
-	   $${GMAKE} $@ ; \
-	 else \
-	   echo "You must use GNU make to build PostgreSQL." ; \
-	   false; \
-	 fi
+all install clean dep depend distclean:
+	@echo "You must use GNU make to use Postgres.  It may be installed"
+	@echo "on your system with the name 'gmake'."
+	@echo
+	@echo "NOTE:  If you are sure that you are using GNU make and you are"
+	@echo "       still getting this message, you may simply need to run"
+	@echo "       the configure program."
diff --git a/src/Makefile b/src/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..8fbbcbdac2a6cc06d45734b6a77df213ae757ac9
--- /dev/null
+++ b/src/Makefile
@@ -0,0 +1,16 @@
+# The Postgres make files exploit features of GNU make that other makes
+# do not have.  Because it is a common mistake for users to try to build
+# Postgres with a different make, we have this make file that does nothing
+# but tell the user to use GNU make.
+
+# If the user were using GNU make now, this file would not get used because
+# GNU make uses a make file named "GNUmakefile" in preference to "Makefile"
+# if it exists.  Postgres is shipped with a "GNUmakefile".
+
+all install clean dep depend distclean:
+	@echo "You must use GNU make to use Postgres.  It may be installed"
+	@echo "on your system with the name 'gmake'."
+	@echo
+	@echo "NOTE:  If you are sure that you are using GNU make and you are"
+	@echo "       still getting this message, you may simply need to run"
+	@echo "       the configure program."