108 lines
3.6 KiB
RPMSpec
108 lines
3.6 KiB
RPMSpec
%global gem_name prawn
|
|
Summary: A fast and nimble PDF generator for Ruby
|
|
Name: rubygem-%{gem_name}
|
|
Version: 2.4.0
|
|
Release: 1
|
|
License: (GPLv2 or GPLv3 or Ruby) and APAFML
|
|
URL: https://github.com/prawnpdf/prawn
|
|
Source0: http://rubygems.org/gems/prawn-%{version}.gem
|
|
# git clone --no-checkout https://github.com/prawnpdf/prawn.git
|
|
# cd prawn && git archive -v -o prawn-2.4.0-data.txz 2.4.0 data
|
|
Source1: %{gem_name}-%{version}-data.txz
|
|
BuildRequires: ruby(release) rubygems-devel >= 1.3.6 rubygem(rspec) >= 3.0
|
|
BuildRequires: rubygem(ttfunk) >= 1.7 rubygem(pdf-reader) >= 1.4.0
|
|
BuildRequires: rubygem(pdf-inspector) >= 1.2.1 rubygem(pdf-core) >= 0.9.0
|
|
BuildRequires: rubygem-bigdecimal rubygem(matrix)
|
|
BuildArch: noarch
|
|
|
|
%description
|
|
Prawn is a pure Ruby PDF generation library that provides a lot of great
|
|
functionality while trying to remain simple and reasonably performant.
|
|
Here are some of the important features we provide:
|
|
- Vector drawing support, including lines, polygons, curves, ellipses, etc.
|
|
- Extensive text rendering support, including flowing text and limited inline
|
|
formatting options.
|
|
- Support for both PDF builtin fonts as well as embedded TrueType fonts
|
|
- A variety of low level tools for basic layout needs, including a simple
|
|
grid system
|
|
- PNG and JPG image embedding, with flexible scaling options
|
|
- Reporting tools for rendering complex data tables, with pagination support
|
|
- Security features including encryption and password protection
|
|
- Tools for rendering repeatable content (i.e headers, footers, and page
|
|
numbers)
|
|
- Comprehensive internationalization features, including full support for UTF-8
|
|
based fonts, right-to-left text rendering, fallback font support,
|
|
and extension points for customizable text wrapping.
|
|
- Support for PDF outlines for document navigation
|
|
- Low level PDF features, allowing users to create custom extensions
|
|
by dropping down all the way to the PDF object tree layer.
|
|
(Mostly useful to those with knowledge of the PDF specification)
|
|
- Lots of other stuff!
|
|
|
|
%package doc
|
|
Summary: Documentation for %{name}
|
|
Requires: %{name} = %{version}-%{release}
|
|
BuildArch: noarch
|
|
%description doc
|
|
Documentation for %{name}
|
|
|
|
%prep
|
|
%setup -q -n %{gem_name}-%{version} -b1
|
|
# matrix is bundled gem since Ruby 3.1.
|
|
# https://github.com/prawnpdf/prawn/commit/3658d5125c3b20eb11484c3b039ca6b89dc7d1b7
|
|
%gemspec_add_dep -g matrix '~> 0.4'
|
|
|
|
%build
|
|
gem build ../%{gem_name}-%{version}.gemspec
|
|
%gem_install
|
|
|
|
%install
|
|
mkdir -p %{buildroot}%{gem_dir}
|
|
cp -a .%{gem_dir}/* \
|
|
%{buildroot}%{gem_dir}/
|
|
|
|
%check
|
|
pushd .%{gem_instdir}
|
|
rm -rf data
|
|
ln -s %{_builddir}/data .
|
|
|
|
sed -i "/^require 'bundler'/d" ./spec/spec_helper.rb
|
|
sed -i "/^Bundler.setup/d" ./spec/spec_helper.rb
|
|
|
|
# manual_builder dependency is not yet
|
|
mv spec/prawn_manual_spec.rb{,.disable}
|
|
|
|
rspec spec
|
|
popd
|
|
|
|
%files
|
|
%dir %{gem_instdir}
|
|
%{gem_libdir}
|
|
%exclude %{gem_cache}
|
|
%{gem_spec}
|
|
%doc %{gem_instdir}/LICENSE
|
|
%doc %{gem_instdir}/COPYING
|
|
%doc %{gem_instdir}/GPLv2
|
|
%doc %{gem_instdir}/GPLv3
|
|
%exclude %{gem_instdir}/%{gem_name}.gemspec
|
|
%{gem_instdir}/data/fonts/*.afm
|
|
%exclude %{gem_instdir}/.yardopts
|
|
|
|
%files doc
|
|
%doc %{gem_docdir}
|
|
%{gem_instdir}/Gemfile
|
|
%{gem_instdir}/Rakefile
|
|
%{gem_instdir}/spec
|
|
%doc %{gem_instdir}/manual
|
|
%doc %{gem_instdir}/data/fonts/MustRead.html
|
|
|
|
%changelog
|
|
* Tue Jan 17 2023 caodongxia <caodongxia@h-partners.com> - 2.4.0-1
|
|
- update to 2.4.0
|
|
|
|
* Wed Feb 23 2022 chenchen <chen_aka_jan@163.com> - 2.2.2-2
|
|
- fix build error by upgrading to ruby3
|
|
|
|
* Tue Aug 4 2020 wangchong <wangchong56@huawei.com> - 2.2.2-1
|
|
- package init
|