aboutsummaryrefslogtreecommitdiffstats
path: root/math/R
diff options
context:
space:
mode:
authorpav <pav@FreeBSD.org>2010-05-17 07:30:46 +0800
committerpav <pav@FreeBSD.org>2010-05-17 07:30:46 +0800
commitcf4a7308897f2484006c30ae00490205c82114ef (patch)
tree90e96adcaf4c5cacdcc2265e5c1889539c4a01f9 /math/R
parent36c8e822444570791b7ac41c9e9d97606e925f87 (diff)
downloadfreebsd-ports-gnome-cf4a7308897f2484006c30ae00490205c82114ef.tar.gz
freebsd-ports-gnome-cf4a7308897f2484006c30ae00490205c82114ef.tar.zst
freebsd-ports-gnome-cf4a7308897f2484006c30ae00490205c82114ef.zip
- Fix on 6.X
Submitted by: b. f. <bf1783@googlemail.com>
Diffstat (limited to 'math/R')
-rw-r--r--math/R/Makefile4
-rw-r--r--math/R/files/freebsd6_tar_patch15
2 files changed, 19 insertions, 0 deletions
diff --git a/math/R/Makefile b/math/R/Makefile
index 750e6eb759ae..8fd728ffb5b0 100644
--- a/math/R/Makefile
+++ b/math/R/Makefile
@@ -80,6 +80,10 @@ CONFIGURE_ARGS= --with-system-bzlib --with-system-zlib rdocdir=${DOCSDIR}
.include <bsd.port.pre.mk>
+.if ${OSVERSION} < 700000
+EXTRA_PATCHES+= ${FILESDIR}/freebsd6_tar_patch
+.endif
+
.if !defined(LIBRMATH_SLAVEPORT)
.if defined(WITH_ATLAS)
LIB_DEPENDS+= atlas.2:${PORTSDIR}/math/atlas
diff --git a/math/R/files/freebsd6_tar_patch b/math/R/files/freebsd6_tar_patch
new file mode 100644
index 000000000000..c65b6ef7096e
--- /dev/null
+++ b/math/R/files/freebsd6_tar_patch
@@ -0,0 +1,15 @@
+--- src/library/tools/R/install.R.orig 2010-05-16 07:18:27.000000000 -0400
++++ src/library/tools/R/install.R 2010-05-16 07:29:30.000000000 -0400
+@@ -1019,7 +1019,11 @@
+ of <- dir(tmpdir, full.names = TRUE)
+ ## force the use of internal untar unless over-ridden
+ ## so e.g. .tar.xz works everywhere
+- TAR <- Sys.getenv("R_INSTALL_TAR", "internal")
++ ## Disable the default use of the internal tar on FreeBSD 6.X, it segfaults
++ ## on the default package MASS. This means that packages with lzma-compressed tarballs
++ ## will not be usable on FreeBSD 6.X versions before the import of xz, so
++ ## a better solution should be found.
++ ## TAR <- Sys.getenv("R_INSTALL_TAR", "internal")
+ if (untar(pkg, exdir = tmpdir, tar = TAR))
+ errmsg("error unpacking tarball")
+ ## Now see what we got