On Wed, Jun 25, 2003 at 06:53:52PM -0400, Bill Marrs wrote: > I'm looking for a Redhat 9 compatible mod_perl-1.99_09 rpm. > > If anyone has one or knows where I can get one, let me know. >
For my RedHat 8.0 I've made a custom .spec file to build an RPM directly from the CVS sources. Get the 'modperl-2.0.spec' file attached to this mail, and launch the following command (as root, or any other user if you have configured an RPM build environnement for it): # rpmbuild -bb modperl-2.0.spec It should fetch the latest CVS source, and start the build process, then package the files into: /usr/src/redhat/RPMS/i386/mod_perl-2.0_cvs-1.99.10.i386.rpm Now you can try to upgrade your mod_perl with: # rpm -Uvh mod_perl-2.0_cvs-1.99.10.i386.rpm At this point, it should tell you there is a problem with the following missing dependencies: perl(Apache::FunctionTable) is needed by mod_perl-2.0_cvs-1.99.10 perl(Apache::StructureTable) is needed by mod_perl-2.0_cvs-1.99.10 perl(Apache::TestConfigParse) is needed by mod_perl-2.0_cvs-1.99.10 perl(Apache::TestConfigPerl) is needed by mod_perl-2.0_cvs-1.99.10 You can ignore them and force the upgrade with the "--nodeps" option: # rpm -Uvh --nodeps mod_perl-2.0_cvs-1.99.10.i386.rpm (In fact, the RedHat SRPMS use a 'filter-requires.sh' shell script that remove these dependencies from the "require list") Note that I skip the 'make test' phase. Regards, Jérôme --
Name: mod_perl Version: 2.0_cvs Release: 1.99.10 Group: System Environment/Daemons License: GPL Summary: An embedded Perl interpreter for the Apache Web server. Source: http://perl.apache.org/dist/mod_perl-%{version}.tar.gz URL: http://perl.apache.org/ BuildRoot: %{_tmppath}/%{name}-root Requires: httpd >= 2.0.40, perl >= 5.8.0 BuildPrereq: httpd-devel >= 2.0.40, perl Prereq: perl %description Mod_perl incorporates a Perl interpreter into the Apache web server, so that the Apache web server can directly execute Perl code. Mod_perl links the Perl runtime library into the Apache web server and provides an object-oriented Perl interface for Apache's C language API. The end result is a quicker CGI script turnaround process, since no external Perl interpreter has to be started. Install mod_perl if you're installing the Apache web server and you'd like for it to directly incorporate a Perl interpreter. %prep rm -Rf $RPM_BUILD_DIR/mod_perl-2.0_cvs cvs -d :pserver:[EMAIL PROTECTED]:/home/cvspublic co modperl-2.0 mv modperl-2.0 mod_perl-2.0_cvs %build cd mod_perl-%{version} # Compile the module. perl Makefile.PL \ PREFIX=$RPM_BUILD_ROOT/usr \ INSTALLDIRS=vendor \ MP_APXS=%{_sbindir}/apxs \ MODPERL_AP_INCLUDEDIR=$RPM_BUILD_ROOT/usr/include/httpd \ MODPERL_AP_LIBEXECDIR=$RPM_BUILD_ROOT%{_libdir}/httpd/modules make # Run the test suite. # Need to make t/htdocs/perlio because it isn't expecting to be run as # root and will fail tests that try and write files because the server # will have changed it's uid. #mkdir t/htdocs/perlio #chmod 777 t/htdocs/perlio #make test %install [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_libdir}/httpd/modules cd mod_perl-%{version} make install MODPERL_AP_LIBEXECDIR=$RPM_BUILD_ROOT%{_libdir}/httpd/modules MODPERL_AP_INCLUDEDIR=$RPM_BUILD_ROOT/usr/include/httpd # Remove the temporary files. find $RPM_BUILD_ROOT%{_libdir}/perl?/vendor_perl/*/*/auto -name "*.bs" | xargs rm %clean [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %doc Changes INSTALL LICENSE README docs /usr/bin/* /usr/include/httpd/* %{_libdir}/httpd/modules/mod_perl.so %{_libdir}/perl?/vendor_perl/*/*/auto/* %{_libdir}/perl?/vendor_perl/*/*/Apache %{_libdir}/perl?/vendor_perl/*/*/Bundle/* %{_libdir}/perl?/vendor_perl/*/*/APR %{_libdir}/perl?/vendor_perl/*/*/ModPerl %{_libdir}/perl?/vendor_perl/*/*/*.pm /usr/man/man3/*.3* %changelog * Wed Jun 25 2003 Jérôme Augé <[EMAIL PROTECTED]> 1.99-CVS - build mod_perl-2.0 RPM from the CVS sources (based on RedHat SPEC file)