diff options
Diffstat (limited to 'Library/Formula')
| -rw-r--r-- | Library/Formula/ghc.rb | 79 |
1 files changed, 39 insertions, 40 deletions
diff --git a/Library/Formula/ghc.rb b/Library/Formula/ghc.rb index afd5e6ecf..468146968 100644 --- a/Library/Formula/ghc.rb +++ b/Library/Formula/ghc.rb @@ -15,32 +15,38 @@ class Ghc < Formula option "32-bit" option "tests", "Verify the build using the testsuite." - devel do - # This block should largely translate over for 7.8.1 when GM. - url "http://www.haskell.org/ghc/dist/7.8.1-rc2/ghc-7.8.0.20140228-src.tar.bz2" - sha1 "8bd8eb3410a7fccc322c0e23e8045fcb5793ea5a" + # http://hackage.haskell.org/trac/ghc/ticket/6009 + depends_on :macos => :snow_leopard + depends_on "gmp" - depends_on "gcc" if build.build_32_bit? - depends_on :macos => :mountain_lion + devel do + url "https://www.haskell.org/ghc/dist/7.8.2/ghc-7.8.2-src.tar.xz" + sha1 "fe86ae790b7e8e5b4c78db7a914ee375bc6d9fc3" - resource "binary" do - url "https://www.haskell.org/ghc/dist/7.8.1-rc2/ghc-7.8.0.20140228-x86_64-apple-darwin-lion.tar.bz2" - sha1 "0b5d9a25afc516682dcae62e9955552ce857e715" + resource "testsuite" do + url "https://www.haskell.org/ghc/dist/7.8.2/ghc-7.8.2-testsuite.tar.xz" + sha1 "3abe4e0ebbed17e825573f0f34be0eca9179f9e4" end + end - resource "binary-32" do - url "http://www.haskell.org/ghc/dist/7.6.3/ghc-7.6.3-i386-apple-darwin.tar.bz2" - sha1 "6a312263fef41e06003f0676b879f2d2d5a1f30c" - end + resource "binary_7.8" do + url "https://www.haskell.org/ghc/dist/7.8.2/ghc-7.8.2-x86_64-apple-darwin-mavericks.tar.xz" + sha1 "5219737fb38f882532712047f6af32fc73a91f0f" + end - resource "testsuite" do - url "http://www.haskell.org/ghc/dist/7.8.1-rc2/ghc-7.8.0.20140228-testsuite.tar.bz2" - sha1 "0c52e15c699b1c624fbc218b98ddfb44bc43cec8" - end + resource "binary" do + url "http://www.haskell.org/ghc/dist/7.4.2/ghc-7.4.2-x86_64-apple-darwin.tar.bz2" + sha1 "7c655701672f4b223980c3a1068a59b9fbd08825" + end + + resource "binary32" do + url "http://www.haskell.org/ghc/dist/7.4.2/ghc-7.4.2-i386-apple-darwin.tar.bz2" + sha1 "60f749893332d7c22bb4905004a67510992d8ef6" end # These don't work inside of a `stable do` block - if build.stable? + if build.stable? || build.build_32_bit? || !MacOS.prefer_64_bit? || MacOS.version < :mavericks + depends_on "gcc" if MacOS.version >= :mountain_lion env :std fails_with :clang do @@ -52,21 +58,6 @@ class Ghc < Formula end stable do - # http://hackage.haskell.org/trac/ghc/ticket/6009 - depends_on :macos => :snow_leopard - depends_on "gcc" if MacOS.version >= :mountain_lion - depends_on "gmp" - - resource "binary" do - url "http://www.haskell.org/ghc/dist/7.4.2/ghc-7.4.2-x86_64-apple-darwin.tar.bz2" - sha1 "7c655701672f4b223980c3a1068a59b9fbd08825" - end - - resource "binary32" do - url "http://www.haskell.org/ghc/dist/7.4.2/ghc-7.4.2-i386-apple-darwin.tar.bz2" - sha1 "60f749893332d7c22bb4905004a67510992d8ef6" - end - resource "testsuite" do url "https://github.com/ghc/testsuite/archive/ghc-7.6.3-release.tar.gz" sha1 "6a1973ae3cccdb2f720606032ae84ffee8680ca1" @@ -80,10 +71,12 @@ class Ghc < Formula # Move the main tarball contents into a subdirectory (buildpath+"Ghcsource").install Dir["*"] - if (Hardware.is_64_bit? and not build.build_32_bit?) - binary_resource = "binary" - else + if build.build_32_bit? || !MacOS.prefer_64_bit? binary_resource = "binary32" + elsif MacOS.version >= :mavericks && build.devel? + binary_resource = "binary_7.8" + else + binary_resource = "binary" end resource(binary_resource).stage do @@ -112,11 +105,11 @@ class Ghc < Formula # https://github.com/Homebrew/homebrew/issues/13650 ENV["LD"] = "ld" - if Hardware.is_64_bit? and not build.build_32_bit? - arch = "x86_64" - else + if build.build_32_bit? || !MacOS.prefer_64_bit? ENV.m32 # Need to force this to fix build error on internal libgmp_ar. arch = "i386" + else + arch = "x86_64" end # ensure configure does not use Xcode 5 "gcc" which is actually clang @@ -144,11 +137,17 @@ class Ghc < Formula system "make" # -j1 fixes an intermittent race condition system "make", "-j1", "install" + if build.devel? + # use clang, even when gcc was used to build ghc + settings = Dir[lib/"ghc-*/settings"][0] + inreplace settings, "\"#{ENV.cc}\"", "\"clang\"" + end end end def caveats; <<-EOS.undent - This brew is for GHC only; you might also be interested in haskell-platform. + This brew is for GHC only; you might also be interested in cabal-install + or haskell-platform. EOS end |
