diff -u r-base-2.15.1/debian/changelog r-base-2.15.1/debian/changelog
--- r-base-2.15.1/debian/changelog
+++ r-base-2.15.1/debian/changelog
@@ -1,3 +1,13 @@
+r-base (2.15.1-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * src/library/tools/R/install.R:
+    - Pass "perl = TRUE" parameter to sub function when defining SHLIB_*
+      macros to work-around an erroneus string replacement which causes
+      build failures on arm* architectures (Closes: #679180).
+
+ -- Luca Falavigna <dktrkranz@debian.org>  Sat, 14 Jul 2012 11:45:16 +0200
+
 r-base (2.15.1-1) unstable; urgency=low
 
   * New upstream version released this morning
only in patch2:
unchanged:
--- r-base-2.15.1.orig/src/library/tools/R/install.R
+++ r-base-2.15.1/src/library/tools/R/install.R
@@ -52,7 +52,7 @@
     SHLIB_EXT <- if (WINDOWS) ".dll" else {
         ## can we do better?
         mconf <- file.path(R.home(), paste0("etc", rarch), "Makeconf")
-        sub(".*= ", "", grep("^SHLIB_EXT", readLines(mconf), value = TRUE))
+        sub(".*= ", "", grep("^SHLIB_EXT", readLines(mconf), value = TRUE), perl = TRUE)
     }
 
     options(warn = 1)
@@ -1597,8 +1597,8 @@
         mconf <- readLines(file.path(R.home(),
                                      paste0("etc", Sys.getenv("R_ARCH")),
                                      "Makeconf"))
-        SHLIB_EXT <- sub(".*= ", "", grep("^SHLIB_EXT", mconf, value = TRUE))
-        SHLIB_LIBADD <- sub(".*= ", "", grep("^SHLIB_LIBADD", mconf, value = TRUE))
+        SHLIB_EXT <- sub(".*= ", "", grep("^SHLIB_EXT", mconf, value = TRUE), perl = TRUE)
+        SHLIB_LIBADD <- sub(".*= ", "", grep("^SHLIB_LIBADD", mconf, value = TRUE), perl = TRUE)
         MAKE <- Sys.getenv("MAKE")
         rarch <- Sys.getenv("R_ARCH")
     } else {
