Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 31 Jan 2015 15:22:51 +0000 (UTC)
From:      Olli Hauer <ohauer@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r378215 - in head/www/apache24: . files
Message-ID:  <201501311522.t0VFMplc027736@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ohauer
Date: Sat Jan 31 15:22:51 2015
New Revision: 378215
URL: https://svnweb.freebsd.org/changeset/ports/378215
QAT: https://qat.redports.org/buildarchive/r378215/

Log:
  - update to 2.4.12
  
  - change MPM backend from static to dynamic,
    but keep mpm_prefork for compatiblity with e.g. php modules
  - install dedicated MPM load file in case httpd was build with modular MPM
    (modules.d/000_mpm_prefork_fallback.conf)
  - disable SSLv3 and SSLv2 fallback in sample httpd-ssl-conf
  - use @sample macro instead EXAMPLESDIR
  - add some SSLCipherSuite examples for OpenSSL >= 1.0.x
  - add libressl support [1]
  - add pkg-install script (to handle new modular MPM build)
  - build now most all modules, so users using packages don't have
    to run a custom build for missing modules
  - fix suexec mode
  
  PR:		196139 [1]
  MFH:		2015Q1

Added:
  head/www/apache24/files/patch-acinclude.m4   (contents, props changed)
  head/www/apache24/files/patch-include__ap_config_auto.h.in   (contents, props changed)
  head/www/apache24/files/patch-modules__ssl__ssl_engine_init.c   (contents, props changed)
  head/www/apache24/files/patch-modules__ssl__ssl_engine_rand.c   (contents, props changed)
  head/www/apache24/files/patch-modules__ssl__ssl_util_ssl.c   (contents, props changed)
  head/www/apache24/files/patch-modules__ssl__ssl_util_ssl.h   (contents, props changed)
  head/www/apache24/files/pkg-deinstall.in   (contents, props changed)
  head/www/apache24/files/pkg-install.in   (contents, props changed)
Deleted:
  head/www/apache24/files/patch-r1611744-modules__lua__lua_request.c
Modified:
  head/www/apache24/Makefile
  head/www/apache24/Makefile.modules
  head/www/apache24/Makefile.options
  head/www/apache24/Makefile.options.desc
  head/www/apache24/distinfo
  head/www/apache24/files/patch-Makefile.in
  head/www/apache24/files/patch-config.layout
  head/www/apache24/files/patch-configure.in
  head/www/apache24/files/patch-docs__conf__extra__httpd-autoindex.conf.in
  head/www/apache24/files/patch-docs__conf__extra__httpd-ssl.conf.in
  head/www/apache24/files/patch-docs__conf__extra__httpd-userdir.conf.in
  head/www/apache24/files/patch-docs__conf__httpd.conf.in
  head/www/apache24/files/patch-support__Makefile.in
  head/www/apache24/files/patch-support__apachectl.in
  head/www/apache24/files/patch-support__apxs.in
  head/www/apache24/files/patch-support__envvars-std.in
  head/www/apache24/files/patch-support__log_server_status.in
  head/www/apache24/pkg-help
  head/www/apache24/pkg-message
  head/www/apache24/pkg-plist

Modified: head/www/apache24/Makefile
==============================================================================
--- head/www/apache24/Makefile	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/Makefile	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,8 +1,7 @@
 # $FreeBSD$
 
 PORTNAME=	apache24
-PORTVERSION=	2.4.10
-PORTREVISION=	2
+PORTVERSION=	2.4.12
 CATEGORIES=	www ipv6
 MASTER_SITES=	${MASTER_SITE_APACHE_HTTPD}
 DISTNAME=	httpd-${PORTVERSION}
@@ -28,6 +27,10 @@ CPE_VENDOR=	apache
 CPE_PRODUCT=	http_server
 
 PORTDOCS=	*
+SUB_FILES=	pkg-install pkg-deinstall
+
+# Fallback MPM after switching from static to modular MPM
+SUB_LIST+=	MPMF="000_mpm_prefork_fallback.conf"
 
 USERS=		www
 GROUPS=		www
@@ -102,7 +105,7 @@ CONFIGURE_ENV=	CONFIG_SHELL="${SH}" \
 
 MAKE_ENV+=	EXPR_COMPAT=yes \
 		INSTALL_MAN="${INSTALL_MAN}" \
-		EXAMPLESDIR=${EXAMPLESDIR}
+		DATADIR=${DATADIR}
 
 #=====================================================
 # CONFIGURE_ARGS will be handled in Makefile.modules,
@@ -129,36 +132,38 @@ post-extract:
 # remove possible leftover .svn directories in the sources
 	@${FIND} ${WRKSRC} -type d -name .svn -print | ${XARGS} ${RM} -rf
 # limit grep results ...
-	@${FIND} ${WRKSRC} -type f \( -name 'NWGNU*' -o -name '*.ds?' -o -name '*.dep' -o -name '*.mak' -o -name '*.win' \) -delete
+	@${FIND} ${WRKSRC} -type f \( -name 'NWGNU*' -o -name '*.ds?' -o -name '*.dep' -o -name '*.mak' -o -name '*.win' -o -name '*.vbs' -o -name '*.wsf' \) -delete
+# make sure the configure script contains our patches, preserve the original script for comparsion
+	-${MV} -v ${WRKSRC}/configure ${WRKSRC}/configure.upstream
 
-# make qa script happy, it complains on empty dirs even 'PORTDOCS=*' is set
-# use RMDIR in case upstream ever place some files into this dirs
+# make stage-qa script happy, it complains on empty dirs even 'PORTDOCS=*' is set
+# use RMDIR in case upstream ever place some files into this directories
 .for d in xsl/util xsl lang
 	-${RMDIR} ${WRKSRC}/docs/manual/style/${d}
 .endfor
 
 post-patch:
