Blame SPECS/rh-nginx110.spec

dded8e
%global scl_name_prefix  rh-
dded8e
%global scl_name_base    nginx
dded8e
%global scl_name_version 110
dded8e
%global scl              %{scl_name_prefix}%{scl_name_base}%{scl_name_version}
dded8e
%{!?nfsmountable: %global nfsmountable 1}
dded8e
%scl_package %scl
dded8e
dded8e
%{!?scl_perl:%global scl_perl rh-perl524}
dded8e
%{!?scl_prefix_perl:%global scl_prefix_perl %{scl_perl}-}
dded8e
dded8e
# do not produce empty debuginfo package
dded8e
%global debug_package %{nil}
dded8e
dded8e
%global nginx_perl_vendorarch %{_scl_root}%(eval "`%{_root_bindir}/perl -V:installvendorarch`"; echo $installvendorarch)
dded8e
%global nginx_perl_archlib %{_scl_root}%(eval "`%{_root_bindir}/perl -V:archlib`"; echo $archlib)
dded8e
dded8e
Summary:       Package that installs %scl
dded8e
Name:          %scl_name
dded8e
Version:       1.10
dded8e
Release:       8%{?dist}
dded8e
License:       GPLv2+
dded8e
Group: Applications/File
dded8e
Source0: README
dded8e
Source1: LICENSE
dded8e
Source2: README.7
dded8e
dded8e
BuildRoot:     %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
dded8e
BuildRequires: scl-utils-build
dded8e
# Temporary work-around
dded8e
BuildRequires: iso-codes
dded8e
dded8e
Requires: %{scl_prefix}nginx
dded8e
dded8e
%description
dded8e
This is the main package for %scl Software Collection.
dded8e
dded8e
%package runtime
dded8e
Summary:   Package that handles %scl Software Collection.
dded8e
Requires:  scl-utils
dded8e
Requires(post): policycoreutils-python libselinux-utils
dded8e
dded8e
%description runtime
dded8e
Package shipping essential scripts to work with %scl Software Collection.
dded8e
dded8e
%package build
dded8e
Summary:   Package shipping basic build configuration
dded8e
Requires:  scl-utils-build
dded8e
Requires: %{scl_prefix_perl}scldevel
dded8e
dded8e
%description build
dded8e
Package shipping essential configuration macros to build %scl Software Collection.
dded8e
dded8e
%package scldevel
dded8e
Summary:   Package shipping development files for %scl
dded8e
Group:     Development/Languages
dded8e
dded8e
%description scldevel
dded8e
Package shipping development files, especially usefull for development of
dded8e
packages depending on %scl Software Collection.
dded8e
dded8e
%prep
dded8e
%setup -c -T
dded8e
dded8e
# copy the license file so %%files section sees it
dded8e
cp %{SOURCE0} .
dded8e
cp %{SOURCE1} .
dded8e
cp %{SOURCE2} .
dded8e
dded8e
sed -i 's|%%{scl_name}|%{scl_name}|g' README.7
dded8e
sed -i 's|%%{_scl_root}|%{_scl_root}|g' README.7
dded8e
sed -i 's|%%{version}|%{version}|g' README.7
dded8e
%if 0%{?rhel} >= 7
dded8e
sed -i 's|%%{service_start}|systemctl start %{scl_name}-nginx|g' README.7
dded8e
%else
dded8e
sed -i 's|%%{service_start}|service %{scl_name}-nginx start|g' README.7
dded8e
%endif
dded8e
dded8e
# Not required for now
dded8e
#export LIBRARY_PATH=%{_libdir}\${LIBRARY_PATH:+:\${LIBRARY_PATH}}
dded8e
#export LD_LIBRARY_PATH=%{_libdir}\${LD_LIBRARY_PATH:+:\${LD_LIBRARY_PATH}}
dded8e
dded8e
cat <
dded8e
if scl -l  | grep %{scl_perl} >&/dev/null; then
dded8e
  . scl_source enable %{scl_perl}
dded8e
fi
dded8e
export PATH=%{_bindir}:%{_sbindir}\${PATH:+:\${PATH}}
dded8e
export MANPATH=%{_mandir}:\${MANPATH}
dded8e
export PKG_CONFIG_PATH=%{_libdir}/pkgconfig\${PKG_CONFIG_PATH:+:\${PKG_CONFIG_PATH}}
dded8e
export PERL5LIB="%{nginx_perl_vendorarch}\${PERL5LIB:+:\${PERL5LIB}}"
dded8e
EOF
dded8e
dded8e
# generate rpm macros file for depended collections
dded8e
cat << EOF | tee scldev
dded8e
%%scl_%{scl_name_base}         %{scl}
dded8e
%%scl_prefix_%{scl_name_base}  %{scl_prefix}
dded8e
EOF
dded8e
dded8e
%build
dded8e
dded8e
%install
dded8e
mkdir -p %{buildroot}%{_scl_scripts}/root
dded8e
install -m 644 enable  %{buildroot}%{_scl_scripts}/enable
dded8e
install -D -m 644 scldev %{buildroot}%{_root_sysconfdir}/rpm/macros.%{scl_name_base}-scldevel
dded8e
dded8e
mkdir -p -m 755 \
dded8e
      %{buildroot}%{_localstatedir}/run/ \
