[mod_selinux] packaging fixes (#803075)

jorton jorton at fedoraproject.org
Tue May 1 08:17:44 UTC 2012


commit 3aee3c1b30a6f79cbc333e45b5e74db22d6f951f
Author: Joe Orton <jorton at redhat.com>
Date:   Tue May 1 09:17:34 2012 +0100

    packaging fixes (#803075)
    
    Resolves: rhbz#803075

 mod_selinux.spec |   34 +++++++++++++++++++++++++++++-----
 1 files changed, 29 insertions(+), 5 deletions(-)
---
diff --git a/mod_selinux.spec b/mod_selinux.spec
index 68a07f1..39535c8 100644
--- a/mod_selinux.spec
+++ b/mod_selinux.spec
@@ -1,8 +1,15 @@
+%{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}}
+%{!?_httpd_mmn: %{expand: %%global _httpd_mmn %%(cat %{_includedir}/httpd/.mmn || echo missing-httpd-devel)}}
+# /etc/httpd/conf.d with httpd < 2.4 and defined as /etc/httpd/conf.modules.d with httpd >= 2.4
+%{!?_httpd_modconfdir: %{expand: %%global _httpd_modconfdir %%{_sysconfdir}/httpd/conf.d}}
+%{!?_httpd_confdir:    %{expand: %%global _httpd_confdir    %%{_sysconfdir}/httpd/conf.d}}
+%{!?_httpd_moddir:    %{expand: %%global _httpd_moddir    %%{_libdir}/httpd/modules}}
+
 %define selinux_policy_types targeted mls
 
 Name: mod_selinux
 Version: 2.2.2454
-Release: 4%{?dist}
+Release: 5%{?dist}
 Summary: Apache/SELinux plus module
 Group: System Environment/Daemons
 License: ASL 2.0
@@ -11,6 +18,7 @@ Source0: http://sepgsql.googlecode.com/files/%{name}-%{version}.tgz
 Source1: %{name}.conf
 BuildRequires: httpd-devel >= 2.2.0 libselinux-devel checkpolicy >= 2.0.19 policycoreutils selinux-policy
 Requires: kernel >= 2.6.28 httpd >= 2.2.0 policycoreutils selinux-policy
+Requires: httpd-mmn = %{_httpd_mmn}
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
 
 %description
@@ -30,7 +38,7 @@ web application contains security bugs or vulnerabilities.
 
 %build
 # mod_selinux.so
-%{__make} %{?_smp_mflags}
+%{__make} %{?_smp_mflags} APXS=%{_httpd_apxs}
 
 # mod_selinux.pp
 for policy in %{selinux_policy_types}
@@ -43,11 +51,21 @@ done
 rm -rf %{buildroot}
 %{__install} -d %{buildroot}%{_libdir}/httpd/modules
 %{__install} -d %{buildroot}%{_datadir}/selinux
-%{__install} -d %{buildroot}%{_sysconfdir}/httpd/conf.d
 
 %{__make} install DESTDIR=%{buildroot}
 
-%{__install} -p -m 644 %{SOURCE1}       %{buildroot}%{_sysconfdir}/httpd/conf.d
+%if "%{_httpd_modconfdir}" != "%{_httpd_confdir}"
+# httpd 2.4.x config
+sed -n /^LoadModule/p %{SOURCE1} > 10-mod_selinux.conf
+sed    /^LoadModule/d %{SOURCE1} > mod_selinux.conf
+touch -r %{SOURCE1} *.conf
+install -Dp 10-mod_selinux.conf %{buildroot}%{_httpd_modconfdir}/10-mod_selinux.conf
+install -Dp mod_selinux.conf %{buildroot}%{_httpd_confdir}/mod_selinux.conf
+%else
+# httpd 2.2.x
+install -Dp -m 644 %{SOURCE1}       %{buildroot}%{_sysconfdir}/httpd/conf.d/mod_selinux.conf
+%endif
+
 for policy in %{selinux_policy_types}
 do
     %{__install} -d %{buildroot}%{_datadir}/selinux/${policy}
@@ -79,11 +97,17 @@ fi
 %files
 %defattr(-,root,root,-)
 %doc LICENSE README
-%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
+%if "%{_httpd_modconfdir}" != "%{_httpd_confdir}"
+%config(noreplace) %{_httpd_modconfdir}/*.conf
+%endif
+%config(noreplace) %{_httpd_confdir}/*.conf
 %{_libdir}/httpd/modules/%{name}.so
 %{_datadir}/selinux/*/%{name}.pp
 
 %changelog
+* Tue May  1 2012 Joe Orton <jorton at redhat.com> - 2.2.2454-5
+- packaging fixes (#803075)
+
 * Fri Jan 13 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.2.2454-4
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
 


More information about the scm-commits mailing list