class Dynare < Formula desc "Platform for economic models, particularly DSGE and OLG models" homepage "https://www.dynare.org/" url "https://www.dynare.org/release/source/dynare-4.5.6.tar.xz" sha256 "a4ff0ee5892a044d169ead2778e96fefcf617535fab28d25b977d8d008c7fe87" revision 1 bottle do sha256 "70f0b0ca9e2be1e832f9daf1de297dcec8039f3cd3369bbe3a6fba1bb8b77155" => :high_sierra sha256 "226cc9897d4c41b0cbfb4e6cdc654bbac8c28de13fc636a086f7ebfd26277fe5" => :sierra sha256 "0ef378d51fddaf8b2b90365b5faa1ce1fa575e47ba8a7546690c2f20310941e3" => :el_capitan end head do url "https://github.com/DynareTeam/dynare.git" depends_on "autoconf" => :build depends_on "automake" => :build depends_on "bison" => :build depends_on "flex" => :build end depends_on "boost" => :build depends_on "cweb" => :build depends_on "fftw" depends_on "gcc" # for gfortran depends_on "gsl" depends_on "hdf5" depends_on "libmatio" depends_on "metis" depends_on "octave" depends_on "suite-sparse" depends_on "veclibfort" needs :cxx11 resource "slicot" do url "https://mirrors.ocf.berkeley.edu/debian/pool/main/s/slicot/slicot_5.0+20101122.orig.tar.gz" mirror "https://mirrorservice.org/sites/ftp.debian.org/debian/pool/main/s/slicot/slicot_5.0+20101122.orig.tar.gz" sha256 "fa80f7c75dab6bfaca93c3b374c774fd87876f34fba969af9133eeaea5f39a3d" end def install ENV.cxx11 resource("slicot").stage do system "make", "lib", "OPTS=-fPIC", "SLICOTLIB=../libslicot_pic.a", "FORTRAN=gfortran", "LOADER=gfortran" system "make", "clean" system "make", "lib", "OPTS=-fPIC -fdefault-integer-8", "FORTRAN=gfortran", "LOADER=gfortran", "SLICOTLIB=../libslicot64_pic.a" (buildpath/"slicot").install "libslicot_pic.a", "libslicot64_pic.a" end system "autoreconf", "-fvi" if build.head? system "./configure", "--disable-debug", "--disable-dependency-tracking", "--disable-silent-rules", "--prefix=#{prefix}", "--disable-matlab", "--with-slicot=#{buildpath}/slicot" system "make", "install" end def caveats; <<~EOS To get started with Dynare, open Octave and type addpath #{opt_lib}/dynare/matlab EOS end test do cp lib/"dynare/examples/bkk.mod", testpath system Formula["octave"].opt_bin/"octave", "--no-gui", "-H", "--path", "#{lib}/dynare/matlab", "--eval", "dynare bkk.mod console" end end