Capturing the exit status for the build process didn't work. Using
popen2.Popen4() makes it work. Fixes #702180.
diff --git a/Lib/plat-mac/pimp.py b/Lib/plat-mac/pimp.py
index 426177a..6664475 100644
--- a/Lib/plat-mac/pimp.py
+++ b/Lib/plat-mac/pimp.py
@@ -14,6 +14,7 @@
 """
 import sys
 import os
+import popen2
 import urllib
 import urllib2
 import urlparse
@@ -395,16 +396,15 @@
 			output.write("+ %s\n" % cmd)
 		if NO_EXECUTE:
 			return 0
-		dummy, fp = os.popen4(cmd, "r")
-		dummy.close()
+		child = popen2.Popen4(cmd)
+		child.tochild.close()
 		while 1:
-			line = fp.readline()
+			line = child.fromchild.readline()
 			if not line:
 				break
 			if output:
 				output.write(line)
-		rv = fp.close()
-		return rv
+		return child.wait()
 		
 	def downloadPackageOnly(self, output=None):
 		"""Download a single package, if needed.
@@ -588,7 +588,8 @@
 		if not installcmd:
 			installcmd = '"%s" setup.py install' % sys.executable
 		if self._cmd(output, self._buildDirname, installcmd):
-			return "install %s: running \"%s\" failed" % self.fullname()
+			return "install %s: running \"%s\" failed" % \
+				(self.fullname(), installcmd)
 		
 		self.afterInstall()