[rubygem-gherkin] More fixes for gherkin.

Chris Lalancette clalance at fedoraproject.org
Tue Jun 28 16:56:43 UTC 2011


commit 621b2e94ef03140a5188f44ff4a3e5a17f8048b4
Author: Chris Lalancette <clalance at redhat.com>
Date:   Tue Jun 28 12:56:00 2011 -0400

    More fixes for gherkin.
    
    With these in place, we can successfully require 'gherkin'.
    
    Signed-off-by: Chris Lalancette <clalance at redhat.com>

 gherkin-2.3.3-fix-gemspec.patch        |   75 ++++++++++++++++++++++++++++++++
 gherkin-2.3.3-require-json-1.4.3.patch |   11 +++++
 rubygem-gherkin.spec                   |   14 +++++-
 3 files changed, 97 insertions(+), 3 deletions(-)
---
diff --git a/gherkin-2.3.3-fix-gemspec.patch b/gherkin-2.3.3-fix-gemspec.patch
new file mode 100644
index 0000000..a7cdafa
--- /dev/null
+++ b/gherkin-2.3.3-fix-gemspec.patch
@@ -0,0 +1,75 @@
+diff -urp gherkin-2.3.3.orig/gherkin.gemspec gherkin-2.3.3/gherkin.gemspec
+--- gherkin-2.3.3.orig/gherkin.gemspec	2011-06-28 12:15:54.673427697 -0400
++++ gherkin-2.3.3/gherkin.gemspec	2011-06-28 12:18:31.295458209 -0400
+@@ -1,39 +1,47 @@
+ # -*- encoding: utf-8 -*-
+-gherkin_dir = Dir.pwd =~ /gherkin\/tmp/ ? File.expand_path("../../../..", Dir.pwd) : File.expand_path("..", __FILE__)
+-$LOAD_PATH.unshift File.join(gherkin_dir, 'lib')
+-require "gherkin/version"
+ 
+ Gem::Specification.new do |s|
+   s.name        = "gherkin"
+-  s.version     = Gherkin::VERSION
++  s.version     = "2.3.3"
+   s.authors     = ["Mike Sassak", "Gregory Hnatiuk", "Aslak Hellesøy"]
+   s.description = "A fast Gherkin lexer/parser based on the Ragel State Machine Compiler."
+-  s.summary     = "gherkin-#{Gherkin::VERSION}"
++  s.summary     = "gherkin-2.3.3"
+   s.email       = "cukes at googlegroups.com"
+   s.homepage    = "http://github.com/aslakhellesoy/gherkin"
+ 
+   s.rubygems_version   = "1.3.7"
+   s.default_executable = "gherkin"
+ 
+-  s.files            = `git ls-files`.split("\n")
+-  s.test_files       = `git ls-files -- {spec,features}/*`.split("\n")
+-  s.executables      = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
++  specfiles           = Dir[ "spec/gherkin/fixtures/*.feature",
++                             "spec/gherkin/fixtures/*.json",
++                             "spec/gherkin/formatter/*.rb", "spec/gherkin/*.rb",
++                             "spec/gherkin/parser/parser_spec.rb",
++                             "spec/gherkin/shared/*.rb", "spec/*.rb" ]
++  featurefiles        = Dir[ "features/*.feature", "features/*.rb" ]
++
++  s.files             = Dir[ "Gemfile", "History.txt", "LICENSE",
++                             "README.rdoc", "Rakefile", "VERSION",
++                             "build_native_gems.sh", "cucumber.yml",
++                             "gherkin.gemspec", "lib/*.rb", "lib/*.yml",
++                             "lib/gherkin/formatter/*.rb",
++                             "lib/gherkin/lexer/*.rb",
++                             "lib/gherkin/listener/*.rb",
++                             "lib/gherkin/native/*.rb",
++                             "lib/gherkin/parser/*.txt",
++                             "lib/gherkin/parser/*.rb",
++                             "lib/gherkin/rb_lexer/README.rdoc", "ragel/*.erb",
++                             "tasks/bench/*.rb",
++                             "tasks/*.rake" ] + specfiles + featurefiles
++  s.test_files        = specfiles + featurefiles
++
+   s.extra_rdoc_files = ["LICENSE", "README.rdoc", "History.txt"]
+   s.rdoc_options     = ["--charset=UTF-8"]
+   s.require_path     = "lib"
+ 
+-  s.files -= Dir['ikvm/**/*']
+-  s.files -= Dir['java/**/*']
+-  s.files -= Dir['ext/**/*']
+-  s.files -= Dir['lib/gherkin.jar']
+-  s.files -= Dir['lib/**/*.dll']
+-  s.files -= Dir['lib/**/*.bundle']
+-  s.files -= Dir['lib/**/*.so']
+-  
+   if ENV['GEM_PLATFORM']
+     puts "GEM_PLATFORM:#{ENV['GEM_PLATFORM']}"
+   end
+-  s.platform = ENV['GEM_PLATFORM'] if ENV['GEM_PLATFORM'] 
++  s.platform = ENV['GEM_PLATFORM'] if ENV['GEM_PLATFORM']
+   case s.platform.to_s
+   when /java/
+     s.files += ['lib/gherkin.jar']
+@@ -58,4 +66,4 @@ Gem::Specification.new do |s|
+   # Only needed by Cucumber. Remove when Cucumber no longer needs those.
+   s.add_development_dependency('term-ansicolor', '~> 1.0.5')
+   s.add_development_dependency('builder', '~> 3.0.0')
+-end
+\ No newline at end of file
++end
diff --git a/gherkin-2.3.3-require-json-1.4.3.patch b/gherkin-2.3.3-require-json-1.4.3.patch
new file mode 100644
index 0000000..c8780e6
--- /dev/null
+++ b/gherkin-2.3.3-require-json-1.4.3.patch
@@ -0,0 +1,11 @@
+--- gherkin-2.3.3/gherkin.gemspec.orig	2011-06-28 12:50:42.818751772 -0400
++++ gherkin-2.3.3/gherkin.gemspec	2011-06-28 12:50:52.173677468 -0400
+@@ -56,7 +56,7 @@ Gem::Specification.new do |s|
+     s.add_development_dependency('rake-compiler', '~> 0.7.5')
+   end
+ 
+-  s.add_dependency('json', '~> 1.4.6')
++  s.add_dependency('json', '~> 1.4.3')
+ 
+   s.add_development_dependency('rake', '~> 0.8.7')
+   s.add_development_dependency('bundler', '~> 1.0.7')
diff --git a/rubygem-gherkin.spec b/rubygem-gherkin.spec
index e4dee1b..c554404 100644
--- a/rubygem-gherkin.spec
+++ b/rubygem-gherkin.spec
@@ -7,16 +7,19 @@
 Summary: Fast Gherkin lexer/parser
 Name: rubygem-%{gemname}
 Version: 2.3.3
