diff options
author | itojun <itojun> | 1999-07-23 18:19:29 +0000 |
---|---|---|
committer | itojun <itojun> | 1999-07-23 18:19:29 +0000 |
commit | bc19eb805873412e0d3ff450b5674f17158488c3 (patch) | |
tree | 32f3cff771473f319556ca3bf91a365605c721b6 | |
parent | 3f22013f2b57c81ca388b4c47fc0b65ea6bb9630 (diff) | |
download | pkgsrc-bc19eb805873412e0d3ff450b5674f17158488c3.tar.gz |
provide and enable IPv6-ready apache.
This is provided as separate package because:
# This package does not compile in mod_ssl support hooks, as it conflicts
# with IPv6 enable patch.
# IPv6 enable patch conflicts with third-party modules anyway, due to
# sanity fixes in apache module API (for example, avoid u_long for IPv4 addrs)
-rw-r--r-- | www/Makefile | 3 | ||||
-rw-r--r-- | www/apache6/Makefile | 61 | ||||
-rw-r--r-- | www/apache6/files/md5 | 4 | ||||
-rw-r--r-- | www/apache6/files/patch-sum | 6 | ||||
-rw-r--r-- | www/apache6/patches/patch-aa | 45 | ||||
-rw-r--r-- | www/apache6/patches/patch-af | 86 | ||||
-rw-r--r-- | www/apache6/patches/patch-am | 20 | ||||
-rw-r--r-- | www/apache6/pkg/COMMENT | 2 | ||||
-rw-r--r-- | www/apache6/pkg/DESCR | 3 | ||||
-rw-r--r-- | www/apache6/pkg/PLIST | 8 |
10 files changed, 56 insertions, 182 deletions
diff --git a/www/Makefile b/www/Makefile index cea9c23ea21..732f99b400f 100644 --- a/www/Makefile +++ b/www/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.42 1999/07/21 23:09:56 garbled Exp $ +# $NetBSD: Makefile,v 1.43 1999/07/23 18:19:29 itojun Exp $ # FreeBSD Id: Makefile,v 1.65 1997/11/17 06:31:39 fenner Exp # @@ -10,6 +10,7 @@ SUBDIR += ap-perl SUBDIR += ap-php3 SUBDIR += apache + SUBDIR += apache6 # SUBDIR += apache-current SUBDIR += arena # SUBDIR += ashe # requires Motif diff --git a/www/apache6/Makefile b/www/apache6/Makefile index 4571053b920..802e4dc7843 100644 --- a/www/apache6/Makefile +++ b/www/apache6/Makefile @@ -1,27 +1,33 @@ -# $NetBSD: Makefile,v 1.1.1.1 1999/07/23 17:53:29 itojun Exp $ +# $NetBSD: Makefile,v 1.2 1999/07/23 18:19:29 itojun Exp $ # # The fourth number in the PKGNAME version indicates a NetBSD pkg revision # (to indicate changes in the shipped third party patches such as the mod_ssl # EAPI when there has been no change to the Apache version number). # -# This pkg does not compile in mod_ssl, only the `mod_ssl EAPI' (a set of -# code hooks that allow mod_ssl to be compiled separately later, if desired). +# This package does not compile in mod_ssl support hooks, as it conflicts +# with IPv6 enable patch. +# IPv6 enable patch conflicts with third-party modules anyway, due to +# sanity fixes in apache module API (for example, avoid u_long for IPv4 addrs) # DISTNAME= apache_1.3.6 -PKGNAME= apache-1.3.6p0 +PKGNAME= apache6-1.3.6p0 CATEGORIES= www MASTER_SITES= http://www.apache.org/dist/ \ ftp://ftp.modssl.org/source/ \ http://www.netbsd.org/images/logos/ DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ - ${SSL_DISTNAME}${EXTRACT_SUFX} \ sitedrivenby.gif +# ${SSL_DISTNAME}${EXTRACT_SUFX} -MAINTAINER= cjs@netbsd.org +PATCH_SITES= ftp://ftp.kame.net/pub/kame/misc/ +PATCHFILES= apache-136-v6-19990724.diff.gz +PATCH_DIST_STRIP= -p1 + +MAINTAINER= itojun@itojun.org HOMEPAGE= http://www.apache.org/ -CONFLICTS= apache-*modssl-* +CONFLICTS= apache-*modssl-* apache-* SSL_DISTNAME= mod_ssl-2.2.8-1.3.6 @@ -33,14 +39,20 @@ CONFIGURE_ARGS+= --prefix=${PREFIX} --libexecdir=${PREFIX}/lib/httpd \ --proxycachedir=/var/spool/httpd/proxy \ --includedir=${PREFIX}/include/httpd \ --sbindir=${PREFIX}/sbin \ - --enable-rule=EAPI --enable-module=most \ - --disable-module=ssl --enable-module=auth_db \ + --enable-module=most \ + --enable-module=auth_db \ --disable-module=auth_dbm \ --with-perl=${PREFIX}/bin/perl +# --enable-rule=EAPI --disable-module=ssl +CONFIGURE_SCRIPT= configure.v6 CONFIGURE_ENV+= OPTIM="${OPTIM}" .include "../../mk/bsd.prefs.mk" +.if !defined(USE_INET6) +BROKEN= "IPv6 only build" +.endif + .if defined(APACHE_SUEXEC) && ${APACHE_SUEXEC} == YES CONFIGURE_ARGS+= --enable-suexec --suexec-caller=www \ --suexec-safepath='/bin:/usr/bin:${PREFIX}/bin:/usr/local/bin' @@ -58,24 +70,25 @@ PLIST_SRC= ${WRKDIR}/PLIST # Under Apache 1.3, modules can be compiled to link dynamically to the server # using the "apxs" program. See apxs(8). -post-extract: - @${CP} ${FILESDIR}/ap_include_extern.h ${WRKSRC}/src/include/ - @${CP} ${WRKDIR}/${SSL_DISTNAME}/pkg.eapi/*.c ${WRKSRC}/src/ap/ - @${CP} ${WRKDIR}/${SSL_DISTNAME}/pkg.eapi/*.h ${WRKSRC}/src/include/ - -pre-patch: - @cd ${WRKSRC} && ${CAT} \ - ../${SSL_DISTNAME}/pkg.eapi/eapi.patch \ - ../${SSL_DISTNAME}/pkg.sslcfg/sslcfg.patch \ - ../${SSL_DISTNAME}/pkg.sslmod/sslmod.patch \ - ../${SSL_DISTNAME}/pkg.sslsup/sslsup.patch \ - | ${PATCH} ${PATCH_ARGS} - @cd ${WRKSRC} && tail +129 \ - ../${SSL_DISTNAME}/pkg.ssldoc/ssldoc.patch \ - | ${PATCH} ${PATCH_ARGS} +#post-extract: +# @${CP} ${FILESDIR}/ap_include_extern.h ${WRKSRC}/src/include/ +# @${CP} ${WRKDIR}/${SSL_DISTNAME}/pkg.eapi/*.c ${WRKSRC}/src/ap/ +# @${CP} ${WRKDIR}/${SSL_DISTNAME}/pkg.eapi/*.h ${WRKSRC}/src/include/ + +#pre-patch: +# @cd ${WRKSRC} && ${CAT} \ +# ../${SSL_DISTNAME}/pkg.eapi/eapi.patch \ +# ../${SSL_DISTNAME}/pkg.sslcfg/sslcfg.patch \ +# ../${SSL_DISTNAME}/pkg.sslmod/sslmod.patch \ +# ../${SSL_DISTNAME}/pkg.sslsup/sslsup.patch \ +# | ${PATCH} ${PATCH_ARGS} +# @cd ${WRKSRC} && tail +129 \ +# ../${SSL_DISTNAME}/pkg.ssldoc/ssldoc.patch \ +# | ${PATCH} ${PATCH_ARGS} post-patch: @find ${WRKSRC}/htdocs -name '*.orig' | xargs ${RM} + @${CHMOD} +x ${WRKSRC}/${CONFIGURE_SCRIPT} post-build: ${SED} s#@PREFIX@#${PREFIX}#g <${FILESDIR}/apache.sh \ diff --git a/www/apache6/files/md5 b/www/apache6/files/md5 index cd3a8787e56..fa1d4167dfc 100644 --- a/www/apache6/files/md5 +++ b/www/apache6/files/md5 @@ -1,5 +1,5 @@ -$NetBSD: md5,v 1.1.1.1 1999/07/23 17:53:29 itojun Exp $ +$NetBSD: md5,v 1.2 1999/07/23 18:19:30 itojun Exp $ MD5 (apache_1.3.6.tar.gz) = b4114ed78f296bfe424c4ba05dccc643 -MD5 (mod_ssl-2.2.8-1.3.6.tar.gz) = 0aaf0ff78d38cc53ad10fe73cc42a0f5 MD5 (sitedrivenby.gif) = ad0647dceb931d02bfd046e55915f7b1 +MD5 (apache-136-v6-19990724.diff.gz) = cab405b60a916219f90bd048a2078616 diff --git a/www/apache6/files/patch-sum b/www/apache6/files/patch-sum index 885e874e36f..cfcf6615109 100644 --- a/www/apache6/files/patch-sum +++ b/www/apache6/files/patch-sum @@ -1,12 +1,10 @@ -$NetBSD: patch-sum,v 1.1.1.1 1999/07/23 17:53:30 itojun Exp $ +$NetBSD: patch-sum,v 1.2 1999/07/23 18:19:30 itojun Exp $ -MD5 (patch-aa) = 94caf42a041fc6d4d92eeffdb4492543 +MD5 (patch-aa) = 89c66d7772eb6f558198d9efc0fd58e9 MD5 (patch-ab) = 4b835238ed8e929366119786655a0ffc MD5 (patch-ae) = 2cd742f756f4cf2b9aa420ece607b069 -MD5 (patch-af) = cefef0d44750fcb5a32c893c9b33a3c2 MD5 (patch-ag) = 05d7657a8048c3d64ce4843af547479b MD5 (patch-ah) = c3e3a232e0c5028a15dea4473bf39955 MD5 (patch-aj) = e4878583ffc2957e50c25d3d22d1d4db MD5 (patch-ak) = 789f4a45ea6f9ee5b739db378326b3de MD5 (patch-al) = 392b4228824401ad7d1676d2054fa1d6 -MD5 (patch-am) = 0c970f2338262248f41fcd8ebfde0bce diff --git a/www/apache6/patches/patch-aa b/www/apache6/patches/patch-aa index ef599868f6b..8df3e0e0edf 100644 --- a/www/apache6/patches/patch-aa +++ b/www/apache6/patches/patch-aa @@ -1,7 +1,7 @@ -$NetBSD: patch-aa,v 1.1.1.1 1999/07/23 17:53:30 itojun Exp $ +$NetBSD: patch-aa,v 1.2 1999/07/23 18:19:30 itojun Exp $ ---- Makefile.tmpl.orig Fri May 7 09:49:05 1999 -+++ Makefile.tmpl Fri May 7 09:52:16 1999 +--- Makefile.tmpl.orig Mon Mar 15 16:38:46 1999 ++++ Makefile.tmpl Fri Jul 23 10:07:16 1999 @@ -114,7 +114,7 @@ datadir = @datadir@ iconsdir = $(datadir)/icons @@ -11,42 +11,7 @@ $NetBSD: patch-aa,v 1.1.1.1 1999/07/23 17:53:30 itojun Exp $ includedir = @includedir@ localstatedir = @localstatedir@ runtimedir = @runtimedir@ -@@ -344,34 +344,6 @@ - file=`echo $${mod} | sed -e 's;^.*/\([^/]*\);\1;'`; \ - echo "$(INSTALL_DSO) $(TOP)/$(SRC)/$${mod} $(root)$(libexecdir)/$${file}"; \ - $(INSTALL_DSO) $(TOP)/$(SRC)/$${mod} $(root)$(libexecdir)/$${file}; \ -- name=`$(TOP)/$(AUX)/fmn.sh $(TOP)/$(SRC)/$${mod}`; \ -- if [ ".$$name" = .ssl_module ]; then \ -- echo "<IfDefine SSL>" >>$(SRC)/.apaci.install.conf; \ -- fi; \ -- echo dummy | awk '{ printf("LoadModule %-18s %s\n", modname, modpath); }' \ -- modname="$${name}" modpath="$(libexecdir_relative)$${file}" >>$(SRC)/.apaci.install.conf; \ -- if [ ".$$name" = .ssl_module ]; then \ -- echo "</IfDefine>" >>$(SRC)/.apaci.install.conf; \ -- fi; \ -- done; \ -- echo "" >>$(SRC)/.apaci.install.conf; \ -- echo "# Reconstruction of the complete module list from all available modules" >>$(SRC)/.apaci.install.conf; \ -- echo "# (static and shared ones) to achieve correct module execution order." >>$(SRC)/.apaci.install.conf; \ -- echo "# [WHENEVER YOU CHANGE THE LOADMODULE SECTION ABOVE UPDATE THIS, TOO]" >>$(SRC)/.apaci.install.conf; \ -- echo "ClearModuleList" >>$(SRC)/.apaci.install.conf; \ -- for mod in `egrep "^[ ]*(Add|Shared)Module" $(SRC)/Configuration.apaci |\ -- sed -e 's:[ ]*SharedModule::' \ -- -e 's:[ ]*AddModule::' \ -- -e 's:modules/[^/]*/::' \ -- -e 's:[ ]lib: mod_:' \ -- -e 's:\.[soam]*$$:.c:'`; do \ -- if [ ".$$mod" = .mod_ssl.c ]; then \ -- echo "<IfDefine SSL>" >>$(SRC)/.apaci.install.conf; \ -- fi; \ -- echo "AddModule $$mod" >>$(SRC)/.apaci.install.conf; \ -- if [ ".$$mod" = .mod_ssl.c ]; then \ -- echo "</IfDefine>" >>$(SRC)/.apaci.install.conf; \ -- fi; \ - done; \ - fi - @echo "<=== [programs]" -@@ -453,12 +425,13 @@ +@@ -388,12 +388,13 @@ find $(root)$(htdocsdir)/ -type d -exec chmod a+rx {} \; ; \ find $(root)$(htdocsdir)/ -type f -exec chmod a+r {} \; ; \ fi @@ -61,7 +26,7 @@ $NetBSD: patch-aa,v 1.1.1.1 1999/07/23 17:53:30 itojun Exp $ > $(TOP)/$(SRC)/.apaci.install.tmp; \ echo "$(INSTALL_DATA) $(TOP)/conf/$${script}[*] $(root)$(cgidir)/$${script}"; \ $(INSTALL_DATA) $(TOP)/$(SRC)/.apaci.install.tmp $(root)$(cgidir)/$${script}; \ -@@ -475,7 +448,7 @@ +@@ -410,7 +411,7 @@ # and initial config files while preserving existing ones. install-config: @echo "===> [config: Installing Apache configuration files]" diff --git a/www/apache6/patches/patch-af b/www/apache6/patches/patch-af deleted file mode 100644 index f586fbd0f48..00000000000 --- a/www/apache6/patches/patch-af +++ /dev/null @@ -1,86 +0,0 @@ -$NetBSD: patch-af,v 1.1.1.1 1999/07/23 17:53:30 itojun Exp $ - ---- src/modules/standard/mod_include.c.orig Thu Sep 24 10:06:42 1998 -+++ src/modules/standard/mod_include.c Mon Dec 7 11:17:39 1998 -@@ -92,7 +92,11 @@ - #include "http_log.h" - #include "http_main.h" - #include "util_script.h" -+#include "ap_include_extern.h" -+#include "ap_hook.h" - #endif -+#define get_tag ap_include_get_tag -+#define parse_string ap_include_parse_string - - #define STARTING_SEQUENCE "<!--#" - #define ENDING_SEQUENCE "-->" -@@ -354,7 +358,8 @@ - * the tag value is html decoded if dodecode is non-zero - */ - --static char *get_tag(pool *p, FILE *in, char *tag, int tagbuf_len, int dodecode) -+API_EXPORT(char *) -+ap_include_get_tag(pool *p, FILE *in, char *tag, int tagbuf_len, int dodecode) - { - char *t = tag, *tag_val, c, term; - -@@ -473,7 +478,7 @@ - /* - * Do variable substitution on strings - */ --static void parse_string(request_rec *r, const char *in, char *out, -+API_EXPORT(void) ap_include_parse_string(request_rec *r, const char *in, char *out, - size_t length, int leave_name) - { - char ch; -@@ -666,7 +671,8 @@ - parse_string(r, tag_val, parsed_string, sizeof(parsed_string), 0); - if (tag[0] == 'f') { - /* be safe; only files in this directory or below allowed */ -- if (!is_only_below(parsed_string)) { -+ if ((ap_allow_options(r) & OPT_INCNOEXEC) && -+ !is_only_below(parsed_string)) { - error_fmt = "unable to include file \"%s\" " - "in parsed file %s"; - } -@@ -1010,7 +1016,8 @@ - int ret=0; - - if (!strcmp(tag, "file")) { -- ap_getparents(tag_val); /* get rid of any nasties */ -+ if (ap_allow_options(r) & OPT_INCNOEXEC) -+ ap_getparents(tag_val); /* get rid of any nasties */ - - rr = ap_sub_req_lookup_file(tag_val, r); - -@@ -2090,6 +2097,16 @@ - } - } - -+API_EXPORT(int) -+ap_include_register_extern(const char *cmd, ap_include_extern_func func) { -+ char cmdbuf[40] = "include::"; -+ -+ strncat(cmdbuf, cmd, 30); -+ ap_hook_configure(cmdbuf, AP_HOOK_SIG5(int,ptr,ptr,ptr,ptr), AP_HOOK_TOPMOST); -+ ap_hook_register(cmdbuf, func, NULL); -+ -+ return 0; -+} - - - /* -------------------------- The main function --------------------------- */ -@@ -2214,6 +2231,13 @@ - } - #endif - else { -+ char cmdbuf[40] = "include::"; -+ -+ strncat(cmdbuf, directive, 30); -+ if ((ap_hook_status(cmdbuf) >= AP_HOOK_STATE_CONFIGURED) && -+ (ap_hook_call(cmdbuf, &ret, f, r, error, timefmt) == TRUE)) -+ continue; -+ - ap_log_rerror(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, r, - "httpd: unknown directive \"%s\" " - "in parsed doc %s", diff --git a/www/apache6/patches/patch-am b/www/apache6/patches/patch-am deleted file mode 100644 index 5725a4c584e..00000000000 --- a/www/apache6/patches/patch-am +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-am,v 1.1.1.1 1999/07/23 17:53:30 itojun Exp $ - ---- src/ap/ap_hook.c.orig Mon Dec 7 10:31:53 1998 -+++ src/ap/ap_hook.c Mon Dec 7 10:32:48 1998 -@@ -705,6 +705,15 @@ - *((int *)v_rc) = ((int(*)(void *, void *, void *, int))(hf->hf_ptr))(v1, v2, v3, v4); - rc = (*((int *)v_rc) != he->he_modeval.v_int); - } -+ else if (he->he_sig == AP_HOOK_SIG5(int, ptr, ptr, ptr, ptr)) { -+ /* Call: int func(ptr,ptr,ptr,ptr) */ -+ void *v1 = va_arg(ap, va_type(ptr)); -+ void *v2 = va_arg(ap, va_type(ptr)); -+ void *v3 = va_arg(ap, va_type(ptr)); -+ void *v4 = va_arg(ap, va_type(ptr)); -+ *((int *)v_rc) = ((int(*)(void *, void *, void *, void *))(hf->hf_ptr))(v1, v2, v3, v4); -+ rc = (*((int *)v_rc) != he->he_modeval.v_int); -+ } - else if (he->he_sig == AP_HOOK_SIG6(int, ptr, ptr, ptr, ptr, int)) { - /* Call: int func(ptr,ptr,ptr,ptr,int) */ - void *v1 = va_arg(ap, va_type(ptr)); diff --git a/www/apache6/pkg/COMMENT b/www/apache6/pkg/COMMENT index ba3bcc3a11c..d1274545568 100644 --- a/www/apache6/pkg/COMMENT +++ b/www/apache6/pkg/COMMENT @@ -1 +1 @@ -The Apache web server (http://www.apache.org/) +The Apache web server (http://www.apache.org/), with IPv6 support diff --git a/www/apache6/pkg/DESCR b/www/apache6/pkg/DESCR index ec312aa9461..b7a2fcba5d9 100644 --- a/www/apache6/pkg/DESCR +++ b/www/apache6/pkg/DESCR @@ -5,3 +5,6 @@ to add modules that add many other features. You'll have to edit the configuration files in /usr/pkg/http/conf before you start it. The default root directory for documents is /usr/pkg/http/htdocs. You can start the server with `apachectl start'. + +This package is IPv6 ready. Apache module API is slightly modified +so some of third-party modules may not work. diff --git a/www/apache6/pkg/PLIST b/www/apache6/pkg/PLIST index fe4e0f09b0b..7bb593ac851 100644 --- a/www/apache6/pkg/PLIST +++ b/www/apache6/pkg/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.1.1.1 1999/07/23 17:53:30 itojun Exp $ +@comment $NetBSD: PLIST,v 1.2 1999/07/23 18:19:31 itojun Exp $ bin/dbmmanage bin/htdigest bin/htpasswd @@ -14,10 +14,10 @@ include/httpd/ap.h include/httpd/ap_compat.h include/httpd/ap_config.h include/httpd/ap_config_auto.h -include/httpd/ap_ctx.h +@comment include/httpd/ap_ctx.h include/httpd/ap_ctype.h -include/httpd/ap_hook.h -include/httpd/ap_include_extern.h +@comment include/httpd/ap_hook.h +@comment include/httpd/ap_include_extern.h include/httpd/ap_md5.h include/httpd/ap_mmn.h include/httpd/buff.h |