X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=cherokee.spec;h=1c3fcb4829131e6bedd96270bf7e7e15ef87c18a;hb=HEAD;hp=f980bd67b5a8e196121c94cd0a249c46231cac2c;hpb=78936495a78dfc56671d73edc3891d7dc1dc4c85;p=packages%2Fcherokee.git diff --git a/cherokee.spec b/cherokee.spec index f980bd6..3504e24 100644 --- a/cherokee.spec +++ b/cherokee.spec @@ -2,6 +2,7 @@ # TODO: # - think about moving modules to subpackages. At least, those with extra # dependencies. +# - maybe there is no need to pack *.py (are *.pyc enough?) # # Conditional build: %bcond_without geoip # without GeoIP support @@ -12,36 +13,43 @@ Summary: Fast, Flexible and Lightweight Web server Summary(pl.UTF-8): Cherokee - serwer WWW Name: cherokee -Version: 0.99.44 -Release: 2 +Version: 1.2.104 +Release: 4 License: GPL v2 Group: Networking/Daemons -Source0: http://www.cherokee-project.com/download/0.99/%{version}/%{name}-%{version}.tar.gz -# Source0-md5: 268e7130c12b441523de963f95b9b85d -Source1: %{name}.init -Source2: %{name}.sysconfig +Source0: https://github.com/cherokee/webserver/archive/v%{version}.zip +# Source0-md5: 1f4fe0f0317c07b93c9cbbf4f843e724 +# the last snapshot from https://github.com/cherokee/CTK +Source1: CTK-20120806.tar.xz +# Source1-md5: 567f087cd6cdf10b89047535cbe94f8e +Source2: %{name}.init +Source3: %{name}.sysconfig +Source4: %{name}.service Patch0: %{name}-config.patch -Patch1: %{name}-php-path.patch -Patch2: %{name}-panic_path.patch -Patch3: %{name}-methods.patch +Patch1: %{name}-panic_path.patch +Patch2: ffmpeg0.11.patch +Patch3: time_t_x32.patch +Patch4: openssl.patch +Patch5: build.patch URL: http://www.cherokee-project.com/ %{?with_geoip:BuildRequires: GeoIP-devel} BuildRequires: autoconf BuildRequires: automake -%{?with_ffmpeg:BuildRequires: ffmpeg-devel} +%{?with_ffmpeg:BuildRequires: ffmpeg-devel >= 1.0} +BuildRequires: gettext-tools BuildRequires: libtool %{?with_mysql:BuildRequires: mysql-devel} %{?with_ldap:BuildRequires: openldap-devel} BuildRequires: openssl-devel BuildRequires: pam-devel BuildRequires: pcre-devel -BuildRequires: php-fcgi +BuildRequires: php(fcgi) BuildRequires: pkgconfig BuildRequires: python-docutils BuildRequires: rpm-pythonprov -BuildRequires: rpmbuild(macros) >= 1.268 +BuildRequires: rpmbuild(macros) >= 1.647 BuildRequires: zlib-devel -Requires(post,preun): rc-scripts +Requires(post,preun): /sbin/chkconfig Requires(postun): /usr/sbin/groupdel Requires(postun): /usr/sbin/userdel Requires(pre): /bin/id @@ -49,12 +57,15 @@ Requires(pre): /usr/bin/getgid Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd Requires: %{name}-libs = %{version}-%{release} -Suggests: php-fcgi +Requires: rc-scripts >= 0.4.3.0 +Requires: systemd-units >= 38 Suggests: %{name}-admin = %{version}-%{release} +Suggests: php(fcgi) Provides: group(cherokee) Provides: group(http) Provides: user(cherokee) Provides: webserver +Provides: webserver(indexfile) BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _sysconfdir /etc/cherokee @@ -82,9 +93,9 @@ wiele więcej. Summary: Cherokee web server administration interface Summary(pl.UTF-8): Interfejs administracyjny serwera WWW Cherokee Group: Networking/Daemons +Requires: %{name} = %{version}-%{release} Requires: python Requires: python-modules -Requires: %{name} = %{version}-%{release} %description admin Cherokee web server administration interface. @@ -116,11 +127,20 @@ Cherokee web server libraries. Biblioteki serwera WWW Cherokee. %prep -%setup -q +%setup -qn webserver-%{version} -a1 %patch0 -p1 %patch1 -p1 -%patch2 -p1 +#%patch2 -p1 %patch3 -p1 +%patch4 -p1 +%patch5 -p1 + +%{__sed} -E -i -e '1s,#!\s*/usr/bin/env\s+python2(\s|$),#!%{__python}\1,' -e '1s,#!\s*/usr/bin/env\s+python(\s|$),#!%{__python}\1,' \ + admin/CTK/CTK-run.pre \ + admin/server.py \ + admin/upgrade_config.py \ + cherokee/cherokee-admin-launcher \ + cherokee/cherokee-tweak %build %{__libtoolize} @@ -128,8 +148,9 @@ Biblioteki serwera WWW Cherokee. %{__autoconf} %{__autoheader} %{__automake} -export PHPCGI=%{_bindir}/php.fcgi +po/admin/generate_POTFILESin.py > po/admin/POTFILES.in %configure \ + --with-php=/usr/bin/php.cgi \ --disable-static \ --enable-os-string="PLD Linux" \ --sysconfdir=/etc \ @@ -140,17 +161,25 @@ export PHPCGI=%{_bindir}/php.fcgi %{!?with_mysql:--without-mysql} \ %{!?with_ffmpeg:--without-ffmpeg} \ %{!?with_ldap:--without-ldap} + +# workaround for missing pot file and no way to build it +touch po/admin/cherokee.pot +touch po/admin/*.po + %{__make} %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{/etc/{pam.d,sysconfig,rc.d/init.d},/var/log/%{name}} +install -d $RPM_BUILD_ROOT/etc/{pam.d,sysconfig,rc.d/init.d} \ + $RPM_BUILD_ROOT/var/log/%{name} \ + $RPM_BUILD_ROOT%{systemdunitdir} %{__make} -j1 install \ DESTDIR=$RPM_BUILD_ROOT -install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} -install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name} +install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} +install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/%{name} +install %{SOURCE4} $RPM_BUILD_ROOT%{systemdunitdir}/cherokee.service # users don't need this mv $RPM_BUILD_ROOT{%{_bindir},%{_sbindir}}/cherokee-panic @@ -165,9 +194,17 @@ mv $RPM_BUILD_ROOT%{_docdir}/%{name} html # provided via %doc rm $RPM_BUILD_ROOT/etc/cherokee/cherokee.conf.perf_sample +# compile python modules, otherwise *.pyc may get generated on runtime +# and stay after package removal +%py_comp $RPM_BUILD_ROOT%{_datadir}/cherokee/admin/ + +# seems like this is not needed on Linux +rm $RPM_BUILD_ROOT%{_bindir}/cherokee-macos-askpass + mv $RPM_BUILD_ROOT%{_localedir}/{sv_SE,sv} %find_lang %{name} + %clean rm -rf $RPM_BUILD_ROOT @@ -178,15 +215,19 @@ rm -rf $RPM_BUILD_ROOT %addusertogroup cherokee http %post +if [ "$1" = "2" -a -e %{_sysconfdir}/cherokee.conf ]; then + %{_datadir}/%{name}/admin/upgrade_config.py %{_sysconfdir}/cherokee.conf +fi /sbin/chkconfig --add %{name} %service %{name} restart "Cherokee webserver" -exit 0 +%systemd_post %{name}.service %preun if [ "$1" = "0" ]; then %service %{name} stop /sbin/chkconfig --del %{name} fi +%systemd_preun %{name}.service %postun if [ "$1" = "0" ]; then @@ -194,20 +235,26 @@ if [ "$1" = "0" ]; then %groupremove cherokee %groupremove http fi +%systemd_reload + +%triggerpostun -- %{name} < 1.2.103-1 +%systemd_trigger %{name}.service %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig %files %defattr(644,root,root,755) -%doc AUTHORS ChangeLog html contrib/*to*.py performance.conf.sample +%doc AUTHORS html performance.conf.sample %dir %attr(750,root,root) %{_sysconfdir} %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/cherokee.conf %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/cherokee %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cherokee %attr(754,root,root) /etc/rc.d/init.d/cherokee +%{systemdunitdir}/%{name}.service +%attr(755,root,root) %{_bindir}/CTK-run %attr(755,root,root) %{_bindir}/cget %attr(755,root,root) %{_bindir}/cherokee-tweak %attr(755,root,root) %{_sbindir}/cherokee @@ -228,13 +275,14 @@ fi %attr(755,root,root) %{_libdir}/cherokee/libplugin_deflate.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_directory.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_dirlist.so +%attr(755,root,root) %{_libdir}/cherokee/libplugin_drop.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_empty_gif.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_error_nn.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_error_redir.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_evhost.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_exists.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_extensions.so -#%attr(755,root,root) %{_libdir}/cherokee/libplugin_fastcgi.so +%attr(755,root,root) %{_libdir}/cherokee/libplugin_failover.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_fcgi.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_file.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_from.so @@ -267,10 +315,14 @@ fi %attr(755,root,root) %{_libdir}/cherokee/libplugin_secdownload.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_server_info.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_ssi.so +%if %{with ffmpeg} %attr(755,root,root) %{_libdir}/cherokee/libplugin_streaming.so +%endif %attr(755,root,root) %{_libdir}/cherokee/libplugin_target_ip.so +%attr(755,root,root) %{_libdir}/cherokee/libplugin_tls.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_url_arg.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_uwsgi.so +%attr(755,root,root) %{_libdir}/cherokee/libplugin_v_or.so %attr(755,root,root) %{_libdir}/cherokee/libplugin_wildcard.so %{_mandir}/man1/cget.1* @@ -296,13 +348,33 @@ fi %files admin -f %{name}.lang %defattr(644,root,root,755) %attr(755,root,root) %{_sbindir}/cherokee-admin +%attr(755,root,root) %{_bindir}/cherokee-admin-launcher %{_mandir}/man1/cherokee-admin.1* +%{_mandir}/man1/cherokee-admin-launcher.1* %dir %{_datadir}/cherokee/admin %{_datadir}/cherokee/admin/cherokee.conf.sample %{_datadir}/cherokee/admin/performance.conf.sample %{_datadir}/cherokee/admin/*.html %attr(755,root,root) %{_datadir}/cherokee/admin/*.py +%{_datadir}/cherokee/admin/*.pyc %{_datadir}/cherokee/admin/static +%dir %{_datadir}/cherokee/admin/CTK +%dir %{_datadir}/cherokee/admin/CTK/CTK +%{_datadir}/cherokee/admin/CTK/CTK/*.py +%{_datadir}/cherokee/admin/CTK/CTK/*.pyc +%{_datadir}/cherokee/admin/CTK/static +%dir %{_datadir}/cherokee/admin/plugins +%{_datadir}/cherokee/admin/plugins/*.py +%{_datadir}/cherokee/admin/plugins/*.pyc +%dir %{_datadir}/cherokee/admin/wizards +%{_datadir}/cherokee/admin/wizards/*.py +%{_datadir}/cherokee/admin/wizards/*.pyc +#%dir %{_datadir}/cherokee/admin/market +#%{_datadir}/cherokee/admin/market/*.py +#%{_datadir}/cherokee/admin/market/*.pyc +%dir %{_datadir}/cherokee/admin/icons +%{_datadir}/cherokee/admin/icons/*.png +%{_datadir}/cherokee/admin/icons/*.svg %files libs %defattr(644,root,root,755) @@ -310,8 +382,6 @@ fi %attr(755,root,root) %ghost %{_libdir}/libcherokee-base.so.0 %attr(755,root,root) %{_libdir}/libcherokee-client.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libcherokee-client.so.0 -%attr(755,root,root) %{_libdir}/libcherokee-config.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libcherokee-config.so.0 %attr(755,root,root) %{_libdir}/libcherokee-server.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libcherokee-server.so.0 @@ -320,11 +390,9 @@ fi %attr(755,root,root) %{_bindir}/cherokee-config %attr(755,root,root) %{_libdir}/libcherokee-base.so %attr(755,root,root) %{_libdir}/libcherokee-client.so -%attr(755,root,root) %{_libdir}/libcherokee-config.so %attr(755,root,root) %{_libdir}/libcherokee-server.so %{_libdir}/libcherokee-base.la %{_libdir}/libcherokee-client.la -%{_libdir}/libcherokee-config.la %{_libdir}/libcherokee-server.la %{_includedir}/cherokee %{_pkgconfigdir}/cherokee.pc