diff options
| author | Jack Nagel | 2012-03-18 15:33:24 -0500 | 
|---|---|---|
| committer | Jack Nagel | 2012-04-01 12:39:59 -0500 | 
| commit | 497b13ac9e088ef2bb9539f0a25ba944c87c6f26 (patch) | |
| tree | f105351651a7f7bd91099320479c7ed9fdaf50ba | |
| parent | b36f59dd3c8a3bf95eeb715e3fdd05bce2ccdc75 (diff) | |
| download | homebrew-497b13ac9e088ef2bb9539f0a25ba944c87c6f26.tar.bz2 | |
Use new fails_with DSL syntax
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
101 files changed, 402 insertions, 180 deletions
| diff --git a/Library/Formula/aspell.rb b/Library/Formula/aspell.rb index 7fb04801a..28dfd1bf5 100644 --- a/Library/Formula/aspell.rb +++ b/Library/Formula/aspell.rb @@ -14,7 +14,10 @@ class Aspell < Formula    homepage 'http://aspell.net/'    md5 'e66a9c9af6a60dc46134fdacf6ce97d7' -  fails_with_llvm "Segmentation fault during linking.", :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "Segmentation fault during linking." +  end    def options      [ diff --git a/Library/Formula/bali-phy.rb b/Library/Formula/bali-phy.rb index 1b34eaa13..20060314d 100644 --- a/Library/Formula/bali-phy.rb +++ b/Library/Formula/bali-phy.rb @@ -7,9 +7,13 @@ class BaliPhy < Formula    depends_on 'gsl' -# fails_with_clang -#     io.H:25:31: error: use of undeclared identifier 'push_back' -#       void operator()(const T& t){push_back(t);} +  fails_with :clang do +    build 318 +    cause <<-EOS.undent +      io.H:25:31: error: use of undeclared identifier 'push_back' +      void operator()(const T& t){push_back(t);} +      EOS +  end    def install      mkdir 'macbuild' do diff --git a/Library/Formula/blast.rb b/Library/Formula/blast.rb index 4efa5c6e6..2f4193797 100644 --- a/Library/Formula/blast.rb +++ b/Library/Formula/blast.rb @@ -6,6 +6,10 @@ class Blast < Formula    version '2.2.25'    md5 '01256b808e3af49a5087945b6a8c8293' +  fails_with :clang do +    build 318 +  end +    def options      [['--with-dll', "Create dynamic binaries instead of static"]]    end @@ -17,12 +21,6 @@ class Blast < Formula    end    def install -    # FIXME This should be replaced with fails_with_clang once available -    if ENV.compiler == :clang -      opoo "Formula will not build with Clang, using LLVM." -      ENV.llvm -    end -      args = ["--prefix=#{prefix}"]      args << "--with-dll" if ARGV.include? '--with-dll' diff --git a/Library/Formula/boost.rb b/Library/Formula/boost.rb index b8377353c..8f50f483a 100644 --- a/Library/Formula/boost.rb +++ b/Library/Formula/boost.rb @@ -14,9 +14,10 @@ class Boost < Formula    depends_on "icu4c" if ARGV.include? "--with-icu" -  # Both clang and llvm-gcc provided by XCode 4.1 compile Boost 1.47.0 properly. -  # Moreover, Apple LLVM compiler 2.1 is now among primary test compilers. -  fails_with_llvm "Dropped arguments to functions when linking with boost", :build => 2335 +  fails_with :llvm do +    build 2335 +    cause "Dropped arguments to functions when linking with boost" +  end    def options      [ diff --git a/Library/Formula/bwm-ng.rb b/Library/Formula/bwm-ng.rb index 145163adf..6923b1f47 100644 --- a/Library/Formula/bwm-ng.rb +++ b/Library/Formula/bwm-ng.rb @@ -5,12 +5,11 @@ class BwmNg < Formula    homepage 'http://www.gropp.org/?id=projects&sub=bwm-ng'    md5 'd3a02484fb7946371bfb4e10927cebfb' -  def install -    if MacOS.default_compiler == :clang -      # auto-retest next clang version, submit patch if fails! -      ENV.llvm if MacOS.clang_version.to_f <= 3.1 -    end +  fails_with :clang do +    build 318 +  end +  def install      system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"      system "make install"    end diff --git a/Library/Formula/cairo.rb b/Library/Formula/cairo.rb index 381c5ee94..ce3a38970 100644 --- a/Library/Formula/cairo.rb +++ b/Library/Formula/cairo.rb @@ -11,7 +11,10 @@ class Cairo < Formula    keg_only :provided_by_osx,              "The Cairo provided by Leopard is too old for newer software to link against." -  fails_with_llvm "Throws an 'lto could not merge' error during build.", :build => 2336 +  fails_with :llvm do +    build 2336 +    cause "Throws an 'lto could not merge' error during build." +  end    def install      args = %W[ diff --git a/Library/Formula/cdargs.rb b/Library/Formula/cdargs.rb index 0fe3bfdb8..a54bc8ba6 100644 --- a/Library/Formula/cdargs.rb +++ b/Library/Formula/cdargs.rb @@ -5,7 +5,10 @@ class Cdargs < Formula    url 'http://www.skamphausen.de/downloads/cdargs/cdargs-1.35.tar.gz'    md5 '50be618d67f0b9f2439526193c69c567' -  fails_with_llvm "Bus error in ld on SL 10.6.4", :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "Bus error in ld on SL 10.6.4" +  end    # fixes zsh usage using the patch provided at the cdargs homepage    # (See http://www.skamphausen.de/cgi-bin/ska/CDargs) diff --git a/Library/Formula/cdparanoia.rb b/Library/Formula/cdparanoia.rb index 460c53b85..4fa1945d0 100644 --- a/Library/Formula/cdparanoia.rb +++ b/Library/Formula/cdparanoia.rb @@ -5,6 +5,11 @@ class Cdparanoia < Formula    homepage 'http://www.xiph.org/paranoia/'    md5 'b304bbe8ab63373924a744eac9ebc652' +  fails_with :llvm do +    build 2326 +    cause '"File too small" error while linking' +  end +    def patches      [       "https://trac.macports.org/export/70964/trunk/dports/audio/cdparanoia/files/osx_interface.patch", @@ -12,8 +17,6 @@ class Cdparanoia < Formula      ]    end -  fails_with_llvm '"File too small" error while linking', :build => 2326 -    def install      system "autoconf"      # Libs are installed as keg-only because most software that searches for cdparanoia diff --git a/Library/Formula/cdrdao.rb b/Library/Formula/cdrdao.rb index 5c807b5f8..2de048a78 100644 --- a/Library/Formula/cdrdao.rb +++ b/Library/Formula/cdrdao.rb @@ -11,7 +11,10 @@ class Cdrdao < Formula    depends_on 'mad'    depends_on 'lame' -  fails_with_llvm "Segfault while linking", :build => 2326 +  fails_with :llvm do +    build 2326 +    cause "Segfault while linking" +  end    # first patch fixes build problems under 10.6    # see http://sourceforge.net/tracker/index.php?func=detail&aid=2981804&group_id=2171&atid=302171 diff --git a/Library/Formula/celt.rb b/Library/Formula/celt.rb index cd4cd65b2..36ba229e2 100644 --- a/Library/Formula/celt.rb +++ b/Library/Formula/celt.rb @@ -7,7 +7,10 @@ class Celt < Formula    depends_on 'libogg' => :optional -  fails_with_llvm "'make check' fails", :build => 2335 +  fails_with :llvm do +    build 2335 +    cause "'make check' fails" +  end    def install      system "./configure", "--disable-dependency-tracking", diff --git a/Library/Formula/chicken.rb b/Library/Formula/chicken.rb index 053fe47a1..303571e70 100644 --- a/Library/Formula/chicken.rb +++ b/Library/Formula/chicken.rb @@ -6,7 +6,9 @@ class Chicken < Formula    homepage 'http://www.call-cc.org/'    head 'git://code.call-cc.org/chicken-core' -  fails_with_llvm "Compilation hangs. See http://lists.gnu.org/archive/html/chicken-users/2010-12/msg00158.html" +  fails_with :llvm do +    cause "Compilation hangs; see http://lists.gnu.org/archive/html/chicken-users/2010-12/msg00158.html" +  end    def install      ENV.deparallelize diff --git a/Library/Formula/clisp.rb b/Library/Formula/clisp.rb index 530b2646b..0fd313b40 100644 --- a/Library/Formula/clisp.rb +++ b/Library/Formula/clisp.rb @@ -11,7 +11,10 @@ class Clisp < Formula    skip_clean :all # otherwise abort trap -  fails_with_llvm "Configure fails on XCode 4/Snow Leopard.", :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "Configure fails on XCode 4/Snow Leopard." +  end    def patches      { :p0 => "https://trac.macports.org/export/89054/trunk/dports/lang/clisp/files/patch-src_lispbibl_d.diff", diff --git a/Library/Formula/ctags.rb b/Library/Formula/ctags.rb index 93f07c539..e24a69dae 100644 --- a/Library/Formula/ctags.rb +++ b/Library/Formula/ctags.rb @@ -7,8 +7,10 @@ class Ctags < Formula    head 'https://ctags.svn.sourceforge.net/svnroot/ctags/trunk' -  # true for both 5.8 and head -  fails_with_llvm "Resulting executable generates erroneous tag files", :build => 2335 +  fails_with :llvm do +    build 2335 +    cause "Resulting executable generates erroneous tag files" +  end    def install      if ARGV.build_head? diff --git a/Library/Formula/dcmtk.rb b/Library/Formula/dcmtk.rb index 47c2d549e..e1b8a0aef 100644 --- a/Library/Formula/dcmtk.rb +++ b/Library/Formula/dcmtk.rb @@ -12,7 +12,9 @@ class Dcmtk < Formula      [['--with-docs', 'Install development libraries/headers and HTML docs']]    end -  # fails_with_clang: https://github.com/mxcl/homebrew/issues/10884#issuecomment-4467514 +  fails_with :clang do +    build 318 +  end    def install      ENV.m64 if MacOS.prefer_64_bit? diff --git a/Library/Formula/dirac.rb b/Library/Formula/dirac.rb index 4692c59a3..1b4d12502 100644 --- a/Library/Formula/dirac.rb +++ b/Library/Formula/dirac.rb @@ -5,7 +5,9 @@ class Dirac < Formula    md5 'a57c2c5e58062d437d9ab13dffb28f0f'    homepage 'http://diracvideo.org/' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def install      # BSD cp doesn't have '-d' diff --git a/Library/Formula/dpkg.rb b/Library/Formula/dpkg.rb index 12e8959ea..14471e33c 100644 --- a/Library/Formula/dpkg.rb +++ b/Library/Formula/dpkg.rb @@ -8,17 +8,15 @@ class Dpkg < Formula    depends_on 'pkg-config' => :build    depends_on 'gnu-tar' +  fails_with :clang do +    build 318 +  end +    # Fixes the PERL_LIBDIR.    # Uses Homebrew-install gnu-tar instead of bsd tar.    def patches; DATA; end    def install -    # FIXME This should be replaced with fails_with_clang once available -    if ENV.compiler == :clang -      opoo "Formula will not build with Clang, using LLVM." -      ENV.llvm -    end -      system "./configure", "--disable-dependency-tracking",                            "--prefix=#{prefix}",                            "--disable-compiler-warnings", diff --git a/Library/Formula/elinks.rb b/Library/Formula/elinks.rb index 79818d12b..850045e2d 100644 --- a/Library/Formula/elinks.rb +++ b/Library/Formula/elinks.rb @@ -13,13 +13,15 @@ class Elinks < Formula      md5 '92790144290131ac5e63b44548b45e08'    end -  fails_with_llvm :build => 2326 -    if ARGV.build_head? and MacOS.xcode_version >= "4.3"      depends_on "automake" => :build      depends_on "libtool" => :build    end +  fails_with :llvm do +    build 2326 +  end +    # enables 256 colors, per the manual    def patches      DATA diff --git a/Library/Formula/emacs.rb b/Library/Formula/emacs.rb index 5fb1e538d..c425cb7c3 100644 --- a/Library/Formula/emacs.rb +++ b/Library/Formula/emacs.rb @@ -6,16 +6,19 @@ class Emacs < Formula    mirror 'http://ftp.gnu.org/pub/gnu/emacs/emacs-23.4.tar.bz2'    md5 '070c68ad8e3c31fb3cb2414feaf5e6f0' -  fails_with_llvm "Duplicate symbol errors while linking.", :build => 2334 +  if ARGV.include? "--use-git-head" +    head 'git://git.sv.gnu.org/emacs.git' +  else +    head 'bzr://http://bzr.savannah.gnu.org/r/emacs/trunk' +  end    # Stripping on Xcode 4 causes malformed object errors.    # Just skip everything.    skip_clean :all -  if ARGV.include? "--use-git-head" -    head 'git://git.sv.gnu.org/emacs.git' -  else -    head 'bzr://http://bzr.savannah.gnu.org/r/emacs/trunk' +  fails_with :llvm do +    build 2334 +    cause "Duplicate symbol errors while linking."    end    def options diff --git a/Library/Formula/erlang.rb b/Library/Formula/erlang.rb index 1ba56043f..9ec1fa513 100644 --- a/Library/Formula/erlang.rb +++ b/Library/Formula/erlang.rb @@ -43,6 +43,16 @@ class Erlang < Formula    # may as well skip bin too, everything is just shell scripts    skip_clean ['lib', 'bin'] +  if MacOS.xcode_version >= "4.3" +    # remove the autoreconf if possible +    depends_on "automake" => :build +    depends_on "libtool" => :build +  end + +  fails_with :llvm do +    build 2334 +  end +    def options      [        ['--disable-hipe', "Disable building hipe; fails on various OS X systems."], @@ -52,14 +62,6 @@ class Erlang < Formula      ]    end -  fails_with_llvm :build => 2334 - -  if MacOS.xcode_version >= "4.3" -    # remove the autoreconf if possible -    depends_on "automake" => :build -    depends_on "libtool" => :build -  end -    def install      ohai "Compilation takes a long time; use `brew install -v erlang` to see progress" unless ARGV.verbose? diff --git a/Library/Formula/ffmpeg.rb b/Library/Formula/ffmpeg.rb index 2915341ee..1cdb2f591 100644 --- a/Library/Formula/ffmpeg.rb +++ b/Library/Formula/ffmpeg.rb @@ -11,15 +11,6 @@ class Ffmpeg < Formula    head 'git://git.videolan.org/ffmpeg.git' -  fails_with_llvm 'Undefined symbols when linking libavfilter' - -  def options -    [ -      ["--with-tools", "Install additional FFmpeg tools."], -      ["--with-ffplay", "Build ffplay."] -    ] -  end -    depends_on 'yasm' => :build    depends_on 'x264' => :optional    depends_on 'faac' => :optional @@ -35,6 +26,17 @@ class Ffmpeg < Formula    depends_on 'sdl' if ffplay? +  fails_with :llvm do +    cause 'Undefined symbols when linking libavfilter' +  end + +  def options +    [ +      ["--with-tools", "Install additional FFmpeg tools."], +      ["--with-ffplay", "Build ffplay."] +    ] +  end +    def install      ENV.x11      args = ["--prefix=#{prefix}", diff --git a/Library/Formula/flac.rb b/Library/Formula/flac.rb index 9bc99761d..061f8fc23 100644 --- a/Library/Formula/flac.rb +++ b/Library/Formula/flac.rb @@ -13,7 +13,10 @@ class Flac < Formula    depends_on 'lame'    depends_on 'libogg' => :optional -  fails_with_llvm "Undefined symbols when linking", :build => 2326 +  fails_with :llvm do +    build 2326 +    cause "Undefined symbols when linking" +  end    def install      # sadly the asm optimisations won't compile since Leopard, and nobody diff --git a/Library/Formula/fontforge.rb b/Library/Formula/fontforge.rb index 1280fca9d..2e92c9d46 100644 --- a/Library/Formula/fontforge.rb +++ b/Library/Formula/fontforge.rb @@ -15,7 +15,10 @@ class Fontforge < Formula      [['--without-python', 'Build without Python.']]    end -  fails_with_llvm "Compiling cvexportdlg.c fails with error: initializer element is not constant", :build => 2336 +  fails_with :llvm do +    build 2336 +    cause "Compiling cvexportdlg.c fails with error: initializer element is not constant" +  end    def install      args = ["--prefix=#{prefix}", "--enable-double", "--without-freetype-bytecode"] diff --git a/Library/Formula/fox.rb b/Library/Formula/fox.rb index 096748dcd..7a8772b18 100644 --- a/Library/Formula/fox.rb +++ b/Library/Formula/fox.rb @@ -11,7 +11,9 @@ class Fox < Formula      md5 '1cf2607d15ffad5b664cf65bfcd249bc'    end -  fails_with_llvm "Inline asm errors during build" if ARGV.build_devel? +  fails_with :llvm do +    cause "Inline asm errors during build" +  end if ARGV.build_devel?    def install      ENV.x11 diff --git a/Library/Formula/gambit-scheme.rb b/Library/Formula/gambit-scheme.rb index 0bffa62db..9f6aeade5 100644 --- a/Library/Formula/gambit-scheme.rb +++ b/Library/Formula/gambit-scheme.rb @@ -14,7 +14,10 @@ class GambitScheme < Formula    skip_clean :all -  fails_with_llvm "ld crashes during the build process or segfault at runtime", :build => 2335 +  fails_with :llvm do +    build 2335 +    cause "ld crashes during the build process or segfault at runtime" +  end    def install      args = ["--disable-debug", diff --git a/Library/Formula/gawk.rb b/Library/Formula/gawk.rb index bbde28bcb..61749670a 100644 --- a/Library/Formula/gawk.rb +++ b/Library/Formula/gawk.rb @@ -8,7 +8,10 @@ class Gawk < Formula    depends_on 'xz' => :build -  fails_with_llvm "Undefined symbols when linking", :build => "2326" +  fails_with :llvm do +    build 2326 +    cause "Undefined symbols when linking" +  end    def install      system "./configure", "--prefix=#{prefix}" diff --git a/Library/Formula/gd.rb b/Library/Formula/gd.rb index a9ea29148..80f2802f5 100644 --- a/Library/Formula/gd.rb +++ b/Library/Formula/gd.rb @@ -10,7 +10,10 @@ class Gd < Formula    depends_on 'jpeg' => :recommended -  fails_with_llvm "Undefined symbols when linking", :build => "2326" +  fails_with :llvm do +    build 2326 +    cause "Undefined symbols when linking" +  end    def install      ENV.x11 diff --git a/Library/Formula/ghc.rb b/Library/Formula/ghc.rb index f6a5a3b71..9cbdd8b3a 100644 --- a/Library/Formula/ghc.rb +++ b/Library/Formula/ghc.rb @@ -26,6 +26,14 @@ class Ghc < Formula    # See: http://hackage.haskell.org/trac/ghc/ticket/2458    skip_clean ['bin', 'lib'] +  fails_with :clang do +    build 318 +    cause <<-EOS.undent +      Building with Clang configures GHC to use Clang as its preprocessor, +      which causes subsequent GHC-based builds to fail. +      EOS +  end +    def options      [['--64bit', 'Install 64-bit version of GHC (experimental).']]    end diff --git a/Library/Formula/glib.rb b/Library/Formula/glib.rb index cb0cdec1e..49e526307 100644 --- a/Library/Formula/glib.rb +++ b/Library/Formula/glib.rb @@ -11,7 +11,10 @@ class Glib < Formula    depends_on 'gettext'    depends_on 'libffi' -  fails_with_llvm "Undefined symbol errors while linking", :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "Undefined symbol errors while linking" +  end    def patches      { :p0 => %W[ diff --git a/Library/Formula/gnome-doc-utils.rb b/Library/Formula/gnome-doc-utils.rb index 92bf6afad..cfd569284 100644 --- a/Library/Formula/gnome-doc-utils.rb +++ b/Library/Formula/gnome-doc-utils.rb @@ -15,7 +15,10 @@ class GnomeDocUtils < Formula    # PYTHONPATH.    depends_on 'libxml2' -  fails_with_llvm "Undefined symbols when linking", :build => "2326" +  fails_with :llvm do +    build 2326 +    cause "Undefined symbols when linking" +  end    def install      # TODO this should possibly be moved up into build.rb diff --git a/Library/Formula/gnu-smalltalk.rb b/Library/Formula/gnu-smalltalk.rb index 01761af6a..1959c7b2c 100644 --- a/Library/Formula/gnu-smalltalk.rb +++ b/Library/Formula/gnu-smalltalk.rb @@ -27,7 +27,10 @@ class GnuSmalltalk < Formula      depends_on "libtool" => :build    end -  fails_with_llvm "Codegen problems with LLVM", :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "Codegen problems with LLVM" +  end    def patches      # Builds GNU Smalltalk clean in 64-bit mode with SDL and Cairo support diff --git a/Library/Formula/gnutls.rb b/Library/Formula/gnutls.rb index a36c790d5..398c4c76d 100644 --- a/Library/Formula/gnutls.rb +++ b/Library/Formula/gnutls.rb @@ -10,7 +10,10 @@ class Gnutls < Formula    depends_on 'libgcrypt'    depends_on 'libtasn1' => :optional -  fails_with_llvm "Undefined symbols when linking", :build => "2326" +  fails_with :llvm do +    build 2326 +    cause "Undefined symbols when linking" +  end    def install      ENV.universal_binary # build fat so wine can use it diff --git a/Library/Formula/google-perftools.rb b/Library/Formula/google-perftools.rb index 75d477b3d..113510fdd 100644 --- a/Library/Formula/google-perftools.rb +++ b/Library/Formula/google-perftools.rb @@ -5,7 +5,10 @@ class GooglePerftools < Formula    homepage 'http://code.google.com/p/google-perftools/'    sha1 '9490214967913bd579201a60a25320e316d731a5' -  fails_with_llvm "Segfault during linking", :build => 2326 +  fails_with :llvm do +    build 2326 +    cause "Segfault during linking" +  end    def install      ENV.append_to_cflags '-D_XOPEN_SOURCE' diff --git a/Library/Formula/gpgme.rb b/Library/Formula/gpgme.rb index 76e149667..ff6f22987 100644 --- a/Library/Formula/gpgme.rb +++ b/Library/Formula/gpgme.rb @@ -10,7 +10,9 @@ class Gpgme < Formula    depends_on 'libassuan'    depends_on 'pth' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def install      system "./configure", "--disable-dependency-tracking", diff --git a/Library/Formula/graphicsmagick.rb b/Library/Formula/graphicsmagick.rb index f57e41a4f..7d983b530 100644 --- a/Library/Formula/graphicsmagick.rb +++ b/Library/Formula/graphicsmagick.rb @@ -36,7 +36,7 @@ class Graphicsmagick < Formula    depends_on 'ghostscript' => :recommended if ghostscript_srsly?    depends_on 'xz' => :optional -  fails_with_llvm +  fails_with :llvm    def skip_clean? path      path.extname == '.la' diff --git a/Library/Formula/graphviz.rb b/Library/Formula/graphviz.rb index 302813155..d2c0bce29 100644 --- a/Library/Formula/graphviz.rb +++ b/Library/Formula/graphviz.rb @@ -13,7 +13,9 @@ class Graphviz < Formula    depends_on 'pango' if ARGV.include? '--with-pangocairo'    depends_on 'swig' if build_bindings? -  # fails_with_clang +  fails_with :clang do +    build 318 +  end    def options      [["--with-pangocairo", "Build with Pango/Cairo for alternate PDF output"], @@ -35,10 +37,6 @@ class Graphviz < Formula      args << "--disable-swig" unless build_bindings?      args << "--without-pangocairo" unless ARGV.include? '--with-pangocairo' -    # Compilation currently fails with the newer versions of clang -    # shipped with Xcode 4.3+ -    ENV.llvm if MacOS.clang_version.to_f <= 3.1 -      system "./configure", *args      system "make install" diff --git a/Library/Formula/gtk+.rb b/Library/Formula/gtk+.rb index 1adb470b3..f4bc8c15e 100644 --- a/Library/Formula/gtk+.rb +++ b/Library/Formula/gtk+.rb @@ -15,7 +15,10 @@ class Gtkx < Formula    depends_on 'jasper' => :optional    depends_on 'atk' => :optional -  fails_with_llvm "Undefined symbols when linking", :build => 2326 +  fails_with :llvm do +    build 2326 +    cause "Undefined symbols when linking" +  end    def install      system "./configure", "--disable-debug", diff --git a/Library/Formula/guile.rb b/Library/Formula/guile.rb index e05282683..5e4ef1cc6 100644 --- a/Library/Formula/guile.rb +++ b/Library/Formula/guile.rb @@ -21,7 +21,10 @@ class Guile < Formula    # GNU Readline is required; libedit won't work.    depends_on 'readline' -  fails_with_llvm "Segfaults during compilation.", :build => 2336 +  fails_with :llvm do +    build 2336 +    cause "Segfaults during compilation" +  end    def install      system "./configure", "--disable-dependency-tracking", diff --git a/Library/Formula/id3lib.rb b/Library/Formula/id3lib.rb index 17a6a090c..73759cd8b 100644 --- a/Library/Formula/id3lib.rb +++ b/Library/Formula/id3lib.rb @@ -13,7 +13,10 @@ class Id3lib < Formula      p << "https://trac.macports.org/export/90780/trunk/dports/audio/id3lib/files/id3lib-main.patch"    end -  fails_with_llvm "Segfault during linking", :build => 2326 +  fails_with :llvm do +    build 2326 +    cause "Segfault during linking" +  end    def install      system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking" diff --git a/Library/Formula/jasper.rb b/Library/Formula/jasper.rb index 0f37da4b8..13ed536b7 100644 --- a/Library/Formula/jasper.rb +++ b/Library/Formula/jasper.rb @@ -7,6 +7,11 @@ class Jasper < Formula    depends_on 'jpeg' +  fails_with :llvm do +    build 2326 +    cause "Undefined symbols when linking" +  end +    def options      [["--universal", "Build a universal binary."]]    end @@ -17,8 +22,6 @@ class Jasper < Formula    # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=469786    def patches; DATA; end -  fails_with_llvm "Undefined symbols when linking", :build => "2326" -    def install      ENV.universal_binary if ARGV.build_universal?      system "./configure", "--disable-debug", diff --git a/Library/Formula/john.rb b/Library/Formula/john.rb index 5eb42b8ba..f2a62dc02 100644 --- a/Library/Formula/john.rb +++ b/Library/Formula/john.rb @@ -5,9 +5,11 @@ class John < Formula    url 'http://www.openwall.com/john/g/john-1.7.9.tar.bz2'    md5 '45f54fc59386ecd67daaef9f19781d93' -  def patches; DATA; end +  fails_with :llvm do +    build 2334 +  end -  fails_with_llvm :build => 2334 +  def patches; DATA; end    def install      ENV.deparallelize diff --git a/Library/Formula/kyoto-cabinet.rb b/Library/Formula/kyoto-cabinet.rb index f609375ff..2caadd586 100644 --- a/Library/Formula/kyoto-cabinet.rb +++ b/Library/Formula/kyoto-cabinet.rb @@ -5,6 +5,14 @@ class KyotoCabinet < Formula    url 'http://fallabs.com/kyotocabinet/pkg/kyotocabinet-1.2.74.tar.gz'    sha1 '345358259ec4e58b5986b5d6fa8f82dfe2816c37' +  fails_with :clang do +    build 318 +    cause <<-EOS.undent +      Kyoto-cabinet relies on GCC atomic intrinsics, but Clang does not +      implement them for non-integer types. +      EOS +  end +    def install      system "./configure", "--disable-debug", "--prefix=#{prefix}"      system "make" # Separate steps required diff --git a/Library/Formula/libcaca.rb b/Library/Formula/libcaca.rb index 802e4ffb2..40f67f95e 100644 --- a/Library/Formula/libcaca.rb +++ b/Library/Formula/libcaca.rb @@ -9,7 +9,9 @@ class Libcaca < Formula    depends_on 'pkg-config' => :build    depends_on 'gettext' -  fails_with_llvm "unsupported inline asm: input constraint with a matching output constraint of incompatible type!" +  fails_with :llvm do +    cause "Unsupported inline asm: input constraint with a matching output constraint of incompatible type" +  end    # Make libcaca build with clang; see http://caca.zoy.org/ticket/90    def patches; DATA; end diff --git a/Library/Formula/libevent.rb b/Library/Formula/libevent.rb index 4615c078a..abc0846f0 100644 --- a/Library/Formula/libevent.rb +++ b/Library/Formula/libevent.rb @@ -7,7 +7,10 @@ class Libevent < Formula    head 'git://levent.git.sourceforge.net/gitroot/levent/levent' -  fails_with_llvm "Undefined symbol '_current_base' reported during linking.", :build => 2326 +  fails_with :llvm do +    build 2326 +    cause "Undefined symbol '_current_base' reported during linking." +  end    if ARGV.build_head? and MacOS.xcode_version >= "4.3"      depends_on "automake" => :build diff --git a/Library/Formula/libexif.rb b/Library/Formula/libexif.rb index 5afa888c7..39d6f1d1e 100644 --- a/Library/Formula/libexif.rb +++ b/Library/Formula/libexif.rb @@ -5,7 +5,10 @@ class Libexif < Formula    homepage 'http://libexif.sourceforge.net/'    md5 '19844ce6b5d075af16f0d45de1e8a6a3' -  fails_with_llvm "segfault with llvm", :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "segfault with llvm" +  end    def install      system "./configure", "--prefix=#{prefix}", "--disable-dependency-tracking" diff --git a/Library/Formula/libkate.rb b/Library/Formula/libkate.rb index 4f6fa1098..d8eb6cb9f 100644 --- a/Library/Formula/libkate.rb +++ b/Library/Formula/libkate.rb @@ -7,12 +7,13 @@ class Libkate < Formula    depends_on 'libogg' => :recommended +  fails_with :gcc do +    build 5666 +    cause "Segfault during compilation" +  end +    def install      ENV.libpng -    # GCC 4.2 segfaults during compilation -    # FIXME when we can do fails_with :gcc -    ENV.llvm if ENV.compiler == :gcc -      system "./configure", "--disable-debug",                            "--disable-dependency-tracking",                            "--prefix=#{prefix}" diff --git a/Library/Formula/libsigsegv.rb b/Library/Formula/libsigsegv.rb index 500140508..c5b8ba5b6 100644 --- a/Library/Formula/libsigsegv.rb +++ b/Library/Formula/libsigsegv.rb @@ -1,12 +1,15 @@  require 'formula'  class Libsigsegv < Formula +  homepage 'http://www.gnu.org/software/libsigsegv/'    url 'http://ftpmirror.gnu.org/libsigsegv/libsigsegv-2.10.tar.gz'    mirror 'http://ftp.gnu.org/gnu/libsigsegv/libsigsegv-2.10.tar.gz' -  homepage 'http://www.gnu.org/software/libsigsegv/'    sha256 '8460a4a3dd4954c3d96d7a4f5dd5bc4d9b76f5754196aa245287553b26d2199a' -  fails_with_llvm "Fails make check with LLVM GCC from XCode 4 on Snow Leopard", :build => 2336 +  fails_with :llvm do +    build 2336 +    cause "Fails make check with LLVM GCC from XCode 4 on Snow Leopard" +  end    def install      system "./configure", "--disable-dependency-tracking", diff --git a/Library/Formula/libvirt.rb b/Library/Formula/libvirt.rb index de9a191f3..54f9c81b9 100644 --- a/Library/Formula/libvirt.rb +++ b/Library/Formula/libvirt.rb @@ -14,6 +14,11 @@ class Libvirt < Formula      depends_on "libxml2"    end +  fails_with :llvm do +    build 2326 +    cause "Undefined symbols when linking" +  end +    # Includes a patch by Lincoln Myers <lincoln_myers@yahoo.com>,    # fixing a recently introduced compilation bug on OSX.    # Patch is already included upstream, and will be in libvirt 0.9.11. @@ -21,8 +26,6 @@ class Libvirt < Formula      DATA    end -  fails_with_llvm "Undefined symbols when linking", :build => "2326" -    def options      [['--without-libvirtd', 'Build only the virsh client and development libraries.']]    end diff --git a/Library/Formula/libxml2.rb b/Library/Formula/libxml2.rb index a0d3cb7da..285eafcce 100644 --- a/Library/Formula/libxml2.rb +++ b/Library/Formula/libxml2.rb @@ -7,7 +7,10 @@ class Libxml2 < Formula    keg_only :provided_by_osx -  fails_with_llvm "Undefined symbols when linking", :build => "2326" +  fails_with :llvm do +    build 2326 +    cause "Undefined symbols when linking" +  end    def options      [ diff --git a/Library/Formula/log4cxx.rb b/Library/Formula/log4cxx.rb index d48305ed7..b751e4101 100644 --- a/Library/Formula/log4cxx.rb +++ b/Library/Formula/log4cxx.rb @@ -5,8 +5,10 @@ class Log4cxx < Formula    homepage 'http://logging.apache.org/log4cxx/index.html'    md5 'b30ffb8da3665178e68940ff7a61084c' -  fails_with_llvm "Fails with \"collect2: ld terminated with signal 11 [Segmentation fault]\".", -    :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "Fails with 'collect2: ld terminated with signal 11 [Segmentation fault]'" +  end    def options      [ diff --git a/Library/Formula/lua.rb b/Library/Formula/lua.rb index 03751e1f6..ac4c7fdb0 100644 --- a/Library/Formula/lua.rb +++ b/Library/Formula/lua.rb @@ -5,8 +5,10 @@ class Lua < Formula    url 'http://www.lua.org/ftp/lua-5.1.4.tar.gz'    md5 'd0870f2de55d59c1c8419f36e8fac150' -  fails_with_llvm "Lua itself compiles with LLVM, but may fail when other software tries to link.", -                  :build => 2326 +  fails_with :llvm do +    build 2326 +    cause "Lua itself compiles with LLVM, but may fail when other software tries to link." +  end    # Skip cleaning both empty folders and bin/libs so external symbols still work.    skip_clean :all diff --git a/Library/Formula/luarocks.rb b/Library/Formula/luarocks.rb index d0f57caf3..1333ca1f5 100644 --- a/Library/Formula/luarocks.rb +++ b/Library/Formula/luarocks.rb @@ -9,7 +9,9 @@ class Luarocks < Formula    depends_on use_luajit? ? 'luajit' : 'lua' -  fails_with_llvm "Lua itself compiles with llvm, but may fail when other software tries to link." +  fails_with :llvm do +    cause "Lua itself compiles with llvm, but may fail when other software tries to link." +  end    def patches      p = [] diff --git a/Library/Formula/minc.rb b/Library/Formula/minc.rb index 89373181d..729b922c1 100644 --- a/Library/Formula/minc.rb +++ b/Library/Formula/minc.rb @@ -7,8 +7,6 @@ class Minc < Formula    head 'https://github.com/BIC-MNI/minc.git' -  #fails_with_clang "Throws 'non-void function 'miget_real_value_hyperslab' should return a value' error during build.", :build => 318 -    depends_on 'netcdf'    if MacOS.xcode_version >= "4.3" @@ -16,6 +14,12 @@ class Minc < Formula      depends_on "libtool" => :build    end +  fails_with :clang do +    # TODO This is an easy fix, someone send it upstream! +    build 318 +    cause "Throws 'non-void function 'miget_real_value_hyperslab' should return a value'" +  end +    def install      system "autoreconf", "--force", "--instal"      system "./configure", "--disable-dependency-tracking", diff --git a/Library/Formula/mkvtoolnix.rb b/Library/Formula/mkvtoolnix.rb index e12658096..39492799a 100644 --- a/Library/Formula/mkvtoolnix.rb +++ b/Library/Formula/mkvtoolnix.rb @@ -12,13 +12,11 @@ class Mkvtoolnix < Formula    depends_on 'flac' => :optional    depends_on 'lzo' => :optional +  fails_with :clang do +    build 318 +  end +    def install -    # FIXME This should be replaced with fails_with_clang once available -    # build 318 -    if ENV.compiler == :clang -      opoo "Formula will not build with Clang, using LLVM." -      ENV.llvm -    end      system "./configure", "--disable-debug",                            "--prefix=#{prefix}",                            "--with-boost-libdir=#{HOMEBREW_PREFIX}/lib", # For non-/usr/local prefix diff --git a/Library/Formula/monotone.rb b/Library/Formula/monotone.rb index 6f39bc2ae..cb5183cc8 100644 --- a/Library/Formula/monotone.rb +++ b/Library/Formula/monotone.rb @@ -17,7 +17,10 @@ class Monotone < Formula    depends_on 'lua'    depends_on 'pcre' -  fails_with_llvm "linker fails", :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "linker fails" +  end    def install      botan18_prefix = libexec+'botan18' diff --git a/Library/Formula/mosh.rb b/Library/Formula/mosh.rb index ca9b812fc..384464db5 100644 --- a/Library/Formula/mosh.rb +++ b/Library/Formula/mosh.rb @@ -8,7 +8,9 @@ class Mosh < Formula    depends_on 'gmp'    depends_on 'oniguruma' -  fails_with_llvm "Inline asm errors" +  fails_with :llvm do +    cause "Inline asm errors" +  end    def install      system "./configure", "--disable-debug", "--disable-dependency-tracking", diff --git a/Library/Formula/mplayer.rb b/Library/Formula/mplayer.rb index a1203e5d6..66f414638 100644 --- a/Library/Formula/mplayer.rb +++ b/Library/Formula/mplayer.rb @@ -10,7 +10,9 @@ class Mplayer < Formula    depends_on 'pkg-config' => :build    depends_on 'yasm' => :build -  fails_with_llvm "Missing symbols error while linking" +  fails_with :llvm do +    cause "Missing symbols error while linking" +  end    def patches      # When building from SVN HEAD, configure prompts the user to pull FFmpeg diff --git a/Library/Formula/msgpack.rb b/Library/Formula/msgpack.rb index 264ef2d61..29f449b46 100644 --- a/Library/Formula/msgpack.rb +++ b/Library/Formula/msgpack.rb @@ -6,7 +6,9 @@ class Msgpack < Formula    sha256 '7c203265cf14a4723820e0fc7ac14bf4bad5578f7bc525e9835c70cd36e7d1b8'    # fails with the latest LLVM, but only on Lion? -  fails_with_llvm "Compilation fails" if MacOS.lion? +  fails_with :llvm do +    cause "compilation fails" +  end if MacOS.lion?    def install      system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}" diff --git a/Library/Formula/mysql-connector-c.rb b/Library/Formula/mysql-connector-c.rb index 0582c9b1b..0408d4e7a 100644 --- a/Library/Formula/mysql-connector-c.rb +++ b/Library/Formula/mysql-connector-c.rb @@ -7,7 +7,10 @@ class MysqlConnectorC < Formula    depends_on 'cmake' => :build -  fails_with_llvm "Error: unsupported inline asm.", :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "Unsupported inline asm" +  end    def install      system "cmake #{std_cmake_parameters} ." diff --git a/Library/Formula/mysql.rb b/Library/Formula/mysql.rb index 6ba8af3b7..4632560d4 100644 --- a/Library/Formula/mysql.rb +++ b/Library/Formula/mysql.rb @@ -9,7 +9,10 @@ class Mysql < Formula    depends_on 'readline'    depends_on 'pidof' -  fails_with_llvm "https://github.com/mxcl/homebrew/issues/issue/144", :build => 2326 +  fails_with :llvm do +    build 2326 +    cause "https://github.com/mxcl/homebrew/issues/issue/144" +  end    skip_clean :all # So "INSTALL PLUGIN" can work. diff --git a/Library/Formula/nload.rb b/Library/Formula/nload.rb index a283e8c9e..7c9dfc7b7 100644 --- a/Library/Formula/nload.rb +++ b/Library/Formula/nload.rb @@ -5,7 +5,9 @@ class Nload < Formula    homepage 'http://www.roland-riegel.de/nload/'    md5 '9b97c37fe1474f1da42f265fead24081' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    # Patching configure.in file to make configure compile on Mac OS.    # Patch taken from MacPorts. diff --git a/Library/Formula/nmap.rb b/Library/Formula/nmap.rb index 0520d6660..620beb936 100644 --- a/Library/Formula/nmap.rb +++ b/Library/Formula/nmap.rb @@ -9,7 +9,9 @@ class Nmap < Formula    # Leopard's version of OpenSSL isn't new enough    depends_on "openssl" if MacOS.leopard? -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    # The configure script has a C file to test for some functionality that uses    # void main(void). This does not compile with clang but does compile with diff --git a/Library/Formula/node.rb b/Library/Formula/node.rb index 242adae09..eb1e30c80 100644 --- a/Library/Formula/node.rb +++ b/Library/Formula/node.rb @@ -15,7 +15,9 @@ class Node < Formula    # Leopard OpenSSL is not new enough, so use our keg-only one    depends_on 'openssl' if MacOS.leopard? -  fails_with_llvm :build => 2326 +  fails_with :llvm do +    build 2326 +  end    # Stripping breaks dynamic loading    skip_clean :all diff --git a/Library/Formula/pango.rb b/Library/Formula/pango.rb index 0a9d69fb1..dd5df6200 100644 --- a/Library/Formula/pango.rb +++ b/Library/Formula/pango.rb @@ -24,7 +24,10 @@ class Pango < Formula      depends_on 'cairo'    end -  fails_with_llvm "Undefined symbols when linking", :build => "2326" +  fails_with :llvm do +    build 2326 +    cause "Undefined symbols when linking" +  end    def patches      p = {} diff --git a/Library/Formula/par2tbb.rb b/Library/Formula/par2tbb.rb index 7c9567353..673186ebb 100644 --- a/Library/Formula/par2tbb.rb +++ b/Library/Formula/par2tbb.rb @@ -7,6 +7,10 @@ class Par2tbb < Formula    depends_on 'tbb' +  fails_with :clang do +    build 318 +  end +    def install      # par2tbb ships with bad timestamps and      # doesn't respect --disable-maintainer-mode @@ -17,12 +21,6 @@ class Par2tbb < Formula      # but only 10.6+ are available on Xcode4      inreplace 'Makefile.am', /^.*-mmacosx-version.*$/, '' -    # FIXME This should be replaced with fails_with_clang once available -    if ENV.compiler == :clang -      opoo "Formula will not build with Clang, using LLVM." -      ENV.llvm -    end -      if Formula.factory('par2').installed?        opoo "par2tbb conflicts with par2. Your par2 binaries will be overwritten.           If this bothers you, you can restore par2 with `brew link par2`." diff --git a/Library/Formula/pbzip2.rb b/Library/Formula/pbzip2.rb index 61e95788c..5cdcf6547 100644 --- a/Library/Formula/pbzip2.rb +++ b/Library/Formula/pbzip2.rb @@ -5,7 +5,9 @@ class Pbzip2 < Formula    url 'http://compression.ca/pbzip2/pbzip2-1.1.6.tar.gz'    md5 '26cc5a0d882198f106e75101ff0544a3' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def install      inreplace "Makefile", "$(PREFIX)/man", "$(PREFIX)/share/man" diff --git a/Library/Formula/pcre.rb b/Library/Formula/pcre.rb index 1a4e7c852..df2133a87 100644 --- a/Library/Formula/pcre.rb +++ b/Library/Formula/pcre.rb @@ -6,7 +6,10 @@ class Pcre < Formula    mirror 'http://downloads.sourceforge.net/project/pcre/pcre/8.30/pcre-8.30.tar.bz2'    md5 '98e8928cccc945d04279581e778fbdff' -  fails_with_llvm "Bus error in ld on SL 10.6.4", :build => 2326 +  fails_with :llvm do +    build 2326 +    cause "Bus error in ld on SL 10.6.4" +  end    def options      [["--universal", "Build a universal binary."]] diff --git a/Library/Formula/percona-server.rb b/Library/Formula/percona-server.rb index 66c22a51c..d6c2f54f2 100644 --- a/Library/Formula/percona-server.rb +++ b/Library/Formula/percona-server.rb @@ -12,10 +12,12 @@ class PerconaServer < Formula    depends_on 'readline'    depends_on 'pidof' -  fails_with_llvm "https://github.com/mxcl/homebrew/issues/issue/144" -    skip_clean :all # So "INSTALL PLUGIN" can work. +  fails_with :llvm do +    cause "https://github.com/mxcl/homebrew/issues/issue/144" +  end +    def options      [        ['--with-tests', "Build with unit tests."], diff --git a/Library/Formula/pianobar.rb b/Library/Formula/pianobar.rb index 565d92a2a..2cf2b4256 100644 --- a/Library/Formula/pianobar.rb +++ b/Library/Formula/pianobar.rb @@ -14,7 +14,10 @@ class Pianobar < Formula    skip_clean 'bin' -  fails_with_llvm "Reports of this not compiling on Xcode 4", :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "Reports of this not compiling on Xcode 4" +  end    def install      # Discard Homebrew's CFLAGS as Pianobar reportedly doesn't like them diff --git a/Library/Formula/pixman.rb b/Library/Formula/pixman.rb index cd708d43e..49b80a22f 100644 --- a/Library/Formula/pixman.rb +++ b/Library/Formula/pixman.rb @@ -7,6 +7,8 @@ class Pixman < Formula    depends_on 'pkg-config' => :build +  fails_with :llvm +    def options      [["--universal", "Build a universal binary."]]    end @@ -14,13 +16,6 @@ class Pixman < Formula    def install      ENV.x11      ENV.universal_binary if ARGV.build_universal? -    if ENV.compiler == :llvm -      if MacOS.xcode_version >= "4.1" -        ENV.clang -      else -        ENV.gcc_4_2 -      end -    end      # Disable gtk as it is only used to build tests      system "./configure", "--disable-dependency-tracking", diff --git a/Library/Formula/portaudio.rb b/Library/Formula/portaudio.rb index b0e7dc77c..3ba964907 100644 --- a/Library/Formula/portaudio.rb +++ b/Library/Formula/portaudio.rb @@ -7,7 +7,9 @@ class Portaudio < Formula    depends_on 'pkg-config' => :build -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def options      [["--universal", "Build a universal binary."]] diff --git a/Library/Formula/povray.rb b/Library/Formula/povray.rb index 649a9764f..577373a5a 100644 --- a/Library/Formula/povray.rb +++ b/Library/Formula/povray.rb @@ -8,9 +8,10 @@ class Povray < Formula    depends_on 'libtiff' => :optional    depends_on 'jpeg' => :optional -  if MACOS_VERSION == 10.5 -    fails_with_llvm "povray fails with 'terminate called after throwing an instance of int'" -  end +  # TODO give this a build number (2326?) +  fails_with :llvm do +    cause "povray fails with 'terminate called after throwing an instance of int'" +  end if MacOS.leopard?    def install      system "./configure", "--disable-debug", "--disable-dependency-tracking", diff --git a/Library/Formula/proj.rb b/Library/Formula/proj.rb index f741e1619..1e0bb81b0 100644 --- a/Library/Formula/proj.rb +++ b/Library/Formula/proj.rb @@ -10,7 +10,9 @@ class Proj < Formula    homepage 'http://trac.osgeo.org/proj/'    md5 'd815838c92a29179298c126effbb1537' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def skip_clean? path      path.extname == '.la' diff --git a/Library/Formula/protobuf.rb b/Library/Formula/protobuf.rb index ef1dabe47..7643d7854 100644 --- a/Library/Formula/protobuf.rb +++ b/Library/Formula/protobuf.rb @@ -5,7 +5,9 @@ class Protobuf < Formula    url 'http://protobuf.googlecode.com/files/protobuf-2.4.1.tar.bz2'    sha1 'df5867e37a4b51fb69f53a8baf5b994938691d6d' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def options      [['--universal', 'Do a universal build']] diff --git a/Library/Formula/pv.rb b/Library/Formula/pv.rb index 3583bba2c..936a2b735 100644 --- a/Library/Formula/pv.rb +++ b/Library/Formula/pv.rb @@ -5,7 +5,9 @@ class Pv < Formula    homepage 'http://www.ivarch.com/programs/pv.shtml'    md5 '67aedf6dbcd068d5feeaa76156153f4f' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def install      system "./configure", "--disable-debug", "--disable-dependency-tracking", diff --git a/Library/Formula/qemu.rb b/Library/Formula/qemu.rb index 5a7105d28..e3e96750a 100644 --- a/Library/Formula/qemu.rb +++ b/Library/Formula/qemu.rb @@ -8,7 +8,9 @@ class Qemu < Formula    depends_on 'jpeg'    depends_on 'gnutls' -  fails_with_llvm "Segmentation faults occur at run-time with LLVM using qemu-system-arm." +  fails_with :llvm do +    cause "Segmentation faults occur at run-time with LLVM using qemu-system-arm." +  end    def install      system "./configure", "--prefix=#{prefix}", diff --git a/Library/Formula/qt.rb b/Library/Formula/qt.rb index 7bc9afa80..ba9d9a945 100644 --- a/Library/Formula/qt.rb +++ b/Library/Formula/qt.rb @@ -12,6 +12,10 @@ class Qt < Formula    head 'git://gitorious.org/qt/qt.git', :branch => 'master' +  fails_with :clang do +    build 318 +  end +    def options      [        ['--with-qtdbus', "Enable QtDBus module."], @@ -77,10 +81,6 @@ class Qt < Formula        args << "-release"      end -    # Compilation currently fails with the newer versions of clang -    # shipped with Xcode 4.3+ -    ENV.llvm if MacOS.clang_version.to_f <= 3.1 -      # Needed for Qt 4.8.0 due to attempting to link moc with gcc.      ENV['LD'] = ENV['CXX'] diff --git a/Library/Formula/redis.rb b/Library/Formula/redis.rb index c877132cf..e02d5f9d6 100644 --- a/Library/Formula/redis.rb +++ b/Library/Formula/redis.rb @@ -7,7 +7,10 @@ class Redis < Formula    head 'https://github.com/antirez/redis.git', :branch => 'unstable' -  fails_with_llvm 'Fails with "reference out of range from _linenoise"', :build => 2334 +  fails_with :llvm do +    build 2334 +    cause 'Fails with "reference out of range from _linenoise"' +  end    def install      # Architecture isn't detected correctly on 32bit Snow Leopard without help diff --git a/Library/Formula/redland.rb b/Library/Formula/redland.rb index c115199bc..083090296 100644 --- a/Library/Formula/redland.rb +++ b/Library/Formula/redland.rb @@ -10,7 +10,9 @@ class Redland < Formula    depends_on 'rasqal'    depends_on 'berkeley-db' => :optional -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def install      system "./configure", "--disable-debug", "--disable-dependency-tracking", diff --git a/Library/Formula/rtmpdump.rb b/Library/Formula/rtmpdump.rb index 2d861a7cd..1b4fa0f0f 100644 --- a/Library/Formula/rtmpdump.rb +++ b/Library/Formula/rtmpdump.rb @@ -9,8 +9,10 @@ class Rtmpdump < Formula    depends_on 'openssl' if MacOS.leopard? -  # note: as of LLVM build 2336, this still has runtime issues -  fails_with_llvm "Crashes at runtime" +  fails_with :llvm do +    # note: as of LLVM build 2336, this still has runtime issues +    cause "Crashes at runtime" +  end    # Use dylib instead of so    def patches; DATA; end unless ARGV.build_head? diff --git a/Library/Formula/rtorrent.rb b/Library/Formula/rtorrent.rb index 62b71ccdf..361ee178a 100644 --- a/Library/Formula/rtorrent.rb +++ b/Library/Formula/rtorrent.rb @@ -10,6 +10,10 @@ class Rtorrent < Formula    depends_on 'libtorrent'    depends_on 'xmlrpc-c' => :optional +  fails_with :clang do +    build 318 +  end +    def install      args = ["--disable-debug", "--disable-dependency-tracking", "--prefix=#{prefix}"]      args << "--with-xmlrpc-c" if Formula.factory("xmlrpc-c").installed? diff --git a/Library/Formula/ruby-enterprise-edition.rb b/Library/Formula/ruby-enterprise-edition.rb index 3332588fb..7ed68acba 100644 --- a/Library/Formula/ruby-enterprise-edition.rb +++ b/Library/Formula/ruby-enterprise-edition.rb @@ -7,7 +7,7 @@ class RubyEnterpriseEdition < Formula    depends_on 'readline' -  fails_with_llvm "fails with LLVM" +  fails_with :llvm    skip_clean 'bin/ruby' diff --git a/Library/Formula/ruby.rb b/Library/Formula/ruby.rb index 0fd389ca2..fc128eb5d 100644 --- a/Library/Formula/ruby.rb +++ b/Library/Formula/ruby.rb @@ -9,7 +9,9 @@ class Ruby < Formula    depends_on 'readline'    depends_on 'libyaml' -  fails_with_llvm :build => 2326 +  fails_with :llvm do +    build 2326 +  end    # Stripping breaks dynamic linking    skip_clean :all diff --git a/Library/Formula/rust.rb b/Library/Formula/rust.rb index b1d680fd0..55364365a 100644 --- a/Library/Formula/rust.rb +++ b/Library/Formula/rust.rb @@ -5,6 +5,11 @@ class Rust < Formula    homepage 'http://www.rust-lang.org/'    md5 '47be90f952ec01c3088af58be78fd618' +  fails_with :clang do +    build 318 +    cause "cannot initialize a parameter of type 'volatile long long *' with an rvalue of type 'int *'" +  end +    def install      system "./configure", "--prefix=#{prefix}"      system "make" diff --git a/Library/Formula/rxvt-unicode.rb b/Library/Formula/rxvt-unicode.rb index 7ce7faf22..630ae4e67 100644 --- a/Library/Formula/rxvt-unicode.rb +++ b/Library/Formula/rxvt-unicode.rb @@ -7,7 +7,10 @@ class RxvtUnicode < Formula    depends_on 'pkg-config' => :build -  fails_with_llvm "memory fences not defined for your architecture", :build => 2336 +  fails_with :llvm do +    build 2336 +    cause "memory fences not defined for your architecture" +  end    def patches      # Patch hunks 1 and 2 allow perl support to compile on Intel. diff --git a/Library/Formula/sbcl.rb b/Library/Formula/sbcl.rb index 3fdced2cc..2e35e70fd 100644 --- a/Library/Formula/sbcl.rb +++ b/Library/Formula/sbcl.rb @@ -17,7 +17,10 @@ class Sbcl < Formula      sha1 '3c13225c8fe3eabf54e9d368e6b74318a5546430'    end -  fails_with_llvm "Compilation fails with LLVM.", :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "Compilation fails with LLVM." +  end    skip_clean 'bin'    skip_clean 'lib' diff --git a/Library/Formula/silk.rb b/Library/Formula/silk.rb index 766807e89..ef83fe104 100644 --- a/Library/Formula/silk.rb +++ b/Library/Formula/silk.rb @@ -10,7 +10,9 @@ class Silk < Formula    depends_on 'libfixbuf'    depends_on 'yaf' -  fails_with_llvm "Undefined symbols during compile" +  fails_with :llvm do +    cause "Undefined symbols during compile" +  end    def install      system "./configure", "--disable-dependency-tracking", diff --git a/Library/Formula/sl.rb b/Library/Formula/sl.rb index 165b0e09b..cd5970532 100644 --- a/Library/Formula/sl.rb +++ b/Library/Formula/sl.rb @@ -6,9 +6,11 @@ class Sl < Formula    mirror 'http://ftp.us.debian.org/debian/pool/main/s/sl/sl_3.03.orig.tar.gz'    md5 'd0d997b964bb3478f7f4968eee13c698' -  def install -    ENV.llvm if MacOS.clang_version.to_f <= 3.1 +  fails_with :clang do +    build 318 +  end +  def install      system "make", "CC=#{ENV.cc}", "CFLAGS=#{ENV.cflags}"      bin.install "sl"      man1.install "sl.1" diff --git a/Library/Formula/sphinx.rb b/Library/Formula/sphinx.rb index 26ea99411..ca07fcf81 100644 --- a/Library/Formula/sphinx.rb +++ b/Library/Formula/sphinx.rb @@ -15,8 +15,10 @@ class Sphinx < Formula    head 'http://sphinxsearch.googlecode.com/svn/trunk/' -  fails_with_llvm "ld: rel32 out of range in _GetPrivateProfileString from /usr/lib/libodbc.a(SQLGetPrivateProfileString.o)", -    :build => 2334 +  fails_with :llvm do +    build 2334 +    cause "ld: rel32 out of range in _GetPrivateProfileString from /usr/lib/libodbc.a(SQLGetPrivateProfileString.o)" +  end    # Patch the configure script to run under clang, preventing the error:    #   configure: error: Gcc version error. Minspec is 3.4 diff --git a/Library/Formula/spin.rb b/Library/Formula/spin.rb index 39684ec4b..584095783 100644 --- a/Library/Formula/spin.rb +++ b/Library/Formula/spin.rb @@ -6,7 +6,9 @@ class Spin < Formula    version '6.1.0'    md5 '89c0d322c3a5aded1fda9b0d30327d19' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    # replace -DPC with -DMAC in makefile CFLAGS    def patches diff --git a/Library/Formula/streamripper.rb b/Library/Formula/streamripper.rb index 6ab35681c..9aefe62e7 100644 --- a/Library/Formula/streamripper.rb +++ b/Library/Formula/streamripper.rb @@ -7,7 +7,10 @@ class Streamripper < Formula    depends_on 'glib' -  fails_with_llvm "Strange runtime errors with LLVM.", :build => 2335 +  fails_with :llvm do +    build 2335 +    cause "Strange runtime errors with LLVM." +  end    def install      # the Makefile ignores CPPFLAGS from the environment, which diff --git a/Library/Formula/swi-prolog.rb b/Library/Formula/swi-prolog.rb index 1e00e4eaf..440f1c9b1 100644 --- a/Library/Formula/swi-prolog.rb +++ b/Library/Formula/swi-prolog.rb @@ -19,8 +19,10 @@ class SwiProlog < Formula      depends_on 'expat'    end -  fails_with_llvm "Exported procedure chr_translate:chr_translate_line_info/3 is not defined", -    :build => 2335 +  fails_with :llvm do +    build 2335 +    cause "Exported procedure chr_translate:chr_translate_line_info/3 is not defined" +  end    def options      [['--lite', "Don't install any packages; overrides --with-jpl"], diff --git a/Library/Formula/syck.rb b/Library/Formula/syck.rb index 6209ca432..51e440820 100644 --- a/Library/Formula/syck.rb +++ b/Library/Formula/syck.rb @@ -5,7 +5,9 @@ class Syck < Formula    homepage 'https://wiki.github.com/indeyets/syck/'    md5 '198f925b4ed7fe04a182c35014498634' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def install      ENV.deparallelize # Not parallel safe. diff --git a/Library/Formula/tesseract.rb b/Library/Formula/tesseract.rb index 524a4d2ce..026717600 100644 --- a/Library/Formula/tesseract.rb +++ b/Library/Formula/tesseract.rb @@ -102,8 +102,10 @@ class Tesseract < Formula      depends_on "libtool" => :build    end -  fails_with_llvm "Executable 'tesseract' segfaults on 10.6 when compiled with llvm-gcc", -                  :build => "2206" +  fails_with :llvm do +    build 2206 +    cause "Executable 'tesseract' segfaults on 10.6 when compiled with llvm-gcc" +  end    # mftraining has a missing symbols error when cleaned    skip_clean 'bin' diff --git a/Library/Formula/ufraw.rb b/Library/Formula/ufraw.rb index 358ae3643..cbcac3e02 100644 --- a/Library/Formula/ufraw.rb +++ b/Library/Formula/ufraw.rb @@ -13,7 +13,9 @@ class Ufraw < Formula    depends_on 'dcraw'    depends_on 'exiv2' => :optional -  fails_with_llvm "Compiling with LLVM gives a segfault while linking." +  fails_with :llvm do +    cause "Segfault while linking" +  end    def install      system "./configure", "--disable-dependency-tracking", diff --git a/Library/Formula/unittest.rb b/Library/Formula/unittest.rb index 1e6777932..ce541e32f 100644 --- a/Library/Formula/unittest.rb +++ b/Library/Formula/unittest.rb @@ -5,7 +5,9 @@ class Unittest < Formula    homepage 'http://unittest.red-bean.com/'    md5 'e77615162141b23a78adcda929d58d61' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def install      system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking" diff --git a/Library/Formula/vice.rb b/Library/Formula/vice.rb index a9001b813..4956a5262 100644 --- a/Library/Formula/vice.rb +++ b/Library/Formula/vice.rb @@ -17,7 +17,9 @@ class Vice < Formula      end    end -  fails_with_llvm :build => 2335 +  fails_with :llvm do +    build 2335 +  end    def install      ENV.libpng diff --git a/Library/Formula/vpnc.rb b/Library/Formula/vpnc.rb index 7e3c9e10c..fe4e96828 100644 --- a/Library/Formula/vpnc.rb +++ b/Library/Formula/vpnc.rb @@ -8,7 +8,9 @@ class Vpnc < Formula    depends_on 'libgcrypt'    depends_on 'libgpg-error' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def options      [["--hybrid", "Use vpnc hybrid authentication."]] diff --git a/Library/Formula/w3m.rb b/Library/Formula/w3m.rb index b716bb586..23a94ad5f 100644 --- a/Library/Formula/w3m.rb +++ b/Library/Formula/w3m.rb @@ -7,7 +7,9 @@ class W3m < Formula    depends_on 'bdw-gc' -  fails_with_llvm :build => 2334 +  fails_with :llvm do +    build 2334 +  end    def patches      # patch to build against bdw-gc 7.2 by @waltarix diff --git a/Library/Formula/wine.rb b/Library/Formula/wine.rb index 345070664..916bdb57f 100644 --- a/Library/Formula/wine.rb +++ b/Library/Formula/wine.rb @@ -21,7 +21,10 @@ class Wine < Formula    depends_on 'jpeg'    depends_on 'libicns' -  fails_with_llvm 'llvm-gcc does not respect force_align_arg_pointer', :build => 2336 +  fails_with :llvm do +    build 2336 +    cause 'llvm-gcc does not respect force_align_arg_pointer' +  end    # the following libraries are currently not specified as dependencies, or not built as 32-bit:    # configure: libsane, libv4l, libgphoto2, liblcms, gstreamer-0.10, libcapi20, libgsm, libtiff diff --git a/Library/Formula/yaf.rb b/Library/Formula/yaf.rb index aa5d63603..f628da435 100644 --- a/Library/Formula/yaf.rb +++ b/Library/Formula/yaf.rb @@ -9,7 +9,9 @@ class Yaf < Formula    depends_on 'glib'    depends_on 'libfixbuf' -  fails_with_llvm "Undefined symbols during compile" +  fails_with :llvm do +    cause "Undefined symbols during compile" +  end    def install      system "./configure", "--disable-debug", "--disable-dependency-tracking", diff --git a/Library/Formula/zeromq.rb b/Library/Formula/zeromq.rb index 66cdc87af..e354deddd 100644 --- a/Library/Formula/zeromq.rb +++ b/Library/Formula/zeromq.rb @@ -10,14 +10,16 @@ class Zeromq < Formula    homepage 'http://www.zeromq.org/'    md5 'f0f9fd62acb1f0869d7aa80379b1f6b7' -  fails_with_llvm "Compiling with LLVM gives a segfault while linking.", -                  :build => 2326 if MacOS.snow_leopard? -    if ARGV.build_head? and MacOS.xcode_version >= "4.3"      depends_on "automake" => :build      depends_on "libtool" => :build    end +  fails_with :llvm do +    build 2326 +    cause "Segfault while linking" +  end +    def options      [        ['--with-pgm', 'Build with PGM extension'], | 
