2010-05-03 03:39:48 +00:00
|
|
|
require 'formula'
|
|
|
|
|
2011-03-10 05:11:03 +00:00
|
|
|
class R < Formula
|
2011-12-22 19:45:25 +00:00
|
|
|
homepage 'http://www.r-project.org'
|
2013-05-17 20:12:30 +00:00
|
|
|
url 'http://cran.r-project.org/src/base/R-3/R-3.0.1.tar.gz'
|
|
|
|
sha1 '5cc65476837926fdf04105954ea94efa53ac85ce'
|
2010-05-03 03:39:48 +00:00
|
|
|
|
2012-07-09 18:03:01 +00:00
|
|
|
head 'https://svn.r-project.org/R/trunk'
|
|
|
|
|
2013-06-20 12:03:36 +00:00
|
|
|
option 'with-openblas', 'Compile linking to OpenBLAS'
|
2012-08-27 05:11:37 +00:00
|
|
|
option 'with-valgrind', 'Compile an unoptimized build with support for the Valgrind debugger'
|
2013-03-02 22:28:55 +00:00
|
|
|
option 'test', 'Run tests before installing'
|
2012-08-27 05:11:37 +00:00
|
|
|
|
2013-06-24 03:29:13 +00:00
|
|
|
depends_on :fortran
|
2012-11-11 03:12:26 +00:00
|
|
|
depends_on 'readline'
|
2012-02-04 22:53:39 +00:00
|
|
|
depends_on 'libtiff'
|
|
|
|
depends_on 'jpeg'
|
2012-06-07 01:35:12 +00:00
|
|
|
depends_on :x11
|
2013-06-26 02:17:59 +00:00
|
|
|
depends_on 'valgrind' => :optional
|
2013-06-20 12:03:36 +00:00
|
|
|
depends_on 'homebrew/science/openblas' if build.with? 'openblas'
|
2011-04-13 16:26:01 +00:00
|
|
|
|
2013-08-07 04:03:54 +00:00
|
|
|
# This is the same script that Debian packages use.
|
|
|
|
resource 'completion' do
|
|
|
|
url 'http://rcompletion.googlecode.com/svn-history/r28/trunk/bash_completion/R', :using => :curl
|
|
|
|
version 'r28'
|
|
|
|
sha1 'af734b8624b33f2245bf88d6782bea0dc5d829a4'
|
|
|
|
end
|
|
|
|
|
2010-05-03 03:39:48 +00:00
|
|
|
def install
|
2011-04-13 16:26:01 +00:00
|
|
|
args = [
|
|
|
|
"--prefix=#{prefix}",
|
|
|
|
"--with-aqua",
|
|
|
|
"--enable-R-framework",
|
|
|
|
"--with-lapack"
|
|
|
|
]
|
2013-06-26 02:17:59 +00:00
|
|
|
|
|
|
|
if build.with? 'valgrind'
|
|
|
|
args << '--with-valgrind-instrumentation=2'
|
|
|
|
ENV.Og
|
|
|
|
end
|
2011-04-13 16:26:01 +00:00
|
|
|
|
2013-06-20 12:03:36 +00:00
|
|
|
args << '--with-blas="-lgoto2"' if build.with? 'openblas'
|
|
|
|
|
2012-07-09 18:03:01 +00:00
|
|
|
# Pull down recommended packages if building from HEAD.
|
2012-08-27 05:11:37 +00:00
|
|
|
system './tools/rsync-recommended' if build.head?
|
2012-07-09 18:03:01 +00:00
|
|
|
|
2011-04-13 16:26:01 +00:00
|
|
|
system "./configure", *args
|
2010-05-03 03:39:48 +00:00
|
|
|
system "make"
|
2010-07-10 19:33:43 +00:00
|
|
|
ENV.j1 # Serialized installs, please
|
2013-03-02 22:28:55 +00:00
|
|
|
system "make check 2>&1 | tee make-check.log" if build.include? 'test'
|
2010-05-03 03:39:48 +00:00
|
|
|
system "make install"
|
2010-07-10 19:33:43 +00:00
|
|
|
|
2010-07-18 18:22:26 +00:00
|
|
|
# Link binaries and manpages from the Framework
|
|
|
|
# into the normal locations
|
2010-07-10 19:33:43 +00:00
|
|
|
bin.mkpath
|
|
|
|
man1.mkpath
|
|
|
|
|
|
|
|
ln_s prefix+"R.framework/Resources/bin/R", bin
|
|
|
|
ln_s prefix+"R.framework/Resources/bin/Rscript", bin
|
|
|
|
ln_s prefix+"R.framework/Resources/man1/R.1", man1
|
|
|
|
ln_s prefix+"R.framework/Resources/man1/Rscript.1", man1
|
2011-05-02 19:03:02 +00:00
|
|
|
|
2013-08-07 04:03:54 +00:00
|
|
|
bash_completion.install resource('completion')
|
2013-03-02 22:28:55 +00:00
|
|
|
|
|
|
|
prefix.install 'make-check.log' if build.include? 'test'
|
2010-05-03 03:39:48 +00:00
|
|
|
end
|
2011-03-07 06:17:39 +00:00
|
|
|
|
|
|
|
def caveats; <<-EOS.undent
|
|
|
|
R.framework was installed to:
|
2012-10-28 07:38:09 +00:00
|
|
|
#{opt_prefix}/R.framework
|
2011-03-07 06:17:39 +00:00
|
|
|
|
|
|
|
To use this Framework with IDEs such as RStudio, it must be linked
|
|
|
|
to the standard OS X location:
|
2012-10-28 07:38:09 +00:00
|
|
|
sudo ln -s "#{opt_prefix}/R.framework" /Library/Frameworks
|
2011-09-24 19:52:24 +00:00
|
|
|
|
|
|
|
To enable rJava support, run the following command:
|
|
|
|
R CMD javareconf JAVA_CPPFLAGS=-I/System/Library/Frameworks/JavaVM.framework/Headers
|
2011-03-07 06:17:39 +00:00
|
|
|
EOS
|
|
|
|
end
|
2010-05-03 03:39:48 +00:00
|
|
|
end
|