Module: Skylight::Core::Util::Platform Private
- Defined in:
- lib/skylight/core/util/platform.rb
This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.
Constant Summary collapse
- OS =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Normalize the platform OS
case os = RbConfig::CONFIG['host_os'].downcase when /linux/ # The official ruby-alpine Docker containers pre-build Ruby. As a result, # Ruby doesn't know that it's on a musl-based platform. `ldd` is the # only reliable way to detect musl that we've found. # See https://github.com/skylightio/skylight-ruby/issues/92 if ENV['SKYLIGHT_MUSL'] || `ldd --version 2>&1` =~ /musl/ "linux-musl" else "linux" end when /darwin/ "darwin" when /freebsd/ "freebsd" when /netbsd/ "netbsd" when /openbsd/ "openbsd" when /sunos|solaris/ "solaris" when /mingw|mswin/ "windows" else os end
- ARCH =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
Normalize the platform CPU
case cpu = RbConfig::CONFIG['host_cpu'].downcase when /amd64|x86_64/ "x86_64" when /i?86|x86|i86pc/ "x86" when /ppc|powerpc/ "powerpc" when /^arm/ "arm" else cpu end
- LIBEXT =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
case OS when /darwin/ 'dylib' when /linux|bsd|solaris/ 'so' when /windows|cygwin/ 'dll' else 'so' end
- TUPLE =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
"#{ARCH}-#{OS}"
Class Method Summary collapse
- .dlext ⇒ Object private
- .libext ⇒ Object private
- .tuple ⇒ Object private
Class Method Details
.dlext ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
71 72 73 |
# File 'lib/skylight/core/util/platform.rb', line 71 def self.dlext RbConfig::CONFIG['DLEXT'] end |
.libext ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
67 68 69 |
# File 'lib/skylight/core/util/platform.rb', line 67 def self.libext LIBEXT end |
.tuple ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
63 64 65 |
# File 'lib/skylight/core/util/platform.rb', line 63 def self.tuple TUPLE end |