suite-sparse 4.0.2
Closes Homebrew/homebrew#14038. Signed-off-by: Adam Vandenberg <flangy@gmail.com>master
parent
15d9e60e70
commit
5a0440df05
|
@ -2,38 +2,29 @@ require 'formula'
|
||||||
|
|
||||||
class SuiteSparse < Formula
|
class SuiteSparse < Formula
|
||||||
homepage 'http://www.cise.ufl.edu/research/sparse/SuiteSparse'
|
homepage 'http://www.cise.ufl.edu/research/sparse/SuiteSparse'
|
||||||
url 'http://www.cise.ufl.edu/research/sparse/SuiteSparse/SuiteSparse-3.7.0.tar.gz'
|
url 'http://www.cise.ufl.edu/research/sparse/SuiteSparse/SuiteSparse-4.0.2.tar.gz'
|
||||||
md5 'ecb1d1cc1101cf31f077bab46678e791'
|
sha1 '46b24a28eef4b040ea5a02d2c43e82e28b7d6195'
|
||||||
|
|
||||||
|
option "with-metis", "Compile in metis libraries"
|
||||||
|
|
||||||
depends_on "metis"
|
|
||||||
depends_on "tbb"
|
depends_on "tbb"
|
||||||
|
depends_on "metis" if build.include? 'with-metis'
|
||||||
|
|
||||||
def install
|
def install
|
||||||
# SuiteSparse doesn't like to build in parallel
|
# SuiteSparse doesn't like to build in parallel
|
||||||
ENV.j1
|
ENV.j1
|
||||||
|
|
||||||
# So, SuiteSparse was written by a scientific researcher. This
|
inreplace 'SuiteSparse_config/SuiteSparse_config.mk' do |s|
|
||||||
# tends to result in makefile-based build systems that are completely
|
|
||||||
# ignorant of the existence of things such as CPPFLAGS and LDFLAGS.
|
|
||||||
# SuiteSparse Does The Right Thing™ when homebrew is in /usr/local
|
|
||||||
# but if it is not, we have to piggyback some stuff in on CFLAGS.
|
|
||||||
unless HOMEBREW_PREFIX.to_s == '/usr/local'
|
|
||||||
ENV['CFLAGS'] += " -isystem #{HOMEBREW_PREFIX}/include -L#{HOMEBREW_PREFIX}/lib"
|
|
||||||
end
|
|
||||||
|
|
||||||
# Some of the suite-sparse libraries use Metis
|
|
||||||
metis = Formula.factory("metis")
|
|
||||||
|
|
||||||
inreplace 'UFconfig/UFconfig.mk' do |s|
|
|
||||||
# Libraries
|
|
||||||
s.change_make_var! "BLAS", "-Wl,-framework -Wl,Accelerate"
|
s.change_make_var! "BLAS", "-Wl,-framework -Wl,Accelerate"
|
||||||
s.change_make_var! "LAPACK", "$(BLAS)"
|
s.change_make_var! "LAPACK", "$(BLAS)"
|
||||||
s.remove_make_var! "METIS_PATH"
|
|
||||||
s.change_make_var! "METIS", metis.lib + 'libmetis.a'
|
|
||||||
s.change_make_var! "SPQR_CONFIG", "-DHAVE_TBB"
|
s.change_make_var! "SPQR_CONFIG", "-DHAVE_TBB"
|
||||||
s.change_make_var! "TBB", "-ltbb"
|
s.change_make_var! "TBB", "-ltbb"
|
||||||
|
|
||||||
# Installation
|
if build.include? 'with-metis'
|
||||||
|
s.remove_make_var! "METIS_PATH"
|
||||||
|
s.change_make_var! "METIS", Formula.factory("metis").lib + "libmetis.a"
|
||||||
|
end
|
||||||
|
|
||||||
s.change_make_var! "INSTALL_LIB", lib
|
s.change_make_var! "INSTALL_LIB", lib
|
||||||
s.change_make_var! "INSTALL_INCLUDE", include
|
s.change_make_var! "INSTALL_INCLUDE", include
|
||||||
end
|
end
|
||||||
|
@ -45,4 +36,3 @@ class SuiteSparse < Formula
|
||||||
system "make install"
|
system "make install"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue