aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJack Nagel2014-03-05 20:12:51 -0600
committerJack Nagel2014-03-05 20:45:44 -0600
commit8bfcdf0bd8b17aeb5b9152935cd6cb9c0209c676 (patch)
tree32ccf568d3a70e2e4b0ab7c3d0b8812a8503a916
parent44dc21ca5d231d7860f0abe82fcb1406eee955f7 (diff)
downloadbrew-8bfcdf0bd8b17aeb5b9152935cd6cb9c0209c676.tar.bz2
Remove special X11 proxy deps
-rw-r--r--Library/Homebrew/dependency_collector.rb16
-rw-r--r--Library/Homebrew/requirement.rb15
-rw-r--r--Library/Homebrew/requirements/x11_dependency.rb40
-rw-r--r--Library/Homebrew/test/test_dependency_collector.rb10
-rw-r--r--Library/Homebrew/test/test_x11_dependency.rb46
5 files changed, 3 insertions, 124 deletions
diff --git a/Library/Homebrew/dependency_collector.rb b/Library/Homebrew/dependency_collector.rb
index 7982b841e..8204a992f 100644
--- a/Library/Homebrew/dependency_collector.rb
+++ b/Library/Homebrew/dependency_collector.rb
@@ -102,11 +102,9 @@ class DependencyCollector
# Xcode no longer provides autotools or some other build tools
autotools_dep(spec, tags)
when :x11 then X11Dependency.new(spec.to_s, tags)
- when *X11Dependency::Proxy::PACKAGES
- x11_dep(spec, tags)
- when :cairo, :pixman
- # We no longer use X11 psuedo-deps for cairo or pixman,
- # so just return a standard formula dependency.
+ when :cairo, :fontconfig, :freetype, :libpng, :pixman
+ # We no longer use X11 proxy deps, but we support the symbols
+ # for backwards compatibility.
Dependency.new(spec.to_s, tags)
when :xcode then XcodeDependency.new(tags)
when :macos then MinimumMacOSRequirement.new(tags)
@@ -137,14 +135,6 @@ class DependencyCollector
end
end
- def x11_dep(spec, tags)
- if MacOS.version >= :mountain_lion
- Dependency.new(spec.to_s, tags)
- else
- X11Dependency::Proxy.for(spec.to_s, tags)
- end
- end
-
def autotools_dep(spec, tags)
return if MacOS::Xcode.provides_autotools?
diff --git a/Library/Homebrew/requirement.rb b/Library/Homebrew/requirement.rb
index 85ef527fd..cb957af32 100644
--- a/Library/Homebrew/requirement.rb
+++ b/Library/Homebrew/requirement.rb
@@ -150,21 +150,6 @@ class Requirement
end
end
- # We special case handling of X11Dependency and its subclasses to
- # ensure the correct dependencies are present in the final list.
- # If an X11Dependency is present after filtering, we eliminate
- # all X11Dependency::Proxy objects from the list. If there aren't
- # any X11Dependency objects, then we eliminate all but one of the
- # proxy objects.
- proxy = unless reqs.any? { |r| r.instance_of?(X11Dependency) }
- reqs.find { |r| r.kind_of?(X11Dependency::Proxy) }
- end
-
- reqs.reject! do |r|
- r.kind_of?(X11Dependency::Proxy)
- end
-
- reqs << proxy unless proxy.nil?
reqs
end
diff --git a/Library/Homebrew/requirements/x11_dependency.rb b/Library/Homebrew/requirements/x11_dependency.rb
index 4b030445c..c493d4521 100644
--- a/Library/Homebrew/requirements/x11_dependency.rb
+++ b/Library/Homebrew/requirements/x11_dependency.rb
@@ -39,44 +39,4 @@ class X11Dependency < Requirement
min_version <=> other.min_version
end
end
-
- # When X11Dependency is subclassed, the new class should
- # also inherit the information specified in the DSL above.
- def self.inherited(mod)
- instance_variables.each do |ivar|
- mod.instance_variable_set(ivar, instance_variable_get(ivar))
- end
- end
-
- # X11Dependency::Proxy is a base class for the X11 pseudo-deps.
- # Rather than instantiate it directly, a separate class is built
- # for each of the packages that we proxy to X11Dependency.
- class Proxy < self
- PACKAGES = [:libpng, :freetype, :fontconfig]
-
- class << self
- def defines_const?(const)
- if ::RUBY_VERSION >= "1.9"
- const_defined?(const, false)
- else
- const_defined?(const)
- end
- end
-
- def for(name, tags=[])
- constant = name.capitalize
-
- if defines_const?(constant)
- klass = const_get(constant)
- else
- klass = Class.new(self) do
- def initialize(name, tags) super end
- end
-
- const_set(constant, klass)
- end
- klass.new(name, tags)
- end
- end
- end
end
diff --git a/Library/Homebrew/test/test_dependency_collector.rb b/Library/Homebrew/test/test_dependency_collector.rb
index 0f07ba7e6..c6b34b684 100644
--- a/Library/Homebrew/test/test_dependency_collector.rb
+++ b/Library/Homebrew/test/test_dependency_collector.rb
@@ -101,16 +101,6 @@ class DependencyCollectorTests < Test::Unit::TestCase
assert_nil @d.build(:libtool)
end
- def test_x11_proxy_dep_mountain_lion
- MacOS.stubs(:version).returns(MacOS::Version.new("10.8"))
- assert_equal Dependency.new("libpng"), @d.build(:libpng)
- end
-
- def test_x11_proxy_dep_lion_or_older
- MacOS.stubs(:version).returns(MacOS::Version.new("10.7"))
- assert_equal X11Dependency::Proxy.new(:libpng), @d.build(:libpng)
- end
-
def test_ld64_dep_pre_leopard
MacOS.stubs(:version).returns(MacOS::Version.new("10.4"))
assert_equal LD64Dependency.new, @d.build(:ld64)
diff --git a/Library/Homebrew/test/test_x11_dependency.rb b/Library/Homebrew/test/test_x11_dependency.rb
index 884a7cd27..6c56ac87f 100644
--- a/Library/Homebrew/test/test_x11_dependency.rb
+++ b/Library/Homebrew/test/test_x11_dependency.rb
@@ -19,35 +19,6 @@ class X11DependencyTests < Test::Unit::TestCase
assert !y.eql?(x)
end
- def test_proxy_for
- x = X11Dependency::Proxy.for("libpng")
- assert_instance_of X11Dependency::Proxy::Libpng, x
- assert_kind_of X11Dependency, x
- end
-
- def test_proxy_eql_instances_are_eql
- x = X11Dependency::Proxy.for("libpng")
- y = X11Dependency::Proxy.for("libpng")
- assert x.eql?(y)
- assert y.eql?(x)
- assert x.hash == y.hash
- end
-
- def test_proxy_not_eql_when_hashes_differ
- x = X11Dependency::Proxy.for("libpng")
- y = X11Dependency::Proxy.for("fontconfig")
- assert x.hash != y.hash
- assert !x.eql?(y)
- assert !y.eql?(x)
- end
-
- def test_x_never_eql_to_proxy_x11_dep
- x = X11Dependency.new("libpng")
- p = X11Dependency::Proxy.for("libpng")
- assert !x.eql?(p)
- assert !p.eql?(x)
- end
-
def test_x_env
x = X11Dependency.new
x.stubs(:satisfied?).returns(true)
@@ -55,20 +26,3 @@ class X11DependencyTests < Test::Unit::TestCase
x.modify_build_environment
end
end
-
-class X11DepCollectionTests < Test::Unit::TestCase
- def setup
- @set = ComparableSet.new
- end
-
- def test_x_can_coxist_with_proxy
- @set << X11Dependency.new << X11Dependency::Proxy.for("libpng")
- assert_equal 2, @set.count
- end
-
- def test_multiple_proxies_can_coexist
- @set << X11Dependency::Proxy.for("libpng")
- @set << X11Dependency::Proxy.for("fontconfig")
- assert_equal 2, @set.count
- end
-end