Module: Baltix::Loader::GitVersionGen
- Included in:
- Source::Gem
- Defined in:
- lib/baltix/loader/git-version-gen.rb
Overview
GIT-VERSION-GEN version generator based gemspec preparser example: “kgio” gem
Instance Method Summary collapse
Instance Method Details
#git_version_gen(execfile) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/baltix/loader/git-version-gen.rb', line 5 def git_version_gen execfile IO.popen(execfile) do |io| debug(io.readlines) end dir = File.dirname(execfile) version_line = IO.read(File.join(dir, "GIT-VERSION-FILE")) if /=(?<version>.*)/ =~ version_line ENV["VERSION"] = version.strip end # dot manifest generation files = Dir["*/**/*"].select {|x| File.file?(x) } File.open(".manifest", "w+") {|f| f.puts(files.join("\n"))} # make documentaion if File.directory?('Documentation') `make -C Documentation` end if !File.exist?('.manifest') || !File.exist?('.gem-manifest') files = Dir.glob("**/*", File::FNM_DOTMATCH).reject do |f| /\/\.git/ =~ f || File.directory?(f) end File.open(File.join('.gem-manifest'), "w") { |f| f.puts files } FileUtils.cp('.gem-manifest', '.manifest') end nil end |