# File lib/phusion_passenger/platform_info/binary_compatibility.rb, line 110 def self.cxx_binary_compatibility_id if os_name == "macosx" # RUBY_PLATFORM gives us the kernel version, but we want # the OS X version. os_version_string = `sw_vers -productVersion`.strip # sw_vers returns something like "10.6.2". We're only # interested in the first two digits (MAJOR.MINOR) since # tiny releases tend to be binary compatible with each # other. components = os_version_string.split(".") os_version = "#{components[0]}.#{components[1]}" os_runtime = os_version os_arch = cpu_architectures[0] if os_version >= "10.5" && os_arch =~ /^i.86$/ # On Snow Leopard, 'uname -m' returns i386 but # we *know* that everything is x86_64 by default. os_arch = "x86_64" end else os_arch = cpu_architectures[0] os_runtime = nil end return [os_arch, os_name, os_runtime].compact.join("-") end