2 # Available build options:
3 %bcond_with checkpath # enable check if php execution is within DOCUMENT_ROOT of the vhost
6 %define apxs /usr/sbin/apxs
7 Summary: Apache module: suPHP - execute PHP scripts with the permissions of their owners
8 Summary(pl): Modu³ do apache: suPHP - uruchamianie skryptów PHP z uprawnieniami ich w³a¶cicieli
9 Name: apache-mod_%{mod_name}
13 Group: Networking/Daemons
14 Source0: http://www.suphp.org/download/%{mod_name}-%{version}.tar.gz
15 # Source0-md5: 7eb8ae29404392d9eb07c69d5242d716
16 Source1: %{name}.logrotate
18 Patch0: %{name}-apr.patch
19 Patch1: %{name}-compiler-flags.patch
20 Patch2: %{name}-apache_version.patch
21 URL: http://www.suphp.org/
22 BuildRequires: %{apxs}
23 BuildRequires: apache-devel >= 2.0.52-2
24 BuildRequires: autoconf
25 BuildRequires: automake
26 BuildRequires: libstdc++-devel
27 Requires: apache(modules-api) = %apache_modules_api
29 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31 %define _pkglibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
32 %define _sysconfdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)
35 suPHP is a tool for executing PHP scripts with the permissions of
36 their owners. It consists of an Apache module (mod_suphp) and a setuid
37 root binary (suphp) that is called by the Apache module to change the
38 uid of the process executing the PHP interpreter.
41 suPHP jest narzêdziem pozwalaj±cym na wykonywanie skryptów w PHP z
42 uprawnieniami ich w³a¶cicieli. Sk³ada siê z modu³u (mod_suphp) oraz
43 programu (suphp) z ustawionym bitem suid, który uruchamiany jest przez
44 modu³ w celu zmiany uid procesu uruchamiaj±cego interpreter PHP.
47 %setup -q -n %{mod_name}-%{version}
57 export APACHE_VERSION=$(rpm -q --qf '%%{version}' apache-apxs)
59 %{?with_checkpath: --enable-checkpath} \
60 %{!?with_checkpath: --disable-checkpath} \
61 --with-apache-user=http \
68 # FIXME: I don't know anything about libtool, but libtool created by configure
69 # doesn't work. My hardcoded trick is to replace libtool created by configure
70 # with one provided by libtool package in /usr/bin/ path.
71 cp %{_bindir}/libtool .
76 rm -rf $RPM_BUILD_ROOT
77 install -d $RPM_BUILD_ROOT{%{_sbindir},%{_pkglibdir},%{_datadir}/suphp}
78 install -d $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
80 install src/suphp $RPM_BUILD_ROOT%{_sbindir}
81 install src/apache2/.libs/mod_%{mod_name}.so $RPM_BUILD_ROOT%{_pkglibdir}
82 install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf/70_mod_%{mod_name}.conf
84 install -d $RPM_BUILD_ROOT/etc/logrotate.d
85 install %{SOURCE1} $RPM_BUILD_ROOT/etc/logrotate.d/apache-mod_suphp
87 install doc/suphp.conf-example $RPM_BUILD_ROOT%{_datadir}/suphp
90 rm -rf $RPM_BUILD_ROOT
93 if [ -f /var/lock/subsys/httpd ]; then
94 /etc/rc.d/init.d/httpd restart 1>&2
98 if [ "$1" = "0" ]; then
99 if [ -f /var/lock/subsys/httpd ]; then
100 /etc/rc.d/init.d/httpd restart 1>&2
105 %defattr(644,root,root,755)
106 %doc README AUTHORS ChangeLog doc
107 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf/*_mod_%{mod_name}.conf
108 %attr(755,root,root) %{_pkglibdir}/*.so
109 %attr(4755,root,root) %{_sbindir}/suphp
110 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/*
111 %dir %{_datadir}/suphp