R: add various features
* Ensure that R can link blas, liblapack, and libgfortran at run-time. * Ensure that R can run the Tcl/Tk interpreter. * Add Java support. * Install texinfo and PDF documentation.
This commit is contained in:
parent
1f9005a3f6
commit
9185515611
@ -1,6 +1,7 @@
|
|||||||
{ stdenv, fetchurl, blas, bzip2, gfortran, liblapack, libX11, libXmu, libXt
|
{ stdenv, fetchurl, blas, bzip2, gfortran, liblapack, libX11, libXmu, libXt
|
||||||
, libjpeg, libpng, libtiff, ncurses, pango, pcre, perl, readline, tcl
|
, libjpeg, libpng, libtiff, ncurses, pango, pcre, perl, readline, tcl
|
||||||
, texLive, tk, xz, zlib, less, texinfo, graphviz
|
, texLive, tk, xz, zlib, less, texinfo, graphviz, icu, pkgconfig, bison
|
||||||
|
, imake, which, jdk, atlas
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
@ -13,15 +14,65 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
buildInputs = [ blas bzip2 gfortran liblapack libX11 libXmu libXt
|
buildInputs = [ blas bzip2 gfortran liblapack libX11 libXmu libXt
|
||||||
libXt libjpeg libpng libtiff ncurses pango pcre perl readline tcl
|
libXt libjpeg libpng libtiff ncurses pango pcre perl readline tcl
|
||||||
texLive tk xz zlib less texinfo graphviz ];
|
texLive tk xz zlib less texinfo graphviz icu pkgconfig bison imake
|
||||||
|
which jdk atlas
|
||||||
|
];
|
||||||
|
|
||||||
|
patches = [ ./no-usr-local-search-paths.patch ];
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
configureFlagsArray=(
|
||||||
|
--disable-lto
|
||||||
|
--with-blas="-L${atlas}/lib -lf77blas -latlas"
|
||||||
|
--with-lapack="-L${liblapack}/lib -llapack"
|
||||||
|
--with-readline
|
||||||
|
--with-tcltk --with-tcl-config="${tcl}/lib/tclConfig.sh" --with-tk-config="${tk}/lib/tkConfig.sh"
|
||||||
|
--with-cairo
|
||||||
|
--with-libpng
|
||||||
|
--with-jpeglib
|
||||||
|
--with-libtiff
|
||||||
|
--with-system-zlib
|
||||||
|
--with-system-bzlib
|
||||||
|
--with-system-pcre
|
||||||
|
--with-system-xz
|
||||||
|
--with-ICU
|
||||||
|
R_SHELL="${stdenv.shell}"
|
||||||
|
JAVA_HOME="${jdk}"
|
||||||
|
LDFLAGS="-L${gfortran.gcc}/lib"
|
||||||
|
)
|
||||||
|
echo "TCLLIBPATH=${tk}/lib" >>etc/Renviron.in
|
||||||
|
'';
|
||||||
|
|
||||||
|
installTargets = [ "install" "install-info" "install-pdf" ];
|
||||||
|
|
||||||
|
doCheck = true;
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "a free software environment for statistical computing and graphics";
|
|
||||||
homepage = "http://www.r-project.org/";
|
homepage = "http://www.r-project.org/";
|
||||||
|
description = "a free software environment for statistical computing and graphics";
|
||||||
license = stdenv.lib.licenses.gpl2Plus;
|
license = stdenv.lib.licenses.gpl2Plus;
|
||||||
|
|
||||||
|
longDescription = ''
|
||||||
|
GNU R is a language and environment for statistical computing and
|
||||||
|
graphics that provides a wide variety of statistical (linear and
|
||||||
|
nonlinear modelling, classical statistical tests, time-series
|
||||||
|
analysis, classification, clustering, ...) and graphical
|
||||||
|
techniques, and is highly extensible. One of R's strengths is the
|
||||||
|
ease with which well-designed publication-quality plots can be
|
||||||
|
produced, including mathematical symbols and formulae where
|
||||||
|
needed. R is an integrated suite of software facilities for data
|
||||||
|
manipulation, calculation and graphical display. It includes an
|
||||||
|
effective data handling and storage facility, a suite of operators
|
||||||
|
for calculations on arrays, in particular matrices, a large,
|
||||||
|
coherent, integrated collection of intermediate tools for data
|
||||||
|
analysis, graphical facilities for data analysis and display
|
||||||
|
either on-screen or on hardcopy, and a well-developed, simple and
|
||||||
|
effective programming language which includes conditionals, loops,
|
||||||
|
user-defined recursive functions and input and output facilities.
|
||||||
|
'';
|
||||||
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
platforms = stdenv.lib.platforms.linux;
|
||||||
maintainers = [ stdenv.lib.maintainers.simons ];
|
maintainers = [ stdenv.lib.maintainers.simons ];
|
||||||
};
|
};
|
||||||
|
@ -0,0 +1,24 @@
|
|||||||
|
diff -ubr R-3.0.1-orig/configure R-3.0.1/configure
|
||||||
|
--- R-3.0.1-orig/configure 2013-07-04 10:46:42.336133947 +0200
|
||||||
|
+++ R-3.0.1/configure 2013-07-04 10:46:17.181919960 +0200
|
||||||
|
@@ -3800,13 +3800,13 @@
|
||||||
|
: ${LIBnn=$libnn}
|
||||||
|
## We provide these defaults so that headers and libraries in
|
||||||
|
## '/usr/local' are found (by the native tools, mostly).
|
||||||
|
-if test -f "/sw/etc/fink.conf"; then
|
||||||
|
- : ${CPPFLAGS="-I/sw/include -I/usr/local/include"}
|
||||||
|
- : ${LDFLAGS="-L/sw/lib -L/usr/local/lib"}
|
||||||
|
-else
|
||||||
|
- : ${CPPFLAGS="-I/usr/local/include"}
|
||||||
|
- : ${LDFLAGS="-L/usr/local/${LIBnn}"}
|
||||||
|
-fi
|
||||||
|
+# if test -f "/sw/etc/fink.conf"; then
|
||||||
|
+# : ${CPPFLAGS="-I/sw/include -I/usr/local/include"}
|
||||||
|
+# : ${LDFLAGS="-L/sw/lib -L/usr/local/lib"}
|
||||||
|
+# else
|
||||||
|
+# : ${CPPFLAGS="-I/usr/local/include"}
|
||||||
|
+# : ${LDFLAGS="-L/usr/local/${LIBnn}"}
|
||||||
|
+# fi
|
||||||
|
|
||||||
|
## take care not to override the command-line setting
|
||||||
|
if test "${libdir}" = '${exec_prefix}/lib'; then
|
Loading…
x
Reference in New Issue
Block a user