Class: OraConf

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

Direct Known Subclasses

OraConfFC, OraConfIC

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeOraConf

Returns a new instance of OraConf.



296
297
298
# File 'ext/oci8/oraconf.rb', line 296

def initialize
  raise 'use OraConf.get instead'
end

Instance Attribute Details

#cc_is_gccObject (readonly)

Returns the value of attribute cc_is_gcc.



291
292
293
# File 'ext/oci8/oraconf.rb', line 291

def cc_is_gcc
  @cc_is_gcc
end

#cflagsObject (readonly)

Returns the value of attribute cflags.



293
294
295
# File 'ext/oci8/oraconf.rb', line 293

def cflags
  @cflags
end

#libsObject (readonly)

Returns the value of attribute libs.



294
295
296
# File 'ext/oci8/oraconf.rb', line 294

def libs
  @libs
end

#versionObject (readonly)

Returns the value of attribute version.



292
293
294
# File 'ext/oci8/oraconf.rb', line 292

def version
  @version
end

Class Method Details

.getObject



300
301
302
303
304
305
306
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
# File 'ext/oci8/oraconf.rb', line 300

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 Message:
#{$!.to_s.gsub(/\n/, "\n  ")}
Backtrace:
#{$!.backtrace.join("\n  ")}
---------------------------------------------------
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



349
350
351
# File 'ext/oci8/oraconf.rb', line 349

def self.ld_envs
  @@ld_envs
end