1
0
Fork 0
mirror of https://github.com/rubyjs/therubyracer synced 2023-03-27 23:21:42 -04:00
therubyracer/ext/v8/upstream/detect_cpu.rb

27 lines
No EOL
480 B
Ruby

require 'rbconfig'
def x86_64_from_build_cpu
RbConfig::MAKEFILE_CONFIG['build_cpu'] == 'x86_64'
end
def x86_64_from_byte_length
['foo'].pack('p').size == 8
end
def x86_64_from_arch_flag
RbConfig::MAKEFILE_CONFIG['ARCH_FLAG'] =~ /x86_64/
end
def rubinius?
Object.const_defined?(:RUBY_ENGINE) && RUBY_ENGINE == "rbx"
end
def x64?
if rubinius?
x86_64_from_build_cpu || x86_64_from_arch_flag
else
x86_64_from_byte_length
end
end
puts x64? ? "x64" : "ia32"