dded8e
      %{buildroot}%{nginx_perl_vendorarch}
dded8e
dded8e
# install generated man page
dded8e
mkdir -p %{buildroot}%{_mandir}/man7/
dded8e
install -m 644 README.7 %{buildroot}%{_mandir}/man7/%{scl_name}.7
dded8e
dded8e
%scl_install
dded8e
dded8e
cat >> %{buildroot}%{_root_sysconfdir}/rpm/macros.%{scl}-config << EOF
dded8e
%%scl_package_override() %%{expand:%%global __perl_requires /usr/lib/rpm/perl.req.rh-perl524 \
dded8e
%%global __perl_provides /usr/lib/rpm/perl.prov.rh-perl524 \
dded8e
%%global __perl %{_scl_prefix}/%{scl_perl}/root/usr/bin/perl \
dded8e
%%global _nginx_perl_vendorarch %{nginx_perl_vendorarch} \
dded8e
}
dded8e
EOF
dded8e
dded8e
# create directory for SCL register scripts
dded8e
mkdir -p %{buildroot}%{?_scl_scripts}/register.content
dded8e
mkdir -p %{buildroot}%{?_scl_scripts}/register.d
dded8e
cat <
dded8e
#!/bin/sh
dded8e
ls %{?_scl_scripts}/register.d/* | while read file ; do
dded8e
    [ -x \$f ] && source \$(readlink -f \$file)
dded8e
done
dded8e
EOF
dded8e
# and deregister as well
dded8e
mkdir -p %{buildroot}%{?_scl_scripts}/deregister.d
dded8e
cat <
dded8e
#!/bin/sh
dded8e
ls %{?_scl_scripts}/deregister.d/* | while read file ; do
dded8e
    [ -x \$f ] && source \$(readlink -f \$file)
dded8e
done
dded8e
EOF
dded8e
dded8e
%post runtime
dded8e
# Simple copy of context from system root to DSC root.
dded8e
# In case new version needs some additional rules or context definition,
dded8e
# it needs to be solved.
dded8e
# Unfortunately, semanage does not have -e option in RHEL-5, so we have to
dded8e
# have its own policy for collection
dded8e
semanage fcontext -a -e / %{_scl_root} >/dev/null 2>&1 || :
dded8e
restorecon -R %{_scl_root} >/dev/null 2>&1 || :
dded8e
selinuxenabled && load_policy || :
dded8e
dded8e
%files
dded8e
dded8e
%files runtime
dded8e
%defattr(-,root,root)
dded8e
%doc README LICENSE
dded8e
%scl_files
dded8e
%dir %{_mandir}/man3
dded8e
%dir %{_mandir}/man7
dded8e
%dir %{_mandir}/man8
dded8e
%{_mandir}/man7/%{scl_name}.*
dded8e
dded8e
%dir %{_localstatedir}/run
dded8e
%dir %{nginx_perl_archlib}
dded8e
%dir %{nginx_perl_vendorarch}
dded8e
dded8e
%attr(0755,root,root) %{?_scl_scripts}/register
dded8e
%attr(0755,root,root) %{?_scl_scripts}/deregister
dded8e
%{?_scl_scripts}/register.content
dded8e
%dir %{?_scl_scripts}/register.d
dded8e
%dir %{?_scl_scripts}/deregister.d
dded8e
dded8e
%files build
dded8e
%defattr(-,root,root)
dded8e
%{_root_sysconfdir}/rpm/macros.%{scl}-config
dded8e
dded8e
%files scldevel
dded8e
%defattr(-,root,root)
dded8e
%{_root_sysconfdir}/rpm/macros.%{scl_name_base}-scldevel
dded8e
dded8e
%changelog
dded8e
* Thu Mar 23 2017 Joe Orton <jorton@redhat.com> - 1.10-8
dded8e
- own perl directories (#1434333)
dded8e
dded8e
* Thu Mar  2 2017 Joe Orton <jorton@redhat.com> - 1.10-7
dded8e
- fix quoting in scl_package_override
dded8e
dded8e
* Thu Mar  2 2017 Joe Orton <jorton@redhat.com> - 1.10-6
dded8e
- own man3 directory
dded8e
- fix Perl autoprov/autoreq
dded8e
dded8e
* Wed Mar  1 2017 Joe Orton <jorton@redhat.com> - 1.10-5
dded8e
- define macro _nginx_perl_vendorarch in -config
dded8e
- set PERL5LIB in SCL env (#1421927)
dded8e
dded8e
* Tue Feb 28 2017 Joe Orton <jorton@redhat.com> - 1.10-4
dded8e
- add Perl support (#1421927)
dded8e
dded8e
* Thu Jan 19 2017 Joe Orton <jorton@redhat.com> - 1.10-3
dded8e
- require nginx
dded8e
dded8e
* Wed Jan 18 2017 Joe Orton <jorton@redhat.com> - 1.10-2
dded8e
- improve wording in man page (#1264342)
dded8e
dded8e
* Wed Jan 18 2017 Joe Orton <jorton@redhat.com> - 1.10-1
dded8e
- initial packaging