[rubygem-ferret] Update to ferret 0.11.8.4. Rebuilt for Ruby 1.9.3.

Vít Ondruch vondruch at fedoraproject.org
Wed May 16 08:23:47 UTC 2012


commit 0bbcb78ac1d4dd86d5722810f75ef98be0ecf97d
Author: Vít Ondruch <vondruch at redhat.com>
Date:   Wed May 16 10:21:06 2012 +0200

    Update to ferret 0.11.8.4.
    Rebuilt for Ruby 1.9.3.

 .gitignore                                         |    1 +
 ...0.11.8.4-Block-variables-has-local-scopes.patch |   29 ++++
 ...et-0.11.8.4-Fix-compatibily-with-minitest.patch |   24 +++
 ...8.4-make-rake-just-development-dependency.patch |   11 ++
 rubygem-ferret.spec                                |  167 +++++++++++---------
 sources                                            |    2 +-
 6 files changed, 155 insertions(+), 79 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 34c80cb..e61d6a1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
 ferret-0.11.6.gem
+/ferret-0.11.8.4.gem
diff --git a/rubygem-ferret-0.11.8.4-Block-variables-has-local-scopes.patch b/rubygem-ferret-0.11.8.4-Block-variables-has-local-scopes.patch
new file mode 100644
index 0000000..f050bb1
--- /dev/null
+++ b/rubygem-ferret-0.11.8.4-Block-variables-has-local-scopes.patch
@@ -0,0 +1,29 @@
+From 9c0b8770470c3a5f623f0727f9552834f4ae8abb Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <v.ondruch at tiscali.cz>
+Date: Wed, 16 May 2012 10:55:16 +0300
+Subject: [PATCH] Block variables has local scopes.
+
+Fix to be compatible with Ruby 1.9.
+---
+ ruby/bin/ferret-browser |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/ruby/bin/ferret-browser b/ruby/bin/ferret-browser
+index add19c5..790ec0d 100755
+--- a/ruby/bin/ferret-browser
++++ b/ruby/bin/ferret-browser
+@@ -16,9 +16,9 @@ opts = OptionParser.new do |opts|
+   opts.separator "Specific Options:"
+ 
+   opts.on("-h", "--host HOSTNAME",
+-          "Host for web server to bind to (default is all IPs)") { |conf.host| }
++          "Host for web server to bind to (default is all IPs)") { |host| conf.host = host }
+   opts.on("-p", "--port NUM",
+-          "Port for web server (defaults to #{conf.port})") { |conf.port| }
++          "Port for web server (defaults to #{conf.port})") { |port| conf.port = port }
+   opts.on("-s", "--server NAME",
+           "Server to force (#{SERVER_OPTIONS.join(', ')}).") { |s| conf.server = s.to_sym }
+ 
+-- 
+1.7.10.1
+
diff --git a/rubygem-ferret-0.11.8.4-Fix-compatibily-with-minitest.patch b/rubygem-ferret-0.11.8.4-Fix-compatibily-with-minitest.patch
new file mode 100644
index 0000000..eb30971
--- /dev/null
+++ b/rubygem-ferret-0.11.8.4-Fix-compatibily-with-minitest.patch
@@ -0,0 +1,24 @@
+From fa3e1bee3f49b767278957068096261079aaf5a6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <v.ondruch at tiscali.cz>
+Date: Tue, 15 May 2012 14:40:24 +0300
+Subject: [PATCH] Fix compatibily with minitest.
+
+---
+ ruby/test/unit/tc_field_symbol.rb |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ruby/test/unit/tc_field_symbol.rb b/ruby/test/unit/tc_field_symbol.rb
+index 9229934..b1ba00c 100644
+--- a/ruby/test/unit/tc_field_symbol.rb
++++ b/ruby/test/unit/tc_field_symbol.rb
+@@ -21,6 +21,6 @@ class FieldSymbolTest < Test::Unit::TestCase
+       assert_equal(field_type, :sym.__send__(field_type).type)
+     end
+ 
+-    assert(:string, :sym.integer.byte.float.string.type)
++    assert(:string, :sym.integer.byte.float.string.type.to_s)
+   end
+ end
+-- 
+1.7.10.1
+
diff --git a/rubygem-ferret-0.11.8.4-make-rake-just-development-dependency.patch b/rubygem-ferret-0.11.8.4-make-rake-just-development-dependency.patch
new file mode 100644
index 0000000..819a1ef
--- /dev/null
+++ b/rubygem-ferret-0.11.8.4-make-rake-just-development-dependency.patch
@@ -0,0 +1,11 @@
+--- specifications/ferret-0.11.8.4.gemspec
++++ specifications/ferret-0.11.8.4.gemspec
+@@ -24,7 +24,7 @@
+     s.specification_version = 3
+ 
+     if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
+-      s.add_runtime_dependency(%q<rake>, [">= 0"])
++      s.add_development_dependency(%q<rake>, [">= 0"])
+     else
+       s.add_dependency(%q<rake>, [">= 0"])
+     end
diff --git a/rubygem-ferret.spec b/rubygem-ferret.spec
index 13ebcf6..d7c3b49 100644
--- a/rubygem-ferret.spec
+++ b/rubygem-ferret.spec
@@ -1,29 +1,31 @@
-%define     gemdir      %(ruby -rubygems -e 'puts Gem::dir' 2>/dev/null)
-%define     gemname     ferret
-%define     geminstdir  %{gemdir}/gems/%{gemname}-%{version}
-
-%{!?ruby_sitearch:  %define ruby_sitearch   %(ruby -rrbconfig -e "puts Config::CONFIG['sitearchdir']")}
-%{!?ruby_sitelib:  %define ruby_sitelib   %(ruby -rrbconfig -e "puts Config::CONFIG['sitelibdir']")}
-
-Summary:        Full-featured text search engine library
-Name:           rubygem-%{gemname}
-Version:        0.11.6
-Release:        12%{?dist}
-Group:          Development/Languages
+%global gem_name ferret
+%global rubyabi 1.9.1
+
+Summary: Full-featured text search engine library
+Name: rubygem-%{gem_name}
+Version: 0.11.8.4
+Release: 1%{?dist}
+Group: Development/Languages
 # License from
 # - MIT-LICENSE: MIT
 # - ext/posh.c: 3-clause BSD
 # - ext/q_parser.c: GPLv2+
-License:        MIT and BSD
-URL:            http://rubyforge.org/projects/ferret/
-Source0:        http://gems.rubyforge.org/gems/%{gemname}-%{version}.gem
-BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-Requires:       rubygems
-Requires:       ruby(abi) = 1.8
-BuildRequires:  rubygems
-BuildRequires:  ruby-devel
-BuildRequires:  rubygem(rake)
-Provides:       rubygem(%{gemname}) = %{version}
+License: MIT and BSD
+URL: http://github.com/jkraemer/ferret
+Source0: http://rubygems.org/gems/%{gem_name}-%{version}.gem
+# Fix compatibility with minitest. Already accepted by upstream.
+# https://github.com/jkraemer/ferret/pull/3
+Patch0: rubygem-ferret-0.11.8.4-Fix-compatibily-with-minitest.patch
+# Rake should not be runtime requirement.
+# https://github.com/jkraemer/ferret/pull/5
+Patch1: rubygem-ferret-0.11.8.4-make-rake-just-development-dependency.patch
+Patch2: rubygem-ferret-0.11.8.4-Block-variables-has-local-scopes.patch
+Requires: ruby(abi) = %{rubyabi}
+Requires: ruby(rubygems)
+BuildRequires: rubygems-devel
+BuildRequires: ruby-devel
+BuildRequires: rubygem(minitest)
+Provides: rubygem(%{gem_name}) = %{version}
 
 %description
 Ferret is a high-performance, full-featured text search
@@ -31,84 +33,93 @@ engine library written entirely in pure Ruby (with an
 optional C extension). It is inspired by the Java Lucene
 Project.
 
-%package    doc
-Summary:    Documentation for %{name}
-Group:      Documentation
-Requires:   %{name} = %{version}-%{release}
+%package doc
+Summary: Documentation for %{name}
+Group: Documentation
+Requires: %{name} = %{version}-%{release}
+BuildArch: noarch
 
-%description    doc
+%description doc
 This package contains documentation for %{name}.
 
-#%package devel
-#Requires:       rubygem-%{gemname} = %{version}-%{release}
-#Group:          Development/Languages
-#Summary:        Development files for rubygem-ferret
-
-#%description devel
-#Ferret is a high-performance, full-featured text search
-#engine library written entirely in pure Ruby (with an
-#optional C extension). It is inspired by the Java Lucene
-#Project. These are the devel files.
-
 %prep
 %setup -q -c -T
+mkdir -p .%{gem_dir}
+export CONFIGURE_ARGS="--with-cflags='%{optflags}'"
+gem install --local --install-dir .%{gem_dir} \
+            --bindir .%{_bindir} \
+            -V \
+            --force %{SOURCE0}
+
+pushd .%{gem_instdir}
+%patch0 -p2
+%patch2 -p2
+popd
+
+pushd .%{gem_dir}
+%patch1
+popd
 
 %build
