diff --git a/lib/gem2rpm/rpm_dependency.rb b/lib/gem2rpm/rpm_dependency.rb index 8cfaee6..a81fb0c 100644 --- a/lib/gem2rpm/rpm_dependency.rb +++ b/lib/gem2rpm/rpm_dependency.rb @@ -47,5 +47,11 @@ def to_rpm end rpm_dependencies.join("\n") end + + # Returns string with entry suitable for RPM .spec file with RPM 4.14+. + def to_rich_rpm + rpm_dependencies = requirement.map { |v| v.to_s.empty? ? name : "#{name} #{v}" } + rpm_dependencies.size == 1 ? rpm_dependencies.first : "(#{rpm_dependencies.join(' with ')})" + end end end diff --git a/templates/fedora-27-rawhide.spec.erb b/templates/fedora-27-rawhide.spec.erb index 7ad641b..897c16e 100644 --- a/templates/fedora-27-rawhide.spec.erb +++ b/templates/fedora-27-rawhide.spec.erb @@ -22,9 +22,9 @@ BuildRequires: <%= requirement "ruby#{'-devel' unless spec.extensions.empty?}", # https://fedoraproject.org/wiki/Packaging:C_and_C++#BuildRequires_and_Requires BuildRequires: gcc <% end -%> -<%= development_dependencies.reject do |d| - ["rdoc", "rake", "bundler"].include? d.name -end.virtualize.with_requires.comment_out.to_rpm -%> +<% for req in development_dependencies.reject { |d| ["rdoc", "rake", "bundler"].include? d.name }.virtualize -%> +# BuildRequires: <%= req.to_rich_rpm %> +<% end -%> <% if spec.extensions.empty? -%> BuildArch: noarch <% end -%>