diff --git a/Makefile.pre.in b/Makefile.pre.in
index 50664b1..ef93703 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -524,7 +524,7 @@
 		$(SIGNAL_OBJS) \
 		$(MODOBJS) \
 		$(srcdir)/Modules/getbuildinfo.c
-	$(CC) -c $(PY_CFLAGS) -DSVNVERSION=\"`LC_ALL=C $(SVNVERSION)`\" -o $@ $(srcdir)/Modules/getbuildinfo.c
+	$(CC) -c $(PY_CFLAGS) -DSVNVERSION="\"`LC_ALL=C $(SVNVERSION)`\"" -o $@ $(srcdir)/Modules/getbuildinfo.c
 
 Modules/getpath.o: $(srcdir)/Modules/getpath.c Makefile
 	$(CC) -c $(PY_CFLAGS) -DPYTHONPATH='"$(PYTHONPATH)"' \
diff --git a/Misc/ACKS b/Misc/ACKS
index b31a3b6..e7b6257 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -709,6 +709,7 @@
 Andrew Svetlov
 Paul Swartz
 Thenault Sylvain
+Arfrever Frehtes Taifersar Arahesis
 Geoff Talvola
 Musashi Tamura
 William Tanksley
diff --git a/Misc/NEWS b/Misc/NEWS
index dc9fe45..378868e 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -1081,6 +1081,8 @@
 Build
 -----
 
+- Issue #6094: Build correctly with Subversion 1.7.
+
 - Issue #5847: Remove -n switch on "Edit with IDLE" menu item.
 
 - Issue #5726: Make Modules/ld_so_aix return the actual exit code of the
diff --git a/Modules/getbuildinfo.c b/Modules/getbuildinfo.c
index b673f3f..f4bd14a 100644
--- a/Modules/getbuildinfo.c
+++ b/Modules/getbuildinfo.c
@@ -48,5 +48,5 @@
 	static const char svnversion[] = SVNVERSION;
 	if (svnversion[0] != '$')
 		return svnversion; /* it was interpolated, or passed on command line */
-	return "exported";
+	return "Unversioned directory";
 }
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index b9d5dba..6639acc 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -1115,7 +1115,7 @@
 
 
 	svnversion = _Py_svnversion();
-	if (strcmp(svnversion, "exported") != 0)
+	if (strcmp(svnversion, "Unversioned directory") != 0 && strcmp(svnversion, "exported") != 0)
 		svn_revision = svnversion;
 	else if (istag) {
 		len = strlen(_patchlevel_revision);
diff --git a/configure b/configure
index ca9eac2..f06655e 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in Revision: 72800 .
+# From configure.in Revision: 72865 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.61 for python 3.1.
 #
@@ -4333,7 +4333,7 @@
 then
 	SVNVERSION="svnversion \$(srcdir)"
 else
-	SVNVERSION="echo exported"
+	SVNVERSION="echo Unversioned directory"
 fi
 
 case $MACHDEP in
@@ -13516,14 +13516,6 @@
 	Linux*|GNU*) LINKFORSHARED="-Xlinker -export-dynamic";;
 	# -u libsys_s pulls in all symbols in libsys
 	Darwin/*)
-		# -u _PyMac_Error is needed to pull in the mac toolbox glue,
-		# which is
-		# not used by the core itself but which needs to be in the core so
-		# that dynamically loaded extension modules have access to it.
-		# -prebind is no longer used, because it actually seems to give a
-		# slowdown in stead of a speedup, maybe due to the large number of
-		# dynamic loads Python does.
-
 		LINKFORSHARED="$extra_undefs -framework CoreFoundation"
 		if test "$enable_framework"
 		then
diff --git a/configure.in b/configure.in
index 557d11e..8d0d0de 100644
--- a/configure.in
+++ b/configure.in
@@ -758,7 +758,7 @@
 then
 	SVNVERSION="svnversion \$(srcdir)"
 else
-	SVNVERSION="echo exported"
+	SVNVERSION="echo Unversioned directory"
 fi
 
 case $MACHDEP in
