Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 Sep 1999 00:20:43 -0400 (EDT)
From:      Garrett Wollman <wollman@khavrinen.lcs.mit.edu>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/13705: p5-Apache port is outdated and too complex
Message-ID:  <199909120420.AAA24294@khavrinen.lcs.mit.edu>

next in thread | raw e-mail | index | archive | help

>Number:         13705
>Category:       ports
>Synopsis:       p5-Apache port is outdated and too complex
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat Sep 11 21:30:00 PDT 1999
>Closed-Date:
>Last-Modified:
>Originator:     Garrett Wollman
>Release:        FreeBSD 4.0-CURRENT i386
>Organization:
MIT Laboratory for Computer Science
>Environment:

	-current as of today

>Description:

	p5-Apache port is based on mod_perl 1.19; the current version
	on CPAN is 1.21.

	More importantly, the port creates an entire new HTTPD binary,
	which makes it difficult to use it with extended HTTPDs
	(like apache13-modssl).

>How-To-Repeat:

	cd /usr/ports/www/p5-Apache
	make

>Fix:

Index: Makefile
===================================================================
RCS file: /home/cvs/ports/www/p5-Apache/Makefile,v
retrieving revision 1.16
diff -u -r1.16 Makefile
--- Makefile	1999/08/31 06:52:02	1.16
+++ Makefile	1999/09/12 04:05:53
@@ -1,46 +1,48 @@
 # New ports collection makefile for:	p5-Apache
-# Version required:			1.19
+# Version required:			1.21
 # Date created:				April 26th 1997
 # Whom:	      				James FitzGibbon <jfitz@FreeBSD.org>
 #
 # $FreeBSD: ports/www/p5-Apache/Makefile,v 1.16 1999/08/31 06:52:02 mharo Exp $
 #
 
-DISTNAME=	mod_perl-1.19
-PKGNAME=	p5-Apache-1.19
+DISTNAME=	mod_perl-1.21
+PKGNAME=	p5-Apache-1.21
 CATEGORIES=	www perl5
 MASTER_SITES=	${MASTER_SITE_PERL_CPAN}
 MASTER_SITE_SUBDIR=	Apache
 
 MAINTAINER=	jfitz@FreeBSD.org
 
-BUILD_DEPENDS=	/nonexistent:${PORTSDIR}/www/apache13:patch
+.if !defined(APACHE_PORT)
+APACHE_PORT=apache13
+.endif
+BUILD_DEPENDS=	${PREFIX}/sbin/apxs:${PORTSDIR}/www/${APACHE_PORT} \
+		${PREFIX}/bin/lwp-download:${PORTSDIR}/www/p5-libwww
 
 USE_PERL5=	YES
-CONFIGURE_ENV=	APACHEDIR=${WRKDIRPREFIX}${.CURDIR}/../apache13/work/ INSTALL_PROGRAM="${INSTALL_PROGRAM}"
-MAN3=		Apache.3 Apache::Constants.3  Apache::ExtUtils.3 \
-		Apache::FakeRequest.3 Apache::Leak.3 \
-		Apache::Log.3 Apache::Options.3 \
-		Apache::PerlRun.3 Apache::PerlRunXS.3 \
+MAN3=		Apache.3 Apache::Constants.3 Apache::Debug.3 \
+		Apache::ExtUtils.3 Apache::FakeRequest.3 Apache::Include.3 \
+		Apache::Leak.3 Apache::Log.3 Apache::Options.3 \
+		Apache::PerlRun.3 Apache::PerlRunXS.3 Apache::PerlSections.3 \
 		Apache::RedirectLogFix.3 \
-		Apache::Registry.3 Apache::SizeLimit.3 \
+		Apache::Registry.3 Apache::RegistryLoader.3 \
+		Apache::Resource.3 Apache::SIG.3 Apache::SizeLimit.3 \
+		Apache::StatINC.3 \
 		Apache::Status.3 Apache::Symbol.3 Apache::Symdump.3 \
 		Apache::Table.3 Apache::URI.3 Apache::Util.3 \
 		Apache::httpd_conf.3 Apache::src.3 Bundle::Apache.3 \
