[rubygem-dynect_rest/el6: 10/14] Update spec to make maintaining multiple branches easier

Russell Harrison rharrison at fedoraproject.org
Fri Aug 30 20:51:04 UTC 2013


commit 37eb7d71704eff55411b430c09dd7ca435f7d0ff
Author: Russell Harrison <rharrison at fedoraproject.org>
Date:   Wed Aug 28 08:10:19 2013 -0400

    Update spec to make maintaining multiple branches easier

 rubygem-dynect_rest.spec |  129 +++++++++++++++++++++++++++++-----------------
 1 files changed, 82 insertions(+), 47 deletions(-)
---
diff --git a/rubygem-dynect_rest.spec b/rubygem-dynect_rest.spec
index d93d9b8..2ca0e26 100644
--- a/rubygem-dynect_rest.spec
+++ b/rubygem-dynect_rest.spec
@@ -1,38 +1,54 @@
 # Generated from dynect_rest-0.4.0.gem by gem2rpm -*- rpm-spec -*-
-%global gemname dynect_rest
-
-%global gemdir %(ruby -rubygems -e 'puts Gem::dir' 2>/dev/null)
-%global geminstdir %{gemdir}/gems/%{gemname}-%{version}
+%if 0%{?rhel} <= 6 && 0%{?fedora} <= 16
+%global gem_dir %(ruby -rubygems -e 'puts Gem::dir' 2>/dev/null)
+%global gem_instdir %{gem_dir}/gems/%{gem_name}-%{version}
+%global gem_libdir %{gem_instdir}/lib
+%global gem_cache %{gem_dir}/cache/%{gem_name}-%{version}.gem
+%global gem_spec %{gem_dir}/specifications/%{gem_name}-%{version}.gemspec
+%global gem_docdir %{gem_dir}/doc/%{gem_name}-%{version}
+%global gem_extdir %{_libdir}/gems/exts/%{gem_name}-%{version}
+%global gem_extdir_mri %{_libdir}/gems/ruby/%{gem_name}-%{version}
+%endif
+
+%global gem_name dynect_rest
 %global rubyabi 1.8
 
-Name:       rubygem-%{gemname}
-Version:    0.4.3
-Release:    1%{?dist}
-Summary:    Dynect REST API library
-
-Group: Development/Languages
-
-License:    ASL 2.0 
-URL:        http://github.com/adamhjk/dynect_rest
-Source0:    http://rubygems.org/gems/%{gemname}-%{version}.gem
-
-BuildArch:  noarch
-BuildRequires:  ruby(abi) = %{rubyabi}
-BuildRequires:  ruby(rubygems) 
-BuildRequires:  ruby 
-Requires:       ruby(abi) = %{rubyabi}
-Requires:       ruby(rubygems) 
-Requires:       ruby 
-Requires:       rubygem(rest-client) 
-Requires:       rubygem(json) 
-Requires:       rubygem(json) 
-Requires:       rubygem(rest-client) 
-Provides:       rubygem(%{gemname}) = %{version}
+Name:           rubygem-%{gem_name}
+Version:        0.4.3
+Release:        2%{?dist}
+Summary:        Dynect REST API library
+
+Group:          Development/Languages
+
+License:        ASL 2.0
+URL:            http://github.com/adamhjk/dynect_rest
+Source0:        http://rubygems.org/gems/%{gem_name}-%{version}.gem
+
+BuildArch:      noarch
+%if 0%{?rhel} <= 6 && 0%{?fedora} <= 18
+Requires: ruby(abi) >= %{rubyabi}
+BuildRequires: ruby(abi) >= %{rubyabi}
+%else
+Requires: ruby(release)
+BuildRequires: ruby(release)
+%endif
+%if 0%{?rhel} <= 6 && 0%{?fedora} <= 16
+BuildRequires:  rubygems
+%else
+BuildRequires:  rubygems-devel
+%endif
+BuildRequires:  ruby
+Requires:       ruby(rubygems)
+Requires:       ruby
+Requires:       rubygem(rest-client)
+Requires:       rubygem(json)
+Requires:       rubygem(json)
+Requires:       rubygem(rest-client)
+Provides:       rubygem(%{gem_name}) = %{version}
 
 %description
 Use the Dynect services REST API
 
-
 %package doc
 Summary:    Documentation for %{name}
 Group:      Documentation
@@ -42,38 +58,57 @@ BuildArch:  noarch
 %description doc
 Documentation for %{name}
 
-
 %prep
+gem unpack %{SOURCE0}
+
+%setup -q -D -T -n  %{gem_name}-%{version}
+
+gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec
 
 %build
+mkdir -p .%{gem_dir}
+
+# Create the gem as gem install only works on a gem file
+gem build %{gem_name}.gemspec
+
+# gem install installs into a directory.  We set that to be a local
+# directory so that we can move it into the buildroot in install
+gem install -V \
+        --local \
+        --install-dir ./%{gem_dir} \
+        --force \
+        --rdoc \
+        %{gem_name}-%{version}.gem
 
 %install
-mkdir -p %{buildroot}%{gemdir}
-gem install --local --install-dir %{buildroot}%{gemdir} \
-            --force %{SOURCE0}
+mkdir -p %{buildroot}%{gem_dir}
+cp -a ./%{gem_dir}/* %{buildroot}%{gem_dir}/
 
-rm -f %{buildroot}%{geminstdir}/.document
-rm -f %{buildroot}%{geminstdir}/.rspec
+rm -f %{buildroot}%{gem_instdir}/.document
+rm -f %{buildroot}%{gem_instdir}/.rspec
 
 %files
-%dir %{geminstdir}
-%{geminstdir}/lib
-%{geminstdir}/spec
-%{geminstdir}/dynect_rest.gemspec
-%{geminstdir}/Gemfile*
-%{geminstdir}/Rakefile
+%dir %{gem_instdir}
+%{gem_libdir}
+%{gem_instdir}/spec
+%{gem_instdir}/dynect_rest.gemspec
+%{gem_instdir}/Gemfile*
+%{gem_instdir}/Rakefile
 
-%{gemdir}/cache/%{gemname}-%{version}.gem
-%{gemdir}/specifications/%{gemname}-%{version}.gemspec
+%{gem_cache}
+%{gem_spec}
 
 %files doc
-%doc %{gemdir}/doc/%{gemname}-%{version}
-%doc %{geminstdir}/LICENSE
-%doc %{geminstdir}/README.rdoc
-%doc %{geminstdir}/example.rb
-%doc %{geminstdir}/VERSION
+%doc %{gem_docdir}
+%doc %{gem_instdir}/LICENSE
+%doc %{gem_instdir}/README.rdoc
+%doc %{gem_instdir}/example.rb
+%doc %{gem_instdir}/VERSION
 
 %changelog
+* Tue Aug 27 2013 Russell Harrison <rharriso at redhat.com> 0.4.3-2
+- Update spec to make maintaining multiple branches easier
+
 * Fri Apr 13 2012 Russell Harrison <rharriso at redhat.com> 0.4.3-1
 - Update to 0.4.3
 


More information about the scm-commits mailing list