-Release: 2%{?dist}
+Release: 3%{?dist}
 Group: Development/Languages
 License: MIT
 URL: http://github.com/aslakhellesoy/gherkin
 Source0: http://rubygems.org/gems/%{gemname}-%{version}.gem
 Patch1: gherkin-remove-hash-line.patch
 Patch2: gherkin-extconf-flags.patch
+Patch3: gherkin-2.3.3-fix-gemspec.patch
+Patch4: gherkin-2.3.3-require-json-1.4.3.patch
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 Requires: ruby(abi) = %{rubyabi}
 Requires: rubygems
+Requires: rubygem(json)
 BuildRequires: ruby(rubygems)
 BuildRequires: ruby-devel
 Provides: rubygem(%{gemname}) = %{version}
@@ -40,7 +43,8 @@ gem unpack %{SOURCE0}
 cd %{gemname}-%{version}
 %patch1 -p1
 %patch2 -p1
-
+%patch3 -p1
+%patch4 -p1
 
 %build
 pushd %{_builddir}/%{name}-%{version}/%{gemname}-%{version}
@@ -89,7 +93,7 @@ cp -a %{_builddir}/%{name}-%{version}/%{gemname}-%{version}/rdoc %{buildroot}%{g
 cp -a %{_builddir}/%{name}-%{version}/%{gemname}-%{version}/ri %{buildroot}%{gemdir}/doc/%{gemname}-%{version}
 
 # clean out any gitignore
-find %{_builddir}/%{name}-%{version}/%{gemname}-%{version} -iname '.gitignore' -exec rm -f {} \;
+find %{buildroot} -iname '.gitignore' -exec rm -f {} \;
 
 %clean
 rm -rf %{buildroot}
@@ -121,6 +125,10 @@ rm -rf %{buildroot}
 %{gemdir}/doc/%{gemname}-%{version}
 
 %changelog
+* Tue Jun 08 2011 Chris Lalancette <clalance at redhat.com> - 2.3.3-3
+- Significantly revamped spec to conform more to fedora standards
+- Fix build on Rawhide
+
 * Wed Feb 09 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.3.3-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
 


More information about the scm-commits mailing list