homebrew-core/Formula/nwchem.rb
2019-01-27 12:14:13 +00:00

70 lines
2.4 KiB
Ruby

class Nwchem < Formula
desc "NWChem: Open Source High-Performance Computational Chemistry"
homepage "http://www.nwchem-sw.org"
url "https://github.com/nwchemgit/nwchem/releases/download/6.8.1-release/nwchem-6.8.1-release.revision-v6.8-133-ge032219-src.2018-06-14.tar.bz2"
version "6.8.1"
sha256 "23ce8241a5977a93d8224f66433851c81a08ad58a4c551858ae031485b095ab7"
revision 4
bottle do
cellar :any
sha256 "dd15c3d4cc6e99951133c00a3baa027ef089e3ca8473025ed4b4ca747755373e" => :mojave
sha256 "8ee6e807191b17a027b96360d9207dc3bd638d7d06e33df64dc0ab3ae76995cd" => :high_sierra
sha256 "d018a86ead3f702cfcba6908fbe919d4915d13615e48912c778e63215fc21b58" => :sierra
end
depends_on "gcc" # for gfortran
depends_on "open-mpi"
depends_on "openblas"
depends_on "scalapack"
def install
pkgshare.install "QA"
cd "src" do
(prefix/"etc").mkdir
(prefix/"etc/nwchemrc").write <<~EOS
nwchem_basis_library #{pkgshare}/libraries/
nwchem_nwpw_library #{pkgshare}/libraryps/
ffield amber
amber_1 #{pkgshare}/amber_s/
amber_2 #{pkgshare}/amber_q/
amber_3 #{pkgshare}/amber_x/
amber_4 #{pkgshare}/amber_u/
spce #{pkgshare}/solvents/spce.rst
charmm_s #{pkgshare}/charmm_s/
charmm_x #{pkgshare}/charmm_x/
EOS
inreplace "util/util_nwchemrc.F", "/etc/nwchemrc", "#{etc}/nwchemrc"
ENV["NWCHEM_TOP"] = buildpath
ENV["PYTHONVERSION"] = "2.7"
pyhome = `python-config --prefix`.chomp
ENV["PYTHONHOME"] = pyhome
ENV["NWCHEM_LONG_PATHS"] = "Y"
ENV["BLASOPT"] = "-L#{Formula["openblas"].opt_lib} -lopenblas"
ENV["BLAS_SIZE"] = "4"
ENV["SCALAPACK"] = "-L#{Formula["scalapack"].opt_prefix}/lib -lscalapack"
ENV["USE_64TO32"] = "y"
system "make", "nwchem_config", "NWCHEM_MODULES=all python"
system "make", "64_to_32"
system "make", "NWCHEM_TARGET=MACX64", "USE_MPI=Y"
bin.install "../bin/MACX64/nwchem"
pkgshare.install "basis/libraries"
pkgshare.install "nwpw/libraryps"
pkgshare.install Dir["data/*"]
end
end
test do
cp_r pkgshare/"QA", testpath
cd "QA" do
ENV["NWCHEM_TOP"] = pkgshare
ENV["NWCHEM_TARGET"] = "MACX64"
ENV["NWCHEM_EXECUTABLE"] = "#{bin}/nwchem"
system "./runtests.mpi.unix", "procs", "2", "dft_he2+", "prop_mep_gcube", "pspw", "tddft_h2o", "tce_n2"
end
end
end