-	@${REINPLACE_CMD} -e 's," PLATFORM ",FreeBSD,' ${WRKSRC}/server/core.c
-# IPv4_mapping fix: https://issues.apache.org/bugzilla/show_bug.cgi?id=53824
-	@${REINPLACE_CMD} -e 's|freebsd5|freebsd|' \
-		-e 's|^perlbin=.*|perlbin=${PERL}|' \
-		${WRKSRC}/configure.in ${WRKSRC}/configure
-	@${RM} -f ${WRKSRC}/docs/docroot/*.bak
+	${REINPLACE_CMD} -e 's," PLATFORM ",FreeBSD,' ${WRKSRC}/server/core.c
+	${REINPLACE_CMD} -e 's|logs/error_log|/var/log/httpd-error.log|' \
+		${WRKSRC}/include/httpd.h
+	${REINPLACE_CMD} -e 's|perlbin=.*|perlbin=${PERL}|' \
+		${WRKSRC}/configure.in
+	${RM} -f ${WRKSRC}/docs/docroot/*.bak
 	${INSTALL_DATA} ${WRKSRC}/NOTICE ${WRKSRC}/docs/manual
 
 post-configure:
 	@FTPUSERS=`${EGREP} -v '^#' /etc/ftpusers| ${TR} -s "\n" " "` ;\
-		${REINPLACE_CMD} -e "s,%%FTPUSERS%%,$${FTPUSERS}," ${WRKSRC}/docs/conf/extra/httpd-userdir.conf
-	@${REINPLACE_CMD} -e "s,%%WWWOWN%%,${WWWOWN}," -e "s,%%WWWGRP%%,${WWWGRP}," ${WRKSRC}/docs/conf/httpd.conf
-	@${REINPLACE_CMD} -e "s,%%PREFIX%%,${PREFIX}," ${WRKSRC}/support/envvars-std
+		${REINPLACE_CMD} -e "s,%%FTPUSERS%%,$${FTPUSERS}," \
+			${WRKSRC}/docs/conf/extra/httpd-userdir.conf
+	${REINPLACE_CMD} -e "s,%%WWWOWN%%,${WWWOWN}," -e "s,%%WWWGRP%%,${WWWGRP}," \
+		${WRKSRC}/docs/conf/httpd.conf
+	${REINPLACE_CMD} -e "s,%%PREFIX%%,${PREFIX}," ${WRKSRC}/support/envvars-std
 
 post-install:
 	@${MKDIR} ${ETC_SUBDIRS:S|^|${STAGEDIR}${ETCDIR}/|}
 	${INSTALL_DATA} ${FILESDIR}/no-accf.conf ${STAGEDIR}${ETCDIR}/Includes/
 # place for 3rd party module configuration
 	${INSTALL_DATA} ${FILESDIR}/README_modules.d ${STAGEDIR}${ETCDIR}/modules.d/
-	@${MKDIR} ${STAGEDIR}/${EXAMPLESDIR}/modules.d
-	${INSTALL_DATA} ${FILESDIR}/README_modules.d ${STAGEDIR}${EXAMPLESDIR}/modules.d
 # strip returns an error for non binary files, but we have a big mix
 	-${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/* 2>/dev/null
 	-${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/*

Modified: head/www/apache24/Makefile.modules
==============================================================================
--- head/www/apache24/Makefile.modules	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/Makefile.modules	Sat Jan 31 15:22:51 2015	(r378215)
@@ -43,9 +43,11 @@ IGNORE=	SESSION_CRYPTO requires APR-util
 # XXX in case we use OPTIONS for MPM
 # we do not have a WITH_MPM variable
 .if ${PORT_OPTIONS:MMPM_SHARED}
+SUB_LIST+=		MPM_FALLBACK_CHECK=""
 PLIST_SUB+=		MPM_SHARED=""
 CONFIGURE_ARGS+=	--enable-mpms-shared=all
 .else
+SUB_LIST+=		MPM_FALLBACK_CHECK="\#"
 PLIST_SUB+=		MPM_SHARED="@comment "
 .endif
 

Modified: head/www/apache24/Makefile.options
==============================================================================
--- head/www/apache24/Makefile.options	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/Makefile.options	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,9 +1,9 @@
 # $FreeBSD$
 
 # ===========================================================
-# The list of modules are no longer classified in CATEGORIES.
-# We use for enabled/disabled now the resulting modules from
-# configure --enable-modules=most
+# Only the most important modules are enabled per default in 
+# httpd.conf, therfore build all modules not depending on other
+# ports, marked as example or developer module.
 #
 # Required modules without OPTION:
 #   UNIXD LOG_CONFIG
@@ -11,10 +11,11 @@
 
 PROXY_ENABLED_MODULES= \
 	PROXY_AJP PROXY_BALANCER PROXY_CONNECT PROXY_EXPRESS PROXY_FCGI \
-	PROXY_FTP PROXY_HTTP PROXY_SCGI PROXY_WSTUNNEL
+	PROXY_FDPASS PROXY_FTP PROXY_HTTP PROXY_SCGI PROXY_WSTUNNEL
 
+# mod_proxy_html depends on libxml2
 PROXY_DISABLED_MODULES= \
-	PROXY_FDPASS PROXY_HTML
+	PROXY_HTML
 
 # SESSION_CRYPTO need APR build with crypto (EVP support in APR)
 SESSION_ENABLED_MODULES= \
@@ -22,45 +23,39 @@ SESSION_ENABLED_MODULES= \
 
 SESSION_DISABLED_MODULES=
 
-HEARTBEAT_MODULES= \
-	HEARTBEAT HEARTMONITOR LBMETHOD_HEARTBEAT
-
 EXAMPLE_MODULES= \
-	CASE_FILTER CASE_FILTER_IN ECHO EXAMPLE_HOOKS EXAMPLE_IPC \
+	BUCKETEER CASE_FILTER CASE_FILTER_IN ECHO EXAMPLE_HOOKS EXAMPLE_IPC \
 	OPTIONAL_FN_EXPORT OPTIONAL_FN_IMPORT OPTIONAL_HOOK_EXPORT \
 	OPTIONAL_HOOK_IMPORT
 
-DEV_MODULES=	BUCKETEER
-
 MOST_ENABLED_MODULES= \
 	ACCESS_COMPAT ACTIONS ALIAS ALLOWMETHODS ASIS \
 	AUTHN_ANON AUTHN_CORE AUTHN_DBD AUTHN_DBM AUTHN_FILE AUTHN_SOCACHE \
-	AUTHZ_CORE AUTHZ_DBD AUTHZ_DBM AUTHZ_GROUPFILE AUTHZ_HOST \
+	AUTHZ_CORE AUTHZ_DBD AUTHZ_DBM AUTHNZ_FCGI AUTHZ_GROUPFILE AUTHZ_HOST \
 	AUTHZ_OWNER AUTHZ_USER \
 	AUTH_BASIC AUTH_DIGEST AUTH_FORM AUTOINDEX \
 	BUFFER \
-	CACHE CACHE_DISK CACHE_SOCACHE CGI CGID \
-	DAV DAV_FS DBD DEFLATE DIR DUMPIO \
+	CACHE CACHE_DISK CACHE_SOCACHE CERN_META CGI CGID \
+	CHARSET_LITE \
+	DATA DAV DAV_FS DAV_LOCK DBD DEFLATE DIALUP DIR DUMPIO \
 	ENV EXPIRES EXT_FILTER \
 	FILE_CACHE FILTER \
-	HEADERS \
+	HEADERS HEARTBEAT HEARTMONITOR \
 	IMAGEMAP INCLUDE INFO \
 	LBMETHOD_BYBUSYNESS LBMETHOD_BYREQUESTS LBMETHOD_BYTRAFFIC \
-	LOGIO LOG_DEBUG \
+	LBMETHOD_HEARTBEAT LOGIO LOG_DEBUG LOG_FORENSIC \
 	MACRO MIME MIME_MAGIC \
 	NEGOTIATION \
-	RATELIMIT REMOTEIP REQTIMEOUT REQUEST REWRITE \
-	SED SETENVIF SLOTMEM_SHM SOCACHE_DBM SOCACHE_MEMCACHE SOCACHE_SHMCB SPELING \
-	SSL STATUS SUBSTITUTE \
-	UNIQUE_ID USERDIR \
-	VERSION VHOST_ALIAS
+	RATELIMIT REFLECTOR REMOTEIP REQTIMEOUT REQUEST REWRITE \
+	SED SETENVIF \
+	SLOTMEM_PLAIN SLOTMEM_SHM SOCACHE_DBM SOCACHE_MEMCACHE SOCACHE_SHMCB \
+	SPELING SSL STATUS SUBSTITUTE \
+	UNIQUE_ID USERDIR USERTRACK \
+	VERSION VHOST_ALIAS \
+	WATCHDOG 
 
 MOST_DISABLED_MODULES:= \
-	AUTHNZ_LDAP AUTHNZ_FCGI LDAP CERN_META CHARSET_LITE DATA DAV_LOCK DIALUP IDENT \
-	LOG_FORENSIC LUA REFLECTOR SLOTMEM_PLAIN SOCACHE_DC SUEXEC USERTRACK \
-	XML2ENC WATCHDOG ${HEARTBEAT_MODULES} ${EXAMPLE_MODULES} ${DEV_MODULES}
-
-#MULTI_MODULES:=	${OPTIONS_MULTI}
+	AUTHNZ_LDAP IDENT LDAP LUA SOCACHE_DC SUEXEC XML2ENC
 
 # XXX PROXY and SESSION are modules but also used to
 #     enable/disable additional PROXY/SESSION modules
@@ -70,21 +65,20 @@ ALL_MODULES_CATEGORIES=	\
 	MOST_ENABLED MOST_DISABLED MULTI \
 	PROXY_ENABLED PROXY_DISABLED \
 	SESSION_ENABLED SESSION_DISABLED \
-	META
-
-#STATIC=	STATIC_AB STATIC_CHECKGID STATIC_FCGISTARTER STATIC_HTCACHECLEAN \
-#		STATIC_HTDBM STATIC_HTDIGEST STATIC_HTPASSWD STATIC_HTTXT2DBM \
-#		STATIC_LOGRESOLVE STATIC_ROTATELOGS STATIC_SUPPORT
+	META EXAMPLE
 
 ADDITIONAL_OPT=	LUAJIT IPV4_MAPPED
 
 # ===================================================================================
-NO_OPTIONS_SORT=	yes
+#NO_OPTIONS_SORT=	yes
 
-OPTIONS_MULTI=		${META_MODULES}
+OPTIONS_MULTI:=		${META_MODULES}
 OPTIONS_MULTI_PROXY:=	${PROXY_ENABLED_MODULES} ${PROXY_DISABLED_MODULES}
 OPTIONS_MULTI_SESSION:=	${SESSION_ENABLED_MODULES} ${SESSION_DISABLED_MODULES}
 
+OPTIONS_GROUP=		EXAMPLE
+OPTIONS_GROUP_EXAMPLE:=	${EXAMPLE_MODULES}
+
 OPTIONS_RADIO=			SHARED_MPM
 OPTIONS_RADIO_SHARED_MPM=	MPM_SHARED
 
@@ -104,5 +98,6 @@ OPTIONS_DEFAULT:=		\
 	${OPTIONS_MULTI}	\
 	${SESSION_ENABLED_MODULES} \
 	${PROXY_ENABLED_MODULES} \
+	MPM_SHARED \
 	MPM_PREFORK
 

Modified: head/www/apache24/Makefile.options.desc
==============================================================================
--- head/www/apache24/Makefile.options.desc	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/Makefile.options.desc	Sat Jan 31 15:22:51 2015	(r378215)
@@ -7,6 +7,7 @@ PROXY_DESC=			Build enabled PROXY module
 SESSION_DESC=			Build enabled SESSION modules
 DEFAULT_MPM_DESC=		The default MPM module
 SHARED_MPM_DESC=		Build all MPMs as shared Module
+EXAMPLE_DESC=			Example and devel modules (do not use in prod)
 
 # =====================================
 # MPMs
@@ -88,7 +89,7 @@ DUMPIO_DESC=			I/O dump filter
 ECHO_DESC=			(dev) example echo server
 ENV_DESC=			Clearing/setting of ENV vars
 EXAMPLE_HOOKS_DESC=		(dev) example hook callback handler module
-EXAMPLE_IPC_DESC=		(dev) Example of shared memory and mutex usage
+EXAMPLE_IPC_DESC=		(dev) example of shared memory and mutex usage
 EXPIRES_DESC=			Expires header control
 EXT_FILTER_DESC=		External filter module
 

Modified: head/www/apache24/distinfo
==============================================================================
--- head/www/apache24/distinfo	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/distinfo	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,2 +1,2 @@
-SHA256 (apache24/httpd-2.4.10.tar.bz2) = 176c4dac1a745f07b7b91e7f4fd48f9c48049fa6f088efe758d61d9738669c6a
-SIZE (apache24/httpd-2.4.10.tar.bz2) = 5031834
+SHA256 (apache24/httpd-2.4.12.tar.bz2) = ad6d39edfe4621d8cc9a2791f6f8d6876943a9da41ac8533d77407a2e630eae4
+SIZE (apache24/httpd-2.4.12.tar.bz2) = 5054838

Modified: head/www/apache24/files/patch-Makefile.in
==============================================================================
--- head/www/apache24/files/patch-Makefile.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-Makefile.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,28 +1,65 @@
---- ./Makefile.in.orig	2012-12-17 12:50:41.000000000 +0100
-+++ ./Makefile.in	2014-07-08 06:27:38.000000000 +0200
-@@ -32,12 +32,10 @@
+--- Makefile.in.orig	2012-12-17 11:50:41 UTC
++++ Makefile.in
+@@ -32,12 +32,9 @@ include $(top_srcdir)/build/program.mk
  install-conf:
  	@echo Installing configuration files
  	@$(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir) $(DESTDIR)$(sysconfdir)/extra
 -	@$(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir)/original/extra
-+	@$(MKINSTALLDIRS) $(DESTDIR)$(EXAMPLESDIR) $(DESTDIR)$(EXAMPLESDIR)/extra
  	@cd $(top_srcdir)/docs/conf; \
  	for i in mime.types magic; do \
 -	    if test ! -f $(DESTDIR)$(sysconfdir)/$$i; then \
 -	        $(INSTALL_DATA) $$i $(DESTDIR)$(sysconfdir); \
 -	    fi; \
-+	    $(INSTALL_DATA) $$i $(DESTDIR)$(EXAMPLESDIR); \
++	    $(INSTALL_DATA) $$i $(DESTDIR)$(sysconfdir)/$${i}.sample; \
  	done; \
  	for j in $(top_srcdir)/docs/conf $(top_builddir)/docs/conf ; do \
  	    cd $$j ; \
-@@ -78,15 +76,12 @@
+@@ -58,6 +55,16 @@ install-conf:
+ 	    				-e 's#@@SSLPort@@#$(SSLPORT)#g' \
+ 	    				-e 'p' \
+ 	    				< $$i; \
++	    			if echo " $(DSO_MODULES) "|$(EGREP) " cgi " > /dev/null ; then \
++	    				have_cgi="1"; \
++	    			else \
++	    				have_cgi="0"; \
++	    			fi; \
++	    			if echo " $(DSO_MODULES) "|$(EGREP) " cgid " > /dev/null ; then \
++	    				have_cgid="1"; \
++	    			else \
++	    				have_cgid="0"; \
++	    			fi; \
+ 	    			for j in $(DSO_MODULES) "^EOL^"; do \
+ 	    				if test $$j != "^EOL^"; then \
+ 	    					if echo ",$(ENABLED_DSO_MODULES),"|$(EGREP) ",$$j," > /dev/null ; then \
+@@ -68,8 +75,18 @@ install-conf:
+ 	    					if test "$(LOAD_ALL_MODULES)" = "yes"; then \
+ 	    						loading_disabled=""; \
+ 	    					fi; \
+-    						echo "$${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
+-	    				fi; \
++							if test $$j = "cgid" -a "$$have_cgi" = "1"; then \
++								echo "<IfModule !mpm_prefork_module>"; \
++								echo "	$${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
++								echo "</IfModule>"; \
++							elif test $$j = "cgi" -a "$$have_cgid" = "1"; then \
++								echo "<IfModule mpm_prefork_module>"; \
++								echo "	$${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
++								echo "</IfModule>"; \
++							else \
++								echo "$${loading_disabled}LoadModule $${j}_module $(rel_libexecdir)/mod_$${j}.so"; \
++							fi; \
++						fi; \
+ 	    			done; \
+ 	    			sed -e '1,/@@LoadModule@@/d' \
+ 	    				-e '/@@LoadModule@@/d' \
+@@ -78,15 +95,12 @@ install-conf:
  	    				-e 's#@@SSLPort@@#$(SSLPORT)#g' \
  	    				< $$i; \
  	    		fi \
 -	    	) > $(DESTDIR)$(sysconfdir)/original/$$i; \
 -	    	chmod 0644 $(DESTDIR)$(sysconfdir)/original/$$i; \
-+	    	) > $(DESTDIR)$(EXAMPLESDIR)/$$i; \
-+	    	chmod 0644 $(DESTDIR)$(EXAMPLESDIR)/$$i; \
++	    	) > $(DESTDIR)$(sysconfdir)/$${i}.sample; \
++	    	chmod 0644 $(DESTDIR)$(sysconfdir)/$${i}.sample; \
  	    	file=$$i; \
  	    	if [ "$$i" = "httpd.conf" ]; then \
  	    		file=`echo $$i|sed s/.*.conf/$(PROGRAM_NAME).conf/`; \
@@ -33,7 +70,7 @@
  	    	fi; \
  	    done ; \
  	done ; \
-@@ -137,48 +132,25 @@
+@@ -137,48 +151,25 @@ dox:
  	doxygen $(top_srcdir)/docs/doxygen.conf
  
  install-htdocs:
@@ -50,8 +87,8 @@
 -		cd $(DESTDIR)$(htdocsdir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \
 -	    fi; \
 -	fi
-+	    $(MKINSTALLDIRS) $(DESTDIR)$(EXAMPLESDIR) ; \
-+		test -d $(htdocs-srcdir) && (cd $(htdocs-srcdir) && cp -rp index.html $(DESTDIR)$(EXAMPLESDIR)) || true
++	    $(MKINSTALLDIRS) $(DESTDIR)$(DATADIR)/misc ; \
++		test -d $(htdocs-srcdir) && (cd $(htdocs-srcdir) && cp -rp index.html $(DESTDIR)$(DATADIR)/misc) || true
  
  install-error:
 -	-@if [ -d $(DESTDIR)$(errordir) ]; then \
@@ -91,7 +128,7 @@
  
  install-other:
  	@test -d $(DESTDIR)$(logfiledir) || $(MKINSTALLDIRS) $(DESTDIR)$(logfiledir)
-@@ -231,12 +203,7 @@
+@@ -231,12 +222,7 @@ install-man:
  	@test -d $(DESTDIR)$(manualdir)   || $(MKINSTALLDIRS) $(DESTDIR)$(manualdir)
  	@cp -p $(top_srcdir)/docs/man/*.1 $(DESTDIR)$(mandir)/man1
  	@cp -p $(top_srcdir)/docs/man/*.8 $(DESTDIR)$(mandir)/man8

Added: head/www/apache24/files/patch-acinclude.m4
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/apache24/files/patch-acinclude.m4	Sat Jan 31 15:22:51 2015	(r378215)
@@ -0,0 +1,24 @@
+--- acinclude.m4.orig	2014-01-05 08:37:21 UTC
++++ acinclude.m4
+@@ -267,9 +267,10 @@ DISTCLEAN_TARGETS = modules.mk
+ static =
+ shared = $libname
+ EOF
++            dnl https://issues.apache.org/bugzilla/show_bug.cgi?id=53882
++            DSO_MODULES="$DSO_MODULES mpm_$1"
+             # add default MPM to LoadModule list
+             if test $1 = $default_mpm; then
+-                DSO_MODULES="$DSO_MODULES mpm_$1"
+                 ENABLED_DSO_MODULES="${ENABLED_DSO_MODULES},mpm_$1"
+             fi
+         fi
+@@ -576,7 +577,8 @@ AC_DEFUN(APACHE_CHECK_OPENSSL,[
+       liberrors=""
+       AC_CHECK_HEADERS([openssl/engine.h])
+       AC_CHECK_FUNCS([SSLeay_version SSL_CTX_new], [], [liberrors="yes"])
+-      AC_CHECK_FUNCS([ENGINE_init ENGINE_load_builtin_engines])
++      dnl PR 196139, https://issues.apache.org/bugzilla/show_bug.cgi?id=57375
++      AC_CHECK_FUNCS([ENGINE_init ENGINE_load_builtin_engines SSL_CTX_use_certificate_chain RAND_egd])
+       if test "x$liberrors" != "x"; then
+         AC_MSG_WARN([OpenSSL libraries are unusable])
+       fi

Modified: head/www/apache24/files/patch-config.layout
==============================================================================
--- head/www/apache24/files/patch-config.layout	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-config.layout	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,5 +1,5 @@
---- ./config.layout.orig	2012-04-17 16:01:41.000000000 +0200
-+++ ./config.layout	2013-03-22 18:55:53.000000000 +0100
+--- config.layout.orig	2012-04-17 14:01:41 UTC
++++ config.layout
 @@ -257,17 +257,17 @@
    bindir:        ${exec_prefix}/bin
    sbindir:       ${exec_prefix}/sbin

Modified: head/www/apache24/files/patch-configure.in
==============================================================================
--- head/www/apache24/files/patch-configure.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-configure.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,6 +1,6 @@
---- ./configure.in.orig	2013-01-09 17:39:05.000000000 +0100
-+++ ./configure.in	2013-03-22 18:55:53.000000000 +0100
-@@ -111,7 +111,7 @@
+--- configure.in.orig	2015-01-22 17:33:07 UTC
++++ configure.in
+@@ -111,7 +111,7 @@ fi
  
  if test "$apr_found" = "reconfig"; then
    APR_SUBDIR_CONFIG(srclib/apr,
@@ -9,7 +9,7 @@
                      [--enable-layout=*|\'--enable-layout=*])
    dnl We must be the first to build and the last to be cleaned
    AP_BUILD_SRCLIB_DIRS="apr $AP_BUILD_SRCLIB_DIRS"
-@@ -177,7 +177,7 @@
+@@ -177,7 +177,7 @@ esac  
  
  if test "$apu_found" = "reconfig"; then
    APR_SUBDIR_CONFIG(srclib/apr-util,
@@ -18,7 +18,7 @@
                      [--enable-layout=*|\'--enable-layout=*])
    dnl We must be the last to build and the first to be cleaned
    AP_BUILD_SRCLIB_DIRS="$AP_BUILD_SRCLIB_DIRS apr-util"
-@@ -822,8 +822,14 @@
+@@ -830,8 +830,14 @@ AC_DEFINE_UNQUOTED(HTTPD_ROOT, "${ap_pre
  	[Root directory of the Apache install area])
  AC_DEFINE_UNQUOTED(SERVER_CONFIG_FILE, "${rel_sysconfdir}/${progname}.conf",
  	[Location of the config file, relative to the Apache root directory])

Modified: head/www/apache24/files/patch-docs__conf__extra__httpd-autoindex.conf.in
==============================================================================
--- head/www/apache24/files/patch-docs__conf__extra__httpd-autoindex.conf.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-docs__conf__extra__httpd-autoindex.conf.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,6 +1,6 @@
---- ./docs/conf/extra/httpd-autoindex.conf.in.orig	2010-06-15 13:05:13.000000000 +0200
-+++ ./docs/conf/extra/httpd-autoindex.conf.in	2013-03-22 18:55:53.000000000 +0100
-@@ -89,5 +89,5 @@
+--- docs/conf/extra/httpd-autoindex.conf.in.orig	2010-06-15 11:05:13 UTC
++++ docs/conf/extra/httpd-autoindex.conf.in
+@@ -89,5 +89,5 @@ HeaderName HEADER.html
  # IndexIgnore is a set of filenames which directory indexing should ignore
  # and not include in the listing.  Shell-style wildcarding is permitted.
  #

Modified: head/www/apache24/files/patch-docs__conf__extra__httpd-ssl.conf.in
==============================================================================
--- head/www/apache24/files/patch-docs__conf__extra__httpd-ssl.conf.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-docs__conf__extra__httpd-ssl.conf.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,6 +1,37 @@
---- ./docs/conf/extra/httpd-ssl.conf.in.orig	2012-12-11 10:55:03.000000000 +0100
-+++ ./docs/conf/extra/httpd-ssl.conf.in	2013-03-22 18:55:53.000000000 +0100
-@@ -86,8 +86,8 @@
+--- docs/conf/extra/httpd-ssl.conf.in.orig	2015-01-31 12:20:34 UTC
++++ docs/conf/extra/httpd-ssl.conf.in
+@@ -42,11 +42,30 @@ Listen @@SSLPort@@
+ ##  the main server and all SSL-enabled virtual hosts.
+ ##
+ 
++## disable unsecure SSL protocols
++SSLProtocol ALL -SSLv2 -SSLv3
++
+ #   SSL Cipher Suite:
+ #   List the ciphers that the client is permitted to negotiate.
+ #   See the mod_ssl documentation for a complete list.
+ SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
+ 
++## The following entries can be used as suggestions,
++##  for more information see:
++##  - http://httpd.apache.org/docs/2.4/mod/mod_ssl.html#sslciphersuite
++##  - http://blog.ivanristic.com/2013/08/configuring-apache-nginx-and-openssl-for-forward-secrecy.html
++##
++## To test your SSL implementation use for example security/sslscan or for public reachable systems https://www.ssllabs.com/
++
++## sample for OpenSSL >= 1.0.x (with RC4)
++# SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"
++
++## sample for OpenSSL >= 1.0.x (keep support for IE8 on XP)
++# SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS +RC4 RC4"
++
++## sample for OpenSSL >= 1.0.x (no RC4 support)
++# SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"
++
+ #   Speed-optimized SSL Cipher configuration:
+ #   If speed is your main concern (on busy HTTPS servers e.g.),
+ #   you might want to force clients to specific, performance
+@@ -105,8 +124,8 @@ SSLSessionCacheTimeout  300
  DocumentRoot "@exp_htdocsdir@"
  ServerName www.example.com:@@SSLPort@@
  ServerAdmin you@example.com
@@ -11,7 +42,7 @@
  
  #   SSL Engine Switch:
  #   Enable/Disable SSL for this virtual host.
-@@ -246,7 +246,7 @@
+@@ -265,7 +284,7 @@ BrowserMatch "MSIE [2-5]" \
  #   Per-Server Logging:
  #   The home of a custom SSL log file. Use this when you want a
  #   compact non-error SSL logfile on a virtual host basis.

Modified: head/www/apache24/files/patch-docs__conf__extra__httpd-userdir.conf.in
==============================================================================
--- head/www/apache24/files/patch-docs__conf__extra__httpd-userdir.conf.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-docs__conf__extra__httpd-userdir.conf.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,5 +1,5 @@
---- ./docs/conf/extra/httpd-userdir.conf.in.orig	2011-06-06 23:40:41.000000000 +0200
-+++ ./docs/conf/extra/httpd-userdir.conf.in	2013-03-22 18:55:53.000000000 +0100
+--- docs/conf/extra/httpd-userdir.conf.in.orig	2011-06-06 21:40:41 UTC
++++ docs/conf/extra/httpd-userdir.conf.in
 @@ -9,6 +9,8 @@
  #
  UserDir public_html

Modified: head/www/apache24/files/patch-docs__conf__httpd.conf.in
==============================================================================
--- head/www/apache24/files/patch-docs__conf__httpd.conf.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-docs__conf__httpd.conf.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,6 +1,6 @@
---- ./docs/conf/httpd.conf.in.orig	2012-11-08 04:05:38.000000000 +0100
-+++ ./docs/conf/httpd.conf.in	2013-10-26 19:29:20.000000000 +0200
-@@ -65,6 +65,9 @@
+--- docs/conf/httpd.conf.in.orig	2012-11-08 03:05:38 UTC
++++ docs/conf/httpd.conf.in
+@@ -65,6 +65,9 @@ Listen @@Port@@
  #
  @@LoadModule@@
  
@@ -10,7 +10,7 @@
  <IfModule unixd_module>
  #
  # If you wish httpd to run as a different user or group, you must run
-@@ -74,8 +77,8 @@
+@@ -74,8 +77,8 @@ Listen @@Port@@
  # It is usually good practice to create a dedicated user and group for
  # running httpd, as with most system services.
  #
@@ -21,7 +21,7 @@
  
  </IfModule>
  
-@@ -181,7 +184,7 @@
+@@ -181,7 +184,7 @@ DocumentRoot "@exp_htdocsdir@"
  # logged here.  If you *do* define an error logfile for a <VirtualHost>
  # container, that host's errors will be logged there and not here.
  #
@@ -30,7 +30,7 @@
  
  #
  # LogLevel: Control the number of messages logged to the error_log.
-@@ -210,13 +213,13 @@
+@@ -210,13 +213,13 @@ LogLevel warn
      # define per-<VirtualHost> access logfiles, transactions will be
      # logged therein and *not* in this file.
      #
@@ -46,7 +46,7 @@
  </IfModule>
  
  <IfModule alias_module>
-@@ -418,3 +421,5 @@
+@@ -418,3 +421,5 @@ SSLRandomSeed connect builtin
  #RequestHeader unset DNT env=bad_DNT
  #</IfModule>
  

Added: head/www/apache24/files/patch-include__ap_config_auto.h.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/apache24/files/patch-include__ap_config_auto.h.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -0,0 +1,26 @@
+# libressl support
+# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196139
+# https://issues.apache.org/bugzilla/show_bug.cgi?id=57375
+
+--- include/ap_config_auto.h.in.orig	2015-01-15 19:59:13 UTC
++++ include/ap_config_auto.h.in
+@@ -130,6 +130,9 @@
+ /* Define to 1 if you have the <pwd.h> header file. */
+ #undef HAVE_PWD_H
+ 
++/* Define to 1 if you have the `RAND_egd' function. */
++#undef HAVE_RAND_EGD
++
+ /* Define to 1 if you have the `setsid' function. */
+ #undef HAVE_SETSID
+ 
+@@ -139,6 +142,9 @@
+ /* Define to 1 if you have the `SSL_CTX_new' function. */
+ #undef HAVE_SSL_CTX_NEW
+ 
++/* Define to 1 if you have the `SSL_CTX_use_certificate_chain' function. */
++#undef HAVE_SSL_CTX_USE_CERTIFICATE_CHAIN
++
+ /* Define to 1 if you have the <stdint.h> header file. */
+ #undef HAVE_STDINT_H
+ 