-		Apache::Debug.3 mod_perl.3 Apache::SIG.3 Apache::Resource.3 \
-		Apache::RegistryLoader.3 Apache::StatINC.3 Apache::Include.3 \
-		Apache::PerlSections.3 cgi_to_mod_perl.3 \
-		mod_perl_cvs.3 mod_perl_method_handlers.3 mod_perl_traps.3 \
+		cgi_to_mod_perl.3 mod_perl.3 mod_perl_cvs.3 \
+		mod_perl_method_handlers.3 mod_perl_traps.3 \
 		mod_perl_tuning.3
 MANPREFIX=	${PREFIX}/lib/perl5/${PERL_VERSION}
 
 do-configure:
-		@ cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${CONFIGURE_ENV} ${PERL5} Makefile.PL
+		@ cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${CONFIGURE_ENV} ${PERL5} Makefile.PL USE_APXS=1 WITH_APXS=${PREFIX}/sbin/apxs EVERYTHING=1
 
 post-install:
 		${MKDIR} ${PREFIX}/share/doc/mod_perl
 		${INSTALL_DATA} ${FILESDIR}/post-install-notes ${PREFIX}/share/doc/mod_perl
-		@ ${SETENV} ${MAKE_ENV} PORTSDIR=${PORTSDIR} ${CONFIGURE_ENV} /usr/bin/perl ${SCRIPTDIR}/install_httpd
 .if !defined(BATCH)
 		@ /usr/bin/more -e ${FILESDIR}/post-install-notes
 .endif
Index: files/md5
===================================================================
RCS file: /home/cvs/ports/www/p5-Apache/files/md5,v
retrieving revision 1.4
diff -u -r1.4 md5
--- md5	1999/05/10 12:20:16	1.4
+++ md5	1999/09/12 03:11:23
@@ -1 +1 @@
-MD5 (mod_perl-1.19.tar.gz) = 721fe5245aefdffecf5f54a9c29c5938
+MD5 (mod_perl-1.21.tar.gz) = 3695bb66e8eecf6cceec97e54d48f48e
Index: files/post-install-notes
===================================================================
RCS file: /home/cvs/ports/www/p5-Apache/files/post-install-notes,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 post-install-notes
--- post-install-notes	1997/05/05 00:41:07	1.1.1.1
+++ post-install-notes	1999/09/12 04:09:55
@@ -1,23 +1,15 @@
 Post-install Notes for p5-Apache
 ================================
 
-This port has built a new httpd binary that includes the perl5 module
-(mod_perl).  To avoid overwriting an existing httpd binary, it has been
-installed as
+This port has built a new Apache dynamic shared object (DSO).
+If it was built from source, the module has already been
+activated in ${PREFIX}/etc/apache/apache.conf.  If, however,
+it was installed using the binary package, the activation must be
+done manually, using the command
+	${PREFIX}/sbin/apxs -e -a -n perl libperl.so
+
+This is actually a bug.  (If you are using conditional module loading
+in apache.conf, such as with mod_ssl, apxs may add the module in the
+wrong place.)
 
-${PREFIX}/sbin/httpd_modperl
-
 ($PREFIX is usually /usr/local unless you override it).
