rgem2rpm 1.4.2 → 1.4.3

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/conf/template.spec CHANGED
@@ -22,6 +22,7 @@ Prefix: <%=installdir%>
22
22
  BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
23
23
  <%="BuildArch: noarch" unless buildarch.nil?%>
24
24
  <%="Requires: #{requires}" unless requires == ""%>
25
+ <%="Conflicts: #{conflicts}" unless conflicts == ""%>
25
26
  <%="Provides: #{provides}" unless provides == ""%>
26
27
 
27
28
  %description
data/lib/rgem2rpm/rpm.rb CHANGED
@@ -76,22 +76,42 @@ class RGem2Rpm::Rpm
76
76
 
77
77
  def requires
78
78
  req_str = StringIO.new
79
- req_str << "rubygems #{@rubygem}" unless @rubygem.nil?
79
+ # set rubygems dependency
80
+ unless @rubygem.nil?
81
+ req_str << "rubygems"
82
+ req_str << " #{@rubygem}" unless @rubygem == '>= 0'
83
+ end
80
84
  # set runtime dependencies
81
85
  @dependencies.each { |d|
82
- req_str << ', ' unless req_str.size == 0
83
- req_str << "rubygem(#{d.name}) #{d.requirement.to_s.gsub('~>', '>=')}"
84
- if d.requirement.to_s =~ /~>/
85
- version = d.requirement.to_s.delete('~>').strip.split('.')
86
- version[version.size - 1] = "0"
87
- version[version.size - 2] = (version[version.size - 2].to_i + 1).to_s
88
- req_str << ", rubygem(#{d.name}) < #{version.join('.')}"
89
- end
86
+ d.requirement.requirements.each { |v|
87
+ req_str << ', ' unless req_str.size == 0
88
+ req_str << "rubygem(#{d.name})"
89
+ req_str << " #{v[0].gsub('~>','>=')} #{v[1].to_s}" unless v[0] =~ /!=/
90
+ if v[0] =~ /~>/
91
+ version = v[1].to_s.strip.split('.')
92
+ version[version.size - 1] = "0"
93
+ version[version.size - 2] = (version[version.size - 2].to_i + 1).to_s
94
+ req_str << ", rubygem(#{d.name}) < #{version.join('.')}"
95
+ end
96
+ }
90
97
  }
91
98
  # return string with dependencies
92
99
  req_str.string
93
100
  end
94
101
 
102
+ def conflicts
103
+ conflict_str = StringIO.new
104
+ # set conflicts
105
+ @dependencies.each { |d|
106
+ d.requirement.requirements.each { |v|
107
+ conflict_str << ', ' unless conflict_str.size == 0
108
+ conflict_str << "rubygem(#{d.name}) #{v[0].gsub('!=','=')} #{v[1].to_s}" if v[0] =~ /!=/
109
+ }
110
+ }
111
+ # returns string with conflicts
112
+ conflict_str.string
113
+ end
114
+
95
115
  # return gem provides clause
96
116
  def provides
97
117
  prv_str = StringIO.new
@@ -1,3 +1,3 @@
1
1
  module RGem2Rpm
2
- VERSION = '1.4.2'
2
+ VERSION = '1.4.3'
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.2
5
+ version: 1.4.3
6
6
  platform: ruby
7
7
  authors:
8
8
  - Joao Peixoto