[58123] trunk/dports/math/R

jmr at macports.org jmr at macports.org
Tue Sep 22 06:12:52 PDT 2009


Revision: 58123
          http://trac.macports.org/changeset/58123
Author:   jmr at macports.org
Date:     2009-09-22 06:12:48 -0700 (Tue, 22 Sep 2009)
Log Message:
-----------
R: update to 2.9.2 and fix library install_names (#20222)

Modified Paths:
--------------
    trunk/dports/math/R/Portfile

Added Paths:
-----------
    trunk/dports/math/R/files/
    trunk/dports/math/R/files/patch-configure.diff

Modified: trunk/dports/math/R/Portfile
===================================================================
--- trunk/dports/math/R/Portfile	2009-09-22 12:54:00 UTC (rev 58122)
+++ trunk/dports/math/R/Portfile	2009-09-22 13:12:48 UTC (rev 58123)
@@ -3,7 +3,7 @@
 PortSystem 1.0
 
 name             R
-version          2.9.1
+version          2.9.2
 categories       math science
 maintainers      epfl.ch:kjell.konis
 platforms        darwin
@@ -12,7 +12,7 @@
 
 long_description \
     R is a language and environment for statistical computing and graphics. \
-    R provides a wide variety of statistical (linear and nonlinear modelling, \
+    R provides a wide variety of statistical (linear and nonlinear modeling, \
     classical statistical tests, time-series analysis, classification, \
     clustering, ...) and graphical techniques, and is highly extensible.
 
@@ -24,9 +24,9 @@
                  http://cran.hu.r-project.org/src/base/R-2/ \
                  http://cran.r-project.org/src/base/R-2/
 
-checksums        md5     54a79eebdf0cec3fd2c489fc94d99b00 \
-                 sha1    59bcc4e775db5c681aefbfafe9fc357bc99e1fad \
-                 rmd160  cdce66673d301555c3a4c128283b456b85d9dcaa
+checksums        md5     112e2a1306cf71320e45d14e87e5b913 \
+                 sha1    3934743b67a57691db724606c575e38a35ecb590 \
+                 rmd160  71313889c2886b285dcf588d60089a5ce7260648
 
 depends_lib      port:gettext \
                  port:glib2 \
@@ -42,7 +42,14 @@
 
 universal_variant no
 
+platform darwin 9 {
+    patchfiles       patch-configure.diff
+}
 
+platform darwin 10 {
+    patchfiles       patch-configure.diff
+}
+
 variant gcc42 description {Build with gcc42} {
     configure.compiler macports-gcc-4.2
     depends_lib-append port:gcc42
@@ -87,27 +94,42 @@
   foreach v { "rhome" "rincludedir"} {
     reinplace "s|${v}=${destroot}|${v}=|" "${destroot}${prefix}/lib/pkgconfig/libR.pc"
   }
+}
 
-  system "install_name_tool -id ${prefix}/lib/R/lib/libR.dylib \
-    ${destroot}${prefix}/lib/R/lib/libR.dylib"
-  system "install_name_tool -change libRblas.dylib ${prefix}/lib/R/lib/libRblas.dylib \
-    ${destroot}${prefix}/lib/R/lib/libR.dylib"
+platform darwin 8 {
+    post-destroot {
+	  foreach r { "/bin/R" "/lib/R/bin/R" } {
+	    foreach dir { "R_HOME_DIR" "R_SHARE_DIR" "R_INCLUDE_DIR" "R_DOC_DIR" } {
+	      reinplace "s|${dir}=${destroot}|${dir}=|" \
+	        "${destroot}${prefix}${r}"
+	    }
+	  }
 
-  system "install_name_tool -id ${prefix}/lib/R/lib/libRblas.dylib \
-    ${destroot}${prefix}/lib/R/lib/libRblas.dylib"
+	  foreach v { "rhome" "rincludedir"} {
+	    reinplace "s|${v}=${destroot}|${v}=|" "${destroot}${prefix}/lib/pkgconfig/libR.pc"
+	  }
 
-  system "install_name_tool -id ${prefix}/lib/R/lib/libRlapack.dylib \
-    ${destroot}${prefix}/lib/R/lib/libRlapack.dylib"
-  system "install_name_tool -change libRblas.dylib ${prefix}/lib/R/lib/libRblas.dylib \
-    ${destroot}${prefix}/lib/R/lib/libRlapack.dylib"
-  system "install_name_tool -change libR.dylib ${prefix}/lib/R/lib/libR.dylib \
-    ${destroot}${prefix}/lib/R/lib/libRlapack.dylib"
+        system "install_name_tool -id ${prefix}/lib/R/lib/libR.dylib \
+            ${destroot}${prefix}/lib/R/lib/libR.dylib"
+        system "install_name_tool -change libRblas.dylib ${prefix}/lib/R/lib/libRblas.dylib \
+            ${destroot}${prefix}/lib/R/lib/libR.dylib"
 
-  foreach so [ exec find ${destroot}${prefix}/lib/R -name "\*.so" ] {
-    regsub ":$" ${so} "" destroot_so_path
-    regsub ${destroot} ${destroot_so_path} "" so_path
-    system "install_name_tool -id ${so_path} ${destroot_so_path}"
-    system "install_name_tool -change libR.dylib ${prefix}/lib/R/lib/libR.dylib ${destroot_so_path}"
-  }
+        system "install_name_tool -id ${prefix}/lib/R/lib/libRblas.dylib \
+            ${destroot}${prefix}/lib/R/lib/libRblas.dylib"
+
+        system "install_name_tool -id ${prefix}/lib/R/lib/libRlapack.dylib \
+            ${destroot}${prefix}/lib/R/lib/libRlapack.dylib"
+        system "install_name_tool -change libRblas.dylib ${prefix}/lib/R/lib/libRblas.dylib \
+            ${destroot}${prefix}/lib/R/lib/libRlapack.dylib"
+        system "install_name_tool -change libR.dylib ${prefix}/lib/R/lib/libR.dylib \
+            ${destroot}${prefix}/lib/R/lib/libRlapack.dylib"
+
+        foreach so [ exec find ${destroot}${prefix}/lib/R -name "\*.so" ] {
+            regsub ":$" ${so} "" destroot_so_path
+            regsub ${destroot} ${destroot_so_path} "" so_path
+            system "install_name_tool -id ${so_path} ${destroot_so_path}"
+            system "install_name_tool -change libR.dylib ${prefix}/lib/R/lib/libR.dylib \
+                ${destroot_so_path}"
+        }
+    }
 }
-

Added: trunk/dports/math/R/files/patch-configure.diff
===================================================================
--- trunk/dports/math/R/files/patch-configure.diff	                        (rev 0)
+++ trunk/dports/math/R/files/patch-configure.diff	2009-09-22 13:12:48 UTC (rev 58123)
@@ -0,0 +1,37 @@
+--- configure.orig	2009-06-15 09:22:20.000000000 -0600
++++ configure	2009-07-07 23:51:35.000000000 -0600
+@@ -31854,10 +31854,10 @@
+     DYLIB_EXT=".dylib"
+     dylib_ldflags="${darwin_dylib_ldflags}"
+     MAJR_VERSION=`echo "${PACKAGE_VERSION}" | sed  -e "s/[\.][1-9]$/.0/"`
+-    LIBR_LDFLAGS="-install_name libR.dylib -compatibility_version ${MAJR_VERSION}  -current_version ${PACKAGE_VERSION}  -headerpad_max_install_names"
+-    RLAPACK_LDFLAGS="-install_name libRlapack.dylib -compatibility_version ${MAJR_VERSION} -current_version ${PACKAGE_VERSION}  -headerpad_max_install_names"
++    LIBR_LDFLAGS="-install_name \$(libdir)/R/lib/libR.dylib -compatibility_version ${MAJR_VERSION}  -current_version ${PACKAGE_VERSION}  -headerpad_max_install_names"
++    RLAPACK_LDFLAGS="-install_name \$(libdir)/R/lib/libRlapack.dylib -compatibility_version ${MAJR_VERSION} -current_version ${PACKAGE_VERSION}  -headerpad_max_install_names"
+     ## don't use version in libRblas so we can replace it with any BLAS implementation
+-    RBLAS_LDFLAGS="-install_name libRblas.dylib -headerpad_max_install_names"
++    RBLAS_LDFLAGS="-install_name \$(libdir)/R/lib/libRblas.dylib -headerpad_max_install_names"
+     ;;
+   hpux*)
+     ## Needs to avoid embedding a relative path ../../../bin.
+@@ -38329,20 +38329,6 @@
+ fi
+ 
+ 
+-case "${host_os}" in
+-  darwin*)
+-    ## In order to allow the R build to be relocatable, we strip paths
+-    ## from all shlibs and rely on DYLD_LIBRARY_PATH. Unfortunately
+-    ## Darwin linker ignores it at build-time and doesn't use -L to
+-    ## resolve dylib dependencies, so libRblas will not be found unless
+-    ## we tell ld where it lives. I don't know of any more elegant solution :/
+-    if test "x${use_blas_shlib}" = xyes; then
+-      LIBR="${LIBR} -dylib_file libRblas.dylib:\$(R_HOME)/lib\$(R_ARCH)/libRblas.dylib"
+-    fi
+-  ;;
+-esac
+-
+-
+ ## This version is used to build a shared BLAS lib
+ BLAS_LIBS0=${BLAS_LIBS}
+ 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20090922/df5965a8/attachment.html>


More information about the macports-changes mailing list