-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit b939eae
Showing
7 changed files
with
1,000 additions
and
0 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
# homebrew-supportingsoftware | ||
|
||
Homebrew recipes for the supporting software required to compile or install fluidity on Mac OS X. Existing homebrew users should tap the repository with: | ||
|
||
`brew tap FluidityProject/supportingsoftware` | ||
|
||
A Fluidity installation should then be available with: | ||
|
||
`brew install fluidity` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
|
||
class Fluidity < Formula | ||
desc "" | ||
homepage "http://FluidityProject.github.io" | ||
url "https://github.com/FluidityProject/fluidity.git", :branch => "ElCapitanFixes" | ||
sha256 "" | ||
version "4.13" | ||
|
||
depends_on :mpi => [:cc, :cxx, :f77, :f90] | ||
depends_on :fortran | ||
depends_on :x11 | ||
depends_on "FluidityProject/supportingsoftware/petsc-fluidity" | ||
depends_on "FluidityProject/supportingsoftware/zoltan" | ||
depends_on "python" | ||
depends_on "numpy" | ||
depends_on "udunits" | ||
depends_on "gnu-sed" | ||
depends_on "vtk5" | ||
depends_on "judy" | ||
depends_on "spatialindex" | ||
depends_on "FluidityProject/supportingsoftware/libspud" | ||
|
||
option "enable-2d-adaptivity", "Build and link libmba2 for 2d adaptivity" | ||
option "enable-debug", "Build debug version" | ||
|
||
keg_only "Lets test this first!" | ||
|
||
fails_with :llvm | ||
fails_with :gcc_4_0 | ||
|
||
def oprefix(f) | ||
Formula[f].opt_prefix | ||
end | ||
|
||
def install | ||
# ENV.deparallelize # if your formula fails when building in parallel | ||
|
||
ENV["CPPFLAGS"] = "-I#{oprefix("origimbo/tools/zoltan")}/include -I#{oprefix("vtk5")}/include/vtk-5.10" | ||
ENV["LDFLAGS"] = "-L#{oprefix("vtk5")}/lib/vtk-5.10 -lvtkIO -lvtkHybrid -lvtkGraphics -lvtkRendering -lvtkFiltering -lvtkCommon" | ||
|
||
ENV["PETSC_DIR"] = "#{HOMEBREW_PREFIX}/opt/petsc-fluidity" | ||
|
||
system "./configure", "--prefix=#{prefix}", | ||
"--with-libspud-root=#{HOMEBREW_PREFIX}", | ||
"--with-spatialindex-root=#{HOMEBREW_PREFIX}", | ||
"--with-judy=#{oprefix("judy")}/lib/libjudy.a" | ||
system "make" | ||
system "make", "install" | ||
end | ||
|
||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
# Documentation: https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/Formula-Cookbook.md | ||
# http://www.rubydoc.info/github/Homebrew/homebrew/master/Formula | ||
# PLEASE REMOVE ALL GENERATED COMMENTS BEFORE SUBMITTING YOUR PULL REQUEST! | ||
|
||
class Libspud < Formula | ||
desc "" | ||
homepage "" | ||
url "lp:spud", :using => :bzr | ||
sha256 "" | ||
version "1.1" | ||
|
||
# depends_on "cmake" => :build | ||
depends_on "libxml2" | ||
depends_on "python" | ||
depends_on "trang" | ||
depends_on "pygtk" => "with-libglade" | ||
depends_on :fortran | ||
|
||
bottle do | ||
root_url "https://github.com/FluidityProject/homebrew-supportingsoftware/releases/download/v1.0/" | ||
cellar :any_skip_relocation | ||
sha256 "caec3fe5d64de3500520d86d8460aec1002dc284a42b1066b8e47d566701105d" => :mavericks | ||
end | ||
|
||
env :std | ||
|
||
fails_with :llvm | ||
|
||
def install | ||
# ENV.deparallelize # if your formula fails when building in parallel | ||
|
||
# Remove unrecognized options if warned by configure | ||
system "./configure", "--prefix=#{prefix}" | ||
system "make" | ||
system "make", "install" # if this fails, try separate make/make install steps | ||
|
||
inreplace "#{bin}/diamond", "/usr/share/diamond/gui/diamond.svg", "#{prefix}/share/diamond/gui/diamond.svg" | ||
|
||
end | ||
|
||
test do | ||
system "true" | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,93 @@ | ||
# Documentation: https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/Formula-Cookbook.md | ||
# http://www.rubydoc.info/github/Homebrew/homebrew/master/Formula | ||
|
||
class PetscFluidity < Formula | ||
desc "" | ||
homepage "" | ||
url "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-lite-3.6.3.tar.gz" | ||
version "3.6.3-fluidity" | ||
sha256 "2458956c876496f3c8160591324459be7c11f2e1ce09ad98347394c67a46d858" | ||
|
||
depends_on "cmake" => :build | ||
depends_on :x11 # if your formula requires any X11/XQuartz components | ||
depends_on "hypre" | ||
depends_on "metis" | ||
depends_on "parmetis" | ||
depends_on "scalapack" | ||
depends_on "suite-sparse" | ||
depends_on "mumps" | ||
depends_on "hwloc" | ||
depends_on "netcdf" => "with-fortran" | ||
depends_on "hdf5" => "with-mpi" | ||
depends_on "valgrind" | ||
depends_on :mpi => [:cc, :cxx, :f77, :f90] | ||
depends_on :fortran | ||
|
||
bottle do | ||
root_url "https://github.com/FluidityProject/homebrew-supportingsoftware/releases/download/v1.0/" | ||
sha256 "952c231f62acbf308fbe0f42cb42e17a72b2dcc79edeb6295f9c78cb2128dc3b" => :mavericks | ||
end | ||
|
||
keg_only "Don't conflict with default homebrew petsc installation." | ||
|
||
fails_with :llvm | ||
fails_with :gcc_4_0 | ||
|
||
def oprefix(f) | ||
Formula[f].opt_prefix | ||
end | ||
|
||
|
||
|
||
def install | ||
ENV.deparallelize | ||
|
||
ENV.delete "CC" | ||
ENV.delete "CXX" | ||
ENV.delete "F77" | ||
ENV.delete "FC" | ||
|
||
ENV["PETSC_DIR"] = Dir.getwd | ||
|
||
system "./configure", "--with-shared-libraries=0", | ||
"CC=#{ENV["MPICC"]}", | ||
"CXX=#{ENV["MPICXX"]}", | ||
"FC=#{ENV["MPIF77"]}", | ||
"F77=#{ENV["MPIFC"]}", | ||
"--with-debugging=0", | ||
"--with-fortran-interfaces=1", | ||
"--download-blacs", | ||
"--with-hypre-dir=#{oprefix("hypre")}", | ||
"--download-ml", | ||
"--download-ctetgen", | ||
"--download-chaco", | ||
"--with-metis-dir=#{oprefix("metis")}", | ||
"--with-parmetis-dir=#{oprefix("parmetis")}", | ||
"--with-netcdf=1", | ||
"--with-netcdf-dir=#{oprefix("netcdf")}", | ||
"--with-hdf5", | ||
"--with-hdf5-dir=#{oprefix("hdf5")}", | ||
"--with-mumps-dir=#{oprefix("mumps")}/libexec", | ||
"--with-scalapack-dir=#{oprefix("scalapack")}", | ||
"--with-suitesparse-dir=#{oprefix("suite-sparse")}", | ||
"--with-scalar-type=real", | ||
"--with-hwloc-dir=#{oprefix("hwloc")}", | ||
"--prefix=#{prefix}" | ||
system "make", "all" | ||
system "make", "install" | ||
|
||
end | ||
|
||
test do | ||
# `test do` will create, run in and delete a temporary directory. | ||
# | ||
# This test will fail and we won't accept that! It's enough to just replace | ||
# "false" with the main program this formula installs, but it'd be nice if you | ||
# were more thorough. Run the test with `brew test petsc-lite`. Options passed | ||
# to `brew install` such as `--HEAD` also need to be provided to `brew test`. | ||
# | ||
# The installed folder is not in the path, so use the entire path to any | ||
# executables being tested: `system "#{bin}/program", "do", "something"`. | ||
system "false" | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
class Transfig < Formula | ||
homepage 'http://www.xfig.org' | ||
url 'https://downloads.sourceforge.net/mcj/transfig.3.2.5e.tar.gz' | ||
version '3.2.5e' | ||
|
||
depends_on 'homebrew/x11/imake' => :build | ||
depends_on 'jpeg' | ||
depends_on 'ghostscript' | ||
depends_on :x11 | ||
depends_on 'gcc' | ||
|
||
fails_with :clang do | ||
cause "clang fails to process xfig's imake rules" | ||
end | ||
fails_with :llvm | ||
fails_with :gcc_4_0 | ||
|
||
env :std | ||
|
||
def install | ||
# transfig does not like to execute makefiles in parallel | ||
ENV.deparallelize | ||
|
||
# Patch tranfig/Imakefile | ||
inreplace "transfig/Imakefile", "XCOMM BINDIR = /usr/bin/X11", | ||
"BINDIR = #{bin}\n"+ # set install dir for bin | ||
"USRLIBDIR = #{lib}\n" # set install dir for lib | ||
inreplace "transfig/Imakefile", "XCOMM MANDIR = $(MANSOURCEPATH)$(MANSUFFIX)", | ||
"MANDIR = #{man}$(MANSUFFIX)" | ||
inreplace "transfig/Imakefile", "XCOMM USELATEX2E = -DLATEX2E", | ||
"USELATEX2E = -DLATEX2E" | ||
|
||
# Patch fig2dev/Imakefile | ||
inreplace "fig2dev/Imakefile", "XCOMM BINDIR = /usr/bin/X11", | ||
"BINDIR = #{bin}\n"+ # set install dir for bin | ||
"USRLIBDIR = #{lib}\n" # set install dir for lib | ||
inreplace "fig2dev/Imakefile", "XCOMM MANDIR = $(MANSOURCEPATH)$(MANSUFFIX)", | ||
"MANDIR = #{man}$(MANSUFFIX)" | ||
inreplace "fig2dev/Imakefile", "XFIGLIBDIR = /usr/local/lib/X11/xfig", | ||
"XFIGLIBDIR = #{share}" | ||
inreplace "fig2dev/Imakefile","XCOMM USEINLINE = -DUSE_INLINE", | ||
"USEINLINE = -DUSE_INLINE" | ||
inreplace "fig2dev/Imakefile", "RGB = $(LIBDIR)/rgb.txt", "RGB = #{MacOS::X11.share}/X11/rgb.txt" | ||
inreplace "fig2dev/Imakefile", "PNGINC = -I/usr/include/X11","PNGINC = -I#{MacOS::X11.include}" | ||
inreplace "fig2dev/Imakefile", "PNGLIBDIR = $(USRLIBDIR)","PNGLIBDIR = #{MacOS::X11.lib}" | ||
inreplace "fig2dev/Imakefile", "ZLIBDIR = $(USRLIBDIR)", "ZLIBDIR = /usr/lib" | ||
inreplace "fig2dev/Imakefile", "XPMLIBDIR = $(USRLIBDIR)", "XPMLIBDIR = #{MacOS::X11.lib}" | ||
inreplace "fig2dev/Imakefile", "XPMINC = -I/usr/include/X11", "XPMINC = -I#{MacOS::X11.include}/X11" | ||
inreplace "fig2dev/Imakefile", "XCOMM DDA4 = -DA4", "DDA4 = -DA4" | ||
inreplace "fig2dev/Imakefile", "FIG2DEV_LIBDIR = /usr/local/lib/fig2dev", | ||
"FIG2DEV_LIBDIR = #{lib}/fig2dev" | ||
|
||
# generate Makefiles | ||
system "make clean" | ||
system "xmkmf" | ||
system "make Makefiles" | ||
|
||
# build everything | ||
system "make", "CC=#{ENV["CC"]}", "CXX=#{ENV["CXX"]}", 'CCOPTIONS=""' | ||
|
||
# install everything | ||
system "make install" | ||
system "make install.man" | ||
|
||
end | ||
|
||
test do | ||
|
||
system "echo hello" | ||
|
||
end | ||
|
||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
class Zoltan < Formula | ||
homepage "http://www.cs.sandia.gov/Zoltan" | ||
url "http://www.cs.sandia.gov/~kddevin/Zoltan_Distributions/zoltan_distrib_v3.81.tar.gz" | ||
sha256 "9d6f2f9e2b37456cab7fe6714d51cd6d613374e915e6cc9f7fddcd72e3f38780" | ||
|
||
option "without-check", "Skip build-time tests (not recommended)" | ||
|
||
depends_on 'parmetis' | ||
depends_on :fortran | ||
|
||
mpilang = [:cc, :cxx, :f90] | ||
depends_on :mpi => mpilang | ||
|
||
bottle do | ||
root_url "https://github.com/FluidityProject/homebrew-supportingsoftware/releases/download/v1.0/" | ||
sha256 "7ecf099174c6e0687921605777f2a4c666aa83a1f8e8970678156f2dcc8eae90" => :mavericks | ||
end | ||
|
||
|
||
fails_with :llvm | ||
fails_with :gcc_4_0 | ||
|
||
ENV["OMPI_FC"] = ENV["FC"] | ||
|
||
def oprefix(f) | ||
Formula[f].opt_prefix | ||
end | ||
|
||
def install | ||
ENV.deparallelize | ||
|
||
args = [ | ||
"--prefix=#{prefix}", | ||
"CC=#{ENV["MPICC"]}", | ||
"CXX=#{ENV["MPICXX"]}", | ||
] | ||
args << "--with-parmetis" | ||
args << "--enable-zoltan-cppdriver" | ||
args << "--enable-mpi" | ||
args << "--with-mpi-compilers=yes" | ||
args << "--with-gnumake" | ||
args << "--enable-zoltan-cppdriver" | ||
args << "--disable-examples" | ||
args << "--with-parmetis-libdir=#{oprefix("parmetis")}/lib/" | ||
args << "--with-parmetis-incdir=#{oprefix("parmetis")}/include" | ||
args << "--enable-f90interface" | ||
args << "FC=#{ENV["MPIFC"]}" | ||
|
||
mkdir "zoltan-build" do | ||
system "../configure", *args | ||
system "make", "everything" | ||
system "make", "check" if build.with? "check" | ||
system "make", "install" | ||
end | ||
end | ||
end |