diff options
Diffstat (limited to 'zope/F-13/zope.spec')
-rw-r--r-- | zope/F-13/zope.spec | 209 |
1 files changed, 143 insertions, 66 deletions
diff --git a/zope/F-13/zope.spec b/zope/F-13/zope.spec index 9c480da..df8deea 100644 --- a/zope/F-13/zope.spec +++ b/zope/F-13/zope.spec @@ -1,6 +1,7 @@ -%define python_minver 2.4.3 - +%define python_minver 2.6 +%if ! (0%{?fedora} > 12 || 0%{?rhel} > 5) %{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} +%endif %define zope_user zope %define zope_group %{zope_user} @@ -14,29 +15,86 @@ Name: zope Summary: Web application server for flexible content management applications -Version: 2.10.9 +Version: 2.12.7 Release: 1%{?dist} -License: ZPL +License: ZPLv2.1 Group: System Environment/Daemons URL: http://www.zope.org/ -Source0: http://www.zope.org/Products/Zope/%{version}/Zope-%{version}-final.tgz +Source0: http://pypi.python.org/packages/source/Z/Zope2/Zope2-%{version}.zip BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Source1: zope.init.in Source2: zope.sysconfig.in -Source3: zope.zopectl.in Source4: zope-README.Fedora Source5: zope.logrotate.in Source6: zope.logrotate.cron.in -Patch0: zope-2.10.4-config.patch -Patch1: zope-2.10.8-configure.patch - -BuildRequires: python-devel >= %{python_minver}, python >= %{python_minver} -Requires: python >= %{python_minver}, libxml2-python, python-elementtree - -Requires(pre): /usr/sbin/useradd +Patch0: zope-2.12.7-config.patch + +BuildRequires: python-devel >= %{python_minver} +BuildRequires: python-setuptools +BuildRequires: python-sphinx +Requires: python-Acquisition +Requires: python-DateTime +Requires: python-ExtensionClass +Requires: python-Missing +Requires: python-MultiMapping +Requires: python-Persistence +Requires: python-Record +Requires: python-RestrictedPython +Requires: python-ThreadLock +Requires: python-ZConfig +Requires: python-ZODB3 +Requires: python-ZopeUndo +Requires: python-docutils +Requires: python-five-formlib +Requires: python-initgroups +Requires: pytz +Requires: python-setuptools +Requires: python-tempstorage +Requires: python-transaction +Requires: python-zdaemon +Requires: python-zLOG +Requires: python-zope-component +Requires: python-zope-configuration +Requires: python-zope-container +Requires: python-zope-contentprovider +Requires: python-zope-contenttype +Requires: python-zope-deferredimport +Requires: python-zope-event +Requires: python-zope-exceptions +Requires: python-zope-i18n +Requires: python-zope-i18nmessageid +Requires: python-zope-interface +Requires: python-zope-lifecycleevent +Requires: python-zope-location +Requires: python-zope-mkzeoinstance +Requires: python-zope-pagetemplate +Requires: python-zope-processlifetime +Requires: python-zope-proxy +Requires: python-zope-publisher +Requires: python-zope-schema +Requires: python-zope-security +Requires: python-zope-sendmail < 3.7.0 +Requires: python-zope-sequencesort +Requires: python-zope-site +Requires: python-zope-size +Requires: python-zope-structuredtext +Requires: python-zope-tal +Requires: python-zope-tales +Requires: python-zope-testbrowser +Requires: python-zope-testing +Requires: python-zope-traversing +Requires: python-zope-viewlet +Requires: python-zope-app-publication +Requires: python-zope-app-publisher +Requires: python-zope-app-schema +# this one is not manifested in setup.py +Requires: python-zope-app-testing + +Requires(pre): shadow-utils Requires(post): /sbin/chkconfig Requires(preun): /sbin/chkconfig, /sbin/service +Requires(postun): /sbin/service %description Zope is an application server framework that enables developers to quickly @@ -46,60 +104,73 @@ systems. Zope, by default, will listen on port 8080. %prep -%setup -q -n Zope-%{version}-final +%setup -q -n Zope2-%{version} %patch0 -p0 -%patch1 -p1 -chmod -x skel/import/README.txt +sed -i -e '/^#!/, 1d' src/ZPublisher/{Test,Client}.py \ + src/Products/PageTemplates/tests/run.py \ + src/Products/ZCTextIndex/tests/{wordstats,hs-tool,indexhtml}.py \ + src/Zope2/Startup/{misc/zpasswd,zopectl}.py \ + src/DocumentTemplate/release.sh \ + src/ZServer/medusa/{test/asyn_http_bench.py,http_server.py} \ + src/ZTUtils/tests/run.py src/ZPublisher/Client.py src/OFS/ndiff.py + +chmod -x src/AccessControl/securitySuite/regressionSecurity.py +chmod -x src/Zope2/utilities/skel/import/README.txt install -pm 644 %{SOURCE4} README.Fedora -install -pm 644 %{SOURCE5} skel/etc/logrotate.conf.in - +# don't include batch files +rm -f src/Zope2/utilities/skel/bin/*.bat* %build -rm -rf $RPM_BUILD_ROOT # Configure checks for it -./configure \ - --prefix=$RPM_BUILD_ROOT%{zope_home} \ -# --with-python=%{_bindir}/python -# --no-compile +env CFLAGS="$RPM_OPT_FLAGS" python setup.py build -make %{?_smp_mflags} +# make html documents +pushd doc +make html +rm -fr .build/html/{_sources,.buildinfo} +popd %install rm -rf $RPM_BUILD_ROOT +python setup.py install --root=$RPM_BUILD_ROOT \ + --install-scripts=%{_bindir} --install-lib=%{software_home} + +# add a missed namespace holder +cp -p src/Products/__init__.py $RPM_BUILD_ROOT%{software_home}/Products/ + +# delete included C source files +find $RPM_BUILD_ROOT -name '*.c' -type f -print0 | xargs -0 rm -fv # Create all required additional directories -for dir in %{zope_home} %{software_home} %{instance_home}/{Products,bin,var} \ - %{_sysconfdir}/sysconfig %{_bindir}; do +for dir in %{instance_home}/{Products,bin,var} %{_sysconfdir}/sysconfig; do install -d $RPM_BUILD_ROOT$dir done -install -D -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/zope +install -D -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_initddir}/zope install -D -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/zope -install -D -m 755 %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/zopectl +install -D -m 644 %{SOURCE5} \ + $RPM_BUILD_ROOT%{software_home}/Zope2/utilities/skel/etc/logrotate.conf.in install -D -m 755 %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/cron.daily/zope-logrotate perl -pi -e 's,<<SYSCONFDIR>>,%{_sysconfdir},g; s,<<BINDIR>>,%{_bindir},g; s,<<LOCALSTATEDIR>>,%{_localstatedir},g; s,<<ZOPE_USER>>,%{zope_user},g' \ - $RPM_BUILD_ROOT%{_initrddir}/zope \ + $RPM_BUILD_ROOT%{_initddir}/zope \ $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/zope \ - $RPM_BUILD_ROOT%{_bindir}/zopectl \ $RPM_BUILD_ROOT%{_sysconfdir}/cron.daily/zope-logrotate \ - README.Fedora skel/etc/zope.conf.in + README.Fedora # Install the skel, translating paths, into the build root -%{__python} "utilities/copyzopeskel.py" \ - --sourcedir="skel" \ +%{__python} "src/Zope2/utilities/copyzopeskel.py" \ + --sourcedir="$RPM_BUILD_ROOT%{software_home}/Zope2/utilities/skel" \ --targetdir="$RPM_BUILD_ROOT%{instance_home}" \ --replace="INSTANCE_HOME:%{instance_home}" \ --replace="SOFTWARE_HOME:%{software_home}" \ --replace="ZOPE_HOME:%{zope_home}" \ --replace="PYTHON:%{__python}" \ - -# Actually copy all the other files over -make install + --replace="ZOPE_SCRIPTS:%{_bindir}" chmod 750 $RPM_BUILD_ROOT%{instance_home} @@ -115,32 +186,25 @@ done chmod 755 $RPM_BUILD_ROOT%{zope_home} -# included in %%doc -rm -rf $RPM_BUILD_ROOT%{zope_home}/doc - # write version.txt echo "Zope %{version}-%{release}" > \ "$RPM_BUILD_ROOT%{software_home}/version.txt" -# write zope.pth +# write Zope2.pth install -d $RPM_BUILD_ROOT%{python_sitearch} echo "%{software_home}" > \ - "$RPM_BUILD_ROOT%{python_sitearch}/zope.pth" - -# Compile .pyc -%{__python} -c "import compileall; \ - compileall.compile_dir(\"$RPM_BUILD_ROOT%{zope_home}\", \ - ddir=\"%{zope_home}\", force=1)" - - + "$RPM_BUILD_ROOT%{python_sitearch}/Zope2.pth" %clean rm -rf $RPM_BUILD_ROOT %pre -%{_sbindir}/useradd -c "Zope user" -s /bin/false -r -d %{zope_home} \ - %{zope_user} 2>/dev/null || : +getent group %{zope_group} >/dev/null || groupadd -r %{zope_group} +getent passwd %{zope_user} >/dev/null || \ + useradd -r -g %{zope_group} -d %{zope_home} -s /sbin/nologin \ + -c "Zope user" %{zope_user} +exit 0 %post @@ -154,33 +218,46 @@ if [ $1 -eq 0 ]; then /sbin/chkconfig --del zope fi +%postun +if [ "$1" -ge "1" ] ; then + /sbin/service zope condrestart >/dev/null 2>&1 || : +fi %files %defattr(-, root, root, -) -%doc doc/* README.Fedora ZopePublicLicense.txt +%doc COPYRIGHT.txt LICENSE.txt README.txt doc/.build/html README.Fedora %config(noreplace) %{_sysconfdir}/sysconfig/zope -%config %{_initrddir}/zope +%{_initddir}/zope %config %{_sysconfdir}/cron.daily/zope-logrotate -%attr(0755, root, root) %{_bindir}/zopectl +%{_bindir}/zopectl +%{_bindir}/mkzeoinstance +%{_bindir}/mkzopeinstance +%{_bindir}/runzope +%{_bindir}/zpasswd %dir %{zope_home} -%{zope_home}/bin %{zope_home}/lib -%dir %{zope_home}/skel -%{zope_home}/skel/bin -%{zope_home}/skel/Extensions -%{zope_home}/skel/import -%{zope_home}/skel/log -%{zope_home}/skel/lib -%{zope_home}/skel/Products -%{zope_home}/skel/README.txt -%{zope_home}/skel/var -%config %{zope_home}/skel/etc -%attr(-, root, %{zope_group}) %{instance_home}/* -%{python_sitearch}/zope.pth +%attr(-, root, %{zope_group}) %{instance_home}/ +%{python_sitearch}/Zope2.pth %changelog +* Fri Jun 18 2010 Robin Lee <robinlee.sysu@gmail.com> - 2.12.7-1 +- Update to 2.12.7 +- License Specified to ZPLv2.1 +- Source0 URL renewed +- zope-2.10.4-config.patch and zope-2.10.8-configure.patch removed, + zope-2.12.7-config.patch added to make the same effect of + zope-2.10.4-config.patch +- BR: python-setuptools and python-sphinx added +- Add multiple requirements +- zope.zopectl.in removed +- %%pre rewritten and %%postun added following + http://fedoraproject.org/wiki/Packaging/SysVInitScript +- zope.init.in renewed +- zope.logrotate.in included in the binary package +- Don't include the batch files + * Thu Aug 6 2009 Jonathan Steffan <jon a fedoraunity.org> 2.10.9-1 - Update to 2.10.9 - Fix CVE-2009-0669 (BZ#513428) |