2018-01-18 09:47:33 +00:00
|
|
|
require "formula_support"
|
|
|
|
|
|
|
|
class KegOnlyReason
|
2018-01-18 20:54:21 +00:00
|
|
|
module Compat
|
2018-04-16 22:17:48 +01:00
|
|
|
def valid?
|
2018-01-18 20:54:21 +00:00
|
|
|
case @reason
|
|
|
|
when :provided_by_osx
|
2018-03-25 10:11:24 +01:00
|
|
|
odisabled "keg_only :provided_by_osx", "keg_only :provided_by_macos"
|
2018-01-18 20:54:21 +00:00
|
|
|
when :shadowed_by_osx
|
2018-03-25 10:11:24 +01:00
|
|
|
odisabled "keg_only :shadowed_by_osx", "keg_only :shadowed_by_macos"
|
2018-04-16 22:17:48 +01:00
|
|
|
when :provided_pre_mountain_lion
|
|
|
|
odeprecated "keg_only :provided_pre_mountain_lion"
|
|
|
|
MacOS.version < :mountain_lion
|
|
|
|
when :provided_pre_mavericks
|
|
|
|
odeprecated "keg_only :provided_pre_mavericks"
|
|
|
|
MacOS.version < :mavericks
|
|
|
|
when :provided_pre_el_capitan
|
|
|
|
odeprecated "keg_only :provided_pre_el_capitan"
|
|
|
|
MacOS.version < :el_capitan
|
|
|
|
when :provided_pre_high_sierra
|
|
|
|
odeprecated "keg_only :provided_pre_high_sierra"
|
|
|
|
MacOS.version < :high_sierra
|
|
|
|
when :provided_until_xcode43
|
|
|
|
odeprecated "keg_only :provided_until_xcode43"
|
|
|
|
MacOS::Xcode.version < "4.3"
|
|
|
|
when :provided_until_xcode5
|
|
|
|
odeprecated "keg_only :provided_until_xcode5"
|
|
|
|
MacOS::Xcode.version < "5.0"
|
|
|
|
else
|
|
|
|
super
|
2018-01-18 20:54:21 +00:00
|
|
|
end
|
2018-04-16 22:17:48 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
def to_s
|
|
|
|
case @reason
|
|
|
|
when :provided_by_osx
|
|
|
|
odisabled "keg_only :provided_by_osx", "keg_only :provided_by_macos"
|
|
|
|
when :shadowed_by_osx
|
|
|
|
odisabled "keg_only :shadowed_by_osx", "keg_only :shadowed_by_macos"
|
|
|
|
when :provided_pre_mountain_lion
|
|
|
|
odeprecated "keg_only :provided_pre_mountain_lion"
|
|
|
|
|
|
|
|
<<~EOS
|
|
|
|
macOS already provides this software in versions before Mountain Lion
|
|
|
|
EOS
|
|
|
|
when :provided_pre_mavericks
|
|
|
|
odeprecated "keg_only :provided_pre_mavericks"
|
|
|
|
|
|
|
|
<<~EOS
|
|
|
|
macOS already provides this software in versions before Mavericks
|
|
|
|
EOS
|
|
|
|
when :provided_pre_el_capitan
|
|
|
|
odeprecated "keg_only :provided_pre_el_capitan"
|
|
|
|
|
|
|
|
<<~EOS
|
|
|
|
macOS already provides this software in versions before El Capitan
|
|
|
|
EOS
|
|
|
|
when :provided_pre_high_sierra
|
|
|
|
odeprecated "keg_only :provided_pre_high_sierra"
|
|
|
|
|
|
|
|
<<~EOS
|
|
|
|
macOS already provides this software in versions before High Sierra
|
|
|
|
EOS
|
|
|
|
when :provided_until_xcode43
|
|
|
|
odeprecated "keg_only :provided_until_xcode43"
|
|
|
|
|
|
|
|
<<~EOS
|
|
|
|
Xcode provides this software prior to version 4.3
|
|
|
|
EOS
|
|
|
|
when :provided_until_xcode5
|
|
|
|
odeprecated "keg_only :provided_until_xcode5"
|
2018-01-18 09:47:33 +00:00
|
|
|
|
2018-04-16 22:17:48 +01:00
|
|
|
<<~EOS
|
|
|
|
Xcode provides this software prior to version 5
|
|
|
|
EOS
|
|
|
|
else
|
|
|
|
super
|
|
|
|
end.to_s.strip
|
2018-01-18 09:47:33 +00:00
|
|
|
end
|
|
|
|
end
|
2018-01-18 20:54:21 +00:00
|
|
|
|
|
|
|
prepend Compat
|
2018-01-18 09:47:33 +00:00
|
|
|
end
|