summaryrefslogtreecommitdiffstats
path: root/rubygem-rugged.spec
diff options
context:
space:
mode:
Diffstat (limited to 'rubygem-rugged.spec')
-rw-r--r--rubygem-rugged.spec145
1 files changed, 145 insertions, 0 deletions
diff --git a/rubygem-rugged.spec b/rubygem-rugged.spec
new file mode 100644
index 0000000..0d2ef14
--- /dev/null
+++ b/rubygem-rugged.spec
@@ -0,0 +1,145 @@
+%global gem_name rugged
+
+Summary: Rugged is a Ruby binding to the libgit2 library
+Name: rubygem-%{gem_name}
+Version: 0.19.0
+Release: 4%{?dist}
+Group: Development/Languages
+License: MIT
+URL: http://github.com/libgit2/rugged
+Source0: http://rubygems.org/gems/%{gem_name}-%{version}.gem
+# The test directory for this version is incomplete due to gemspec bug.
+# Upstream has removed test and Rakefile from gem in future versions.
+# https://github.com/libgit2/rugged/issues/262
+# https://github.com/libgit2/rugged/pull/263
+# This is how we are getting the tests (Source1)
+# git clone git@github.com:libgit2/rugged.git
+# cd rugged/
+# git checkout v0.19.0
+# tar cfz rugged-0.19.0-test.tgz test/ Rakefile
+Source1: %{gem_name}-%{version}-test.tgz
+# Remove the bundled libraries from gemspec
+Patch1: rubygem-rugged-0.19.0-remove-vendor.patch
+Requires: ruby(rubygems)
+%if 0%{?fedora} >= 19
+Requires: ruby(release)
+BuildRequires: ruby(release)
+%else
+Requires: ruby(abi) = 1.9.1
+BuildRequires: ruby(abi) = 1.9.1
+%endif
+BuildRequires: git
+BuildRequires: libgit2-devel
+BuildRequires: ruby-devel
+BuildRequires: rubygem(minitest)
+BuildRequires: rubygems-devel
+BuildRequires: zlib-devel
+Provides: rubygem(%{gem_name}) = %{version}
+%{?rubygems_default_filter}
+
+%description
+Rugged is a Ruby bindings to the libgit2W C Git library. This is
+for testing and using the libgit2 library in a language that is awesome.
+
+
+%package doc
+Summary: Documentation for %{name}
+Group: Documentation
+Requires: %{name} = %{version}-%{release}
+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
+
+rm -rf vendor
+%patch1 -p1
+
+%build
+export LIBGIT2_PATH="/usr/"
+gem build %{gem_name}.gemspec
+%gem_install
+
+%install
+mkdir -p %{buildroot}%{gem_dir}
+cp -a ./%{gem_dir}/* %{buildroot}%{gem_dir}/
+
+
+# move C extensions to the extdir.
+mkdir -p %{buildroot}%{gem_extdir_mri}/lib/%{gem_name}/
+mv %{buildroot}%{gem_instdir}/lib/%{gem_name}/rugged.so %{buildroot}%{gem_extdir_mri}/lib/%{gem_name}/
+
+# Clear up empty files
+echo "#file" > %{buildroot}%{gem_instdir}/test/fixtures/attr/dir/file
+echo "#file" > %{buildroot}%{gem_instdir}/test/fixtures/attr/sub/dir/file
+echo "#dir" > %{buildroot}%{gem_instdir}/test/fixtures/attr/sub/sub/dir
+
+# We don't need those files anymore.
+rm -rf %{buildroot}%{gem_instdir}/ext/
+
+%check
+pushd .%{gem_instdir}
+tar xfz %{SOURCE1}
+export LANG="en_US.UTF-8"
+git config --global user.name John Doe
+testrb -Ilib test/*test.rb
+popd
+
+%files
+%doc %{gem_instdir}/LICENSE
+%doc %{gem_instdir}/README.md
+%dir %{gem_instdir}
+%{gem_libdir}
+%{gem_extdir_mri}
+%exclude %{gem_cache}
+%{gem_spec}
+
+%files doc
+%doc %{gem_docdir}
+%{gem_instdir}/Rakefile
+%{gem_instdir}/test
+
+%changelog
+* Mon Sep 09 2013 Troy Dawson <tdawson@redhat.com> - 0.19.0-4
+- Update comments about test source
+- Fix zero length files in test
+
+* Fri Sep 06 2013 Troy Dawson <tdawson@redhat.com> - 0.19.0-3
+- Added full test directory
+- use minitest for tests
+- Added .so file provides filter
+
+* Thu Aug 22 2013 Troy Dawson <tdawson@redhat.com> - 0.19.0-2
+- remove vendor directory and patch gemspec to reflect that
+- export LIBGIT2_PATH before building to use system git2
+
+* Mon Jul 22 2013 Troy Dawson <tdawson@redhat.com> - 0.19.0-1
+- Updated to latest release - 0.19.0
+- Cleaned up bad tests
+- Comment out check, due to bad exit code from successful tests
+
+* Mon Jul 22 2013 Troy Dawson <tdawson@redhat.com> - 0.19.0-1
+- Updated to latest release - 0.19.0
+- Cleaned up bad tests
+
+* Tue Jul 09 2013 Troy Dawson <tdawson@redhat.com> - 0.16.0-3
+- Change build section to use current ruby guidelines
+- move lib/rugged/rugged.so instead of ext/rugged/rugged.so
+- move rugged.so into the correct directory
+- cleanup test, now runs without problems
+
+* Tue Jul 02 2013 Troy Dawson <tdawson@redhat.com> - 0.16.0-2
+- Make macro's more consistant
+- Remove extra rugged.so
+- Set correct permissions for rugged.so
+- Run test (thanks to Axilleas Pipinellis for this)
+- Add libgit2-devel to buildrequires - this causes the build to
+ use system libgit2 instead of bundled version.
+
+* Mon Mar 18 2013 Troy Dawson <tdawson@redhat.com> - 0.16.0-1
+- Initial package