# template: scl %{?scl:%scl_package rubygem-%{gem_name}} %{!?scl:%global pkg_name %{name}} %global gem_name rkerberos %global gem_require_name %{gem_name} Name: %{?scl_prefix}rubygem-%{gem_name} Version: 0.1.5 Release: 21%{?dist} Summary: A Ruby interface for the the Kerberos library Group: Development/Languages License: Artistic 2.0 URL: http://github.com/domcleal/rkerberos Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem Patch0: rkerberos-0.1.5-gcc8-argnum-fix.patch # start specfile generated dependencies Requires: %{?scl_prefix_ruby}ruby(release) Requires: %{?scl_prefix_ruby}ruby Requires: %{?scl_prefix_ruby}ruby(rubygems) BuildRequires: %{?scl_prefix_ruby}ruby(release) BuildRequires: %{?scl_prefix_ruby}ruby-devel BuildRequires: %{?scl_prefix_ruby}rubygems-devel BuildRequires: %{?scl_prefix}rubygem(rake-compiler) BuildRequires: krb5-devel BuildRequires: gcc Provides: %{?scl_prefix}rubygem(%{gem_name}) = %{version} # end specfile generated dependencies %description The rkerberos library is an interface for the Kerberos 5 network authentication protocol. It wraps the Kerberos C API. %package doc Summary: Documentation for %{pkg_name} Group: Documentation Requires: %{?scl_prefix}%{pkg_name} = %{version}-%{release} BuildArch: noarch %description doc Documentation for %{pkg_name}. %prep %{?scl:scl enable %{scl} - << \EOF} gem unpack %{SOURCE0} %{?scl:EOF} %setup -q -D -T -n %{gem_name}-%{version} %patch0 -p1 %{?scl:scl enable %{scl} - << \EOF} gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec %{?scl:EOF} %build # Create the gem as gem install only works on a gem file %{?scl:scl enable %{scl} - << \EOF} gem build %{gem_name}.gemspec %{?scl:EOF} # %%gem_install compiles any C extensions and installs the gem into ./%%gem_dir # by default, so that we can move it into the buildroot in %%install %{?scl:scl enable %{scl} - << \EOF} %gem_install %{?scl:EOF} %install mkdir -p %{buildroot}%{gem_dir} cp -pa .%{gem_dir}/* \ %{buildroot}%{gem_dir}/ mkdir -p %{buildroot}%{gem_extdir_mri} cp -a .%{gem_extdir_mri}/{gem.build_complete,*.so} %{buildroot}%{gem_extdir_mri}/ # rake-compiler isn't needed on the system itself sed -i '/rake-compiler/ s/runtime/development/' %{buildroot}/%{gem_spec} # Prevent dangling symlink in -debuginfo (rhbz#878863). rm -rf %{buildroot}%{gem_instdir}/ext/ %check %{?scl:scl enable %{scl} - << \EOF} # Ideally, this would be something like this: # GEM_PATH="%{buildroot}%{gem_dir}:$GEM_PATH" ruby -e "require '%{gem_require_name}'" # But that fails to find native extensions on EL8, so we fake the structure that ruby expects mkdir gem_ext_test cp -a %{buildroot}%{gem_dir} gem_ext_test/ mkdir -p gem_ext_test/gems/extensions/%{_arch}-%{_target_os}/$(ruby -r rbconfig -e 'print RbConfig::CONFIG["ruby_version"]')/ cp -a %{buildroot}%{gem_extdir_mri} gem_ext_test/gems/extensions/%{_arch}-%{_target_os}/$(ruby -r rbconfig -e 'print RbConfig::CONFIG["ruby_version"]')/ GEM_PATH="./gem_ext_test/gems:$GEM_PATH" ruby -e "require '%{gem_require_name}'" rm -rf gem_ext_test %{?scl:EOF} %files %dir %{gem_instdir} %exclude %{gem_instdir}/ext %{gem_extdir_mri} %{gem_instdir}/CHANGES %license %{gem_instdir}/LICENSE %{gem_instdir}/MANIFEST %exclude %{gem_cache} %{gem_spec} %files doc %doc %{gem_docdir} %{gem_instdir}/Gemfile %doc %{gem_instdir}/README.md %{gem_instdir}/Rakefile %{gem_instdir}/rkerberos.gemspec %{gem_instdir}/test %changelog * Mon Dec 18 2023 Evgeni Golov - 0.1.5-21 - Explicitly BuildRequire gcc * Thu Mar 11 2021 Eric D. Helms - 0.1.5-20 - Rebuild against rh-ruby27 * Tue Dec 08 2020 Evgeni Golov - 0.1.5-19 - Rebuild against new libkadm5 in EL 8.3 * Thu Apr 16 2020 Ewoud Kohl van Wijngaarden - 0.1.5-18 - Add check section to test native library - Remove dependency on rake-compiler * Wed Apr 08 2020 Zach Huntington-Meath - 0.1.5-17 - Bump release to build for el8 * Fri Sep 13 2019 Eric D. Helms 0.1.5-16 - Add rubygem-rkerberos generated by gem2rpm using the scl template