%global gem_name cucumber-gherkin
Name:                rubygem-gherkin
Version:             22.0.0
Release:             1
Summary:             Fast Gherkin lexer/parser
License:             MIT
URL:                 https://github.com/cucumber/gherkin-ruby
Source0:             https://rubygems.org/gems/%{gem_name}-%{version}.gem
Source1:             https://github.com/cucumber/gherkin-ruby/archive/v%{version}.tar.gz
BuildRequires:       ruby(release) rubygems-devel ruby rubygem(rspec) jq rubygem(cucumber-messages)
BuildArch:           noarch
Provides:            rubygem-cucumber-gherkin = %{version}-%{release}
Obsoletes:           rubygem-cucumber-gherkin < %{version}-%{release}

%description
A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.

%package doc
Summary:             Documentation for %{name}
Requires:            %{name} = %{version}-%{release}
BuildArch:           noarch

%description doc
Documentation for %{name}.

%prep
%setup -q -n %{gem_name}-%{version} -b 1

%gemspec_remove_dep -g cucumber-messages "~> 17.1", ">= 17.1.1"
%gemspec_add_dep -g cucumber-messages ">= 17.0"

%build
gem build ../%{gem_name}-%{version}.gemspec
%gem_install

%install
mkdir -p %{buildroot}%{gem_dir}
cp -a .%{gem_dir}/* \
        %{buildroot}%{gem_dir}/
mkdir -p %{buildroot}%{_bindir}
cp -a .%{_bindir}/* \
        %{buildroot}%{_bindir}/
find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x

%check
pushd .%{gem_instdir}
ln -s %{_builddir}/gherkin-ruby-%{version}/testdata testdata
rspec spec
popd

%files
%dir %{gem_instdir}
%{_bindir}/gherkin-ruby
%{_bindir}/gherkin
%license %{gem_instdir}/LICENSE
%{gem_instdir}/bin
%{gem_libdir}
%exclude %{gem_cache}
%{gem_spec}

%files doc
%doc %{gem_docdir}
%doc %{gem_instdir}/README.md
%{gem_instdir}/spec

%changelog
* Mon Jan 9 2023 liyanan <liyanan32@h-partners.com> - 22.0.0-1
- Update to 22.0.0

* Tue Aug 18 2020 tuShenmei <tushenmei@huawei.com> - 5.1.0-1
- package init