From 9ba5466e04b46ddad72818f62133b0c03c844a06 Mon Sep 17 00:00:00 2001 From: Calvin Loncaric Date: Thu, 13 Feb 2014 12:26:21 -0800 Subject: compcert 2.1 Closes #26702. Signed-off-by: Misty De Meo --- Library/Formula/compcert.rb | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 Library/Formula/compcert.rb (limited to 'Library/Formula') diff --git a/Library/Formula/compcert.rb b/Library/Formula/compcert.rb new file mode 100644 index 000000000..01f3e6543 --- /dev/null +++ b/Library/Formula/compcert.rb @@ -0,0 +1,35 @@ +require "formula" + +class Compcert < Formula + homepage "http://compcert.inria.fr" + url "http://compcert.inria.fr/release/compcert-2.1.tgz" + sha1 "1ec21e43c3ac778827522d385733e36d24c5f8d4" + + depends_on "coq" => :build + depends_on "objective-caml" => :build + depends_on "camlp5" => :build + + def install + # Compcert's configure script hard-codes gcc. On Lion and under, this + # creates problems since XCode's gcc does not support CFI, + # but superenv will trick it into using clang which does. This + # causes problems with the compcert compiler at runtime. + inreplace 'configure', '${toolprefix}gcc', "${toolprefix}#{ENV.cc}" + + system "./configure", "-prefix", prefix, "ia32-macosx" + system "make", "all" + system "make", "install" + end + + test do + (testpath/"test.c").write <<-EOS.undent + #include + int main(int argc, char** argv) { + printf("Hello, world!\n"); + return 0; + } + EOS + system "#{bin}/ccomp", "test.c", "-o", "test" + system "./test" + end +end -- cgit v1.2.3