Added: head/www/apache24/files/patch-modules__ssl__ssl_engine_init.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/apache24/files/patch-modules__ssl__ssl_engine_init.c	Sat Jan 31 15:22:51 2015	(r378215)
@@ -0,0 +1,31 @@
+# libressl support
+# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196139
+# https://issues.apache.org/bugzilla/show_bug.cgi?id=57375
+
+--- modules/ssl/ssl_engine_init.c.orig	2015-01-15 12:20:33 UTC
++++ modules/ssl/ssl_engine_init.c
+@@ -353,9 +353,11 @@ apr_status_t ssl_init_Engine(server_rec 
+             return ssl_die(s);
+         }
+ 
++#ifdef ENGINE_CTRL_CHIL_SET_FORKCHECK
+         if (strEQ(mc->szCryptoDevice, "chil")) {
+             ENGINE_ctrl(e, ENGINE_CTRL_CHIL_SET_FORKCHECK, 1, 0, 0);
+         }
++#endif
+ 
+         if (!ENGINE_set_default(e, ENGINE_METHOD_ALL)) {
+             ap_log_error(APLOG_MARK, APLOG_EMERG, 0, s, APLOGNO(01889)
+@@ -838,7 +840,11 @@ static apr_status_t ssl_init_ctx_cert_ch
+         }
+     }
+ 
+-    n = SSL_CTX_use_certificate_chain(mctx->ssl_ctx,
++#ifndef HAVE_SSL_CTX_USE_CERTIFICATE_CHAIN
++          n = SSL_CTX_use_certificate_chain(mctx->ssl_ctx,
++#else
++          n = _SSL_CTX_use_certificate_chain(mctx->ssl_ctx,
++#endif
+                                       (char *)chain,
+                                       skip_first, NULL);
+     if (n < 0) {

Added: head/www/apache24/files/patch-modules__ssl__ssl_engine_rand.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/apache24/files/patch-modules__ssl__ssl_engine_rand.c	Sat Jan 31 15:22:51 2015	(r378215)
@@ -0,0 +1,22 @@
+# libressl support
+# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196139
+# https://issues.apache.org/bugzilla/show_bug.cgi?id=57375
+
+--- modules/ssl/ssl_engine_rand.c.orig	2011-12-05 00:08:01 UTC
++++ modules/ssl/ssl_engine_rand.c
+@@ -81,6 +81,7 @@ int ssl_rand_seed(server_rec *s, apr_poo
+                 nDone += ssl_rand_feedfp(p, fp, pRandSeed->nBytes);
+                 ssl_util_ppclose(s, p, fp);
+             }
++#ifdef HAVE_RAND_EGD
+             else if (pRandSeed->nSrc == SSL_RSSRC_EGD) {
+                 /*
+                  * seed in contents provided by the external
+@@ -90,6 +91,7 @@ int ssl_rand_seed(server_rec *s, apr_poo
+                     continue;
+                 nDone += n;
+             }
++#endif
+             else if (pRandSeed->nSrc == SSL_RSSRC_BUILTIN) {
+                 struct {
+                     time_t t;

Added: head/www/apache24/files/patch-modules__ssl__ssl_util_ssl.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/apache24/files/patch-modules__ssl__ssl_util_ssl.c	Sat Jan 31 15:22:51 2015	(r378215)
@@ -0,0 +1,18 @@
+# libressl support
+# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196139
+# https://issues.apache.org/bugzilla/show_bug.cgi?id=57375
+
+--- modules/ssl/ssl_util_ssl.c.orig	2015-01-12 13:31:16 UTC
++++ modules/ssl/ssl_util_ssl.c
+@@ -473,7 +473,11 @@ EC_GROUP *ssl_ec_GetParamFromFile(const 
+  * format, possibly followed by a sequence of CA certificates that
+  * should be sent to the peer in the SSL Certificate message.
+  */
++#ifndef HAVE_SSL_CTX_USE_CERTIFICATE_CHAIN
+ int SSL_CTX_use_certificate_chain(
++#else
++int _SSL_CTX_use_certificate_chain(
++#endif
+     SSL_CTX *ctx, char *file, int skipfirst, pem_password_cb *cb)
+ {
+     BIO *bio;

Added: head/www/apache24/files/patch-modules__ssl__ssl_util_ssl.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/apache24/files/patch-modules__ssl__ssl_util_ssl.h	Sat Jan 31 15:22:51 2015	(r378215)
@@ -0,0 +1,18 @@
+# libressl support
+# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196139
+# https://issues.apache.org/bugzilla/show_bug.cgi?id=57375
+
+--- modules/ssl/ssl_util_ssl.h.orig	2014-03-02 20:20:14 UTC
++++ modules/ssl/ssl_util_ssl.h
+@@ -69,7 +69,11 @@ BOOL        SSL_X509_getIDs(apr_pool_t *
+ BOOL        SSL_X509_match_name(apr_pool_t *, X509 *, const char *, BOOL, server_rec *);
+ BOOL        SSL_X509_INFO_load_file(apr_pool_t *, STACK_OF(X509_INFO) *, const char *);
+ BOOL        SSL_X509_INFO_load_path(apr_pool_t *, STACK_OF(X509_INFO) *, const char *);
++#ifndef HAVE_SSL_CTX_USE_CERTIFICATE_CHAIN
+ int         SSL_CTX_use_certificate_chain(SSL_CTX *, char *, int, pem_password_cb *);
++#else
++int         _SSL_CTX_use_certificate_chain(SSL_CTX *, char *, int, pem_password_cb *);
++#endif
+ char       *SSL_SESSION_id2sz(unsigned char *, int, char *, int);
+ 
+ #endif /* __SSL_UTIL_SSL_H__ */

Modified: head/www/apache24/files/patch-support__Makefile.in
==============================================================================
--- head/www/apache24/files/patch-support__Makefile.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-support__Makefile.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,6 +1,6 @@
---- ./support/Makefile.in.orig	2012-12-11 11:37:25.000000000 +0100
-+++ ./support/Makefile.in	2013-10-26 19:29:20.000000000 +0200
-@@ -17,10 +17,10 @@
+--- support/Makefile.in.orig	2012-12-11 10:37:25 UTC
++++ support/Makefile.in
+@@ -17,10 +17,10 @@ install:
  	@test -d $(DESTDIR)$(sbindir) || $(MKINSTALLDIRS) $(DESTDIR)$(sbindir)
  	@test -d $(DESTDIR)$(libexecdir) || $(MKINSTALLDIRS) $(DESTDIR)$(libexecdir)
  	@cp -p $(top_builddir)/server/httpd.exp $(DESTDIR)$(libexecdir)
@@ -14,7 +14,7 @@
  	    fi ; \
  	done
  	@for i in apachectl; do \
-@@ -30,10 +30,7 @@
+@@ -30,10 +30,7 @@ install:
  	    fi ; \
  	done
  	@if test -f "$(builddir)/envvars-std"; then \

Modified: head/www/apache24/files/patch-support__apachectl.in
==============================================================================
--- head/www/apache24/files/patch-support__apachectl.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-support__apachectl.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,6 +1,6 @@
---- ./support/apachectl.in.orig	2012-02-01 04:47:28.000000000 +0100
-+++ ./support/apachectl.in	2013-03-22 18:55:53.000000000 +0100
-@@ -43,6 +43,7 @@
+--- support/apachectl.in.orig	2012-02-01 03:47:28 UTC
++++ support/apachectl.in
+@@ -43,6 +43,7 @@ ARGV="$@"
  # 
  # the path to your httpd binary, including options if necessary
  HTTPD='@exp_sbindir@/@progname@'
@@ -8,7 +8,7 @@
  #
  # pick up any necessary environment variables
  if test -f @exp_sbindir@/envvars; then
-@@ -66,19 +67,21 @@
+@@ -66,19 +67,21 @@ ULIMIT_MAX_FILES="@APACHECTL_ULIMIT@"
  # --------------------                              --------------------
  # ||||||||||||||||||||   END CONFIGURATION SECTION  ||||||||||||||||||||
  
@@ -34,7 +34,7 @@
      ERROR=$?
      ;;
  startssl|sslstart|start-SSL)
-@@ -88,11 +91,13 @@
+@@ -88,11 +91,13 @@ startssl|sslstart|start-SSL)
      ERROR=2
      ;;
  configtest)

Modified: head/www/apache24/files/patch-support__apxs.in
==============================================================================
--- head/www/apache24/files/patch-support__apxs.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-support__apxs.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,6 +1,6 @@
---- ./support/apxs.in.orig	2012-07-25 13:42:40.000000000 +0200
-+++ ./support/apxs.in	2013-03-22 18:55:53.000000000 +0100
-@@ -636,7 +636,13 @@
+--- support/apxs.in.orig	2013-12-26 18:01:53 UTC
++++ support/apxs.in
+@@ -636,7 +636,13 @@ if ($opt_i or $opt_e) {
                  }
              } else {
                  # replace already existing LoadModule line
@@ -15,7 +15,7 @@
              }
              $lmd =~ m|LoadModule\s+(.+?)_module.*|;
              notice("[$what module `$1' in $CFG_SYSCONFDIR/$CFG_TARGET.conf]");
-@@ -645,8 +651,7 @@
+@@ -645,8 +651,7 @@ if ($opt_i or $opt_e) {
              if (open(FP, ">$CFG_SYSCONFDIR/$CFG_TARGET.conf.new")) {
                  print FP $content;
                  close(FP);

Modified: head/www/apache24/files/patch-support__envvars-std.in
==============================================================================
--- head/www/apache24/files/patch-support__envvars-std.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-support__envvars-std.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,6 +1,6 @@
---- ./support/envvars-std.in.orig	2012-03-08 17:10:51.000000000 +0100
-+++ ./support/envvars-std.in	2013-03-22 18:55:53.000000000 +0100
-@@ -26,3 +26,10 @@
+--- support/envvars-std.in.orig	2012-03-08 16:10:51 UTC
++++ support/envvars-std.in
+@@ -26,3 +26,10 @@ fi
  export @SHLIBPATH_VAR@
  #
  @OS_SPECIFIC_VARS@

Modified: head/www/apache24/files/patch-support__log_server_status.in
==============================================================================
--- head/www/apache24/files/patch-support__log_server_status.in	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/files/patch-support__log_server_status.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,6 +1,6 @@
---- ./support/log_server_status.in.orig	2012-04-29 01:08:09.000000000 +0200
-+++ ./support/log_server_status.in	2013-03-22 18:55:53.000000000 +0100
-@@ -29,7 +29,7 @@
+--- support/log_server_status.in.orig	2012-04-28 23:08:09 UTC
++++ support/log_server_status.in
+@@ -29,7 +29,7 @@ use IO::Socket;
  use strict;
  use warnings;
  
@@ -9,7 +9,7 @@
  my $server   = "localhost";        # Name of server, could be "www.foo.com"
  my $port     = "@PORT@";               # Port on server
  my $request = "/server-status/?auto";    # Request to send
-@@ -46,7 +46,7 @@
+@@ -46,7 +46,7 @@ my $time =
    . sprintf( "%02d", $ltime[1] )
    . sprintf( "%02d", $ltime[0] );
  

Added: head/www/apache24/files/pkg-deinstall.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/apache24/files/pkg-deinstall.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+MPM_FALLBACK="%%ETCDIR%%/modules.d/%%MPMF%%"
+
+_cleanup(){
+	if [ -f ${MPM_FALLBACK} ]; then
+		echo -n "remove fallback MPM : "
+		/bin/rm -vf ${MPM_FALLBACK}
+	fi
+}
+
+# run only if build with modular MPM
+if [ "x$2" = "xDEINSTALL" ]; then
+	%%MPM_FALLBACK_CHECK%%_cleanup
+fi
+

Added: head/www/apache24/files/pkg-install.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/apache24/files/pkg-install.in	Sat Jan 31 15:22:51 2015	(r378215)
@@ -0,0 +1,65 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# Note:
+# We have to use grep or wc after awk, else
+# there is no usable ret value that can be
+# used for further processing
+
+HTTPD_CONF="%%ETCDIR%%/httpd.conf"
+MPM_FALLBACK="%%ETCDIR%%/modules.d/%%MPMF%%"
+
+_log_msg(){
+	/usr/bin/logger -p local0.notice -s -t apache24 "$1"
+}
+
+_check_deprecated(){
+if [ -r ${HTTPD_CONF} ]; then
+	/usr/bin/awk '/^LoadModule[[:blank:]]+mpm_(event|prefork|worker)_module/ {print $2}' ${HTTPD_CONF} | /usr/bin/grep -q '^mpm_'
+	if [ $? -ne 0 ]; then
+		_log_msg "==================================================="
+		_log_msg "WARNING!"
+		_log_msg " No apache MPM module is activated in httpd.conf,"
+		_log_msg " mpm_prefork will be activated as fall back"
+		_log_msg ""
+		_log_msg " Please follow the instructions in"
+		_log_msg "  ${MPM_FALLBACK}"
+		_log_msg "==================================================="
+
+cat > ${MPM_FALLBACK} << _EOF
+# ==================================================================
+# Note:
+# www/apache24 build changed from static MPM to modular MPM loading!
+#
+# This file was installed as fall back, since no activated MPM
+# was detected in the existing httpd.conf.
+#
+# Please merge additions from httpd.conf.sample into your httpd.conf!
+#
+# After activating one of the mpm_modules in httpd.conf it is save
+# to deactivate the "LoadModule" line in this file.
+#
+# In case mod_(php|perl|python|...) modules from the official FreeBSD
+# package repo are installed please use the mpm_prefork module, else
+# feel free to test mpm_event (preferred) or mpm_worker.
+#
+# For more information see:
+#  http://httpd.apache.org/docs/2.4/mod/
+# ==================================================================
+
+LoadModule mpm_prefork_module libexec/apache24/mod_mpm_prefork.so
+_EOF
+
+	fi # $? -ne 0
+else
+	echo ${HTTPD_CONF} not readable
+fi
+}
+
+# run only if build with modular MPM
+if [ "$2" = "POST-INSTALL" ]; then
+	%%MPM_FALLBACK_CHECK%%_check_deprecated
+fi
+

Modified: head/www/apache24/pkg-help
==============================================================================
--- head/www/apache24/pkg-help	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/pkg-help	Sat Jan 31 15:22:51 2015	(r378215)
@@ -1,25 +1,21 @@
 Hints:
 
-- only a subset from the selected modules are enabled by default in
-  httpd.conf.
+  - only a subset from the selected modules are activated by default in
+    httpd.conf.
 
-- by default apache24 builds with static prefork MPM
+  - by default apache24 builds mpm_prefork, mpm_event and mpm_worker
+    as dynamically loadable module.  Even mpm_event is the preferred
+    MPM, mpm_prefork will be activated to keep compatibility with 
+    pre-build php/perl/python/... modules (used by apache22/apache24).
 
-- if MPM_SHARED is selected then all MPM modules will be build, but
-  only the selected DEFAULT MPM module will be registered and enabled 
-  in httpd.conf. For more information see:
-  https://issues.apache.org/bugzilla/show_bug.cgi?id=53882
 
 Note:
-  Shared MPM loading is at the moment not supported by most additional
-  modules (php/perl/python) because they need to know the apache
-  threading model during build time
 
   To build the develop/example modules specify additional the parameter
-  -DIAMADEVELOPER (I am a developer)
+    -DIAMADEVELOPER (I am a developer)
 
-For detailed module description visit
-  http://httpd.apache.org/docs/2.4/mod/
+  For detailed module description visit
+    http://httpd.apache.org/docs/2.4/mod/
 
-and for the develop/example modules
-  http://httpd.apache.org/docs/2.2/programs/configure.html
+  and for the develop/example modules
+    http://httpd.apache.org/docs/2.2/programs/configure.html#developermodules

Modified: head/www/apache24/pkg-message
==============================================================================
--- head/www/apache24/pkg-message	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/pkg-message	Sat Jan 31 15:22:51 2015	(r378215)
@@ -4,3 +4,20 @@ in your /etc/rc.conf. Extra options can 
 Your hostname must be resolvable using at least 1 mechanism in
 /etc/nsswitch.conf typically DNS or /etc/hosts or apache might
 have issues starting depending on the modules you are using.
+
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+- apache24 default build changed from static MPM to modular MPM
+- more modules are now enabled per default in the port
+- icons and error pages moved from WWWDIR to DATADIR
+
+   If build with modular MPM and no MPM is activated in 
+   httpd.conf, then mpm_prefork will be activated as default
+   MPM in etc/apache24/modules.d to keep compatibility with 
+   existing php/perl/python modules!
+
+Please compare the existing httpd.conf with httpd.conf.sample
+and merge missing modules/instructions into httpd.conf!
+
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+

Modified: head/www/apache24/pkg-plist
==============================================================================
--- head/www/apache24/pkg-plist	Sat Jan 31 15:10:24 2015	(r378214)
+++ head/www/apache24/pkg-plist	Sat Jan 31 15:22:51 2015	(r378215)
@@ -5,6 +5,21 @@ bin/htpasswd
 bin/httxt2dbm
 bin/logresolve
 %%ETCDIR%%/Includes/no-accf.conf
+@sample %%ETCDIR%%/extra/httpd-autoindex.conf.sample
+@sample %%ETCDIR%%/extra/httpd-dav.conf.sample
+@sample %%ETCDIR%%/extra/httpd-default.conf.sample
+@sample %%ETCDIR%%/extra/httpd-info.conf.sample
+@sample %%ETCDIR%%/extra/httpd-languages.conf.sample
+@sample %%ETCDIR%%/extra/httpd-manual.conf.sample
+@sample %%ETCDIR%%/extra/httpd-mpm.conf.sample
+@sample %%ETCDIR%%/extra/httpd-multilang-errordoc.conf.sample
+@sample %%ETCDIR%%/extra/httpd-ssl.conf.sample
+@sample %%ETCDIR%%/extra/httpd-userdir.conf.sample
+@sample %%ETCDIR%%/extra/httpd-vhosts.conf.sample
+@sample %%ETCDIR%%/extra/proxy-html.conf.sample
+@sample %%ETCDIR%%/httpd.conf.sample
+@sample %%ETCDIR%%/magic.sample
+@sample %%ETCDIR%%/mime.types.sample
 %%ETCDIR%%/modules.d/README_modules.d
 include/apache24/ap_compat.h
 include/apache24/ap_config.h
@@ -217,7 +232,7 @@ sbin/htcacheclean
 sbin/httpd
 sbin/rotatelogs
 sbin/split-logfile
-%%SUEXEC%%sbin/suexec
+%%SUEXEC%%@(,,4755) sbin/suexec
 %%DATADIR%%/build/config.nice
 %%DATADIR%%/build/config_vars.mk
 %%DATADIR%%/build/instdso.sh
@@ -227,60 +242,11 @@ sbin/split-logfile
 %%DATADIR%%/build/program.mk
 %%DATADIR%%/build/rules.mk
 %%DATADIR%%/build/special.mk
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-autoindex.conf %D/%%EXAMPLESDIR%%/extra/httpd-autoindex.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-autoindex.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-autoindex.conf
-@exec [ -f %D/%%ETCDIR%%/extra/httpd-autoindex.conf ] || cp %D/%%EXAMPLESDIR%%/extra/httpd-autoindex.conf %D/%%ETCDIR%%/extra/httpd-autoindex.conf
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-dav.conf %D/%%EXAMPLESDIR%%/extra/httpd-dav.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-dav.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-dav.conf
-@exec [ -f %D/%%ETCDIR%%/extra/httpd-dav.conf ] || cp %D/%%EXAMPLESDIR%%/extra/httpd-dav.conf %D/%%ETCDIR%%/extra/httpd-dav.conf
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-default.conf %D/%%EXAMPLESDIR%%/extra/httpd-default.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-default.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-default.conf
-@exec [ -f %D/%%ETCDIR%%/extra/httpd-default.conf ] || cp %D/%%EXAMPLESDIR%%/extra/httpd-default.conf %D/%%ETCDIR%%/extra/httpd-default.conf
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-info.conf %D/%%EXAMPLESDIR%%/extra/httpd-info.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-info.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-info.conf
-@exec [ -f %D/%%ETCDIR%%/extra/httpd-info.conf ] || cp %D/%%EXAMPLESDIR%%/extra/httpd-info.conf %D/%%ETCDIR%%/extra/httpd-info.conf
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-languages.conf %D/%%EXAMPLESDIR%%/extra/httpd-languages.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-languages.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-languages.conf
-@exec [ -f %D/%%ETCDIR%%/extra/httpd-languages.conf ] || cp %D/%%EXAMPLESDIR%%/extra/httpd-languages.conf %D/%%ETCDIR%%/extra/httpd-languages.conf
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-manual.conf %D/%%EXAMPLESDIR%%/extra/httpd-manual.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-manual.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-manual.conf
-@exec [ -f %D/%%ETCDIR%%/extra/httpd-manual.conf ] || cp %D/%%EXAMPLESDIR%%/extra/httpd-manual.conf %D/%%ETCDIR%%/extra/httpd-manual.conf
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-mpm.conf %D/%%EXAMPLESDIR%%/extra/httpd-mpm.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-mpm.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-mpm.conf
-@exec [ -f %D/%%ETCDIR%%/extra/httpd-mpm.conf ] || cp %D/%%EXAMPLESDIR%%/extra/httpd-mpm.conf %D/%%ETCDIR%%/extra/httpd-mpm.conf
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-multilang-errordoc.conf %D/%%EXAMPLESDIR%%/extra/httpd-multilang-errordoc.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-multilang-errordoc.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-multilang-errordoc.conf
-@exec [ -f %D/%%ETCDIR%%/extra/httpd-multilang-errordoc.conf ] || cp %D/%%EXAMPLESDIR%%/extra/httpd-multilang-errordoc.conf %D/%%ETCDIR%%/extra/httpd-multilang-errordoc.conf
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-ssl.conf %D/%%EXAMPLESDIR%%/extra/httpd-ssl.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-ssl.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-ssl.conf
-@exec [ -f %D/%%ETCDIR%%/extra/httpd-ssl.conf ] || cp %D/%%EXAMPLESDIR%%/extra/httpd-ssl.conf %D/%%ETCDIR%%/extra/httpd-ssl.conf
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-userdir.conf %D/%%EXAMPLESDIR%%/extra/httpd-userdir.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-userdir.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-userdir.conf
-@exec [ -f %D/%%ETCDIR%%/extra/httpd-userdir.conf ] || cp %D/%%EXAMPLESDIR%%/extra/httpd-userdir.conf %D/%%ETCDIR%%/extra/httpd-userdir.conf
-@unexec if cmp -s %D/%%ETCDIR%%/extra/httpd-vhosts.conf %D/%%EXAMPLESDIR%%/extra/httpd-vhosts.conf; then rm -f %D/%%ETCDIR%%/extra/httpd-vhosts.conf; fi
-%%EXAMPLESDIR%%/extra/httpd-vhosts.conf

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



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