gem2rpm 0.9.2 → 0.10.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.
- checksums.yaml +7 -0
- data/bin/gem2rpm +1 -1
- data/lib/gem2rpm/distro.rb +8 -1
- data/lib/gem2rpm/specification.rb +3 -1
- data/lib/gem2rpm.rb +2 -1
- data/templates/{fedora-19-rawhide.spec.erb → fedora-19-21.spec.erb} +22 -5
- data/templates/fedora-21-rawhide.spec.erb +123 -0
- metadata +11 -12
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: bce49215defc0e7d4c81d17fd3a63655380e86c6
|
4
|
+
data.tar.gz: b00366c9b428d84f1e654ba802b10727efd8982e
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: a0753b28268269d878f32d0d5e24755cc2919a20f700c249a0a2e92e1c8f3d543a7d34890b128e78cc561fddf26155cba5ed1b5b8f1d82d1ee43a4886ead5474
|
7
|
+
data.tar.gz: f419f27ea39e19a1da0e0f977691196cfe6251e231b6b497ae26fb8c8a086fabc0fdc3b4dc420fd78edf8b5694f655d29c0c23a1b37c43cdb7fd78140c282e6b
|
data/bin/gem2rpm
CHANGED
@@ -109,7 +109,7 @@ gemname = nil
|
|
109
109
|
srpmdir = nil
|
110
110
|
specfile = nil
|
111
111
|
if srpm
|
112
|
-
gemname =
|
112
|
+
gemname = Gem2Rpm::Package.new(gemfile).spec.name
|
113
113
|
srpmdir = `/bin/mktemp -t -d gem2rpm-#{gemname}.XXXXXX`.chomp
|
114
114
|
specfile = File::join(srpmdir, "rubygem-#{gemname}.spec")
|
115
115
|
if output_file.nil?
|
data/lib/gem2rpm/distro.rb
CHANGED
@@ -4,12 +4,19 @@ module Gem2Rpm
|
|
4
4
|
OPENSUSE = :opensuse
|
5
5
|
DEFAULT = :default
|
6
6
|
|
7
|
+
OPEN_MODE = # :nodoc:
|
8
|
+
if Object.const_defined? :Encoding
|
9
|
+
'r:UTF-8'
|
10
|
+
else
|
11
|
+
'r'
|
12
|
+
end
|
13
|
+
|
7
14
|
def self.nature
|
8
15
|
if !release_files.grep(/fedora/).empty?
|
9
16
|
versions = []
|
10
17
|
|
11
18
|
release_files.each do |file|
|
12
|
-
/\d+/ =~ File.open(file,
|
19
|
+
/\d+/ =~ File.open(file, OPEN_MODE).readline
|
13
20
|
versions << Regexp.last_match.to_s if Regexp.last_match
|
14
21
|
end
|
15
22
|
|
@@ -6,7 +6,9 @@ module Gem2Rpm
|
|
6
6
|
class Specification < SimpleDelegator
|
7
7
|
# A long description of gem wrapped to 78 characters.
|
8
8
|
def description
|
9
|
-
|
9
|
+
d = super.to_s.chomp
|
10
|
+
d.gsub!(/([^.])\Z/, "\\1.")
|
11
|
+
Helpers::word_wrap(d, 78) + "\n"
|
10
12
|
end
|
11
13
|
|
12
14
|
# A list of Gem::Dependency objects this gem depends on (includes every
|
data/lib/gem2rpm.rb
CHANGED
@@ -7,7 +7,7 @@ require 'gem2rpm/spec_fetcher'
|
|
7
7
|
require 'gem2rpm/specification'
|
8
8
|
|
9
9
|
module Gem2Rpm
|
10
|
-
Gem2Rpm::VERSION = "0.
|
10
|
+
Gem2Rpm::VERSION = "0.10.0"
|
11
11
|
|
12
12
|
class Exception < RuntimeError; end
|
13
13
|
class DownloadUrlError < Exception; end
|
@@ -33,6 +33,7 @@ module Gem2Rpm
|
|
33
33
|
def Gem2Rpm.convert(fname, template=TEMPLATE, out=$stdout,
|
34
34
|
nongem=true, local=false, doc_subpackage = true)
|
35
35
|
package = Gem2Rpm::Package.new(fname)
|
36
|
+
# Deprecate, kept just for backward compatibility.
|
36
37
|
format = Gem2Rpm::Format.new(package)
|
37
38
|
spec = Gem2Rpm::Specification.new(package.spec)
|
38
39
|
spec.description ||= spec.summary
|
@@ -27,6 +27,13 @@ BuildRequires: rubygems-devel <%= req %>
|
|
27
27
|
<% for req in spec.required_ruby_version -%>
|
28
28
|
BuildRequires: ruby<%= "-devel" unless spec.extensions.empty? %> <%= req %>
|
29
29
|
<% end -%>
|
30
|
+
<% for d in spec.development_dependencies -%>
|
31
|
+
<% unless ["rdoc", "rake", "bundler"].include? d.name -%>
|
32
|
+
<% for req in d.requirement -%>
|
33
|
+
# BuildRequires: rubygem(<%= d.name %>) <%= req %>
|
34
|
+
<% end -%>
|
35
|
+
<% end -%>
|
36
|
+
<% end -%>
|
30
37
|
<% if spec.extensions.empty? -%>
|
31
38
|
BuildArch: noarch
|
32
39
|
<% end -%>
|
@@ -43,7 +50,7 @@ Requires: %{name} = %{version}-%{release}
|
|
43
50
|
BuildArch: noarch
|
44
51
|
|
45
52
|
%description doc
|
46
|
-
Documentation for %{name}
|
53
|
+
Documentation for %{name}.
|
47
54
|
<% end # if doc_subpackage -%>
|
48
55
|
|
49
56
|
%prep
|
@@ -57,24 +64,29 @@ gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec
|
|
57
64
|
# Create the gem as gem install only works on a gem file
|
58
65
|
gem build %{gem_name}.gemspec
|
59
66
|
|
60
|
-
# %%gem_install compiles any C extensions and installs the gem into
|
67
|
+
# %%gem_install compiles any C extensions and installs the gem into ./%%gem_dir
|
61
68
|
# by default, so that we can move it into the buildroot in %%install
|
62
69
|
%gem_install
|
63
70
|
|
64
71
|
%install
|
65
72
|
mkdir -p %{buildroot}%{gem_dir}
|
66
|
-
cp -
|
73
|
+
cp -a .%{gem_dir}/* \
|
67
74
|
%{buildroot}%{gem_dir}/
|
68
75
|
|
69
76
|
<% unless spec.extensions.empty? -%>
|
70
77
|
mkdir -p %{buildroot}%{gem_extdir_mri}/<%= spec.require_paths.first %>
|
71
78
|
# TODO: move the extensions
|
72
79
|
mv %{buildroot}%{gem_instdir}/<%= spec.require_paths.first %>/shared_object.so %{buildroot}%{gem_extdir_mri}/<%= spec.require_paths.first %>/
|
80
|
+
|
81
|
+
<% for ext in spec.extensions -%>
|
82
|
+
# Prevent dangling symlink in -debuginfo (rhbz#878863).
|
83
|
+
rm -rf %{buildroot}%{gem_instdir}/<%= ext.split(File::SEPARATOR).first %>/
|
84
|
+
<% end -%>
|
73
85
|
<% end -%>
|
74
86
|
|
75
87
|
<% unless spec.executables.nil? or spec.executables.empty? -%>
|
76
88
|
mkdir -p %{buildroot}%{_bindir}
|
77
|
-
cp -
|
89
|
+
cp -a .%{_bindir}/* \
|
78
90
|
%{buildroot}%{_bindir}/
|
79
91
|
<% end -%>
|
80
92
|
|
@@ -82,6 +94,12 @@ cp -pa .%{_bindir}/* \
|
|
82
94
|
find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x
|
83
95
|
<% end -%>
|
84
96
|
|
97
|
+
# Run the test suite
|
98
|
+
%check
|
99
|
+
pushd .%{gem_instdir}
|
100
|
+
|
101
|
+
popd
|
102
|
+
|
85
103
|
%files
|
86
104
|
%dir %{gem_instdir}
|
87
105
|
<% unless spec.executables.nil? or spec.executables.empty? -%>
|
@@ -92,7 +110,6 @@ find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x
|
|
92
110
|
<% end -%>
|
93
111
|
%{gem_libdir}
|
94
112
|
<% unless spec.extensions.empty? -%>
|
95
|
-
%exclude %{gem_instdir}/ext
|
96
113
|
%{gem_extdir_mri}
|
97
114
|
<% end -%>
|
98
115
|
<% unless doc_subpackage -%>
|
@@ -0,0 +1,123 @@
|
|
1
|
+
# Generated from <%= package.spec.file_name %> by gem2rpm -*- rpm-spec -*-
|
2
|
+
%global gem_name <%= spec.name %>
|
3
|
+
|
4
|
+
Name: rubygem-%{gem_name}
|
5
|
+
Version: <%= spec.version %>
|
6
|
+
Release: 1%{?dist}
|
7
|
+
Summary: <%= spec.summary.gsub(/\.$/, "") %>
|
8
|
+
Group: Development/Languages
|
9
|
+
License: <%= spec.licenses.join(" and ") %>
|
10
|
+
<% if spec.homepage -%>
|
11
|
+
URL: <%= spec.homepage %>
|
12
|
+
<% end -%>
|
13
|
+
Source0: <%= download_path %>%{gem_name}-%{version}.gem
|
14
|
+
BuildRequires: ruby(release)
|
15
|
+
<% for req in spec.required_rubygems_version -%>
|
16
|
+
BuildRequires: rubygems-devel <%= req %>
|
17
|
+
<% end -%>
|
18
|
+
<% for req in spec.required_ruby_version -%>
|
19
|
+
BuildRequires: ruby<%= "-devel" unless spec.extensions.empty? %> <%= req %>
|
20
|
+
<% end -%>
|
21
|
+
<% for d in spec.development_dependencies -%>
|
22
|
+
<% unless ["rdoc", "rake", "bundler"].include? d.name -%>
|
23
|
+
<% for req in d.requirement -%>
|
24
|
+
# BuildRequires: rubygem(<%= d.name %>) <%= req %>
|
25
|
+
<% end -%>
|
26
|
+
<% end -%>
|
27
|
+
<% end -%>
|
28
|
+
<% if spec.extensions.empty? -%>
|
29
|
+
BuildArch: noarch
|
30
|
+
<% end -%>
|
31
|
+
|
32
|
+
%description
|
33
|
+
<%= spec.description %>
|
34
|
+
|
35
|
+
<% if doc_subpackage -%>
|
36
|
+
%package doc
|
37
|
+
Summary: Documentation for %{name}
|
38
|
+
Group: Documentation
|
39
|
+
Requires: %{name} = %{version}-%{release}
|
40
|
+
BuildArch: noarch
|
41
|
+
|
42
|
+
%description doc
|
43
|
+
Documentation for %{name}.
|
44
|
+
<% end # if doc_subpackage -%>
|
45
|
+
|
46
|
+
%prep
|
47
|
+
gem unpack %{SOURCE0}
|
48
|
+
|
49
|
+
%setup -q -D -T -n %{gem_name}-%{version}
|
50
|
+
|
51
|
+
gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec
|
52
|
+
|
53
|
+
%build
|
54
|
+
# Create the gem as gem install only works on a gem file
|
55
|
+
gem build %{gem_name}.gemspec
|
56
|
+
|
57
|
+
# %%gem_install compiles any C extensions and installs the gem into ./%%gem_dir
|
58
|
+
# by default, so that we can move it into the buildroot in %%install
|
59
|
+
%gem_install
|
60
|
+
|
61
|
+
%install
|
62
|
+
mkdir -p %{buildroot}%{gem_dir}
|
63
|
+
cp -a .%{gem_dir}/* \
|
64
|
+
%{buildroot}%{gem_dir}/
|
65
|
+
|
66
|
+
<% unless spec.extensions.empty? -%>
|
67
|
+
mkdir -p %{buildroot}%{gem_extdir_mri}
|
68
|
+
cp -a .%{gem_extdir_mri}/{gem.build_complete,*.so} %{buildroot}%{gem_extdir_mri}/
|
69
|
+
|
70
|
+
<% for ext in spec.extensions -%>
|
71
|
+
# Prevent dangling symlink in -debuginfo (rhbz#878863).
|
72
|
+
rm -rf %{buildroot}%{gem_instdir}/<%= ext.split(File::SEPARATOR).first %>/
|
73
|
+
<% end -%>
|
74
|
+
<% end -%>
|
75
|
+
|
76
|
+
<% unless spec.executables.nil? or spec.executables.empty? -%>
|
77
|
+
mkdir -p %{buildroot}%{_bindir}
|
78
|
+
cp -pa .%{_bindir}/* \
|
79
|
+
%{buildroot}%{_bindir}/
|
80
|
+
<% end -%>
|
81
|
+
|
82
|
+
<% unless spec.executables.empty? -%>
|
83
|
+
find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x
|
84
|
+
<% end -%>
|
85
|
+
|
86
|
+
# Run the test suite
|
87
|
+
%check
|
88
|
+
pushd .%{gem_instdir}
|
89
|
+
|
90
|
+
popd
|
91
|
+
|
92
|
+
%files
|
93
|
+
%dir %{gem_instdir}
|
94
|
+
<% unless spec.executables.nil? or spec.executables.empty? -%>
|
95
|
+
<% for f in spec.executables -%>
|
96
|
+
%{_bindir}/<%= f %>
|
97
|
+
<% end -%>
|
98
|
+
%{gem_instdir}/bin
|
99
|
+
<% end -%>
|
100
|
+
%{gem_libdir}
|
101
|
+
<% unless spec.extensions.empty? -%>
|
102
|
+
%{gem_extdir_mri}
|
103
|
+
<% end -%>
|
104
|
+
<% unless doc_subpackage -%>
|
105
|
+
%doc %{gem_docdir}
|
106
|
+
<% for f in spec.extra_rdoc_files -%>
|
107
|
+
%doc %{gem_instdir}/<%= f %>
|
108
|
+
<% end -%>
|
109
|
+
<% end -%>
|
110
|
+
%exclude %{gem_cache}
|
111
|
+
%{gem_spec}
|
112
|
+
|
113
|
+
<% if doc_subpackage -%>
|
114
|
+
%files doc
|
115
|
+
%doc %{gem_docdir}
|
116
|
+
<% for f in spec.extra_rdoc_files -%>
|
117
|
+
%doc %{gem_instdir}/<%= f %>
|
118
|
+
<% end -%>
|
119
|
+
<% end # if doc_subpackage -%>
|
120
|
+
|
121
|
+
%changelog
|
122
|
+
* <%= Time.now.strftime("%a %b %d %Y") %> <%= packager %> - <%= spec.version %>-1
|
123
|
+
- Initial package
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gem2rpm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.10.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- David Lutterkort
|
@@ -10,10 +9,10 @@ authors:
|
|
10
9
|
autorequire:
|
11
10
|
bindir: bin
|
12
11
|
cert_chain: []
|
13
|
-
date:
|
12
|
+
date: 2014-05-05 00:00:00.000000000 Z
|
14
13
|
dependencies: []
|
15
|
-
description:
|
16
|
-
|
14
|
+
description: " Generate source rpms and rpm spec files from a Ruby Gem. \n The spec
|
15
|
+
file tries to follow the gem as closely as possible\n"
|
17
16
|
email: gem2rpm-devel@rubyforge.org
|
18
17
|
executables:
|
19
18
|
- gem2rpm
|
@@ -34,7 +33,8 @@ files:
|
|
34
33
|
- lib/gem2rpm/specification.rb
|
35
34
|
- templates/default.spec.erb
|
36
35
|
- templates/fedora-17-18.spec.erb
|
37
|
-
- templates/fedora-19-
|
36
|
+
- templates/fedora-19-21.spec.erb
|
37
|
+
- templates/fedora-21-rawhide.spec.erb
|
38
38
|
- templates/fedora.spec.erb
|
39
39
|
- templates/opensuse.spec.erb
|
40
40
|
- LICENSE
|
@@ -42,26 +42,25 @@ files:
|
|
42
42
|
- AUTHORS
|
43
43
|
homepage: https://github.com/lutter/gem2rpm/
|
44
44
|
licenses: []
|
45
|
+
metadata: {}
|
45
46
|
post_install_message:
|
46
47
|
rdoc_options: []
|
47
48
|
require_paths:
|
48
49
|
- lib
|
49
50
|
required_ruby_version: !ruby/object:Gem::Requirement
|
50
|
-
none: false
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - '>='
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
56
|
-
none: false
|
57
56
|
requirements:
|
58
|
-
- -
|
57
|
+
- - '>='
|
59
58
|
- !ruby/object:Gem::Version
|
60
59
|
version: '0'
|
61
60
|
requirements: []
|
62
61
|
rubyforge_project:
|
63
|
-
rubygems_version: 1.
|
62
|
+
rubygems_version: 2.1.11
|
64
63
|
signing_key:
|
65
|
-
specification_version:
|
64
|
+
specification_version: 4
|
66
65
|
summary: Generate rpm specfiles from gems
|
67
66
|
test_files: []
|