Class: OraConf

Inherits:
Object
  • Object
show all
Includes:
MiniRegistry
Defined in:
ext/oci8/oraconf.rb

Direct Known Subclasses

OraConfFC, OraConfIC

Constant Summary

Constants included from MiniRegistry

MiniRegistry::ERROR_FILE_NOT_FOUND, MiniRegistry::ERROR_SUCCESS, MiniRegistry::HKEY_LOCAL_MACHINE, MiniRegistry::RegCloseKey, MiniRegistry::RegOpenKeyExA, MiniRegistry::RegQueryValueExA

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from MiniRegistry

#get_local_registry, #get_reg_value

Constructor Details

#initializeOraConf

Returns a new instance of OraConf.



303
304
305
# File 'ext/oci8/oraconf.rb', line 303

def initialize
  raise 'use OraConf.get instead'
end

Instance Attribute Details

#cc_is_gccObject (readonly)

Returns the value of attribute cc_is_gcc.



298
299
300
# File 'ext/oci8/oraconf.rb', line 298

def cc_is_gcc
  @cc_is_gcc
end

#cflagsObject (readonly)

Returns the value of attribute cflags.



300
301
302
# File 'ext/oci8/oraconf.rb', line 300

def cflags
  @cflags
end

#libsObject (readonly)

Returns the value of attribute libs.



301
302
303
# File 'ext/oci8/oraconf.rb', line 301

def libs
  @libs
end

#versionObject (readonly)

Returns the value of attribute version.



299
300
301
# File 'ext/oci8/oraconf.rb', line 299

def version
  @version
end

Class Method Details

.getObject



307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
# File 'ext/oci8/oraconf.rb', line 307

def self.get
  original_CFLAGS = $CFLAGS
  original_defs = $defs
  ic_dir = nil
  begin
    # check Oracle instant client
    if with_config('instant-client')
      puts <<EOS
=======================================================

'--with-instant-client' is an obsolete option. ignore it.

=======================================================
EOS
    end
    ic_dir = check_ic_dir
    if ic_dir
      OraConfIC.new(ic_dir)
    else
      OraConfFC.new()
    end
  rescue
    case ENV['LANG']
    when /^ja/
      lang = 'ja'
    else
      lang = 'en'
    end
    print <<EOS
---------------------------------------------------
error messages:
#{$!.to_s}
---------------------------------------------------
See:
 * http://ruby-oci8.rubyforge.org/#{lang}/HowToInstall.html
 * http://ruby-oci8.rubyforge.org/#{lang}/ReportInstallProblem.html

EOS
    exc = RuntimeError.new
    exc.set_backtrace($!.backtrace)
    raise exc
  ensure
    $CFLAGS = original_CFLAGS
    $defs = original_defs
  end
end

.ld_envsObject



354
355
356
# File 'ext/oci8/oraconf.rb', line 354

def self.ld_envs
  @@ld_envs
end