aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike McQuaid2016-12-30 20:43:27 +0000
committerGitHub2016-12-30 20:43:27 +0000
commitb1e27d689d8eadb267fb9890ec2e0a2a87e46b4e (patch)
treef9f5a346953c5ce8cb33719d7db11b8d7acfc19f
parent9e2a8248a603bdc4c90c006dc731c4001fdef88f (diff)
parente50102d91e5fc13fd59589967bb97bb6159bbad0 (diff)
downloadbrew-b1e27d689d8eadb267fb9890ec2e0a2a87e46b4e.tar.bz2
Merge pull request #1701 from MikeMcQuaid/deprecate-std-superenv-stuff
ENV: deprecate old methods.
-rw-r--r--Library/Homebrew/compat.rb3
-rw-r--r--Library/Homebrew/compat/ENV/shared.rb6
-rw-r--r--Library/Homebrew/compat/ENV/std.rb27
-rw-r--r--Library/Homebrew/compat/ENV/super.rb47
-rw-r--r--Library/Homebrew/compat/macos.rb16
-rw-r--r--Library/Homebrew/compilers.rb10
-rw-r--r--Library/Homebrew/development_tools.rb18
-rw-r--r--Library/Homebrew/extend/ENV/std.rb15
-rw-r--r--Library/Homebrew/extend/ENV/super.rb21
-rw-r--r--Library/Homebrew/extend/os/mac/development_tools.rb6
-rw-r--r--Library/Homebrew/extend/os/mac/extend/ENV/super.rb7
-rw-r--r--Library/Homebrew/os/mac.rb14
-rw-r--r--Library/Homebrew/system_config.rb12
-rw-r--r--Library/Homebrew/test/ENV_test.rb2
-rw-r--r--Library/Homebrew/test/stdlib_test.rb7
15 files changed, 128 insertions, 83 deletions
diff --git a/Library/Homebrew/compat.rb b/Library/Homebrew/compat.rb
index 5d78c715f..92b687725 100644
--- a/Library/Homebrew/compat.rb
+++ b/Library/Homebrew/compat.rb
@@ -22,3 +22,6 @@ require "compat/json"
require "compat/ARGV"
require "compat/build_options"
require "compat/tab"
+require "compat/ENV/shared"
+require "compat/ENV/std"
+require "compat/ENV/super"
diff --git a/Library/Homebrew/compat/ENV/shared.rb b/Library/Homebrew/compat/ENV/shared.rb
new file mode 100644
index 000000000..200e7b132
--- /dev/null
+++ b/Library/Homebrew/compat/ENV/shared.rb
@@ -0,0 +1,6 @@
+module SharedEnvExtension
+ def j1
+ odeprecated "ENV.j1", "ENV.deparallelize"
+ deparallelize
+ end
+end
diff --git a/Library/Homebrew/compat/ENV/std.rb b/Library/Homebrew/compat/ENV/std.rb
new file mode 100644
index 000000000..26dabe440
--- /dev/null
+++ b/Library/Homebrew/compat/ENV/std.rb
@@ -0,0 +1,27 @@
+module Stdenv
+ def fast
+ odeprecated "ENV.fast"
+ end
+
+ def O4
+ odeprecated "ENV.O4"
+ end
+
+ def Og
+ odeprecated "ENV.Og"
+ end
+
+ def gcc_4_0_1
+ odeprecated "ENV.gcc_4_0_1", "ENV.gcc_4_0"
+ gcc_4_0
+ end
+
+ def gcc
+ odeprecated "ENV.gcc", "ENV.gcc_4_2"
+ gcc_4_2
+ end
+
+ def libpng
+ odeprecated "ENV.libpng", "ENV.x11"
+ end
+end
diff --git a/Library/Homebrew/compat/ENV/super.rb b/Library/Homebrew/compat/ENV/super.rb
new file mode 100644
index 000000000..2020ad752
--- /dev/null
+++ b/Library/Homebrew/compat/ENV/super.rb
@@ -0,0 +1,47 @@
+module Superenv
+ def fast
+ odeprecated "ENV.fast"
+ end
+
+ def O4
+ odeprecated "ENV.O4"
+ end
+
+ def Og
+ odeprecated "ENV.Og"
+ end
+
+ def gcc_4_0_1
+ odeprecated "ENV.gcc_4_0_1", "ENV.gcc_4_0"
+ gcc_4_0
+ end
+
+ def gcc
+ odeprecated "ENV.gcc", "ENV.gcc_4_2"
+ gcc_4_2
+ end
+
+ def libxml2
+ odeprecated "ENV.libxml2"
+ end
+
+ def minimal_optimization
+ odeprecated "ENV.minimal_optimization"
+ end
+
+ def no_optimization
+ odeprecated "ENV.no_optimization"
+ end
+
+ def enable_warnings
+ odeprecated "ENV.enable_warnings"
+ end
+
+ def macosxsdk
+ odeprecated "ENV.macosxsdk"
+ end
+
+ def remove_macosxsdk
+ odeprecated "ENV.remove_macosxsdk"
+ end
+end
diff --git a/Library/Homebrew/compat/macos.rb b/Library/Homebrew/compat/macos.rb
index 17f4670cc..3acd2f9ef 100644
--- a/Library/Homebrew/compat/macos.rb
+++ b/Library/Homebrew/compat/macos.rb
@@ -100,23 +100,23 @@ module OS
end
def gcc_40_build_version
- odeprecated "MacOS.gcc_40_build_version", "DevelopmentTools.gcc_40_build_version"
- DevelopmentTools.gcc_40_build_version
+ odeprecated "MacOS.gcc_40_build_version", "DevelopmentTools.gcc_4_0_build_version"
+ DevelopmentTools.gcc_4_0_build_version
end
def gcc_4_0_build_version
- odeprecated "MacOS.gcc_4_0_build_version", "DevelopmentTools.gcc_40_build_version"
- DevelopmentTools.gcc_40_build_version
+ odeprecated "MacOS.gcc_4_0_build_version", "DevelopmentTools.gcc_4_0_build_version"
+ DevelopmentTools.gcc_4_0_build_version
end
def gcc_42_build_version
- odeprecated "MacOS.gcc_42_build_version", "DevelopmentTools.gcc_42_build_version"
- DevelopmentTools.gcc_42_build_version
+ odeprecated "MacOS.gcc_42_build_version", "DevelopmentTools.gcc_4_2_build_version"
+ DevelopmentTools.gcc_4_2_build_version
end
def gcc_build_version
- odeprecated "MacOS.gcc_build_version", "DevelopmentTools.gcc_42_build_version"
- DevelopmentTools.gcc_42_build_version
+ odeprecated "MacOS.gcc_build_version", "DevelopmentTools.gcc_4_2_build_version"
+ DevelopmentTools.gcc_4_2_build_version
end
def llvm_build_version
diff --git a/Library/Homebrew/compilers.rb b/Library/Homebrew/compilers.rb
index 9ee847db0..628e71e9b 100644
--- a/Library/Homebrew/compilers.rb
+++ b/Library/Homebrew/compilers.rb
@@ -4,7 +4,7 @@ module CompilerConstants
GNU_GCC_REGEXP = /^gcc-(4\.[3-9]|[5-7])$/
COMPILER_SYMBOL_MAP = {
"gcc-4.0" => :gcc_4_0,
- "gcc-4.2" => :gcc,
+ "gcc-4.2" => :gcc_4_2,
"clang" => :clang,
"llvm_clang" => :llvm_clang,
}.freeze
@@ -68,7 +68,7 @@ class CompilerFailure
COLLECTIONS = {
cxx11: [
create(:gcc_4_0),
- create(:gcc),
+ create(:gcc_4_2),
create(:clang) { build 425 },
create(gcc: "4.3"),
create(gcc: "4.4"),
@@ -87,9 +87,9 @@ class CompilerSelector
Compiler = Struct.new(:name, :version)
COMPILER_PRIORITY = {
- clang: [:clang, :gcc, :gnu, :gcc_4_0, :llvm_clang],
- gcc: [:gcc, :gnu, :clang, :gcc_4_0],
- gcc_4_0: [:gcc_4_0, :gcc, :gnu, :clang],
+ clang: [:clang, :gcc_4_2, :gnu, :gcc_4_0, :llvm_clang],
+ gcc_4_2: [:gcc_4_2, :gnu, :clang, :gcc_4_0],
+ gcc_4_0: [:gcc_4_0, :gcc_4_2, :gnu, :clang],
}.freeze
def self.select_for(formula, compilers = self.compilers)
diff --git a/Library/Homebrew/development_tools.rb b/Library/Homebrew/development_tools.rb
index 0a2f12729..625d5ea86 100644
--- a/Library/Homebrew/development_tools.rb
+++ b/Library/Homebrew/development_tools.rb
@@ -34,15 +34,11 @@ class DevelopmentTools
end
def default_compiler
- if default_cc =~ /^gcc/
- :gcc
- else
- :clang
- end
+ :clang
end
- def gcc_40_build_version
- @gcc_40_build_version ||= begin
+ def gcc_4_0_build_version
+ @gcc_4_0_build_version ||= begin
if (path = locate("gcc-4.0")) &&
build_version = `#{path} --version 2>/dev/null`[/build (\d{4,})/, 1]
Version.new build_version
@@ -51,10 +47,9 @@ class DevelopmentTools
end
end
end
- alias gcc_4_0_build_version gcc_40_build_version
- def gcc_42_build_version
- @gcc_42_build_version ||= begin
+ def gcc_4_2_build_version
+ @gcc_4_2_build_version ||= begin
gcc = locate("gcc-4.2") || HOMEBREW_PREFIX.join("opt/apple-gcc42/bin/gcc-4.2")
if gcc.exist? && !gcc.realpath.basename.to_s.start_with?("llvm")&&
build_version = `#{gcc} --version 2>/dev/null`[/build (\d{4,})/, 1]
@@ -64,7 +59,6 @@ class DevelopmentTools
end
end
end
- alias gcc_build_version gcc_42_build_version
def clang_version
@clang_version ||= begin
@@ -115,7 +109,7 @@ class DevelopmentTools
end
def clear_version_cache
- @gcc_40_build_version = @gcc_42_build_version = nil
+ @gcc_4_0_build_version = @gcc_4_2_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 14f9b81b8..403ea1978 100644
--- a/Library/Homebrew/extend/ENV/std.rb
+++ b/Library/Homebrew/extend/ENV/std.rb
@@ -82,10 +82,6 @@ module Stdenv
old
end
- alias j1 deparallelize
-
- # These methods are no-ops for compatibility.
- %w[fast O4 Og].each { |opt| define_method(opt) {} }
%w[O3 O2 O1 O0 Os].each do |opt|
define_method opt do
@@ -110,13 +106,11 @@ module Stdenv
super
set_cpu_cflags "-march=nocona -mssse3"
end
- alias gcc_4_0_1 gcc_4_0
- def gcc
+ def gcc_4_2
super
set_cpu_cflags
end
- alias gcc_4_2 gcc
GNU_GCC_VERSIONS.each do |n|
define_method(:"gcc-#{n}") do
@@ -144,13 +138,6 @@ module Stdenv
end
alias generic_no_optimization no_optimization
- def libxml2
- end
-
- def x11
- end
- alias libpng x11
-
# we've seen some packages fail to build when warnings are disabled!
def enable_warnings
remove_from_cflags "-w"
diff --git a/Library/Homebrew/extend/ENV/super.rb b/Library/Homebrew/extend/ENV/super.rb
index a75cba406..7503e8876 100644
--- a/Library/Homebrew/extend/ENV/super.rb
+++ b/Library/Homebrew/extend/ENV/super.rb
@@ -16,9 +16,7 @@ module Superenv
# @private
attr_accessor :keg_only_deps, :deps
-
attr_accessor :x11
- alias x11? x11
def self.extended(base)
base.keg_only_deps = []
@@ -263,7 +261,6 @@ module Superenv
old
end
- alias j1 deparallelize
def make_jobs
self["MAKEFLAGS"] =~ /-\w*j(\d+)/
@@ -329,23 +326,9 @@ module Superenv
def set_x11_env_if_installed
end
+ # This method does nothing in superenv since there's no custom CFLAGS API
# @private
- def noop(*_args); end
-
- # These methods are no longer necessary under superenv, but are needed to
- # maintain an interface compatible with stdenv.
- alias fast noop
- alias O4 noop
- alias Og noop
- alias libxml2 noop
- alias set_cpu_flags noop
-
- # These methods provide functionality that has not yet been ported to
- # superenv.
- alias gcc_4_0_1 noop
- alias minimal_optimization noop
- alias no_optimization noop
- alias enable_warnings noop
+ def set_cpu_flags; end
end
class Array
diff --git a/Library/Homebrew/extend/os/mac/development_tools.rb b/Library/Homebrew/extend/os/mac/development_tools.rb
index 8c0c48a51..1bb12a3d1 100644
--- a/Library/Homebrew/extend/os/mac/development_tools.rb
+++ b/Library/Homebrew/extend/os/mac/development_tools.rb
@@ -64,15 +64,15 @@ class DevelopmentTools
case default_cc
# if GCC 4.2 is installed, e.g. via Tigerbrew, prefer it
# 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 /^gcc-4\.0/ then gcc_4_2_build_version ? :gcc_4_2 : :gcc_4_0
+ when /^gcc/ then :gcc_4_2
when "clang" then :clang
else
# guess :(
if MacOS::Xcode.version >= "4.3"
:clang
else
- :gcc
+ :gcc_4_2
end
end
end
diff --git a/Library/Homebrew/extend/os/mac/extend/ENV/super.rb b/Library/Homebrew/extend/os/mac/extend/ENV/super.rb
index 5f4a3e4aa..f97a2dbbb 100644
--- a/Library/Homebrew/extend/os/mac/extend/ENV/super.rb
+++ b/Library/Homebrew/extend/os/mac/extend/ENV/super.rb
@@ -1,4 +1,6 @@
module Superenv
+ alias x11? x11
+
# @private
def self.bin
return unless DevelopmentTools.installed?
@@ -120,9 +122,4 @@ module Superenv
def no_weak_imports
append "HOMEBREW_CCCFG", "w" if no_weak_imports_support?
end
-
- # These methods are no longer necessary under superenv, but are needed to
- # maintain an interface compatible with stdenv.
- alias macosxsdk noop
- alias remove_macosxsdk noop
end
diff --git a/Library/Homebrew/os/mac.rb b/Library/Homebrew/os/mac.rb
index b2f0515a0..9468a6c1e 100644
--- a/Library/Homebrew/os/mac.rb
+++ b/Library/Homebrew/os/mac.rb
@@ -152,13 +152,13 @@ module OS
end
STANDARD_COMPILERS = {
- "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, 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 },
+ "2.0" => { gcc_4_0_build: 4061 },
+ "2.5" => { gcc_4_0_build: 5370 },
+ "3.1.4" => { gcc_4_0_build: 5493, gcc_4_2_build: 5577 },
+ "3.2.6" => { gcc_4_0_build: 5494, gcc_4_2_build: 5666, clang: "1.7", clang_build: 77 },
+ "4.0" => { gcc_4_0_build: 5494, gcc_4_2_build: 5666, clang: "2.0", clang_build: 137 },
+ "4.0.1" => { gcc_4_0_build: 5494, gcc_4_2_build: 5666, clang: "2.0", clang_build: 137 },
+ "4.0.2" => { gcc_4_0_build: 5494, gcc_4_2_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 },
diff --git a/Library/Homebrew/system_config.rb b/Library/Homebrew/system_config.rb
index 9c7a8d1b0..043f60919 100644
--- a/Library/Homebrew/system_config.rb
+++ b/Library/Homebrew/system_config.rb
@@ -6,12 +6,12 @@ require "development_tools"
class SystemConfig
class << self
- def gcc_42
- @gcc_42 ||= DevelopmentTools.gcc_42_build_version if DevelopmentTools.installed?
+ def gcc_4_2
+ @gcc_4_2 ||= DevelopmentTools.gcc_4_2_build_version if DevelopmentTools.installed?
end
- def gcc_40
- @gcc_40 ||= DevelopmentTools.gcc_40_build_version if DevelopmentTools.installed?
+ def gcc_4_0
+ @gcc_4_0 ||= DevelopmentTools.gcc_4_0_build_version if DevelopmentTools.installed?
end
def clang
@@ -143,8 +143,8 @@ class SystemConfig
f.puts "HOMEBREW_BOTTLE_DOMAIN: #{BottleSpecification::DEFAULT_DOMAIN}"
f.puts hardware if hardware
f.puts "Homebrew Ruby: #{describe_homebrew_ruby}"
- f.puts "GCC-4.0: build #{gcc_40}" unless gcc_40.null?
- f.puts "GCC-4.2: build #{gcc_42}" unless gcc_42.null?
+ f.puts "GCC-4.0: build #{gcc_4_0}" unless gcc_4_0.null?
+ f.puts "GCC-4.2: build #{gcc_4_2}" unless gcc_4_2.null?
f.puts "Clang: #{clang.null? ? "N/A" : "#{clang} build #{clang_build}"}"
f.puts "Git: #{describe_git}"
f.puts "Perl: #{describe_perl}"
diff --git a/Library/Homebrew/test/ENV_test.rb b/Library/Homebrew/test/ENV_test.rb
index 6c0e68a9e..dd6025084 100644
--- a/Library/Homebrew/test/ENV_test.rb
+++ b/Library/Homebrew/test/ENV_test.rb
@@ -133,7 +133,7 @@ module SharedEnvTests
end
def test_switching_compilers_updates_compiler
- [:clang, :gcc, :gcc_4_0].each do |compiler|
+ [:clang, :gcc_4_2, :gcc_4_0].each do |compiler|
@env.send(compiler)
assert_equal compiler, @env.compiler
end
diff --git a/Library/Homebrew/test/stdlib_test.rb b/Library/Homebrew/test/stdlib_test.rb
index ee53e7c8c..3babfd58a 100644
--- a/Library/Homebrew/test/stdlib_test.rb
+++ b/Library/Homebrew/test/stdlib_test.rb
@@ -6,7 +6,8 @@ class CxxStdlibTests < Homebrew::TestCase
def setup
@clang = CxxStdlib.create(:libstdcxx, :clang)
@gcc = CxxStdlib.create(:libstdcxx, :gcc)
- @gcc4 = CxxStdlib.create(:libstdcxx, :gcc_4_0)
+ @gcc40 = CxxStdlib.create(:libstdcxx, :gcc_4_0)
+ @gcc42 = CxxStdlib.create(:libstdcxx, :gcc_4_2)
@gcc48 = CxxStdlib.create(:libstdcxx, "gcc-4.8")
@gcc49 = CxxStdlib.create(:libstdcxx, "gcc-4.9")
@lcxx = CxxStdlib.create(:libcxx, :clang)
@@ -15,7 +16,7 @@ class CxxStdlibTests < Homebrew::TestCase
def test_apple_libstdcxx_intercompatibility
assert @clang.compatible_with?(@gcc)
- assert @clang.compatible_with?(@gcc4)
+ assert @clang.compatible_with?(@gcc42)
end
def test_compatibility_same_compilers_and_type
@@ -42,7 +43,7 @@ class CxxStdlibTests < Homebrew::TestCase
def test_apple_compiler_reporting
assert_predicate @clang, :apple_compiler?
assert_predicate @gcc, :apple_compiler?
- assert_predicate @gcc4, :apple_compiler?
+ assert_predicate @gcc42, :apple_compiler?
refute_predicate @gcc48, :apple_compiler?
end