-mkdir -p ./%{gemdir}
-export CONFIGURE_ARGS="--with-cflags='%{optflags}'"
-gem install \
-    --local \
-    --install-dir ./%{gemdir} \
-    -V --force \
-    %{SOURCE0}
 
 %install
-rm -rf %{buildroot}
-mkdir -p %{buildroot}%{gemdir}
-cp -a ./%{gemdir}/* %{buildroot}%{gemdir}
+mkdir -p %{buildroot}%{gem_dir}
+cp -a .%{gem_dir}/* \
+        %{buildroot}%{gem_dir}/
+
+mkdir -p %{buildroot}%{gem_extdir}/lib
+mv %{buildroot}%{gem_instdir}/lib/ferret_ext.so %{buildroot}%{gem_extdir}/lib/
+
+mkdir -p %{buildroot}%{_bindir}
+cp -a .%{_bindir}/* \
+        %{buildroot}%{_bindir}/
 
-install -d -m0755 %{buildroot}%{ruby_sitearch}
-mv %{buildroot}%{geminstdir}/lib/ferret_ext.so %{buildroot}%{ruby_sitearch}
+find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x
 
-# You know ferret_ext.so needs to be 755 for find-debuginfo.sh to find it
-chmod 0755 %{buildroot}%{ruby_sitearch}/ferret_ext.so
+# Remove executable flags (fix rpmlint warnings).
+find .%{gem_instdir}/ext -type f | xargs chmod a-x
+find %{buildroot}%{gem_instdir}/test -type f | xargs chmod a-x
+chmod a-x %{buildroot}%{gem_instdir}/Rakefile
 
-rm -rf %{buildroot}%{geminstdir}/ext
-mkdir -p %{buildroot}/%{_bindir}
-mv %{buildroot}%{gemdir}/bin/* %{buildroot}/%{_bindir}
-rmdir %{buildroot}%{gemdir}/bin
 
 %check
-# Tests fail on ppc64, so make it fail softly
-pushd .%{geminstdir}
-rake test_units || :
+pushd .%{gem_instdir}
+# Disable buffer overflow failing test
+# https://github.com/jkraemer/ferret/issues/2
+sed -i '67d' test/unit/index/tc_index_writer.rb
+
+ruby test/test_all.rb
+popd
 
-%clean
-rm -rf %{buildroot}
 
 %files
-%defattr(-, root, root, -)
-%doc %{geminstdir}/CHANGELOG
-%doc %{geminstdir}/MIT-LICENSE
-%doc %{geminstdir}/README
-%doc %{geminstdir}/TODO
-%doc %{geminstdir}/TUTORIAL
+%dir %{gem_instdir}
+%doc %{gem_instdir}/MIT-LICENSE
 %{_bindir}/ferret-browser
-%dir %{geminstdir}
-%{geminstdir}/lib
-%{geminstdir}/bin
-%{gemdir}/cache/%{gemname}-%{version}.gem
-%{gemdir}/specifications/%{gemname}-%{version}.gemspec
-%{ruby_sitearch}/ferret_ext.so
+%{gem_instdir}/bin
+%{gem_libdir}
+%exclude %{gem_instdir}/ext
+%{gem_extdir}
+%exclude %{gem_cache}
+%{gem_spec}
 
 %files doc
-%defattr(-,root,root,-)
-%{gemdir}/doc/%{gemname}-%{version}/
-%{geminstdir}/Rakefile
-%{geminstdir}/setup.rb
-%{geminstdir}/test/
+%doc %{gem_docdir}
+%doc %{gem_instdir}/CHANGELOG
+%doc %{gem_instdir}/README
+%doc %{gem_instdir}/RELEASE_CHANGES
+%doc %{gem_instdir}/RELEASE_NOTES
+%doc %{gem_instdir}/TODO
+%doc %{gem_instdir}/TUTORIAL
+%{gem_instdir}/Rakefile
+%{gem_instdir}/setup.rb
+%{gem_instdir}/test/
 
 %changelog
+* Tue May 15 2012 Vít Ondruch <vondruch at redhat.com> - 0.11.8.4-1
+- Update to ferret 0.11.8.4.
+- Rebuilt for Ruby 1.9.3.
+
 * Sat Jan 14 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0.11.6-12
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
 
diff --git a/sources b/sources
index 4894348..964f8eb 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-f26e531d3c0da085d7461a3648e2974f  ferret-0.11.6.gem
+10e1e8477ea4a35cbedc46fa7b8d7e0d  ferret-0.11.8.4.gem


More information about the scm-commits mailing list