Sha256: 47b7cc2f354ab3c4b3293d616e7e472d7527477caa7aa2d33f5020b0dd8e098a

Contents?: true

Size: 1.22 KB

Versions: 134

Compression:

Stored size: 1.22 KB

Contents

#:stopdoc:
require 'rbconfig'

# Attempts to require anative extension.
# Falls back to pure-ruby version, if it fails.
#
# This uses Config::CONFIG['arch'] from rbconfig.

def require_arch(fname)
  arch = Config::CONFIG['arch']
  begin
    path = File.join("tmail", arch, fname)
    require path
  rescue LoadError => e
    # try pre-built Windows binaries
    if arch =~ /mswin/
      require File.join("tmail", 'mswin32', fname)
    else
      raise e
    end
  end
end


# def require_arch(fname)
#   dext = Config::CONFIG['DLEXT']
#   begin
#     if File.extname(fname) == dext
#       path = fname
#     else
#       path = File.join("tmail","#{fname}.#{dext}")
#     end
#     require path
#   rescue LoadError => e
#     begin
#       arch = Config::CONFIG['arch']
#       path = File.join("tmail", arch, "#{fname}.#{dext}")
#       require path
#     rescue LoadError
#       case path
#       when /i686/
#         path.sub!('i686', 'i586')
#       when /i586/
#         path.sub!('i586', 'i486')
#       when /i486/
#         path.sub!('i486', 'i386')
#       else
#         begin
#           require fname + '.rb'
#         rescue LoadError
#           raise e
#         end
#       end
#       retry
#     end
#   end
# end
#:startdoc:

Version data entries

134 entries across 131 versions & 31 rubygems

Version Path
tmail_es-1.2.7.3 lib/tmail/require_arch.rb
tmail_es-1.2.7.2 lib/tmail/require_arch.rb
bjornblomqvist-tmail-0.0.1 lib/tmail/require_arch.rb
bjornblomqvist-tmail-0.0.2 lib/tmail/require_arch.rb
japetheape-tmail-1.2.3.4 lib/tmail/require_arch.rb
kennethkalmer-daemon-kit-0.1.7.10 vendor/tmail-1.2.3/tmail/require_arch.rb
kennethkalmer-daemon-kit-0.1.7.4 vendor/tmail-1.2.3/tmail/require_arch.rb
kennethkalmer-daemon-kit-0.1.7.5 vendor/tmail-1.2.3/tmail/require_arch.rb
kennethkalmer-daemon-kit-0.1.7.7 vendor/tmail-1.2.3/tmail/require_arch.rb
kennethkalmer-daemon-kit-0.1.7.8 vendor/tmail-1.2.3/tmail/require_arch.rb
kennethkalmer-daemon-kit-0.1.7.9 vendor/tmail-1.2.3/tmail/require_arch.rb
ledermann-tmail-1.2.5 lib/tmail/require_arch.rb
lonbaker-tmail-1.2.3.1 lib/tmail/require_arch.rb
queso-daemon-kit-0.1.7.10 vendor/tmail-1.2.3/tmail/require_arch.rb
skaar-daemon-kit-0.1.7.10 vendor/tmail-1.2.3/tmail/require_arch.rb
valodzka-tmail-1.2.3.2 lib/tmail/require_arch.rb
valodzka-tmail-1.2.3.3 lib/tmail/require_arch.rb
valodzka-valodzka-tmail-1.2.3.2 lib/tmail/require_arch.rb
actionmailer-2.3.18 lib/action_mailer/vendor/tmail-1.2.7/tmail/require_arch.rb
actionmailer_csi-2.3.5.p8 lib/action_mailer/vendor/tmail-1.2.3/tmail/require_arch.rb