From 1c3c790ec0294d70a5811f31672d9e4172fa80d3 Mon Sep 17 00:00:00 2001 From: Chris Kellendonk Date: Tue, 28 Jan 2025 20:38:03 -0500 Subject: [PATCH] scryer-prolog 0.9.4 (new formula) --- Formula/s/scryer-prolog.rb | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 Formula/s/scryer-prolog.rb diff --git a/Formula/s/scryer-prolog.rb b/Formula/s/scryer-prolog.rb new file mode 100644 index 000000000000..732ba8fd2c5b --- /dev/null +++ b/Formula/s/scryer-prolog.rb @@ -0,0 +1,28 @@ +class ScryerProlog < Formula + desc "Modern ISO Prolog implementation written mostly in Rust" + homepage "https://www.scryer.pl" + url "https://github.com/mthom/scryer-prolog/archive/refs/tags/v0.9.4.tar.gz" + sha256 "ccf533c5c34ee7efbf9c702dbffea21ba1c837144c3592a9e97c515abd4d6904" + license "BSD-3-Clause" + head "https://github.com/mthom/scryer-prolog.git", branch: "master" + + depends_on "pkgconf" => :build + depends_on "rust" => :build + depends_on "openssl@3" + + def install + ENV["OPENSSL_DIR"] = Formula["openssl@3"].opt_prefix + ENV["OPENSSL_NO_VENDOR"] = "1" + + system "cargo", "install", *std_cargo_args + end + + test do + (testpath/"test.pl").write <<~EOS + test :- + write('Hello from Scryer Prolog'). + EOS + + assert_equal "Hello from Scryer Prolog", shell_output("#{bin}/scryer-prolog -g 'test,halt' #{testpath}/test.pl") + end +end