homebrew-core/Formula/civl.rb

32 lines
1 KiB
Ruby
Raw Normal View History

class Civl < Formula
desc "The Concurrency Intermediate Verification Language"
homepage "https://vsl.cis.udel.edu/civl/"
url "https://vsl.cis.udel.edu/lib/sw/civl/1.7/r3157/release/CIVL-1.7_3157.tgz"
version "1.7-3157"
sha256 "49ed0467ea281bf5a436b2caf4f87862d3f613fa9e6e746ce52cfd409c3f4403"
revision 1
bottle :unneeded
depends_on :java => "1.8+"
depends_on "z3"
def install
libexec.install "lib/civl-1.7_3157.jar"
bin.write_jar_script libexec/"civl-1.7_3157.jar", "civl"
pkgshare.install "doc", "emacs", "examples", "licenses"
end
test do
2016-04-27 18:14:51 +00:00
# Civl needs to write configuration files to the user's home directory, but
# Java has its own logic for determining that path.
ENV["_JAVA_OPTIONS"] = "-Duser.home=#{testpath}"
# Test with example suggested in manual.
example = pkgshare/"examples/concurrency/locksBad.cvl"
assert_match "The program MAY NOT be correct.",
shell_output("#{bin}/civl verify #{example}")
assert File.exist?("CIVLREP/locksBad_log.txt")
end
end