%define module Apache-SessionX %define version 2.00b5 %define release 4mdk %{expand:%%define tempdir %(echo $$)} Summary: Apache::SessionX - An extented persistence framework for session data Name: perl-%{module} Version: %{version} Release: %{release} License: GPL or Artistic Group: Development/Perl Source0: %{module}-%{version}.tar.bz2 Url: http://www.cpan.org BuildRoot: %{_tmppath}/%{name}-buildroot/ Requires: perl BuildRequires: perl-Apache-Session BuildRequires: perl-Mysql BuildRequires: perl-DBD-Pg BuildRequires: perl-devel BuildArch: noarch %description Apache::SessionX extends Apache::Session. It was initialy written to use Apache::Session from inside of HTML::Embperl, but is seems to be useful outside of Embperl as well, so here is it as standalone module. Apache::Session is a persistence framework which is particularly useful for tracking session data between httpd requests. Apache::Session is designed to work with Apache and mod_perl, but it should work under CGI and other web servers, and it also works outside of a web server altogether. Apache::Session consists of five components: the interface, the object store, the lock manager, the ID generator, and the serializer. The interface is defined in SessionX.pm, which is meant to be easily subclassed. The object store can be the filesystem, a Berkeley DB, a MySQL DB, an Oracle DB, or a Postgres DB. Locking is done by lock files, semaphores, or the locking capabilities of MySQL and Postgres. Serialization is done via Storable, and optionally ASCII-fied via MIME or pack(). ID numbers are generated via MD5. The reader is encouraged to extend these capabilities to meet his own requirements. %prep %setup -q -n %{module}-%{version} %build export CFLAGS="$RPM_OPT_FLAGS" %{__perl} -pi -e 's|return \$_ ;|print \$_ ; return \$_ ;|;' Makefile.PL cat << EOF |%{__perl} Makefile.PL INSTALLDIRS=vendor n y /tmp/ApacheSessionX.%{tempdir} n n n n EOF %{__mkdir} /tmp/ApacheSessionX.%{tempdir} %make #%{__make} test %{__rm} -rf /tmp/ApacheSessionX.%{tempdir} %clean %{__rm} -rf $RPM_BUILD_ROOT %install %{__rm} -rf $RPM_BUILD_ROOT %{__mkdir} -p $RPM_BUILD_ROOT/%{perl_archlib} %{__mkdir} -p $RPM_BUILD_ROOT/tmp/ApacheSessionX.%{tempdir} %makeinstall_std %__os_install_post find $RPM_BUILD_ROOT%{_prefix} -type f -print | %{__sed} "s@^$RPM_BUILD_ROOT@@g" | %{__grep} -v perllocal.pod > %{module}-%{version}-filelist %files %defattr(-,root,root) %doc MANIFEST README %{_mandir}/*/* %{perl_vendorlib}/Apache/* %attr(0770, root,apache) %dir /tmp/ApacheSessionX.%{tempdir} %changelog * Sat Aug 02 2003 Ben Reser <ben@reser.org> 2.00b5-4mdk - Macroize - %%makeinstall_std - Remove explicit requires that are automatically found. - Disable test, it's expecting to be able to mess with files in the real root. So won't work. * Wed Jul 16 2003 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.00b5-3mdk - fix buildrequires (Michael Scherer) * Wed May 28 2003 Thierry Vignaud <tvignaud@mandrakesoft.com> 2.00b5-2mdk - rebuild for new auto{prov,req} * Sat Mar 8 2003 Jean-Michel Dault <jmdault@mandrakesoft.com> 2.00b5-1mdk - initial contribs release