rubygem-diff-lcs/rubygem-diff-lcs.spec
2012-08-17 16:24:46 +02:00

129 lines
3.6 KiB
RPMSpec

%global gem_name diff-lcs
%global rubyabi 1.9.1
Summary: Provide a list of changes between two sequenced collections
Name: rubygem-%{gem_name}
Version: 1.1.3
Release: 1%{?dist}
Group: Development/Languages
License: GPLv2+ or Ruby or Artistic
URL: http://rubyforge.org/projects/ruwiki/
Source0: http://gems.rubyforge.org/gems/%{gem_name}-%{version}.gem
Requires: ruby(abi) = %{rubyabi}
Requires: rubygems
BuildRequires: rubygems-devel
BuildRequires: %{_bindir}/rspec
BuildRequires: ruby(abi) = %{rubyabi}
BuildArch: noarch
Provides: rubygem(%{gem_name}) = %{version}
%description
Diff::LCS is a port of Algorithm::Diff that uses the McIlroy-Hunt longest
common subsequence (LCS) algorithm to compute intelligent differences between
two sequenced enumerable containers. The implementation is based on Mario I.
Wolczko's Smalltalk version (1.2, 1993) and Ned Konz's Perl version
(Algorithm::Diff).
%package doc
Summary: Documentation for %{name}
Group: Documentation
Requires: %{name} = %{version}-%{release}
%description doc
This package contains documentation for %{name}.
%prep
%setup -q -c -T
mkdir -p .%{gem_dir}
gem install --local --install-dir .%{gem_dir} \
--bindir .%{_bindir} \
--force %{SOURCE0}
%build
%install
mkdir -p %{buildroot}%{gem_dir}
mkdir -p %{buildroot}/%{_bindir}
cp -a .%{gem_dir}/* %{buildroot}%{gem_dir}
cp -a .%{_bindir}/* %{buildroot}/%{_bindir}
find %{buildroot}%{gem_instdir}/bin -type f |xargs chmod a+x
# Remove the bad shebangs.
# https://github.com/halostatue/diff-lcs/pull/9
# We strip bad shebangs (/usr/bin/env) instead of fixing them
# since these files are not executable anyways
find %{buildroot}%{gem_dir} \( -name '*.rb' -o -name 'Rakefile' \) \
-exec grep -q '^#!' '{}' \; -print |while read F
do
awk '/^#!/ {if (FNR == 1) next;} {print}' $F >chopped
touch -r $F chopped
mv chopped $F
done
# Fix shebangs.
sed -i 's|^#!.*|#!/usr/bin/ruby|' %{buildroot}%{gem_instdir}/bin/{htmldiff,ldiff}
%check
pushd .%{gem_instdir}
rspec spec
popd
%files
%{_bindir}/ldiff
%{_bindir}/htmldiff
%dir %{gem_instdir}
%exclude %{gem_instdir}/.*
%doc %{gem_instdir}/License.rdoc
%doc %{gem_instdir}/docs
%{gem_instdir}/bin
%{gem_libdir}
%exclude %{gem_cache}
%{gem_spec}
%files doc
%doc %{gem_docdir}
%doc %{gem_instdir}/History.rdoc
%doc %{gem_instdir}/Manifest.txt
%{gem_instdir}/Rakefile
%{gem_instdir}/diff-lcs.gemspec
%doc %{gem_instdir}/README.rdoc
%{gem_instdir}/spec
%changelog
* Fri Aug 17 2012 Vít Ondruch <vondruch@redhat.com> - 1.1.3-1
- Update to diff-lcs 1.1.3.
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.2-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Sun Jan 22 2012 Mamoru Tasaka <mtasaka@fedoraproject.org> - 1.1.2-7
- Rebuild against ruby 1.9
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.2-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Fri Jun 26 2009 Lubomir Rintel (Good Data) <lubo.rintel@gooddata.com> - 1.1.2-3
- Get rid of duplicate files (thanks to Mamoru Tasaka)
* Mon Jun 08 2009 Lubomir Rintel (Good Data) <lubo.rintel@gooddata.com> - 1.1.2-2
- Depend on ruby(abi)
- Replace defines with globals
* Fri Jun 05 2009 Lubomir Rintel (Good Data) <lubo.rintel@gooddata.com> - 1.1.2-1
- Package generated by gem2rpm
- Strip useless shebangs
- Fix up License