summaryrefslogtreecommitdiff
path: root/ext/bigdecimal/bigdecimal.gemspec
diff options
context:
space:
mode:
Diffstat (limited to 'ext/bigdecimal/bigdecimal.gemspec')
-rw-r--r--ext/bigdecimal/bigdecimal.gemspec14
1 files changed, 12 insertions, 2 deletions
diff --git a/ext/bigdecimal/bigdecimal.gemspec b/ext/bigdecimal/bigdecimal.gemspec
index a72205f517..f9f3b45616 100644
--- a/ext/bigdecimal/bigdecimal.gemspec
+++ b/ext/bigdecimal/bigdecimal.gemspec
@@ -1,8 +1,18 @@
# coding: utf-8
+name = File.basename(__FILE__, '.*')
+source_version = ["", "ext/#{name}/"].find do |dir|
+ begin
+ break File.foreach(File.join(__dir__, "#{dir}#{name}.c")) {|line|
+ break $1.sub("-", ".") if /^#define\s+#{name.upcase}_VERSION\s+"(.+)"/o =~ line
+ }
+ rescue Errno::ENOENT
+ end
+end or raise "can't find #{name.upcase}_VERSION"
+
Gem::Specification.new do |s|
- s.name = "bigdecimal"
- s.version = "3.1.3"
+ s.name = name
+ s.version = source_version
s.authors = ["Kenta Murata", "Zachary Scott", "Shigeo Kobayashi"]
s.email = ["mrkn@mrkn.jp"]