rubygem-sinatra/rubygem-sinatra.spec

90 lines
2.7 KiB
RPMSpec
Raw Normal View History

2020-08-21 09:54:11 +08:00
%global gem_name sinatra
%{?_with_bootstrap: %global bootstrap 1}
Summary: Ruby-based web application framework
Name: rubygem-%{gem_name}
Version: 2.0.3
Release: 2
2020-08-21 09:54:11 +08:00
License: MIT
URL: http://www.sinatrarb.com/
Source0: https://rubygems.org/gems/sinatra-%{version}.gem
Source1: https://github.com/sinatra/sinatra/archive/v%{version}.tar.gz
BuildRequires: rubygems-devel
%if ! 0%{?bootstrap}
BuildRequires: rubygem(rack) >= 2.0 rubygem(rack-protection) = %{version} rubygem(tilt)
2020-08-24 09:24:51 +08:00
BuildRequires: rubygem(mustermann) rubygem(rack-test) rubygem(minitest) > 5
2020-08-21 09:54:11 +08:00
%endif
Epoch: 1
BuildArch: noarch
%description
Sinatra is a DSL intended for quickly creating web-applications in Ruby
with minimal effort.
2020-08-24 09:24:51 +08:00
%package help
2020-08-21 09:54:11 +08:00
Summary: Documentation for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
2020-08-24 09:24:51 +08:00
Provides: %{name}-doc = %{version}-%{release}
Obsoletes: %{name}-doc < %{version}-%{release}
%description help
2020-08-21 09:54:11 +08:00
This package contains documentation for %{name}.
%prep
gem unpack %{SOURCE0}
%setup -q -D -T -n %{gem_name}-%{version}
gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec
%build
gem build %{gem_name}.gemspec
%gem_install
%install
mkdir -p %{buildroot}%{gem_dir}
cp -rv .%{gem_dir}/* %{buildroot}%{gem_dir}
sed -i -e 's|^#!/usr/bin/env ruby|#!/usr/bin/ruby|' \
%{buildroot}%{gem_instdir}/examples/*.rb
%check
%if ! 0%{?bootstrap}
pushd .%{gem_instdir}
tar xzvf %{SOURCE1}
cd %{gem_name}-%{version}
for FILE in $(grep -rl '^require.*bundler.*' test/); do
sed -i "/^require 'bundler.*'/ s/^/#/" ${FILE}
done
mv test/integration_test.rb{,.disabled}
#solve test error due to rubygem-rack 2.2.0+ changes
sed -i '160,162d' test/static_test.rb
sed -i '159a\assert(' test/static_test.rb
sed -i '160a\response.status == 200 || response.status == 206,' test/static_test.rb
2020-08-21 09:54:11 +08:00
ruby -e 'Dir.glob "./test/*_test.rb", &method(:require)'
popd
%endif
%files
%dir %{gem_instdir}
%exclude %{gem_instdir}/.*
%license %{gem_instdir}/LICENSE
%{gem_libdir}
%exclude %{gem_instdir}/sinatra.gemspec
%exclude %{gem_cache}
%{gem_spec}
2020-08-24 09:24:51 +08:00
%files help
2020-08-21 09:54:11 +08:00
%doc %{gem_docdir}
%doc %{gem_instdir}/AUTHORS.md
%doc %{gem_instdir}/CHANGELOG.md
%doc %{gem_instdir}/CONTRIBUTING.md
%{gem_instdir}/Gemfile
%doc %{gem_instdir}/MAINTENANCE.md
%doc %{gem_instdir}/README*.md
%{gem_instdir}/Rakefile
%doc %{gem_instdir}/SECURITY.md
%{gem_instdir}/VERSION
%{gem_instdir}/examples
%changelog
* Wed Feb 10 2021 Ge Wang <wangge20@huawei.com> - 2.0.3-2
- solve test error due to rubygem-rack update to 2.2.0+
2020-08-24 09:24:51 +08:00
* Sat Aug 22 2020 liyanan <liyanan32@huawei.com> - 2.0.3-1
- package init