Top Level Namespace

Defined Under Namespace

Modules: BigMath, Jacobian, Kernel, LUSolve, Newton Classes: BigDecimal, Float, Integer, NilClass, Rational, String

Instance Method Summary collapse

Instance Method Details

#check_bigdecimal_version(gemspec_path) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'ext/bigdecimal/extconf.rb', line 4

def check_bigdecimal_version(gemspec_path)
  message "checking RUBY_BIGDECIMAL_VERSION... "

  bigdecimal_version =
    IO.readlines(gemspec_path)
      .grep(/\Abigdecimal_version\s+=\s+/)[0][/\'([^\']+)\'/, 1]

  version_components = bigdecimal_version.split('.')
  bigdecimal_version = version_components[0, 3].join('.')
  bigdecimal_version << "-#{version_components[3]}" if version_components[3]
  $defs << %Q[-DRUBY_BIGDECIMAL_VERSION=\\"#{bigdecimal_version}\\"]

  message "#{bigdecimal_version}\n"
end