rgem2rpm 1.0.0

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.
@@ -0,0 +1,4 @@
1
+ require 'rake'
2
+ require 'rake/rdoctask'
3
+
4
+ FileList['lib/*.rb'].each { |file| load(file) }
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/env jruby
2
+
3
+ require 'rubygems'
4
+ # set rgem2rpm path
5
+ rgem2rpm_path = File.expand_path('../../lib', __FILE__)
6
+ $:.unshift(rgem2rpm_path)
7
+ require 'rgem2rpm'
8
+
9
+ begin
10
+ # parse arguments
11
+ options_parse = RGem2Rpm::ArgumentParse.parse(ARGV)
12
+ # check arguments
13
+ raise "Missing argument: gemfilename" unless ARGV.size == 1
14
+ # initialize gem2rpm
15
+ gem2rpm = RGem2Rpm::Converter.new options_parse, ARGV[0]
16
+ # build rpm
17
+ gem2rpm.create_rpm
18
+ rescue => e
19
+ puts e.message
20
+ exit
21
+ end
@@ -0,0 +1,34 @@
1
+ %define distnum %{expand:%%(/usr/lib/rpm/redhat/dist.sh --distnum)}
2
+ %define disttype %{expand:%%(/usr/lib/rpm/redhat/dist.sh --disttype)}
3
+ %define name <%=name%>
4
+ %define version <%=version%>
5
+ %define release <%=rpm_release%>.%{disttype}%{distnum}
6
+
7
+ Name: %{name}
8
+ Version: %{version}
9
+ Release: %{release}
10
+ License: See <%=homepage%>
11
+ Summary: <%=summary%>
12
+ Group: <%=rpm_group%>
13
+ Source: %{name}-%{version}.tar.gz
14
+ Prefix: <%=os_install_dir%>
15
+ BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
16
+ <%="BuildArch: noarch" if rpm_no_arch%>
17
+ <%="Requires: #{requires}" unless requires.nil?%>
18
+ %description
19
+ <%=description%>
20
+
21
+ %prep
22
+ %setup -q
23
+
24
+ %install
25
+ <%=rpm_install%>
26
+
27
+ <%="%post\n#{rpm_post}" unless rpm_post.nil?%>
28
+
29
+ %postun
30
+ rm -rf %{prefix}/gems/%{name}-%{version}
31
+
32
+ %files
33
+ %defattr(-,<%=os_user%>,<%=os_group%>)
34
+ <%=files%>
@@ -0,0 +1,11 @@
1
+ # initialize module RGem2Rpm
2
+ module RGem2Rpm; end
3
+
4
+ require 'rgem2rpm/argumentparse'
5
+ require 'rgem2rpm/converter'
6
+ require 'rgem2rpm/version'
7
+ require 'rgem2rpm/ext'
8
+ require 'rgem2rpm/ext/builder'
9
+ require 'rgem2rpm/ext/configure_builder'
10
+ require 'rgem2rpm/ext/ext_conf_builder'
11
+ require 'rgem2rpm/ext/rake_builder'
@@ -0,0 +1,77 @@
1
+ require 'optparse'
2
+ require 'ostruct'
3
+
4
+ class RGem2Rpm::ArgumentParse
5
+ #
6
+ # Return a structure describing the options.
7
+ #
8
+ def self.parse(args)
9
+ # The options specified on the command line will be collected in *options*.
10
+ # We set default values here.
11
+ options = OpenStruct.new
12
+ options.spec_template = File.expand_path('../../../conf/template.spec', __FILE__)
13
+ options.rpm_release = '1'
14
+ options.rpm_group = 'Ruby/Gems'
15
+ options.os_user = 'root'
16
+ options.os_group = 'root'
17
+ options.os_install_dir = '/opt/ruby'
18
+
19
+ opts = OptionParser.new do |opt|
20
+ opt.banner = "Usage: rgem2rpm [options] [gemfilename]"
21
+ opt.separator "options:"
22
+
23
+ # Template argument
24
+ opt.on("--template SPECTEMPLATE", "Define new rpm spec template.") do |spec_template|
25
+ options.spec_template = spec_template
26
+ end
27
+
28
+ # Release name
29
+ opt.on("--release RPMRELEASE", "Define rpm spec release.") do |rpm_release|
30
+ options.rpm_release = rpm_release
31
+ end
32
+
33
+ # rpm group
34
+ opt.on("--rpmgroup RPMGROUPNAME", "Define rpm spec group.") do |rpm_group|
35
+ options.rpm_group = rpm_group
36
+ end
37
+
38
+ # operating system install user
39
+ opt.on("--osuser USERNAME", "Define rpm spec os install user.") do |os_user|
40
+ options.os_user = os_user
41
+ end
42
+
43
+ # operating system install group
44
+ opt.on("--osgroup GROUPNAME", "Define rpm spec os install group.") do |os_group|
45
+ options.os_group = os_group
46
+ end
47
+
48
+ # operating system install dir
49
+ opt.on("--osinstalldir INSTALLDIR", "Define rpm spec os install directory.") do |os_install_dir|
50
+ options.os_install_dir = os_install_dir
51
+ end
52
+
53
+ # No argument, shows at tail. This will print an options summary.
54
+ # Try it and see!
55
+ opt.on_tail("--help", "Show this message.") do
56
+ puts opt
57
+ exit
58
+ end
59
+
60
+ # Another typical switch to print the version.
61
+ opt.on_tail("--version", "Show version.") do
62
+ puts RGem2Rpm::VERSION
63
+ exit
64
+ end
65
+ end
66
+
67
+ begin
68
+ # parse options
69
+ opts.parse!(args)
70
+ # return options
71
+ options
72
+ rescue => e
73
+ puts e.message
74
+ exit
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,310 @@
1
+ require 'rubygems/installer'
2
+ require 'fileutils'
3
+ require 'zlib'
4
+ require 'archive/tar/minitar'
5
+ require 'erb'
6
+ require 'rgem2rpm/ext'
7
+ include Archive::Tar
8
+
9
+ class RGem2Rpm::Converter < Gem::Installer
10
+ ##
11
+ # Constructs an Installer instance that will install the gem located at
12
+ # +gem+. +options+ is a Hash with the following keys:
13
+ #
14
+ # :rpm_top_dir:: path used by rpmbuild to generate rpms
15
+ def initialize(options_parse, gem)
16
+ # set spectemplate
17
+ @spec_template = options_parse.spec_template
18
+ # set rpm release
19
+ @rpm_release = options_parse.rpm_release
20
+ # set rpm group
21
+ @rpm_group = options_parse.rpm_group
22
+ # set rpm no arch
23
+ @rpm_no_arch = true
24
+ # set os user
25
+ @os_user = options_parse.os_user
26
+ # set os group
27
+ @os_group = options_parse.os_group
28
+ # set os installation dir
29
+ @os_install_dir = options_parse.os_install_dir
30
+ # initialize rpm_top_dir
31
+ @rpm_top_dir = "#{Dir.pwd}/rpmbuild"
32
+ # set defaul options
33
+ super(gem)
34
+ # initialize temp dir
35
+ @rpm_tmp_dir = "#{@rpm_top_dir}/tmp/#{@spec.full_name}"
36
+ # initialize unpack dir
37
+ @rpm_unpack_dir = "#{@rpm_tmp_dir}/#{@spec.full_name}"
38
+ # initialize gemspec filename
39
+ @gemspec_filename = "#{@rpm_tmp_dir}/#{@spec.full_name}.gemspec"
40
+ # initialize bin dir
41
+ @bin_dir = "#{@rpm_tmp_dir}/bin"
42
+ # create rpm build environment
43
+ create_rpm_env
44
+ end
45
+
46
+ # return gem name
47
+ def name
48
+ @spec.name
49
+ end
50
+
51
+ # return gem version
52
+ def version
53
+ @spec.version
54
+ end
55
+
56
+ # return rpm release
57
+ def rpm_release
58
+ @rpm_release
59
+ end
60
+
61
+ # return rpm group
62
+ def rpm_group
63
+ @rpm_group
64
+ end
65
+
66
+ # return rpm no arch value
67
+ def rpm_no_arch
68
+ @rpm_no_arch
69
+ end
70
+
71
+ # return os installation user
72
+ def os_user
73
+ @os_user
74
+ end
75
+
76
+ # return os installation group
77
+ def os_group
78
+ @os_group
79
+ end
80
+
81
+ # return os installation group
82
+ def os_install_dir
83
+ @os_install_dir
84
+ end
85
+
86
+ # return gem homepage
87
+ def homepage
88
+ @spec.homepage
89
+ end
90
+
91
+ # return summary
92
+ def summary
93
+ @spec.summary
94
+ end
95
+
96
+ # return rpm install bin
97
+ def rpm_install
98
+ @rpm_install
99
+ end
100
+
101
+ # return rpm post
102
+ def rpm_post
103
+ @rpm_post
104
+ end
105
+
106
+ ##
107
+ # Converts gem into rpm using rpmbuild command
108
+ def create_rpm
109
+ # unpack gem software
110
+ unpack @rpm_unpack_dir
111
+ # generate install
112
+ generate_install
113
+ # generate post install
114
+ generate_post
115
+ # generate executable files
116
+ generate_bin
117
+ # create gemspec file
118
+ File.open(@gemspec_filename, 'w') { |f|
119
+ f.write(@spec.to_ruby)
120
+ }
121
+ # create rpm spec file
122
+ write_rpm_spec_from_template
123
+ # create rpm source file
124
+ create_rpm_source("#{@rpm_top_dir}/tmp")
125
+ # create rpm
126
+ rpmbuild
127
+ # clean temp directory
128
+ FileUtils.rm_rf "#{@rpm_tmp_dir}"
129
+ end
130
+
131
+ # return gem runtime dependencies
132
+ def requires
133
+ req_str = StringIO.new
134
+ # get ruby dependency
135
+ req_str << "ruby #{@spec.required_ruby_version || ">= 0" }"
136
+ # get rubygems dependency
137
+ req_str << ", rubygems #{@spec.required_rubygems_version}" unless @spec.required_rubygems_version.nil?
138
+ # get runtime dependencies
139
+ req_str << ", #{@spec.runtime_dependencies.join(', ').gsub(', runtime', '').gsub(')', '').gsub('(', '').gsub('~>', '>=')}" unless @spec.runtime_dependencies.empty?
140
+ # return string with dependencies
141
+ return req_str.string
142
+ end
143
+
144
+ # return gem description
145
+ def description
146
+ @spec.description
147
+ end
148
+
149
+ # return gem files
150
+ def files
151
+ @files
152
+ end
153
+
154
+ private
155
+ ##
156
+ # Create install string.
157
+ def generate_install
158
+ files_str = StringIO.new
159
+ install_str = StringIO.new
160
+ install_str << "rm -rf %{buildroot}\n"
161
+ install_str << "mkdir -p %{buildroot}%{prefix}/bin\n"
162
+ install_str << "mkdir -p %{buildroot}%{prefix}/specifications\n"
163
+ install_str << "mkdir -p %{buildroot}%{prefix}/gems/%{name}-%{version}\n"
164
+ install_str << "install -p -m 644 %{name}-%{version}.gemspec %{buildroot}%{prefix}/specifications"
165
+ files_str << "%{prefix}/specifications/%{name}-%{version}.gemspec"
166
+ # get files list
167
+ @spec.files.each { |file|
168
+ if File.file? "#{@rpm_unpack_dir}/#{file}"
169
+ install_str << "\ninstall -p -D -m 644 %{name}-%{version}/#{file} %{buildroot}%{prefix}/gems/%{name}-%{version}/#{file}"
170
+ files_str << "\n%{prefix}/gems/%{name}-%{version}/#{file}"
171
+ elsif File.directory? "#{@rpm_unpack_dir}/#{file}"
172
+ install_str << "\nmkdir -p %{buildroot}%{prefix}/gems/%{name}-%{version}/#{file}"
173
+ end
174
+ }
175
+ # get executable file list
176
+ @spec.executables.each { |file|
177
+ install_str << "\ninstall -p -m 0755 bin/#{file} %{buildroot}%{prefix}/bin"
178
+ files_str << "\n%{prefix}/bin/#{file}"
179
+ }
180
+ @rpm_install = install_str.string
181
+ @files = files_str.string
182
+ end
183
+
184
+ ##
185
+ # Builds extensions. Valid types of extensions are extconf.rb files,
186
+ # configure scripts and rakefiles or mkrf_conf files.
187
+ def generate_post
188
+ return if @spec.extensions.empty?
189
+ @rpm_post = "echo \"Building native extensions. This could take a while...\"\n"
190
+ # initialize make command string
191
+ build_cmd = StringIO.new
192
+ # start building make command
193
+ dest_path = File.join @os_install_dir, "gems", "#{name}-#{version}", @spec.require_paths.first
194
+ ran_rake = false # only run rake once
195
+
196
+ @spec.extensions.each do |extension|
197
+ break if ran_rake
198
+
199
+ builder = case extension
200
+ when /extconf/ then
201
+ RGem2Rpm::Ext::ExtConfBuilder
202
+ when /configure/ then
203
+ RGem2Rpm::Ext::ConfigureBuilder
204
+ when /rakefile/i, /mkrf_conf/i then
205
+ ran_rake = true
206
+ RGem2Rpm::Ext::RakeBuilder
207
+ else
208
+ nil
209
+ end
210
+ # get build
211
+ build_cmd << builder.build(extension, dest_path)
212
+ end
213
+ # set rpm no arch to false
214
+ @rpm_no_arch = false
215
+ # return set post install
216
+ @rpm_post = "#{@rpm_post}#{build_cmd.string}"
217
+ end
218
+
219
+ def generate_bin
220
+ return if @spec.executables.nil? or @spec.executables.empty?
221
+
222
+ # If the user has asked for the gem to be installed in a directory that is
223
+ # the system gem directory, then use the system bin directory, else create
224
+ # (or use) a new bin dir under the gem_home.
225
+ bindir = @bin_dir ? @bin_dir : Gem.bindir(@gem_home)
226
+
227
+ Dir.mkdir bindir unless File.exist? bindir
228
+ raise Gem::FilePermissionError.new(bindir) unless File.writable? bindir
229
+
230
+ @spec.executables.each do |filename|
231
+ filename.untaint
232
+ bin_path = File.expand_path "#{@spec.bindir}/#{filename}", @gem_dir
233
+ if File.exist?(bin_path)
234
+ mode = File.stat(bin_path).mode | 0111
235
+ File.chmod mode, bin_path
236
+ end
237
+ generate_bin_script filename, bindir
238
+ end
239
+ end
240
+
241
+ def generate_bin_script(filename, bindir)
242
+ @rpm_install = "#{@rpm_install}\nsed -i \"1i $(if (ruby -v 1>/dev/null 2>&1); then echo '\#\!/usr/bin/env ruby'; else echo '\#\!/usr/bin/env jruby'; fi;)\" %{buildroot}%{prefix}/bin/#{filename}"
243
+ bin_script_path = File.join bindir, formatted_program_filename(filename)
244
+
245
+ File.open bin_script_path, 'wb', 0755 do |file|
246
+ file.print app_script_text(filename)
247
+ end
248
+ end
249
+
250
+ ##
251
+ # Return the text for an application file.
252
+
253
+ def app_script_text(bin_file_name)
254
+ <<-TEXT
255
+ #
256
+ # This file was generated by RubyGems.
257
+ #
258
+ # The application '#{@spec.name}' is installed as part of a gem, and
259
+ # this file is here to facilitate running it.
260
+ #
261
+
262
+ require 'rubygems'
263
+
264
+ version = "#{Gem::Requirement.default}"
265
+
266
+ if ARGV.first =~ /^_(.*)_$/ and Gem::Version.correct? $1 then
267
+ version = $1
268
+ ARGV.shift
269
+ end
270
+
271
+ gem '#{@spec.name}', version
272
+ load Gem.bin_path('#{@spec.name}', '#{bin_file_name}', version)
273
+ TEXT
274
+ end
275
+
276
+ def create_rpm_env
277
+ FileUtils.mkdir_p "#{@rpm_top_dir}/SPECS" unless File.exists?("#{@rpm_top_dir}/SPECS")
278
+ FileUtils.mkdir_p "#{@rpm_top_dir}/BUILD" unless File.exists?("#{@rpm_top_dir}/BUILD")
279
+ FileUtils.mkdir_p "#{@rpm_top_dir}/RPMS" unless File.exists?("#{@rpm_top_dir}/RPMS")
280
+ FileUtils.mkdir_p "#{@rpm_top_dir}/SRPMS" unless File.exists?("#{@rpm_top_dir}/SRPMS")
281
+ FileUtils.mkdir_p "#{@rpm_top_dir}/SOURCES" unless File.exists?("#{@rpm_top_dir}/SOURCES")
282
+ end
283
+
284
+ def write_rpm_spec_from_template
285
+ template = ERB.new(File.read(@spec_template))
286
+ # write rpm spec file file
287
+ rpmspec_filename = "#{@rpm_top_dir}/SPECS/#{@spec.name}-#{@spec.version}.spec"
288
+ File.open(rpmspec_filename, 'w') {|f|
289
+ f.write(template.result(binding))
290
+ }
291
+ end
292
+
293
+ def create_rpm_source(orig)
294
+ # create tar.gz source file
295
+ tgz = Zlib::GzipWriter.new(File.open("#{@rpm_top_dir}/SOURCES/#{@spec.name}-#{@spec.version}.tar.gz", 'wb'))
296
+ # Warning: tgz will be closed!
297
+ FileUtils.cd "#{orig}"
298
+ Minitar.pack("#{@spec.name}-#{@spec.version}", tgz)
299
+ FileUtils.cd "#{@rpm_top_dir}"
300
+ end
301
+
302
+ def rpmbuild
303
+ # define rpm build args
304
+ options = "-bb --rmspec --rmsource"
305
+ define = "--define \"_topdir #{@rpm_top_dir}\" --define \"_tmppath #{@rpm_top_dir}/tmp\""
306
+ specfile = "#{@rpm_top_dir}/SPECS/#{@spec.name}-#{@spec.version}.spec"
307
+ # create rpm
308
+ system "rpmbuild #{options} #{define} #{specfile}"
309
+ end
310
+ end
@@ -0,0 +1,12 @@
1
+ require 'rubygems'
2
+
3
+ ##
4
+ # Classes for building C extensions live here.
5
+
6
+ module RGem2Rpm::Ext; end
7
+
8
+ require 'rubygems/ext/builder'
9
+ require 'rubygems/ext/configure_builder'
10
+ require 'rubygems/ext/ext_conf_builder'
11
+ require 'rubygems/ext/rake_builder'
12
+
@@ -0,0 +1,23 @@
1
+ require 'rubygems/ext/builder'
2
+
3
+ class RGem2Rpm::Ext::Builder < Gem::Ext::Builder
4
+
5
+ def self.make_str(dest_path)
6
+ # create make command strings
7
+ make = StringIO.new
8
+ # change makefile variables
9
+ make << "sed -i 's/RUBYARCHDIR\s*=\s*\$[^$]*/RUBYARCHDIR = #{dest_path.gsub(/\//, '\/')}/g' Makefile\n"
10
+ make << "sed -i 's/RUBYLIBDIR\s*=\s*\$[^$]*/RUBYLIBDIR = #{dest_path.gsub(/\//, '\/')}/g' Makefile\n"
11
+ make << "make #{redirector}\n"
12
+ # create make command strings
13
+ make << "make install #{redirector}"
14
+ # return make string
15
+ return make.string
16
+ end
17
+
18
+ def self.redirector
19
+ '2>&1'
20
+ end
21
+
22
+ end
23
+
@@ -0,0 +1,20 @@
1
+ require 'rgem2rpm/ext/builder'
2
+
3
+ class RGem2Rpm::Ext::ConfigureBuilder < RGem2Rpm::Ext::Builder
4
+
5
+ def self.build(extension, dest_path)
6
+ # create make string
7
+ build = StringIO.new
8
+ unless File.exist?('Makefile') then
9
+ build << "sh ./configure --prefix=#{dest_path}"
10
+ build << " #{Gem::Command.build_args.join ' '}" unless Gem::Command.build_args.empty?
11
+ build << "\n"
12
+ end
13
+ # get make commands
14
+ build << make_str(dest_past)
15
+ # return make string
16
+ return build.string
17
+ end
18
+
19
+ end
20
+
@@ -0,0 +1,17 @@
1
+ require 'rgem2rpm/ext/builder'
2
+
3
+ class RGem2Rpm::Ext::ExtConfBuilder < RGem2Rpm::Ext::Builder
4
+
5
+ def self.build(extension, dest_path)
6
+ # create build string
7
+ build = StringIO.new
8
+ build << "cd %{prefix}/gems/%{name}-%{version}/#{File.dirname extension}\n"
9
+ build << "#{File.basename Gem.ruby} #{File.basename extension}"
10
+ build << " #{Gem::Command.build_args.join ' '}" unless Gem::Command.build_args.empty?
11
+ build << " #{redirector}\n"
12
+ # get make commands
13
+ build << make_str(dest_path)
14
+ return build.string
15
+ end
16
+
17
+ end
@@ -0,0 +1,32 @@
1
+ require 'rgem2rpm/ext/builder'
2
+
3
+ class RGem2Rpm::Ext::RakeBuilder < RGem2Rpm::Ext::Builder
4
+
5
+ def self.build(extension, dest_path)
6
+ # create build string
7
+ build = StringIO.new
8
+ if File.basename(extension) =~ /mkrf_conf/i then
9
+ build << "#{File.basename Gem.ruby} #{extension}"
10
+ build << " #{Gem::Command.build_args.join " "}" unless Gem::Command.build_args.empty?
11
+ build << "\n"
12
+ end
13
+
14
+ # Deal with possible spaces in the path, e.g. C:/Program Files
15
+ dest_path = '"' + dest_path + '"' if dest_path.include?(' ')
16
+
17
+ rake = ENV['rake']
18
+
19
+ rake ||= begin
20
+ "\"#{File.basename Gem.ruby}\" -rubygems #{Gem.bin_path('rake')}"
21
+ rescue Gem::Exception
22
+ end
23
+
24
+ rake ||= Gem.default_exec_format % 'rake'
25
+
26
+ build << "#{rake} RUBYARCHDIR=#{dest_path} RUBYLIBDIR=#{dest_path}" # ENV is frozen
27
+ # return build string
28
+ return build.string
29
+ end
30
+
31
+ end
32
+
@@ -0,0 +1,3 @@
1
+ module RGem2Rpm
2
+ VERSION = '1.0.0'
3
+ end
@@ -0,0 +1,30 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = %q{rgem2rpm}
3
+ s.version = "1.0.0"
4
+ s.required_ruby_version = Gem::Requirement.new(">= 1.8.6")
5
+ s.required_rubygems_version = Gem::Requirement.new(">= 1.4.2") if s.respond_to?(:required_rubygems_version=)
6
+ s.date = %q{2011-04-26}
7
+ s.authors = ["Joao Peixoto"]
8
+ s.email = %q{peixoto.joao@gmail.com}
9
+ s.summary = %q{Convert ruby gems into rpm}
10
+ s.homepage = %q{https://github.com/jppeixoto/rgem2rpm}
11
+ s.description = %q{Application that enables conversion of rubygems to rpms.}
12
+ s.platform = Gem::Platform::RUBY
13
+ s.bindir = 'bin'
14
+ s.executables = 'rgem2rpm'
15
+ s.files = ["Rakefile",
16
+ "bin/rgem2rpm",
17
+ "rgem2rpm.gemspec",
18
+ "lib/rgem2rpm.rb",
19
+ "lib/rgem2rpm/argumentparse.rb",
20
+ "lib/rgem2rpm/converter.rb",
21
+ "lib/rgem2rpm/ext.rb",
22
+ "lib/rgem2rpm/version.rb",
23
+ "lib/rgem2rpm/ext/builder.rb",
24
+ "lib/rgem2rpm/ext/configure_builder.rb",
25
+ "lib/rgem2rpm/ext/ext_conf_builder.rb",
26
+ "lib/rgem2rpm/ext/rake_builder.rb",
27
+ "conf/template.spec"]
28
+ s.has_rdoc = false
29
+ s.add_dependency 'minitar', '>= 0.5.3'
30
+ end
metadata ADDED
@@ -0,0 +1,76 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rgem2rpm
3
+ version: !ruby/object:Gem::Version
4
+ prerelease:
5
+ version: 1.0.0
6
+ platform: ruby
7
+ authors:
8
+ - Joao Peixoto
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2011-04-26 00:00:00 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: minitar
17
+ prerelease: false
18
+ requirement: &id001 !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 0.5.3
24
+ type: :runtime
25
+ version_requirements: *id001
26
+ description: Application that enables conversion of rubygems to rpms.
27
+ email: peixoto.joao@gmail.com
28
+ executables:
29
+ - rgem2rpm
30
+ extensions: []
31
+
32
+ extra_rdoc_files: []
33
+
34
+ files:
35
+ - Rakefile
36
+ - bin/rgem2rpm
37
+ - rgem2rpm.gemspec
38
+ - lib/rgem2rpm.rb
39
+ - lib/rgem2rpm/argumentparse.rb
40
+ - lib/rgem2rpm/converter.rb
41
+ - lib/rgem2rpm/ext.rb
42
+ - lib/rgem2rpm/version.rb
43
+ - lib/rgem2rpm/ext/builder.rb
44
+ - lib/rgem2rpm/ext/configure_builder.rb
45
+ - lib/rgem2rpm/ext/ext_conf_builder.rb
46
+ - lib/rgem2rpm/ext/rake_builder.rb
47
+ - conf/template.spec
48
+ homepage: https://github.com/jppeixoto/rgem2rpm
49
+ licenses: []
50
+
51
+ post_install_message:
52
+ rdoc_options: []
53
+
54
+ require_paths:
55
+ - lib
56
+ required_ruby_version: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: 1.8.6
62
+ required_rubygems_version: !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: 1.4.2
68
+ requirements: []
69
+
70
+ rubyforge_project:
71
+ rubygems_version: 1.7.2
72
+ signing_key:
73
+ specification_version: 3
74
+ summary: Convert ruby gems into rpm
75
+ test_files: []
76
+