 26e4899fde
			
		
	
	
		26e4899fde
		
	
	
	
	
		
			
			It's not used on enough configurations now that there's little point in keeping it around. See e.g. `:autoconf` for prior art.
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| require "dependency_collector"
 | |
| 
 | |
| class DependencyCollector
 | |
|   alias _parse_symbol_spec parse_symbol_spec
 | |
| 
 | |
|   def parse_symbol_spec(spec, tags)
 | |
|     case spec
 | |
|     when :clt
 | |
|       odeprecated "'depends_on :clt'"
 | |
|     when :autoconf, :automake, :bsdmake, :libtool
 | |
|       output_deprecation(spec, tags)
 | |
|       autotools_dep(spec, tags)
 | |
|     when :cairo, :fontconfig, :freetype, :libpng, :pixman
 | |
|       output_deprecation(spec, tags)
 | |
|       Dependency.new(spec.to_s, tags)
 | |
|     when :apr
 | |
|       # TODO: reenable in future when we've fixed a few of the audits.
 | |
|       # output_deprecation(spec, tags, "apr-util")
 | |
|       Dependency.new("apr-util", tags)
 | |
|     when :libltdl
 | |
|       tags << :run
 | |
|       output_deprecation("libtool", tags)
 | |
|       Dependency.new("libtool", tags)
 | |
|     else
 | |
|       _parse_symbol_spec(spec, tags)
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def autotools_dep(spec, tags)
 | |
|     tags << :build unless tags.include? :run
 | |
|     Dependency.new(spec.to_s, tags)
 | |
|   end
 | |
| 
 | |
|   def output_deprecation(dependency, tags, new_dependency = dependency)
 | |
|     tags_string = if tags.length > 1
 | |
|       " => [:#{tags.join ", :"}]"
 | |
|     elsif tags.length == 1
 | |
|       " => :#{tags.first}"
 | |
|     end
 | |
|     odeprecated "'depends_on :#{dependency}'",
 | |
|                 "'depends_on \"#{new_dependency}\"#{tags_string}'"
 | |
|   end
 | |
| end
 |