48 lines
1.6 KiB
Ruby
48 lines
1.6 KiB
Ruby
class Ibex < Formula
|
|
desc "C++ library for constraint processing over real numbers."
|
|
homepage "http://www.ibex-lib.org/"
|
|
url "http://www.ibex-lib.org/sites/default/files/ibex-2.1.16.tar.gz"
|
|
sha256 "d92ff32f14d27ad7b390ae693beb311b58cf6babccac85bbdaa5f5d0b8648845"
|
|
|
|
bottle do
|
|
cellar :any
|
|
sha256 "21744850c087156a1ced058b7c4ca6bc8521d0f29b97929b211f544f9284e3c9" => :el_capitan
|
|
sha256 "8f3820e87fea2799f4789bf956803dadab7789e2c51c29567e339db4e08473b7" => :yosemite
|
|
sha256 "51288d9af477d65a26f8f37bee74e07913df0e77be6bbc979758a8486a1d6fd3" => :mavericks
|
|
sha256 "41327b6a0da9b8b2ed888c3c2c33d5f6ff061ea13eceb4b9e8b6e660049d624d" => :mountain_lion
|
|
end
|
|
|
|
option "with-java", "Build Java bindings for Choco solver."
|
|
|
|
depends_on :java => ["1.8+", :optional]
|
|
depends_on "bison" => :build
|
|
depends_on "flex" => :build
|
|
depends_on "pkg-config" => :build
|
|
|
|
def install
|
|
args = ["--prefix=#{prefix}"]
|
|
|
|
if build.with? "java"
|
|
args << "--with-jni"
|
|
else
|
|
args << "--enable-shared"
|
|
end
|
|
|
|
system "./waf", "configure", *args
|
|
system "./waf", "install"
|
|
|
|
cd "examples" do
|
|
cxxflags = "-frounding-math -ffloat-store -I#{include} -I#{include}/ibex"
|
|
libflags = "-L#{lib} -libex -lprim -lClp -lCoinUtils -lm"
|
|
system "make", "defaultsolver", "LIBS=#{libflags}", "CXXFLAGS=#{cxxflags}"
|
|
end
|
|
|
|
pkgshare.install %w[examples benchs]
|
|
end
|
|
|
|
test do
|
|
cp_r "#{pkgshare}/examples/.", testpath
|
|
cp "#{pkgshare}/benchs/cyclohexan3D.bch", testpath
|
|
system "./defaultsolver", "cyclohexan3D.bch", "1e-05", "10"
|
|
end
|
|
end
|