rgem2rpm 1.4.6 → 1.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/rgem2rpm/gem.rb CHANGED
@@ -23,17 +23,8 @@ class RGem2Rpm::Gem
23
23
  @installdir = "#{@spec[:installname]}-#{@spec[:version]}"
24
24
  # install gem
25
25
  Gem::Installer.new(@filename, :env_shebang => true, :ignore_dependencies => true, :install_dir => @installdir, :bin_dir => "#{@installdir}/bin", :wrappers => true).install
26
- # clean build if gem has extensions
27
- @spec[:extensions].each do |extension|
28
- Dir.chdir(File.dirname("#{@installdir}/gems/#{@filename[0, @filename.size-4]}/#{extension}")) do |path|
29
- # delete intermediate build files
30
- system "make clean"
31
- # delete makefile
32
- FileUtils.rm_rf("#{path}/Makefile")
33
- end
34
- end
35
- # delete directories
36
- Dir["#{@installdir}/*"].each {|name| FileUtils.rm_rf(name) unless name =~ /bin|gems|specifications/ }
26
+ # install build files
27
+ install_build_files
37
28
  # get file list
38
29
  files
39
30
  # build tar.gz
@@ -138,4 +129,20 @@ class RGem2Rpm::Gem
138
129
  # clean temporary files
139
130
  FileUtils.rm_rf @installdir
140
131
  end
132
+
133
+ def install_build_files
134
+ # get current directory
135
+ pwd = FileUtils.pwd
136
+ # clean build if gem has extensions
137
+ @spec[:extensions].each { |extension|
138
+ path = File.dirname("#{pwd}/#{@installdir}/gems/#{@filename[0, @filename.size-4]}/#{extension}")
139
+ FileUtils.cp_r "#{path}/#{@installdir}", "#{pwd}/"
140
+ FileUtils.rm_rf "#{path}/#{@installdir}"
141
+ FileUtils.rm_rf Dir.glob("#{path}/*.o")
142
+ FileUtils.rm_rf Dir.glob("#{path}/*.so")
143
+ FileUtils.rm_rf "#{path}/Makefile"
144
+ }
145
+ # delete directories
146
+ Dir["#{@installdir}/*"].each {|name| FileUtils.rm_rf(name) unless name =~ /bin|gems|specifications/ }
147
+ end
141
148
  end
data/lib/rgem2rpm/rpm.rb CHANGED
@@ -58,15 +58,16 @@ class RGem2Rpm::Rpm
58
58
  def filelist
59
59
  files_str = StringIO.new
60
60
  files_str << "%defattr(0644,#{@osuser},#{@osgroup},0755)\n"
61
+
61
62
  files_str << "%dir %{prefix}\n"
62
- files_str << "%dir %{prefix}/bin\n"
63
- files_str << "%dir %{prefix}/gems\n"
64
- files_str << "%dir %{prefix}/#{@files[:gempath]}\n"
65
- files_str << "%dir %{prefix}/specifications\n"
66
- files_str << "%{prefix}/#{@files[:specification]}\n"
63
+ @files[:directories].each { |file|
64
+ escaped_str = file.gsub(/%/, '?')
65
+ files_str << "%dir \"%{prefix}/#{escaped_str}\"\n"
66
+ }
67
67
 
68
+ files_str << "%{prefix}/#{@files[:specification]}\n"
68
69
  @files[:files].each { |file|
69
- escaped_str = file.gsub(/%/, '*')
70
+ escaped_str = file.gsub(/%/, '?')
70
71
  files_str << "\"%{prefix}/#{escaped_str}\"\n"
71
72
  }
72
73
 
@@ -1,3 +1,3 @@
1
1
  module RGem2Rpm
2
- VERSION = '1.4.6'
2
+ VERSION = '1.4.7'
3
3
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: rgem2rpm
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 1.4.6
5
+ version: 1.4.7
6
6
  platform: ruby
7
7
  authors:
8
8
  - Joao Peixoto
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2012-11-09 00:00:00 Z
13
+ date: 2012-11-16 00:00:00 Z
14
14
  dependencies: []
15
15
 
16
16
  description: Application that enables conversion of rubygems to rpms.