-
-In order to use this module, you should rename it to httpd.  Remember that
-this binary is the standard apache port, with mod_perl and nothing else
-added.  If you have already built yourself an httpd binary containing
-optional modules, you are better off building mod_perl yourself.
-
-The original source for p5-Apache can be found at any CPAN mirror, in the
-directory
-
-modules/by-module/Apache/
-
---
-j.
Index: patches/patch-aa
===================================================================
RCS file: /home/cvs/ports/www/p5-Apache/patches/patch-aa,v
retrieving revision 1.5
diff -u -r1.5 patch-aa
--- patch-aa	1999/05/10 12:20:23	1.5
+++ patch-aa	1999/09/12 03:34:17
@@ -1,45 +1,17 @@
---- Makefile.PL~	Fri Jan 22 11:57:51 1999
-+++ Makefile.PL	Sun May  9 19:41:55 1999
-@@ -67,12 +67,10 @@
- sleep(1);
- }
- 
--%Apache::MyConfig::Setup = ();
--eval 'require Apache::MyConfig' ;
--
--$APACHE_SRC_DEFAULT = $@ ? 
--    '../apache_x.x/src'  :
--    $Apache::MyConfig::Setup{Apache_Src} ; 
-+opendir( WRKDIR, "$ENV{APACHEDIR}" ) || die( "Can't open $ENV{APACHEDIR}: $!\n" );
-+( $srcdir ) = grep( /^apache/, readdir( WRKDIR ) );
-+closedir( WRKDIR );
-+$APACHE_SRC_DEFAULT = "$ENV{APACHEDIR}" . $srcdir . "/src";
- 
- my $PWD = cwd;
- 
-@@ -157,12 +155,12 @@
- }
- $PORT ||= $Port;
- $TARGET = "";
--$DO_HTTPD = $ENV{DO_HTTPD} || 0;
-+$DO_HTTPD = 1;
- $NO_HTTPD = $ENV{NO_HTTPD} || 0;
- $PREP_HTTPD = 0;
- $PERL_TRACE = 0;
- $ALL_HOOKS  = 0;
--$APACHE_SRC = "";
-+$APACHE_SRC = $APACHE_SRC_DEFAULT;
- $APACHE_PREFIX = "";
- $APACHE_HEADER_INSTALL = 1;
- $PERL_SECTIONS = 0;
-@@ -1570,8 +1568,8 @@
-     my $repl = "";
-     my @file = ();
-     my $ccopts = ccopts();
--    my $dssv = "-DSERVER_SUBVERSION";
--    my $ssv = qq($dssv=\\"mod_perl/$VERSION\\" );
-+    my $dssv = "\n-DSERVER_SUBVERSION";
-+    my $ssv = qq($dssv=\\"mod_perl/$VERSION\\" \\);
- 
-     my $inc = " $ccopts -I. -I../.. -DUSE_PERL_SSI" if $PERL_SSI;
-     $inc .= " -DAPACHE_SSL" if is_ssl() and $PERL_SSI;
+--- apaci/configure.orig	Mon Aug 10 16:09:55 1998
++++ apaci/configure	Sat Sep 11 23:34:15 1999
+@@ -89,7 +89,13 @@
+ echo "##" >>$my_makefileconf
+ echo "" >>$my_makefileconf
+ echo "#   provide some stuff Apache usually provides" >>$my_makefileconf
+-echo "CFLAGS=-DMOD_PERL $my_apxs_cflags" >>$my_makefileconf
++echo -n "CFLAGS=-DMOD_PERL " >>$my_makefileconf
++#
++# GAW addition: make up for bug in APXS which fails to properly quote
++# DEFAULT_PATH
++#
++$my_apxs -q CFLAGS | sed 's,",\\",g' >>$my_makefileconf
++echo "" >>$my_makefileconf
+ echo "INCLUDES=$my_apxs_includes" >>$my_makefileconf
+ echo "RANLIB=ranlib" >>$my_makefileconf
+ echo "LIBEXT=so" >>$my_makefileconf
Index: pkg/PLIST
===================================================================
RCS file: /home/cvs/ports/www/p5-Apache/pkg/PLIST,v
retrieving revision 1.4
diff -u -r1.4 PLIST
--- PLIST	1999/05/10 12:20:28	1.4
+++ PLIST	1999/09/12 03:55:02
@@ -1,4 +1,3 @@
-sbin/httpd_modperl
 share/doc/mod_perl/post-install-notes
 lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/Apache.pm
 lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/Apache/Connection.pm
@@ -52,43 +51,9 @@
 lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/Leak/Leak.so
 lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/Symbol/Symbol.bs
 lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/Symbol/Symbol.so
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/alloc.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/buff.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/conf.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/explain.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/http_conf_globals.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/http_config.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/http_core.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/http_log.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/http_main.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/http_protocol.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/http_request.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/httpd.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/md5.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/mod_rewrite.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/modules/perl/mod_perl.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/modules/perl/mod_perl_version.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/modules/perl/mod_perl_xs.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/modules/perl/perl_PL.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/modules/proxy/mod_proxy.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/regex/cclass.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/regex/cname.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/regex/regex.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/regex/regex2.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/regex/utils.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/rfc1413.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/scoreboard.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/util_date.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/util_md5.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/util_script.h
-lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/typemap
+libexec/apache/libperl.so
 @dirrm lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/Leak
 @dirrm lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/Symbol
-@dirrm lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/modules/perl
-@dirrm lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/modules/proxy
-@dirrm lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/modules
-@dirrm lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include/regex
-@dirrm lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache/include
 @dirrm lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/Apache
 @dirrm lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/auto/mod_perl
 @dirrm lib/perl5/site_perl/%%PERL_VER%%/%%PERL_ARCH%%/Apache/Constants



>Release-Note:
>Audit-Trail:
>Unformatted:


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199909120420.AAA24294>