%define id $Id$ %define name Zope %define majorversion <> %define minorversion <> %define release <> %define version %{majorversion}.%{minorversion} %define package_name %{name}-%{version}-%{release} %define buildroot %{_tmppath}/%{package_name}-buildroot %define target_dir /opt/%{name}-%{majorversion} %define inst_target_dir /var/opt/zope %define python /usr/bin/python2.2 %define zopeuser zope Summary: Zope, the open source web application server Name: %{name} Version: %{version} Release: %{release} Source0: %{package_name}.tar.gz License: Zope Public License (ZPL) Group: Applications/Internet BuildRoot: %{buildroot} Prefix: %{_prefix} Vendor: Zope Corporation and Contributors Url: http://www.zope.org # python2.2 packages from RedHat don't have 'compiler' package, but # 2.2.1 packages do, so we require 2.2.1 Requires: python2 >= 2.2.1, /usr/sbin/useradd # we don't require 2.2.1 for building, mainly because I don't # actually have it. ;-) BuildRequires: python2 >= 2.2, python2-devel > 2.2 %description Zope is an application server framework that enables developers to quickly build web applications such as intranets, portals, and content management systems. %prep rm -rf $RPM_BUILD_DIR/%{package_name} tar xvzf $RPM_SOURCE_DIR/%{package_name}.tar.gz %build cd %{package_name} ./configure --prefix="%{buildroot}%{target_dir}" --optimize \ --with-python=/usr/bin/python2.2 make build %install cd %{package_name} make install # XXX - need to figure out a way to byte-compile after install instead # of during install find %{buildroot}%{target_dir} | sed -e 's@^%{buildroot}@@' > INSTALLED_FILES %post /usr/sbin/useradd -M -r -s /bin/bash -d /var/opt/zope -c "Zope server user"\ %{zopeuser} > /dev/null 2>&1 mkdir -p %{inst_target_dir} chown %{zopeuser}.%{zopeuser} %{inst_target_dir} chmod 755 %{inst_target_dir} # blank inituser below causes an inituser file to not be written su - %{zopeuser} -c \ "%{python} %{target_dir}/inst/make_instance.py --insthome=%{inst_target_dir} --zopehome=%{target_dir} --inituser= > /dev/null 2>&1" %postun echo Note that the Zope instance files in "%{inst_target_dir}" were not \ uninstalled, nor was the '%{zopeuser}' user removed from the system. %clean rm -rf %{buildroot} %files -f %{package_name}/INSTALLED_FILES %defattr(-,root,root) %changelog * Fri Oct 11 2002 chrism - Initial release