Add "fails_with_llvm" to formula to document LLVM build breaks.

Replaced ENV.gcc_4_2 + comments with calls to "fails_with_llvm",
to specifically message to the user when a formula is known or suspected
to not build with LLVM. If the user specifies "--use-llvm", the message
will be displayed, but compilation will be tried anyway.

Since using LLVM is now an advanced/hidden feature instead of the
default on 10.6, we'll let the user try anyway (and submit patches
if things are now working.)
This commit is contained in:
Adam Vandenberg 2010-06-16 11:50:36 -07:00
parent f6c49e3234
commit e1bb919734
49 changed files with 52 additions and 78 deletions

View file

@ -12,8 +12,7 @@ class Aqbanking <Formula
#depends_on 'qt3' # for gui frontends
def install
# llvm results in a sigsegfault during compile
ENV.gcc_4_2
fails_with_llvm "llvm results in a sigsegfault during compile"
configure_args = [
"--prefix=#{prefix}",
"--disable-debug",

View file

@ -6,7 +6,7 @@ class Aria2 <Formula
homepage 'http://aria2.sourceforge.net/'
def install
ENV.gcc_4_2 # 1.8.2 didn't work w/ LLVM
fails_with_llvm "1.8.2 didn't work w/ LLVM"
system "./configure", "--disable-dependency-tracking",
"--prefix=#{prefix}"
system "make install"

View file

@ -358,7 +358,7 @@ class Aspell <Formula
end
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--prefix=#{prefix}"
system "make install"

View file

@ -6,10 +6,9 @@ class BdwGc <Formula
md5 '2ff9924c7249ef7f736ecfe6f08f3f9b'
def install
fails_with_llvm "LLVM gives an unsupported inline asm error"
if MACOS_VERSION == 10.6
# LLVM gives an unsupported inline asm error
ENV.gcc_4_2
# ucontext has been deprecated in 10.6
# use this flag to force the header to compile
ENV.append 'CPPFLAGS', "-D_XOPEN_SOURCE"

View file

@ -10,9 +10,8 @@ class Boost <Formula
end
def install
# Use GCC 4.2 because the standard llvm-gcc causes errors with dropped arugments
# to functions when linking with the boost library
ENV.gcc_4_2
fails_with_llvm "the standard llvm-gcc causes errors with dropped arugments "+
"to functions when linking with the boost library"
# Not sure about this, but added since macports has it
mkdir 'libs/random/build'

View file

@ -8,9 +8,7 @@ class Celt <Formula
depends_on 'libogg' => :optional
def install
# 1 Test failed with llvm-gcc
ENV.gcc_4_2
fails_with_llvm "1 test failed with llvm-gcc"
system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking", "--enable-new-plc"
system "make check"
system "make install"

View file

@ -6,8 +6,7 @@ class Dirac <Formula
homepage 'http://diracvideo.org/'
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"
system "make install"
end

View file

@ -7,7 +7,7 @@ class Elinks <Formula
def install
ENV.deparallelize
ENV.gcc_4_2
fails_with_llvm
ENV.delete('LD')
system "./configure --prefix='#{prefix}'"
system "make install"

View file

@ -25,7 +25,7 @@ class Erlang <Formula
def install
ENV.deparallelize
ENV.gcc_4_2 # see http://github.com/mxcl/homebrew/issues/#issue/120
fails_with_llvm "see http://github.com/mxcl/homebrew/issues/#issue/120"
# If building from GitHub, this step is required (but not for tarball downloads.)
system "./otp_build autoconf" if File.exist? "otp_build"

View file

@ -12,7 +12,7 @@ class Flusspferd <Formula
depends_on 'spidermonkey'
def install
ENV.gcc_4_2
fails_with_llvm
system "cmake -H. -Bbuild #{std_cmake_parameters}"
system "make install"
end

View file

@ -13,9 +13,7 @@ class GambitScheme <Formula
end
def install
# Gambit Scheme currently fails to build with llvm-gcc
# (ld crashes during the build process)
ENV.gcc_4_2
fails_with_llvm "ld crashes during the build process"
# Gambit Scheme doesn't like full optimizations
ENV.O2

View file

@ -13,8 +13,7 @@ class Gmp <Formula
end
def install
# On OS X 10.6, some tests fail under LLVM
ENV.gcc_4_2
fails_with_llvm "On OS X 10.6, some tests fail under LLVM"
args = ["--prefix=#{prefix}", "--infodir=#{info}", "--enable-cxx"]

View file

@ -17,8 +17,7 @@ class GnuSmalltalk <Formula
# depends_on 'gmp' => :optional # 32/64 built build problems
def install
# Codegen problems with LLVM
ENV.gcc_4_2
fails_with_llvm "Codegen problems with LLVM"
# 64-bit version doesn't build, so force 32 bits.
ENV.m32

View file

@ -9,7 +9,7 @@ class Gpgme < Formula
depends_on 'libgpg-error'
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--disable-debug", "--disable-dependency-tracking",
"--prefix=#{prefix}",
"--disable-asm"

View file

@ -34,7 +34,7 @@ class Graphicsmagick <Formula
end
def install
ENV.gcc_4_2
fails_with_llvm
ENV.libpng
ENV.O3

View file

@ -11,8 +11,7 @@ class Gwenhywfar <Formula
def install
# llvm results in a sigsegfault during compile
ENV.gcc_4_2
fails_with_llvm "llvm results in a sigsegfault during compile"
system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"
system "make install"
end

View file

@ -11,7 +11,7 @@ class John <Formula
def install
ENV.deparallelize
ENV.gcc_4_2
fails_with_llvm
arch = Hardware.is_64_bit? ? '64' : 'sse2'
Dir.chdir 'src' do

View file

@ -6,9 +6,7 @@ class Libexif <Formula
md5 '56144a030a4c875c600b1ccf713f69f7'
def install
# segfault with llvm
ENV.gcc_4_2
fails_with_llvm "segfault with llvm"
system "./configure", "--prefix=#{prefix}", "--disable-dependency-tracking"
system "make install"
end

View file

@ -14,9 +14,7 @@ class Monotone <Formula
depends_on 'pcre'
def install
# linker fails
ENV.gcc_4_2
fails_with_llvm "linker fails"
system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"
system "make install"
end

View file

@ -8,7 +8,7 @@ class MysqlConnectorC <Formula
depends_on 'cmake'
def install
ENV.gcc_4_2 # error: unsupported inline asm
fails_with_llvm "error: unsupported inline asm"
system "cmake . #{std_cmake_parameters}"
system 'make'
ENV.j1

View file

@ -20,7 +20,7 @@ class Mysql <Formula
end
def install
ENV.gcc_4_2 # http://github.com/mxcl/homebrew/issues/#issue/144
fails_with_llvm "http://github.com/mxcl/homebrew/issues/issue/144"
# See: http://dev.mysql.com/doc/refman/5.1/en/configure-options.html
# These flags may not apply to gcc 4+

View file

@ -6,7 +6,7 @@ class Ncursesw <Formula
homepage 'http://www.gnu.org/software/ncurses/ncurses.html'
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--prefix=#{prefix}",
"--mandir=#{man}",
"--disable-debug",

View file

@ -26,7 +26,7 @@ class Nethack <Formula
end
def install
ENV.gcc_4_2
fails_with_llvm
# Build everything in-order; no multi builds.
ENV.deparallelize

View file

@ -6,7 +6,7 @@ class Nmap <Formula
@md5='f77fa51d89ab27d35e5cd87bb086b858'
def install
ENV.gcc_4_2
fails_with_llvm
ENV.deparallelize
system "./configure", "--prefix=#{prefix}",
"--without-zenmap"

View file

@ -15,7 +15,7 @@ class Node <Formula
end
def install
ENV.gcc_4_2
fails_with_llvm
inreplace %w{wscript configure} do |s|
s.gsub! '/usr/local', HOMEBREW_PREFIX
s.gsub! '/opt/local/lib', '/usr/lib'

View file

@ -6,8 +6,7 @@ class Pbzip2 <Formula
md5 'b354422759da7113da366aad1876ed5d'
def install
# Won't compile with LLVM
ENV.gcc_4_2
fails_with_llvm
inreplace "Makefile" do |s|
s.change_make_var! 'PREFIX', prefix

View file

@ -7,8 +7,7 @@ class PdflibLite <Formula
version "7.0.4p4"
def install
# SL 10.6.1 LLVM crashes with an internal compiler error on this version.
ENV.gcc_4_2
fails_with_llvm "SL 10.6.1 LLVM crashes with an internal compiler error on this version."
# Without the following substituion, pdflib-lite runs into weird
# build errors due to bad interactions with the TIFF headers.

View file

@ -6,7 +6,7 @@ class Portaudio <Formula
md5 'd2943e4469834b25afe62cc51adc025f'
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"

View file

@ -6,8 +6,7 @@ class Povray <Formula
md5 'b5789bb7eeaed0809c5c82d0efda571d'
def install
# llvm-gcc: povray fails with 'terminate called after throwing an instance of int'
ENV.gcc_4_2
fails_with_llvm "llvm-gcc: povray fails with 'terminate called after throwing an instance of int'"
system "./configure", "COMPILED_BY=homebrew", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"
system "make install"

View file

@ -15,7 +15,7 @@ class Proj <Formula
end
def install
ENV.gcc_4_2
fails_with_llvm
# The datum grid files are required to support datum shifting
d = Dir.getwd

View file

@ -6,7 +6,7 @@ class Protobuf <Formula
homepage 'http://code.google.com/p/protobuf/'
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--prefix=#{prefix}", "--disable-debug",
"--disable-dependency-tracking",
"--with-zlib"

View file

@ -4,12 +4,11 @@ class Pv <Formula
url 'http://pipeviewer.googlecode.com/files/pv-1.1.4.tar.bz2'
homepage 'http://www.ivarch.com/programs/pv.shtml'
md5 '63033e090d61a040407bfd043aeb6d27'
aka 'pipeviewer'
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--disable-debug", "--disable-dependency-tracking",
"--prefix=#{prefix}",
"--mandir=#{man}",

View file

@ -7,7 +7,7 @@ class Redis <Formula
sha1 'c71aef0b3f31acb66353d86ba57dd321b541043f'
def install
ENV.gcc_4_2 # Breaks with LLVM
fails_with_llvm "Breaks with LLVM"
system "make"
%w( redis-benchmark redis-cli redis-server redis-stat redis-check-dump ).each { |p|

View file

@ -11,8 +11,7 @@ class Redland <Formula
depends_on 'berkeley-db' => :optional
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--prefix=#{prefix}",
"--disable-debug",
"--disable-dependency-tracking",

View file

@ -12,7 +12,7 @@ class RubyEnterpriseEdition <Formula
aka :ree
def install
ENV.gcc_4_2 # fails with LLVM
fails_with_llvm "fails with LLVM"
args = ['./installer', "--auto", prefix, '--no-tcmalloc']
args << '-c' << '--enable-shared' if ARGV.include?('--enable-shared')
system *args

View file

@ -18,7 +18,7 @@ class Ruby <Formula
end
def install
ENV.gcc_4_2
fails_with_llvm
args = [ "--prefix=#{prefix}",
"--disable-debug",

View file

@ -13,7 +13,7 @@ class Sdl <Formula
end
def install
ENV.gcc_4_2
fails_with_llvm
Sdl.use_homebrew_prefix %w[sdl.pc.in sdl-config.in]
system "./configure", "--prefix=#{prefix}", "--disable-debug",

View file

@ -6,9 +6,7 @@ class Sphinx <Formula
md5 '7b9b618cb9b378f949bb1b91ddcc4f54'
def install
# fails with llvm-gcc:
# ld: rel32 out of range in _GetPrivateProfileString from /usr/lib/libodbc.a(SQLGetPrivateProfileString.o)
ENV.gcc_4_2
fails_with_llvm "fails with: ld: rel32 out of range in _GetPrivateProfileString from /usr/lib/libodbc.a(SQLGetPrivateProfileString.o)"
config_args = ["--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"]
# configure script won't auto-select PostgreSQL

View file

@ -11,7 +11,7 @@ class Spin <Formula
end
def install
ENV.gcc_4_2
fails_with_llvm
ENV.deparallelize
# Compile and install the binary.

View file

@ -8,7 +8,7 @@ class Streamripper <Formula
depends_on 'glib'
def install
ENV.gcc_4_2 # strange runtime errors with llvm
fails_with_llvm "strange runtime errors with llvm"
File.chmod 0755, "./install-sh" # without this 'make install' doesn't seem to work (permission denied)
system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"
system "make install"

View file

@ -6,7 +6,7 @@ class Syck <Formula
md5 '198f925b4ed7fe04a182c35014498634'
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"
system "make install"
end

View file

@ -25,8 +25,7 @@ class Tesseract <Formula
end
def install
# Executable 'tesseract' segfaults on 10.6 when compiled with llvm-gcc (LLVM build 2206)
ENV.gcc_4_2
fails_with_llvm "Executable 'tesseract' segfaults on 10.6 when compiled with llvm-gcc", :build => "2206"
# 'make install' expects the language data files in the build directory
d = Dir.getwd

View file

@ -100,8 +100,7 @@ class TexLive <Formula
# Notes:
# Several OSX-specific files (texk/web2c/xetexdir/XeTeXFontMgr_Mac.mm and others) can't build in
# 64 bit mode on OSX, since they use deprecated functions only available when building in 32bit.
ENV.gcc_4_2
fails_with_llvm
ENV.m32
ENV.deparallelize

View file

@ -6,7 +6,7 @@ class Unittest <Formula
@md5='6eaa2823620c2e21fc745bd8da6a26b2'
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"
system "make install"
end

View file

@ -16,9 +16,8 @@ class Vice <Formula
end
def install
fails_with_llvm "Cannot build with LLVM"
ENV.libpng
# Cannot build with LLVM
ENV.gcc_4_2
# Disable the zlibtest, we know we have it.
# Use Cocoa instead of X

View file

@ -14,8 +14,8 @@ class Visualboyadvance <Formula
end
def install
fails_with_llvm "Video scalers don't link right w/ LLVM"
ENV.x11 # for libpng
ENV.gcc_4_2 # Video scalers don't link right w/ LLVM
system "./configure", "--prefix=#{prefix}", "--disable-debug",
"--disable-dependency-tracking",

View file

@ -19,7 +19,7 @@ class Vpnc <Formula
end
def install
ENV.gcc_4_2
fails_with_llvm
ENV.no_optimization
ENV.deparallelize

View file

@ -8,7 +8,7 @@ class W3m <Formula
depends_on 'bdw-gc'
def install
ENV.gcc_4_2
fails_with_llvm
system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking", "--disable-image"
system "make install"
end

View file

@ -17,8 +17,7 @@ EOS
end
def install
# Wine does not compile with LLVM yet
ENV.gcc_4_2
fails_with_llvm
ENV.x11
# Make sure we build 32bit version, because Wine64 is not fully functional yet