4.3.2. The ror40-rubygem-bcrypt-ruby Package
Below is a commented example of the ror40-rubygem-bcrypt-ruby package spec file. This package provides the bcrypt-ruby gem. For more information on bcrypt-ruby, see the following website:
Note that the only significant difference between the ror40-rubygem-bcrypt-ruby package spec file and a normal Software Collection package spec file is the following:
- The
BuildRequires
tags are prefixed with%{?scl_prefix_ruby}
instead of%{scl_prefix}
.
%{!?scl:%global pkg_name %{name}} %{?scl:%scl_package rubygem-%{gem_name}} # Generated from bcrypt-ruby-2.1.2.gem by gem2rpm -*- rpm-spec -*- %global gem_name bcrypt-ruby Summary: Wrapper around bcrypt() password hashing algorithm Name: %{?scl:%scl_prefix}rubygem-%{gem_name} Version: 3.1.2 Release: 4%{?dist} Group: Development/Languages # ext/* - Public Domain # spec/TestBCrypt.java - ISC License: MIT and Public Domain and ISC URL: http://bcrypt-ruby.rubyforge.org Source0: http://rubygems.org/downloads/%{gem_name}-%{version}.gem Requires: %{?scl_prefix_ruby}ruby(rubygems) Requires: %{?scl_prefix_ruby}ruby(release) BuildRequires: %{?scl_prefix_ruby}rubygems-devel BuildRequires: %{?scl_prefix_ruby}ruby-devel BuildRequires: %{?scl_prefix}rubygem(rspec) Provides: %{?scl_prefix}rubygem(%{gem_name}) = %{version} %description bcrypt() is a sophisticated and secure hash algorithm designed by The OpenBSD project for hashing passwords. bcrypt-ruby provides a simple, humane wrapper for safely handling passwords. %prep %setup -q -c -T %build export CONFIGURE_ARGS="--with-cflags='%{optflags}'" %{?scl:scl enable %{scl} - << \EOF} %gem_install -n %{SOURCE0} %{?scl:EOF} %install rm -rf %{buildroot} mkdir -p %{buildroot}%{gem_dir} mkdir -p %{buildroot}%{gem_extdir_mri}/lib cp -a .%{gem_dir}/* %{buildroot}%{gem_dir}/ mv %{buildroot}%{gem_libdir}/bcrypt_ext.so %{buildroot}%{gem_extdir_mri}/lib %check pushd .%{gem_instdir} %{?scl:scl enable %{scl} - << \EOF} rspec spec %{?scl:EOF} popd %files %dir %{gem_instdir} %exclude %{gem_instdir}/.* %{gem_instdir}/bcrypt-ruby.gemspec %doc %{gem_instdir}/CHANGELOG %doc %{gem_instdir}/COPYING %exclude %{gem_instdir}/ext %{gem_instdir}/Gemfile* %{gem_instdir}/Rakefile %doc %{gem_instdir}/README.md %{gem_libdir} %{gem_extdir_mri} %{gem_instdir}/spec %doc %{gem_docdir} %exclude %{gem_cache} %{gem_spec} %changelog * Fri Mar 21 2014 John Doe <jdoe@example.com> - 3.1.2-4 - Initial package.