File rubygem-sprockets3.spec of Package rubygem-sprockets3
# Generated from sprockets-2.4.5.gem by gem2rpm -*- rpm-spec -*-
%global gem_name sprockets
Name: rubygem-%{gem_name}3
Version: 3.7.2
Release: 1%{?dist}
Summary: Rack-based asset packaging system
License: MIT
URL: https://github.com/rails/sprockets
Source0: https://github.com/rails/%{gem_name}/archive/v%{version}/%{gem_name}-%{version}.tar.gz
Patch0: rubygem-sprockets3-fix-test-install.patch
Patch1: rubygem-sprockets3-kwargs.patch
BuildRequires: ruby(release)
BuildRequires: rubygems-devel
BuildRequires: ruby >= 1.9.3
BuildRequires: rubygem(concurrent-ruby)
BuildRequires: rubygem(coffee-script)
BuildRequires: rubygem(ejs)
BuildRequires: rubygem(execjs)
BuildRequires: rubygem(minitest)
BuildRequires: rubygem(nokogiri)
BuildRequires: rubygem(rack-test)
BuildRequires: rubygem(rake)
BuildRequires: rubygem(sass)
BuildRequires: rubygem(uglifier)
BuildRequires: help2man
BuildRequires: %{_bindir}/node
BuildArch: noarch
%description
Sprockets is a Rack-based asset packaging system that concatenates and serves
JavaScript, CoffeeScript, CSS, LESS, Sass, and SCSS.
%package doc
Summary: Documentation for %{name}
Requires: %{name} = %{version}-%{release}
BuildArch: noarch
%description doc
Documentation for %{name}.
%prep
%setup -q -n %{gem_name}-%{version}
%patch0 -p1
%patch1 -p1
%build
gem build %{gem_name}.gemspec
%gem_install
# For some reason, symlink is installed incorrectly
%{__rm} -f .%{gem_instdir}/test/fixtures/default/symlink
%{__ln_s} mobile .%{gem_instdir}/test/fixtures/default/symlink
%install
mkdir -p %{buildroot}%{gem_dir}
cp -a .%{gem_dir}/* \
%{buildroot}%{gem_dir}/
mkdir -p %{buildroot}%{_bindir}
cp -a .%{_bindir}/%{gem_name} \
%{buildroot}%{_bindir}/%{gem_name}3
find %{buildroot}%{gem_instdir}/bin -type f | xargs chmod a+x
# Turn `sprockets --help` into man page
export GEM_PATH="%{buildroot}/%{gem_dir}:%{gem_dir}"
mkdir -p %{buildroot}%{_mandir}/man1
help2man --no-discard-stderr -N -s1 -o %{buildroot}%{_mandir}/man1/%{gem_name}3.1 \
%{buildroot}/usr/share/gems/gems/%{gem_name}-%{version}/bin/%{gem_name}
# Run the test suite
%check
pushd .%{gem_instdir}
# We don't enable rubygem(closure-compiler).
# https://bugzilla.redhat.com/show_bug.cgi?id=1353473
mv test/test_closure_compressor.rb{,.disabled}
mv lib/sprockets/autoload/closure.rb{,.disabled}
sed -i '/:Closure/ s/^/#/' lib/sprockets/autoload.rb
# We don't have rubygem(eco) yet.
mv test/test_eco_processor.rb{,.disabled}
mv lib/sprockets/autoload/eco.rb{,.disabled}
sed -i '/:Eco/ s/^/#/' lib/sprockets/autoload.rb
sed -i '/test "eco templates" do/,/^ end/ s/^/#/' test/test_environment.rb
# We don't have rubygem(yui-compressor) yet.
# https://bugzilla.redhat.com/show_bug.cgi?id=725768
mv test/test_yui_compressor.rb{,.disabled}
mv lib/sprockets/autoload/yui.rb{,.disabled}
sed -i '/:YUI/ s/^/#/' lib/sprockets/autoload.rb
# Required by TestPathUtils#test_find_upwards test.
touch Gemfile
RUBYOPT=-Ilib:test ruby -e 'Dir.glob "./test/**/test_*.rb", &method(:require)'
popd
%files
%dir %{gem_instdir}
%{_bindir}/sprockets3
%license %{gem_instdir}/LICENSE
%{gem_instdir}/bin
%{gem_libdir}
%exclude %{gem_cache}
%{gem_spec}
%{_mandir}/man1/%{gem_name}3.1*
%files doc
%doc %{gem_docdir}
%doc %{gem_instdir}/CHANGELOG.md
%doc %{gem_instdir}/README.md
%{gem_instdir}/test