diff options
| author | Mike McQuaid | 2016-05-22 09:40:08 +0100 | 
|---|---|---|
| committer | Mike McQuaid | 2016-05-22 09:40:08 +0100 | 
| commit | 375efe09455218d9929e41f16317074ccdf50f2a (patch) | |
| tree | 4d7f48fd6cd36e00c5e24712e8f7a812e042253d | |
| parent | 7b2d1a5b08f4da122d995bdf8ba437e3cb25dc95 (diff) | |
| download | brew-375efe09455218d9929e41f16317074ccdf50f2a.tar.bz2 | |
Remove LLVM-GCC support. (#252)
At this point it's never a good compiler to use so let's just remove it.
| -rw-r--r-- | Library/Homebrew/compat/macos.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/compilers.rb | 12 | ||||
| -rw-r--r-- | Library/Homebrew/development_tools.rb | 10 | ||||
| -rw-r--r-- | Library/Homebrew/extend/ENV/std.rb | 5 | ||||
| -rw-r--r-- | Library/Homebrew/extend/os/mac/development_tools.rb | 3 | ||||
| -rw-r--r-- | Library/Homebrew/formula.rb | 7 | ||||
| -rw-r--r-- | Library/Homebrew/os/mac.rb | 36 | ||||
| -rw-r--r-- | Library/Homebrew/os/mac/xcode.rb | 18 | ||||
| -rw-r--r-- | Library/Homebrew/system_config.rb | 5 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_ENV.rb | 3 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_compiler_selector.rb | 11 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_formula_installer.rb | 4 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_stdlib.rb | 3 | 
13 files changed, 35 insertions, 84 deletions
| diff --git a/Library/Homebrew/compat/macos.rb b/Library/Homebrew/compat/macos.rb index 716d11a2a..e534e2f2e 100644 --- a/Library/Homebrew/compat/macos.rb +++ b/Library/Homebrew/compat/macos.rb @@ -80,7 +80,7 @@ module OS      alias_method :gcc_build_version, :gcc_42_build_version      def llvm_build_version -      DevelopmentTools.llvm_build_version +      # no-op. DSL supported, compiler is not.      end      def clang_version diff --git a/Library/Homebrew/compilers.rb b/Library/Homebrew/compilers.rb index 896b8f363..51f0919e5 100644 --- a/Library/Homebrew/compilers.rb +++ b/Library/Homebrew/compilers.rb @@ -5,7 +5,6 @@ module CompilerConstants    COMPILER_SYMBOL_MAP = {      "gcc-4.0"  => :gcc_4_0,      "gcc-4.2"  => :gcc, -    "llvm-gcc" => :llvm,      "clang"    => :clang,    } @@ -62,7 +61,6 @@ class CompilerFailure      :cxx11 => [        create(:gcc_4_0),        create(:gcc), -      create(:llvm),        create(:clang) { build 425 },        create(:gcc => "4.3"),        create(:gcc => "4.4"), @@ -71,7 +69,6 @@ class CompilerFailure      ],      :openmp => [        create(:clang), -      create(:llvm),      ],    }  end @@ -82,10 +79,9 @@ class CompilerSelector    Compiler = Struct.new(:name, :version)    COMPILER_PRIORITY = { -    :clang   => [:clang, :gcc, :llvm, :gnu, :gcc_4_0], -    :gcc     => [:gcc, :llvm, :gnu, :clang, :gcc_4_0], -    :llvm    => [:llvm, :gcc, :gnu, :clang, :gcc_4_0], -    :gcc_4_0 => [:gcc_4_0, :gcc, :llvm, :gnu, :clang], +    :clang   => [:clang, :gcc, :gnu, :gcc_4_0], +    :gcc     => [:gcc, :gnu, :clang, :gcc_4_0], +    :gcc_4_0 => [:gcc_4_0, :gcc, :gnu, :clang],    }    def self.select_for(formula, compilers = self.compilers) @@ -121,6 +117,8 @@ class CompilerSelector            version = compiler_version(name)            yield Compiler.new(name, version) if version          end +      when :llvm +        # no-op. DSL supported, compiler is not.        else          version = compiler_version(compiler)          yield Compiler.new(compiler, version) if version diff --git a/Library/Homebrew/development_tools.rb b/Library/Homebrew/development_tools.rb index a301bc615..b4c2cb34b 100644 --- a/Library/Homebrew/development_tools.rb +++ b/Library/Homebrew/development_tools.rb @@ -30,7 +30,6 @@ class DevelopmentTools        # over the system's GCC 4.0        when /^gcc-4.0/ then gcc_42_build_version ? :gcc : :gcc_4_0        when /^gcc/ then :gcc -      when /^llvm/ then :llvm        else :clang        end      end @@ -54,13 +53,6 @@ class DevelopmentTools      end      alias_method :gcc_build_version, :gcc_42_build_version -    def llvm_build_version -      @llvm_build_version ||= -        if (path = locate("llvm-gcc")) && !path.realpath.basename.to_s.start_with?("clang") -          `#{path} --version`[/LLVM build (\d{4,})/, 1].to_i -        end -    end -      def clang_version        @clang_version ||=          if (path = locate("clang")) @@ -85,7 +77,7 @@ class DevelopmentTools      end      def clear_version_cache -      @gcc_40_build_version = @gcc_42_build_version = @llvm_build_version = nil +      @gcc_40_build_version = @gcc_42_build_version = nil        @clang_version = @clang_build_version = nil        @non_apple_gcc_version = {}      end diff --git a/Library/Homebrew/extend/ENV/std.rb b/Library/Homebrew/extend/ENV/std.rb index e5272cace..87eebb753 100644 --- a/Library/Homebrew/extend/ENV/std.rb +++ b/Library/Homebrew/extend/ENV/std.rb @@ -149,11 +149,6 @@ module Stdenv      end    end -  def llvm -    super -    set_cpu_cflags -  end -    def clang      super      replace_in_cflags(/-Xarch_#{Hardware::CPU.arch_32_bit} (-march=\S*)/, '\1') diff --git a/Library/Homebrew/extend/os/mac/development_tools.rb b/Library/Homebrew/extend/os/mac/development_tools.rb index 648b3e2bd..c7d8012da 100644 --- a/Library/Homebrew/extend/os/mac/development_tools.rb +++ b/Library/Homebrew/extend/os/mac/development_tools.rb @@ -19,14 +19,11 @@ class DevelopmentTools        # over the system's GCC 4.0        when /^gcc-4.0/ then gcc_42_build_version ? :gcc : :gcc_4_0        when /^gcc/ then :gcc -      when /^llvm/ then :llvm        when "clang" then :clang        else          # guess :(          if Xcode.version >= "4.3"            :clang -        elsif Xcode.version >= "4.2" -          :llvm          else            :gcc          end diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index 57e7013c8..c621d6c37 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -1988,12 +1988,7 @@ class Formula      # Marks the {Formula} as failing with a particular compiler so it will fall back to others.      # For Apple compilers, this should be in the format: -    # <pre>fails_with :llvm do # :llvm is really llvm-gcc -    #   build 2334 -    #   cause "Segmentation fault during linking." -    # end -    # -    # fails_with :clang do +    # <pre>fails_with :clang do      #   build 600      #   cause "multiple configure and compile errors"      # end</pre> diff --git a/Library/Homebrew/os/mac.rb b/Library/Homebrew/os/mac.rb index 5d2447c8d..9916c3b3f 100644 --- a/Library/Homebrew/os/mac.rb +++ b/Library/Homebrew/os/mac.rb @@ -162,24 +162,24 @@ module OS        "2.0"   => { :gcc_40_build => 4061 },        "2.5"   => { :gcc_40_build => 5370 },        "3.1.4" => { :gcc_40_build => 5493, :gcc_42_build => 5577 }, -      "3.2.6" => { :gcc_40_build => 5494, :gcc_42_build => 5666, :llvm_build => 2335, :clang => "1.7", :clang_build => 77 }, -      "4.0"   => { :gcc_40_build => 5494, :gcc_42_build => 5666, :llvm_build => 2335, :clang => "2.0", :clang_build => 137 }, -      "4.0.1" => { :gcc_40_build => 5494, :gcc_42_build => 5666, :llvm_build => 2335, :clang => "2.0", :clang_build => 137 }, -      "4.0.2" => { :gcc_40_build => 5494, :gcc_42_build => 5666, :llvm_build => 2335, :clang => "2.0", :clang_build => 137 }, -      "4.2"   => { :llvm_build => 2336, :clang => "3.0", :clang_build => 211 }, -      "4.3"   => { :llvm_build => 2336, :clang => "3.1", :clang_build => 318 }, -      "4.3.1" => { :llvm_build => 2336, :clang => "3.1", :clang_build => 318 }, -      "4.3.2" => { :llvm_build => 2336, :clang => "3.1", :clang_build => 318 }, -      "4.3.3" => { :llvm_build => 2336, :clang => "3.1", :clang_build => 318 }, -      "4.4"   => { :llvm_build => 2336, :clang => "4.0", :clang_build => 421 }, -      "4.4.1" => { :llvm_build => 2336, :clang => "4.0", :clang_build => 421 }, -      "4.5"   => { :llvm_build => 2336, :clang => "4.1", :clang_build => 421 }, -      "4.5.1" => { :llvm_build => 2336, :clang => "4.1", :clang_build => 421 }, -      "4.5.2" => { :llvm_build => 2336, :clang => "4.1", :clang_build => 421 }, -      "4.6"   => { :llvm_build => 2336, :clang => "4.2", :clang_build => 425 }, -      "4.6.1" => { :llvm_build => 2336, :clang => "4.2", :clang_build => 425 }, -      "4.6.2" => { :llvm_build => 2336, :clang => "4.2", :clang_build => 425 }, -      "4.6.3" => { :llvm_build => 2336, :clang => "4.2", :clang_build => 425 }, +      "3.2.6" => { :gcc_40_build => 5494, :gcc_42_build => 5666, :clang => "1.7", :clang_build => 77 }, +      "4.0"   => { :gcc_40_build => 5494, :gcc_42_build => 5666, :clang => "2.0", :clang_build => 137 }, +      "4.0.1" => { :gcc_40_build => 5494, :gcc_42_build => 5666, :clang => "2.0", :clang_build => 137 }, +      "4.0.2" => { :gcc_40_build => 5494, :gcc_42_build => 5666, :clang => "2.0", :clang_build => 137 }, +      "4.2"   => { :clang => "3.0", :clang_build => 211 }, +      "4.3"   => { :clang => "3.1", :clang_build => 318 }, +      "4.3.1" => { :clang => "3.1", :clang_build => 318 }, +      "4.3.2" => { :clang => "3.1", :clang_build => 318 }, +      "4.3.3" => { :clang => "3.1", :clang_build => 318 }, +      "4.4"   => { :clang => "4.0", :clang_build => 421 }, +      "4.4.1" => { :clang => "4.0", :clang_build => 421 }, +      "4.5"   => { :clang => "4.1", :clang_build => 421 }, +      "4.5.1" => { :clang => "4.1", :clang_build => 421 }, +      "4.5.2" => { :clang => "4.1", :clang_build => 421 }, +      "4.6"   => { :clang => "4.2", :clang_build => 425 }, +      "4.6.1" => { :clang => "4.2", :clang_build => 425 }, +      "4.6.2" => { :clang => "4.2", :clang_build => 425 }, +      "4.6.3" => { :clang => "4.2", :clang_build => 425 },        "5.0"   => { :clang => "5.0", :clang_build => 500 },        "5.0.1" => { :clang => "5.0", :clang_build => 500 },        "5.0.2" => { :clang => "5.0", :clang_build => 500 }, diff --git a/Library/Homebrew/os/mac/xcode.rb b/Library/Homebrew/os/mac/xcode.rb index 780082389..c5b6ccbfa 100644 --- a/Library/Homebrew/os/mac/xcode.rb +++ b/Library/Homebrew/os/mac/xcode.rb @@ -105,22 +105,7 @@ module OS          # Xcode.version would always be non-nil. This is deprecated, and will          # be removed in a future version. To remain compatible, guard usage of          # Xcode.version with an Xcode.installed? check. -        case DevelopmentTools.llvm_build_version.to_i -        when 1..2063 then "3.1.0" -        when 2064..2065 then "3.1.4" -        when 2066..2325 -          # we have no data for this range so we are guessing -          "3.2.0" -        when 2326 -          # also applies to "3.2.3" -          "3.2.4" -        when 2327..2333 then "3.2.5" -        when 2335 -          # this build number applies to 3.2.6, 4.0 and 4.1 -          # https://github.com/Homebrew/brew/blob/master/share/doc/homebrew/Xcode.md -          "4.0" -        else -          case (DevelopmentTools.clang_version.to_f * 10).to_i +        case (DevelopmentTools.clang_version.to_f * 10).to_i            when 0       then "dunno"            when 1..14   then "3.2.2"            when 15      then "3.2.4" @@ -139,7 +124,6 @@ module OS            when 70      then "7.0"            when 73      then "7.3"            else "7.3" -          end          end        end diff --git a/Library/Homebrew/system_config.rb b/Library/Homebrew/system_config.rb index 4f56addb5..edd49f8e0 100644 --- a/Library/Homebrew/system_config.rb +++ b/Library/Homebrew/system_config.rb @@ -6,10 +6,6 @@ require "development_tools"  class SystemConfig    class << self -    def llvm -      @llvm ||= DevelopmentTools.llvm_build_version if DevelopmentTools.installed? -    end -      def gcc_42        @gcc_42 ||= DevelopmentTools.gcc_42_build_version if DevelopmentTools.installed?      end @@ -130,7 +126,6 @@ class SystemConfig        f.puts hardware if hardware        f.puts "GCC-4.0: build #{gcc_40}" if gcc_40        f.puts "GCC-4.2: build #{gcc_42}" if gcc_42 -      f.puts "LLVM-GCC: build #{llvm}"  if llvm        f.puts "Clang: #{clang ? "#{clang} build #{clang_build}" : "N/A"}"        f.puts "Perl: #{describe_perl}"        f.puts "Python: #{describe_python}" diff --git a/Library/Homebrew/test/test_ENV.rb b/Library/Homebrew/test/test_ENV.rb index 1d3290b5b..74d1cff79 100644 --- a/Library/Homebrew/test/test_ENV.rb +++ b/Library/Homebrew/test/test_ENV.rb @@ -7,7 +7,6 @@ module SharedEnvTests    end    def test_switching_compilers -    @env.llvm      @env.clang      assert_nil @env["LD"]      assert_equal @env["OBJC"], @env["CC"] @@ -106,7 +105,7 @@ module SharedEnvTests    end    def test_switching_compilers_updates_compiler -    [:clang, :llvm, :gcc, :gcc_4_0].each do |compiler| +    [:clang, :gcc, :gcc_4_0].each do |compiler|        @env.send(compiler)        assert_equal compiler, @env.compiler      end diff --git a/Library/Homebrew/test/test_compiler_selector.rb b/Library/Homebrew/test/test_compiler_selector.rb index 907252b68..d030d48ce 100644 --- a/Library/Homebrew/test/test_compiler_selector.rb +++ b/Library/Homebrew/test/test_compiler_selector.rb @@ -12,12 +12,11 @@ class CompilerSelectorTests < Homebrew::TestCase    class CompilerVersions      attr_accessor :gcc_4_0_build_version, :gcc_build_version, -      :llvm_build_version, :clang_build_version +      :clang_build_version      def initialize        @gcc_4_0_build_version = nil        @gcc_build_version = 5666 -      @llvm_build_version = 2336        @clang_build_version = 425      end @@ -73,7 +72,7 @@ class CompilerSelectorTests < Homebrew::TestCase    def test_mixed_failures_1      @f << :clang << :gcc -    assert_equal :llvm, actual_cc +    assert_equal "gcc-4.8", actual_cc    end    def test_mixed_failures_2 @@ -96,9 +95,9 @@ class CompilerSelectorTests < Homebrew::TestCase      assert_equal "gcc-4.7", actual_cc    end -  def test_llvm_precedence +  def test_gcc_precedence      @f << :clang << :gcc -    assert_equal :llvm, actual_cc +    assert_equal "gcc-4.8", actual_cc    end    def test_missing_gcc @@ -108,7 +107,7 @@ class CompilerSelectorTests < Homebrew::TestCase    end    def test_missing_llvm_and_gcc -    @versions.gcc_build_version = @versions.llvm_build_version = nil +    @versions.gcc_build_version = nil      @f << :clang << { :gcc => "4.8" } << { :gcc => "4.7" }      assert_raises(CompilerSelectionError) { actual_cc }    end diff --git a/Library/Homebrew/test/test_formula_installer.rb b/Library/Homebrew/test/test_formula_installer.rb index 1cdf54575..b592b6dfa 100644 --- a/Library/Homebrew/test/test_formula_installer.rb +++ b/Library/Homebrew/test/test_formula_installer.rb @@ -81,12 +81,12 @@ class InstallTests < Homebrew::TestCase    def test_not_poured_from_bottle_when_compiler_specified      assert_nil ARGV.cc -    cc_arg = "--cc=llvm-gcc" +    cc_arg = "--cc=clang"      ARGV << cc_arg      begin        temporary_install(TestballBottle.new) do |f|          tab = Tab.for_formula(f) -        assert_equal "llvm", tab.compiler +        assert_equal "clang", tab.compiler        end      ensure        ARGV.delete_if { |x| x == cc_arg } diff --git a/Library/Homebrew/test/test_stdlib.rb b/Library/Homebrew/test/test_stdlib.rb index eb423f283..ee53e7c8c 100644 --- a/Library/Homebrew/test/test_stdlib.rb +++ b/Library/Homebrew/test/test_stdlib.rb @@ -6,7 +6,6 @@ class CxxStdlibTests < Homebrew::TestCase    def setup      @clang = CxxStdlib.create(:libstdcxx, :clang)      @gcc   = CxxStdlib.create(:libstdcxx, :gcc) -    @llvm  = CxxStdlib.create(:libstdcxx, :llvm)      @gcc4  = CxxStdlib.create(:libstdcxx, :gcc_4_0)      @gcc48 = CxxStdlib.create(:libstdcxx, "gcc-4.8")      @gcc49 = CxxStdlib.create(:libstdcxx, "gcc-4.9") @@ -16,7 +15,6 @@ class CxxStdlibTests < Homebrew::TestCase    def test_apple_libstdcxx_intercompatibility      assert @clang.compatible_with?(@gcc) -    assert @clang.compatible_with?(@llvm)      assert @clang.compatible_with?(@gcc4)    end @@ -44,7 +42,6 @@ class CxxStdlibTests < Homebrew::TestCase    def test_apple_compiler_reporting      assert_predicate @clang, :apple_compiler?      assert_predicate @gcc, :apple_compiler? -    assert_predicate @llvm, :apple_compiler?      assert_predicate @gcc4, :apple_compiler?      refute_predicate @gcc48, :apple_compiler?    end | 
