186 lines
6.2 KiB
RPMSpec
186 lines
6.2 KiB
RPMSpec
%define nginx_user nginx
|
|
%define nginx_group %{nginx_user}
|
|
%define nginx_home %{_localstatedir}/lib/nginx
|
|
%define nginx_home_tmp %{nginx_home}/tmp
|
|
%define nginx_logdir %{_localstatedir}/log/nginx
|
|
%define nginx_confdir %{_sysconfdir}/nginx
|
|
%define nginx_datadir %{_datadir}/nginx
|
|
|
|
Name: nginx
|
|
Version: 0.5.29
|
|
Release: 1%{?dist}
|
|
Summary: Robust, small and high performance http and reverse proxy server
|
|
Group: System Environment/Daemons
|
|
|
|
# The license appears to be equivalent to the New BSD License
|
|
# (http://www.opensource.org/licenses/bsd-license.php) without the 3rd
|
|
# clause. Which according to OSI makes it functionally equivalent to
|
|
# the MIT license. The documentation on the nginx wiki
|
|
# (http://wiki.codemongers.com/Nginx) says :
|
|
#
|
|
# "The sources are licensed under a BSD-like license"
|
|
License: BSD-like
|
|
URL: http://nginx.net/
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
|
BuildRequires: pcre-devel,zlib-devel,openssl-devel
|
|
Requires: pcre,zlib,openssl
|
|
Requires(pre): %{_sbindir}/useradd
|
|
Requires(post): /sbin/chkconfig
|
|
Requires(preun): /sbin/chkconfig, /sbin/service
|
|
Requires(postun): /sbin/service
|
|
|
|
Source0: http://sysoev.ru/nginx/nginx-%{version}.tar.gz
|
|
Source1: %{name}.init
|
|
Source2: %{name}.logrotate
|
|
|
|
# removes -Werror in upstream build scripts. -Werror conflicts with
|
|
# -D_FORTIFY_SOURCE=2 causing warnings to turn into errors.
|
|
Patch0: nginx-auto-cc-gcc.patch
|
|
|
|
# nginx has its own configure/build scripts. These patches allow nginx
|
|
# to install into a buildroot.
|
|
Patch1: nginx-auto-install.patch
|
|
Patch2: nginx-auto-options.patch
|
|
|
|
# configuration patch to match all the Fedora paths for logs, pid files
|
|
# etc.
|
|
Patch3: nginx-conf.patch
|
|
|
|
%description
|
|
Nginx [engine x] is an HTTP(S) server, HTTP(S) reverse proxy and IMAP/POP3
|
|
proxy server written by Igor Sysoev.
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
%patch0 -p0
|
|
%patch1 -p0
|
|
%patch2 -p0
|
|
%patch3 -p0
|
|
|
|
%build
|
|
# nginx does not utilize a standard configure script. It has its own
|
|
# and the standard configure options cause the nginx configure script
|
|
# to error out. This is is also the reason for the DESTDIR environment
|
|
# variable. The configure script(s) have been patched (Patch1 and
|
|
# Patch2) in order to support installing into a build environment.
|
|
export DESTDIR=%{buildroot}
|
|
./configure \
|
|
--user=%{nginx_user} \
|
|
--group=%{nginx_group} \
|
|
--prefix=%{nginx_datadir} \
|
|
--sbin-path=%{_sbindir}/%{name} \
|
|
--conf-path=%{nginx_confdir}/%{name}.conf \
|
|
--error-log-path=%{nginx_logdir}/error.log \
|
|
--http-log-path=%{nginx_logdir}/access.log \
|
|
--http-client-body-temp-path=%{nginx_home_tmp}/client_body \
|
|
--http-proxy-temp-path=%{nginx_home_tmp}/proxy \
|
|
--http-fastcgi-temp-path=%{nginx_home_tmp}/fastcgi \
|
|
--pid-path=%{_localstatedir}/run/%{name}.pid \
|
|
--lock-path=%{_localstatedir}/lock/subsys/%{name} \
|
|
--with-http_ssl_module \
|
|
--with-http_realip_module \
|
|
--with-http_addition_module \
|
|
--with-http_dav_module \
|
|
--with-http_flv_module \
|
|
--with-http_perl_module \
|
|
--with-mail \
|
|
--with-mail_ssl_module \
|
|
--with-cc-opt="%{optflags}"
|
|
make %{?_smp_mflags}
|
|
|
|
|
|
%install
|
|
rm -rf %{buildroot}
|
|
make install DESTDIR=%{buildroot} INSTALLDIRS=vendor
|
|
find %{buildroot} -type f -name .packlist -exec rm -f {} \;
|
|
find %{buildroot} -type f -name perllocal.pod -exec rm -f {} \;
|
|
find %{buildroot} -type f -empty -exec rm -f {} \;
|
|
find %{buildroot} -type f -exec chmod 0644 {} \;
|
|
find %{buildroot} -type f -name '*.so' -exec chmod 0755 {} \;
|
|
chmod 0755 %{buildroot}%{_sbindir}/nginx
|
|
%{__install} -p -D -m 0755 %{SOURCE1} %{buildroot}%{_initrddir}/%{name}
|
|
%{__install} -p -D -m 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
|
|
%{__install} -p -d -m 0755 %{buildroot}%{nginx_home_tmp}
|
|
%{__install} -p -d -m 0755 %{buildroot}%{nginx_logdir}
|
|
|
|
%clean
|
|
rm -rf %{buildroot}
|
|
|
|
%pre
|
|
%{_sbindir}/useradd -c "Nginx user" -s /bin/false -r -d %{nginx_home} %{nginx_user} 2>/dev/null || :
|
|
|
|
%post
|
|
/sbin/chkconfig --add %{name}
|
|
|
|
%preun
|
|
if [ $1 = 0 ]; then
|
|
/sbin/service %{name} stop >/dev/null 2>&1
|
|
/sbin/chkconfig --del %{name}
|
|
fi
|
|
|
|
%postun
|
|
if [ $1 -ge 1 ]; then
|
|
/sbin/service %{name} condrestart > /dev/null 2>&1 || :
|
|
fi
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%doc LICENSE CHANGES README
|
|
%dir %{nginx_datadir}
|
|
%dir %{nginx_datadir}/html
|
|
%{_datadir}/%{name}/*/*
|
|
%{_sbindir}/%{name}
|
|
%{_mandir}/man3/%{name}.3pm.gz
|
|
%{_initrddir}/%{name}
|
|
%dir %{nginx_confdir}
|
|
%config(noreplace) %{nginx_confdir}/win-utf
|
|
%config(noreplace) %{nginx_confdir}/%{name}.conf.default
|
|
%config(noreplace) %{nginx_confdir}/mime.types.default
|
|
%config(noreplace) %{nginx_confdir}/koi-win
|
|
%config(noreplace) %{nginx_confdir}/koi-utf
|
|
%config(noreplace) %{nginx_confdir}/%{name}.conf
|
|
%config(noreplace) %{nginx_confdir}/mime.types
|
|
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
|
|
%dir %{perl_vendorarch}/auto/%{name}
|
|
%{perl_vendorarch}/%{name}.pm
|
|
%{perl_vendorarch}/auto/%{name}/%{name}.so
|
|
%attr(-,%{nginx_user},%{nginx_group}) %dir %{nginx_home}
|
|
%attr(-,%{nginx_user},%{nginx_group}) %dir %{nginx_home_tmp}
|
|
%attr(-,%{nginx_user},%{nginx_group}) %dir %{nginx_logdir}
|
|
|
|
|
|
%changelog
|
|
* Tue Jul 24 2007 Jeremy Hinegardner <jeremy@hinegardner.org> - 0.5.29-1
|
|
- Update to 0.5.29
|
|
|
|
* Wed Jul 18 2007 Jeremy Hinegardner <jeremy@hinegardner.org> - 0.5.28-1
|
|
- Update to 0.5.28
|
|
|
|
* Mon Jul 09 2007 Jeremy Hinegardner <jeremy@hinegardner.org> - 0.5.27-1
|
|
- Update to 0.5.27
|
|
|
|
* Mon Jun 18 2007 Jeremy Hinegardner <jeremy@hinegardner.org> - 0.5.26-1
|
|
- Update to 0.5.26
|
|
|
|
* Sat Apr 28 2007 Jeremy Hinegardner <jeremy@hinegardner.org> - 0.5.19-1
|
|
- Update to 0.5.19
|
|
|
|
* Mon Apr 02 2007 Jeremy Hinegardner <jeremy@hinegardner.org> - 0.5.17-1
|
|
- Update to 0.5.17
|
|
|
|
* Mon Mar 26 2007 Jeremy Hinegardner <jeremy@hinegardner.org> - 0.5.16-1
|
|
- Update to 0.5.16
|
|
- add ownership of /usr/share/nginx/html (#233950)
|
|
|
|
* Fri Mar 23 2007 Jeremy Hinegardner <jeremy@hinegardner.org> - 0.5.15-3
|
|
- fixed package review bugs (#235222) given by ruben@rubenkerkhof.com
|
|
|
|
* Thu Mar 22 2007 Jeremy Hinegardner <jeremy@hinegardner.org> - 0.5.15-2
|
|
- fixed package review bugs (#233522) given by kevin@tummy.com
|
|
|
|
* Thu Mar 22 2007 Jeremy Hinegardner <jeremy@hinegardner.org> - 0.5.15-1
|
|
- create patches to assist with building for Fedora
|
|
- initial packaging for Fedora
|