%global scl_name_base perl
%global scl_name_version 516
%global scl %{scl_name_base}%{scl_name_version}
%scl_package %scl
%global install_scl 1
# do not produce empty debuginfo package
%global debug_package %{nil}
Summary: Package that installs %scl
Name: %scl_name
Version: 1.1
Release: 3%{?dist}
License: GPLv2+
Source0: macro-build
Source1: perl.prov.stack
Source2: perl.req.stack
Source3: perl.attr
Source4: perllib.attr
Source5: README
Source6: LICENSE
BuildRequires: help2man
%if 0%{?install_scl}
Requires: %{scl_prefix}perl
%endif
BuildRequires: scl-utils-build
BuildRequires: iso-codes
%description
This is the main package for %scl Software Collection.
%package runtime
Summary: Package that handles %scl Software Collection
Requires: scl-utils
%description runtime
Package shipping essential scripts to work with %scl Software Collection.
%package build
Summary: Package shipping basic build configuration
Requires: scl-utils-build
Requires: %{name}-scldevel = %{version}-%{release}
%description build
Package shipping essential configuration macros to build %scl Software Collection.
%package scldevel
Summary: Package shipping development files for %scl
%description scldevel
Package shipping development files, especially usefull for development of
packages depending on %scl Software Collection.
%prep
%setup -c -T
# This section generates README file from a template and creates man page
# from that file, expanding RPM macros in the template file.
cat >README <<'EOF'
%{expand:%(cat %{SOURCE5})}
EOF
# copy the license file so %%files section sees it
cp %{SOURCE6} .
%build
# generate a helper script that will be used by help2man
cat >h2m_helper <<'EOF'
#!/bin/bash
[ "$1" == "--version" ] && echo "%{scl_name} %{version} Software Collection" || cat README
EOF
chmod a+x h2m_helper
# generate the man page
help2man -N --section 7 ./h2m_helper -o %{scl_name}.7
%install
rm -rf %{buildroot}
mkdir -p %{buildroot}%{_scl_scripts}/root
cat >> %{buildroot}%{_scl_scripts}/enable << EOF
export PATH=%{_bindir}\${PATH:+:\${PATH}}
export LD_LIBRARY_PATH=%{_libdir}\${LD_LIBRARY_PATH:+:\${LD_LIBRARY_PATH}}
export MANPATH=%{_mandir}:\${MANPATH}
EOF
%scl_install
# Add the aditional macros to macros.%%{scl}-config
cat %{SOURCE0} >> %{buildroot}%{_root_sysconfdir}/rpm/macros.%{scl}-config
sed -i 's|@SCL@|%{scl}|g' %{buildroot}%{_root_sysconfdir}/rpm/macros.%{scl}-config
cat >> %{buildroot}%{_root_sysconfdir}/rpm/macros.%{scl_name_base}-scldevel << EOF
%%scl_%{scl_name_base} %{scl}
%%scl_prefix_%{scl_name_base} %{scl_prefix}
EOF
install -D -m 755 %{SOURCE1} %{buildroot}%{_root_prefix}/lib/rpm/perl.prov.stack
install -D -m 755 %{SOURCE2} %{buildroot}%{_root_prefix}/lib/rpm/perl.req.stack
sed -i 's|__SCL_NAME__|%{scl}-perl|g' %{buildroot}%{_root_prefix}/lib/rpm/perl.prov.stack
sed -i 's|__SCL_NAME__|%{scl}-perl|g' %{buildroot}%{_root_prefix}/lib/rpm/perl.req.stack
%if ( 0%{?rhel} && 0%{?rhel} < 7 )
mkdir -p %{buildroot}/usr/lib/rpm/fileattrs/
install -m 644 %{SOURCE3} %{buildroot}%{_root_prefix}/lib/rpm/fileattrs/perl.attr
install -m 644 %{SOURCE4} %{buildroot}%{_root_prefix}/lib/rpm/fileattrs/perllib.attr
%endif
# install generated man page
mkdir -p %{buildroot}%{_mandir}/man7/
install -m 644 %{scl_name}.7 %{buildroot}%{_mandir}/man7/%{scl_name}.7
%files
%files runtime -f filesystem
%doc README LICENSE
%scl_files
%{_mandir}/man7/%{scl_name}.*
%files build
%{_root_sysconfdir}/rpm/macros.%{scl}-config
%files scldevel
%{_root_sysconfdir}/rpm/macros.%{scl_name_base}-scldevel
%{_root_prefix}/lib/rpm/perl.req.stack
%{_root_prefix}/lib/rpm/perl.prov.stack
%if ( 0%{?rhel} && 0%{?rhel} < 7 )
%{_root_prefix}/lib/rpm/fileattrs/perl.attr
%{_root_prefix}/lib/rpm/fileattrs/perllib.attr
%endif
%changelog
* Fri Mar 28 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1.1-3
- Wrong macro in README
- Resolves: rhbz#1061453
* Tue Mar 25 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1.1-2
- Use "-f filesystem" for files section of -runtime on RHEL 7
- Resolves: rhbz#1079938
* Mon Feb 17 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1.1-1
- Introduce README and LICENSE.
- Change version to 1.1.
- Resolves: rhbz#1061453
* Wed Feb 05 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1-21
- Update dependencies of sub-package build
- Resolves: rhbz#1063206
* Mon Jan 20 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1-20
- Changed name of sub-package devel to scldevel
- Added the file macros.%%{scl_name_base}-scldevel
- Resolves: rhbz#1055580
* Mon Jan 20 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1-19
- Rebuilt against new scl-utils
- Resolves: rhbz#1054726
* Tue Jan 14 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1-18
- Moved perl.(prov|req).stack and file*.attr to sub-package devel
- Resolves: rhbz#1052183
* Wed Jan 08 2014 Jitka Plesnikova <jplesnik@redhat.com> - 1-17
- Define macros for tests sub-package
- Resolves: rhbz#1049366
* Mon Nov 25 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-16
- Disable macro perl_bootstrap
* Tue Nov 12 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-15
- Enable macro perl_bootstrap
* Mon Nov 04 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-14
- Override %%__pkgconfig_path to solve problems with invalid perl provides
* Wed Oct 30 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-13
- Update %%scl_package_override
* Wed Oct 30 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-12
- Define %%prep section
- Create macro-build
* Mon Jun 17 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-11
- Disable macro perl_bootstrap
* Thu May 23 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-10
- Update definition of MANPATH (rhbz#966388)
* Tue May 21 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-9
- Do not remove /opt/rh/perl516 to prevent removing of any user data
* Mon May 13 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-8
- Remove the directory /opt/rh/perl516 after uninstalling rpm (rhbz#956215)
* Sun Apr 28 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-7
- Remove extra colon from path definition
* Thu Apr 25 2013 Jitka Plesnikova <jplesnik@redhat.com> - 1-6
- Update setting of environment variable in the script enable
* Wed Feb 6 2013 Jitka Plesnikova <jplesnik@redhat.com> 1-5
- enable macro perl_bootstrap
* Fri Oct 5 2012 Marcela Mašláňová <mmaslano@redhat.com> 1-4
- update to new version of Perl 5.16
- package perl.{prov,req}.stack as executables
* Mon Jul 23 2012 Marcela Mašláňová <mmaslano@redhat.com> 1-3
- change permission from 700 to 644 on perl.{prov,req}
* Tue Mar 6 2012 Marcela Mašláňová <mmaslano@redhat.com> 1.2
- fix dependency on collection *-runtime
* Tue Dec 06 2011 Marcela Mašláňová <mmaslano@redhat.com> 1.1
- initial packaging of meta perl514 package