Sha256: 20f2f53dc1c8098a4cbf90bd4a1c03ff21628cfae728d4747182b2a69dc48510

Contents?: true

Size: 1.51 KB

Versions: 8

Compression:

Stored size: 1.51 KB

Contents

#----------------------------------
# extconf.rb
# $Revision: $
# $Date: $
#----------------------------------
require 'mkmf'

class Path

  def initialize()
    if File::ALT_SEPARATOR.nil?
      @file_separator = File::SEPARATOR
    else
      @file_separator = File::ALT_SEPARATOR
    end
  end

  def include(parent, child)
    inc = joint(parent, child)
    $INCFLAGS += " -I\"#{inc}\""
    $CFLAGS += " -I\"#{inc}\""
    inc
  end

  def joint(parent, child)
    parent + @file_separator + child
  end

end

javahome = ENV['JAVA_HOME']
unless javahome.nil?
  if javahome[0] == ?" && javahome[-1] == ?"
    javahome = javahome[1..-2]
  end
  raise "JAVA_HOME is not directory." unless File.directory?(javahome)
  p = Path.new
  inc = p.include(javahome, 'include')
  inc = p.include(javahome, 'Home/include') unless File.exists?(inc)
  Dir.open(inc).each do |d|
    next if d[0] == ?.
    if File.directory?(p.joint(inc, d))
      p.include(inc, d)
      break
    end
  end
else
	raise "JAVA_HOME is not set."
end


def create_rjb_makefile
  if have_header("jni.h") && (have_header("dl.h") || have_header("ruby/dl.h")) #for ruby_1_9
    have_func("locale_charset", "iconv.h")
    have_func("nl_langinfo", "langinfo.h")
    have_func("setlocale", "locale.h")
    have_func("getenv")
    $defs << "-DRJB_RUBY_VERSION_CODE="+RUBY_VERSION.gsub(/\./, '')
    create_header
    create_makefile("rjbcore")
  end
end

case RUBY_PLATFORM
when /mswin32/
  $CFLAGS += ' /W3'
when /cygwin/, /mingw/
  $defs << '-DNONAMELESSUNION'
end
create_rjb_makefile

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
rjb-1.2.9 ext/extconf.rb
rjb-1.2.8 ext/extconf.rb
rjb-1.2.6 ext/extconf.rb
rjb-1.2.5 ext/extconf.rb
rjb-1.2.4 ext/extconf.rb
rjb-1.2.3 ext/extconf.rb
rjb-1.2.2 ext/extconf.rb
rjb-1.2.0 ext/extconf.rb