Top Level Namespace
Defined Under Namespace
Classes: BreakoutParser
Instance Method Summary collapse
Instance Method Details
#check_version(name, need_ver) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'ext/breakout_parser/extconf.rb', line 22 def check_version name, need_ver exe = find_executable name return false unless exe exe_ver = `#{exe} -V`[/\d+\.\d+(\.\d+)?/] unless exe_ver puts "[?] cannot determine #{name} version" return false end exe_ver = exe_ver.split('.').map(&:to_i) need_ver = need_ver.split('.').map(&:to_i) r = (exe_ver[0] > need_ver[0]) || ( (exe_ver[0] == need_ver[0]) && ( (exe_ver[1] > need_ver[1]) || (exe_ver[1] == need_ver[1] && (exe_ver[2] || 0) >= need_ver[2]) ) ) puts "[-] wanted #{name} >= #{need_ver.join('.')}, but got only #{exe_ver.join('.')}" unless r r end |