Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Mar 2016 14:02:09 +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: r411163 - in head/www/mod_python35: . files
Message-ID:  <201603151402.u2FE296d043997@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ohauer
Date: Tue Mar 15 14:02:09 2016
New Revision: 411163
URL: https://svnweb.freebsd.org/changeset/ports/411163

Log:
  - update patch to reflect latest commit on github
    (there is no new release sinc 2013 ...)
  - do not alter httpd.conf, install a dedicated module file
  
  PR:		204793
  Submitted by:	SBB

Added:
  head/www/mod_python35/files/270_mod_python.conf.sample.in   (contents, props changed)
  head/www/mod_python35/files/patch-test_test.py   (contents, props changed)
  head/www/mod_python35/files/pkg-message.in
     - copied, changed from r411157, head/www/mod_python35/pkg-message
Deleted:
  head/www/mod_python35/pkg-message
Modified:
  head/www/mod_python35/Makefile
  head/www/mod_python35/files/patch-mod_python35
  head/www/mod_python35/pkg-plist

Modified: head/www/mod_python35/Makefile
==============================================================================
--- head/www/mod_python35/Makefile	Tue Mar 15 13:48:00 2016	(r411162)
+++ head/www/mod_python35/Makefile	Tue Mar 15 14:02:09 2016	(r411163)
@@ -3,7 +3,7 @@
 
 PORTNAME=	mod_python
 PORTVERSION=	3.5.0
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	www python
 MASTER_SITES=	http://dist.modpython.org/dist/ \
 		LOCAL/ohauer
@@ -21,6 +21,7 @@ CONFLICTS_INSTALL=	ap2[24]-mod_python3[^
 USE_APACHE=	22+
 USES=		cpe python tar:tgz
 CPE_VENDOR=	apache
+SUB_FILES=	pkg-message 270_mod_python.conf.sample
 
 GNU_CONFIGURE=		yes
 CONFIGURE_ARGS+=	--with-apxs="${APXS}"		\
@@ -33,8 +34,13 @@ MAKE_ENV=	EXPR_COMPAT=yes
 PLIST_SUB+=	PORTVERSION=${PORTVERSION} \
 		PYTHON_VER=${PYTHON_VER}
 
+post-install:
+	@${MKDIR} ${STAGEDIR}${PREFIX}/${APACHEETCDIR}/modules.d
+	${INSTALL_DATA} ${WRKDIR}/270_mod_python.conf.sample ${STAGEDIR}${PREFIX}/${APACHEETCDIR}/modules.d
+
 # You need to install apache & mod_python before you run this
 regression-test: build
+	${REINPLACE_CMD} -e 's|%%APACHEMODDIR%%|${APACHEMODDIR}|' ${WRKSRC}/test/test.py
 	-@${MAKE} test -C ${WRKSRC}
 
 .include <bsd.port.mk>

Added: head/www/mod_python35/files/270_mod_python.conf.sample.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/mod_python35/files/270_mod_python.conf.sample.in	Tue Mar 15 14:02:09 2016	(r411163)
@@ -0,0 +1,11 @@
+## $FreeBSD$
+## vim: set filetype=apache:
+##
+## module file for mod_python 3.5.x
+##
+## PROVIDE: mod_python
+## REQUIRE: 
+
+## make sure the following module is activated (httpd.conf or here)
+#LoadModule python_module %%APACHEMODDIR%%/mod_python.so
+

Modified: head/www/mod_python35/files/patch-mod_python35
==============================================================================
--- head/www/mod_python35/files/patch-mod_python35	Tue Mar 15 13:48:00 2016	(r411162)
+++ head/www/mod_python35/files/patch-mod_python35	Tue Mar 15 14:02:09 2016	(r411163)
@@ -1,7 +1,6 @@
-diff -nru ./Doc/Makefile.in ./Doc/Makefile.in
---- ./Doc/Makefile.in	2013-11-12 04:21:34.000000000 +0100
-+++ ./Doc/Makefile.in	2014-04-15 17:27:39.000000000 +0200
-@@ -16,7 +16,7 @@
+--- Doc/Makefile.in.orig	2013-11-12 03:21:34 UTC
++++ Doc/Makefile.in
+@@ -16,7 +16,7 @@ ALLSPHINXOPTS = -b $(BUILDER) -d build/d
                  $(SPHINXOPTS) . build/$(BUILDER) $(SOURCES)
  
  .PHONY: help checkout update build html htmlhelp latex text changes linkcheck \
@@ -10,7 +9,7 @@ diff -nru ./Doc/Makefile.in ./Doc/Makefi
  	autobuild-dev autobuild-stable
  
  help:
-@@ -102,8 +102,6 @@
+@@ -102,8 +102,6 @@ coverage: build
  htmlview: html
  	 $(PYTHON) -c "import webbrowser; webbrowser.open('build/html/index.html')"
  
@@ -19,9 +18,18 @@ diff -nru ./Doc/Makefile.in ./Doc/Makefi
  clean:
  	-rm -rf build/*
  	-rm -rf tools/sphinx
-diff -nru ./Doc/changes.rst ./Doc/changes.rst
---- ./Doc/changes.rst	2013-11-12 04:21:34.000000000 +0100
-+++ ./Doc/changes.rst	2014-04-15 17:27:39.000000000 +0200
+@@ -111,6 +109,9 @@ clean:
+ 	-rm -rf tools/jinja2
+ 	-rm -rf tools/docutils
+ 
++distclean: clean
++	rm -f Makefile
++
+ dist:
+ 	rm -rf dist
+ 	mkdir -p dist
+--- Doc/changes.rst.orig	2013-11-12 03:21:34 UTC
++++ Doc/changes.rst
 @@ -5,22 +5,6 @@
  Changes
  *******
@@ -45,19 +53,17 @@ diff -nru ./Doc/changes.rst ./Doc/change
  .. _changes_from_3_3_1:
  
  Changes from version 3.3.1
-diff -nru ./NEWS ./NEWS
---- ./NEWS	2013-11-12 04:21:34.000000000 +0100
-+++ ./NEWS	2014-04-15 17:27:39.000000000 +0200
+--- NEWS.orig	2013-11-12 03:21:34 UTC
++++ NEWS
 @@ -1,3 +1,5 @@
 +Nov  13 2013 -  3.5.0 released
 +
  Oct  22 2013 -  3.4.1 released
  
  Jan  29 2007 -  3.3.1 is being tagged
-diff -nru ./configure ./configure
---- ./configure	2013-11-12 04:21:34.000000000 +0100
-+++ ./configure	2014-04-15 17:27:39.000000000 +0200
-@@ -3340,11 +3340,7 @@
+--- configure.orig	2013-11-12 03:21:34 UTC
++++ configure
+@@ -3340,11 +3340,7 @@ PyMAJVERSION=`$PYTHON_BIN -c 'import sys
  PyMINVERSION=`$PYTHON_BIN -c 'import sys; print(sys.version.split(".")[1])'`
  { $as_echo "$as_me:$LINENO: result: $PyVERSION" >&5
  $as_echo "$PyVERSION" >&6; }
@@ -70,7 +76,7 @@ diff -nru ./configure ./configure
  # make sure Python version is >= 2.6 for 2 and >= 3.3 for 3
  if test "$PyMAJVERSION" -lt "2"; then
    { { $as_echo "$as_me:$LINENO: error: This version of mod_python only works with Python major version 2 or higher. The one you have seems to be $PyVERSION." >&5
-@@ -3395,8 +3391,7 @@
+@@ -3395,8 +3391,7 @@ if test "${PYTHONFRAMEWORKDIR}" = "no-fr
      LDFLAGS="${LDFLAGS1} ${LDFLAGS2}"
  
      if test "$PyMAJVERSION" -eq "3"; then
@@ -80,10 +86,9 @@ diff -nru ./configure ./configure
      else
          LDLIBS1="-lpython${PyVERSION}"
      fi
-diff -nru ./configure.in ./configure.in
---- ./configure.in	2013-11-12 04:21:34.000000000 +0100
-+++ ./configure.in	2014-04-15 17:27:39.000000000 +0200
-@@ -171,9 +171,7 @@
+--- configure.in.orig	2013-11-12 03:21:34 UTC
++++ configure.in
+@@ -171,9 +171,7 @@ PyVERSION=`$PYTHON_BIN -c ['import sys; 
  PyMAJVERSION=`$PYTHON_BIN -c ['import sys; print(sys.version[:1])'`]
  PyMINVERSION=`$PYTHON_BIN -c ['import sys; print(sys.version.split(".")[1])'`]
  AC_MSG_RESULT($PyVERSION)
@@ -94,7 +99,7 @@ diff -nru ./configure.in ./configure.in
  # make sure Python version is >= 2.6 for 2 and >= 3.3 for 3
  if test "$PyMAJVERSION" -lt "2"; then
    AC_MSG_ERROR([This version of mod_python only works with Python major version 2 or higher. The one you have seems to be $PyVERSION.])
-@@ -218,8 +216,7 @@
+@@ -218,8 +216,7 @@ if test "${PYTHONFRAMEWORKDIR}" = "no-fr
      LDFLAGS="${LDFLAGS1} ${LDFLAGS2}"
  
      if test "$PyMAJVERSION" -eq "3"; then
@@ -104,7 +109,7 @@ diff -nru ./configure.in ./configure.in
      else
          LDLIBS1="-lpython${PyVERSION}"
      fi
-@@ -326,9 +323,9 @@
+@@ -326,9 +323,9 @@ if test "$LEX" && test -x "$LEX"; then
  
    AC_MSG_CHECKING(flex version)
    FlexVERSION=`$LEX --version | sed 's/version//g' | awk '/flex/ {print $2}'`
@@ -117,10 +122,9 @@ diff -nru ./configure.in ./configure.in
  
    if test "$Flex_MAJOR" -eq "2" && test "$Flex_MINOR" -eq "5" && test "$Flex_PATCH" -ge "31"; then
      AC_MSG_RESULT([$FlexVERSION. Good])
-diff -nru ./dist/version.sh ./dist/version.sh
---- ./dist/version.sh	2013-11-12 04:21:34.000000000 +0100
-+++ ./dist/version.sh	2014-04-15 17:27:39.000000000 +0200
-@@ -5,6 +5,17 @@
+--- dist/version.sh.orig	2013-11-12 03:21:34 UTC
++++ dist/version.sh
+@@ -5,6 +5,17 @@ MPV_PATH="`dirname $0`/../src/include/mp
  MAJ=`awk '/MP_VERSION_MAJOR/ {print $3}' $MPV_PATH`
  MIN=`awk '/MP_VERSION_MINOR/ {print $3}' $MPV_PATH`
  PCH=`awk '/MP_VERSION_PATCH/ {print $3}' $MPV_PATH`
@@ -140,11 +144,9 @@ diff -nru ./dist/version.sh ./dist/versi
 +fi
 +
 +echo $MAJ.$MIN.$PCH$GIT
-Only in ./: doc-html
-diff -nru ./lib/python/mod_python/Cookie.py ./lib/python/mod_python/Cookie.py
---- ./lib/python/mod_python/Cookie.py	2013-11-12 04:21:34.000000000 +0100
-+++ ./lib/python/mod_python/Cookie.py	2014-04-15 17:27:39.000000000 +0200
-@@ -59,7 +59,7 @@
+--- lib/python/mod_python/Cookie.py.orig	2013-11-12 03:21:34 UTC
++++ lib/python/mod_python/Cookie.py
+@@ -59,7 +59,7 @@ class metaCookie(type):
  
          _valid_attr = (
              "version", "path", "domain", "secure",
@@ -153,9 +155,36 @@ diff -nru ./lib/python/mod_python/Cookie
              # RFC 2965
              "commentURL", "discard", "port",
              # Microsoft Extension
-diff -nru ./scripts/mod_python.in ./scripts/mod_python.in
---- ./scripts/mod_python.in	2013-11-12 04:21:34.000000000 +0100
-+++ ./scripts/mod_python.in	2014-04-15 17:27:39.000000000 +0200
+--- lib/python/mod_python/util.py.orig	2013-11-12 03:21:34 UTC
++++ lib/python/mod_python/util.py
+@@ -156,7 +156,7 @@ else:
+         disp_options = None
+ 
+         def __new__(self, value):
+-            return bytes.__new__(self, value)
++            return bytes.__new__(self, value, "utf8")
+ 
+         def __init__(self, value):
+             self.value = value
+--- scripts/Makefile.in.orig	2013-11-12 03:21:34 UTC
++++ scripts/Makefile.in
+@@ -17,7 +17,7 @@
+  #
+ 
+ INSTALL=@INSTALL@
+-BINDIR=@prefix@/bin
++BINDIR=`dirname @PYTHON_BIN@`
+ 
+ clean:
+ 	rm -rf *~
+@@ -26,4 +26,5 @@ distclean: clean
+ 	rm -f Makefile
+ 
+ install:
++	$(INSTALL) -m 0755 -d $(DESTDIR)$(BINDIR)
+ 	$(INSTALL) -m 0755 mod_python $(DESTDIR)$(BINDIR)/mod_python
+--- scripts/mod_python.in.orig	2013-11-12 03:21:34 UTC
++++ scripts/mod_python.in
 @@ -26,7 +26,7 @@
  import sys
  import os
@@ -165,7 +194,7 @@ diff -nru ./scripts/mod_python.in ./scri
  import mod_python
  from mod_python import httpdconf
  
-@@ -64,7 +64,7 @@
+@@ -64,7 +64,7 @@ def cmd_genconfig():
      if len(args) != 1:
          parser.error("Must specify <src>")
  
@@ -174,19 +203,9 @@ diff -nru ./scripts/mod_python.in ./scri
  
  def cmd_create():
  
-@@ -105,7 +105,7 @@
- 
-     version =  "\n"
-     version += "mod_python:  %s\n" % mod_python.mp_version
--    version += "             %s\n\n" % repr(os.path.join(mod_python.version.LIBEXECDIR, "mod_python.so"))
-+    version += "             %s\n\n" % repr(s.path.join(mod_python.version.LIBEXECDIR, "mod_python.so"))
-     version += "python:      %s\n" % ''.join(sys.version.splitlines())
-     version += "             %s\n\n" % repr(mod_python.version.PYTHON_BIN)
-     version += "httpd:       %s\n" % mod_python.version.HTTPD_VERSION
-diff -nru ./src/Makefile.in ./src/Makefile.in
---- ./src/Makefile.in	2013-11-12 04:21:34.000000000 +0100
-+++ ./src/Makefile.in	2014-04-15 17:27:39.000000000 +0200
-@@ -50,7 +50,7 @@
+--- src/Makefile.in.orig	2013-11-12 03:21:34 UTC
++++ src/Makefile.in
+@@ -50,11 +50,11 @@ psp_parser.c: psp_parser.l
  
  dso:	mod_python.so
  
@@ -195,7 +214,12 @@ diff -nru ./src/Makefile.in ./src/Makefi
  	@echo
  	@echo 'Building mod_python.so.'
  	@echo
-@@ -64,21 +64,17 @@
+-	$(APXS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) -c $(SRCS) $(LDFLAGS) $(LDLIBS) @SOLARIS_HACKS@
++	$(APXS) $(INCLUDES) $(CPPFLAGS) $(APXSFLAGS) $(CFLAGS) -c $(SRCS) $(LDFLAGS) $(LDLIBS) @SOLARIS_HACKS@
+ 	@rm -f mod_python.so
+ 	@ln -s .libs/mod_python.so mod_python.so
+ clean:
+@@ -64,21 +64,17 @@ distclean: clean
  	rm -f Makefile .depend
  
  version.c:
@@ -221,10 +245,36 @@ diff -nru ./src/Makefile.in ./src/Makefi
  # SOLARIS_HACKS above
  _eprintf.o:
  	ar -x `gcc -print-libgcc-file-name` _eprintf.o
-diff -nru ./src/include/mod_python.h ./src/include/mod_python.h
---- ./src/include/mod_python.h	2013-11-12 04:21:34.000000000 +0100
-+++ ./src/include/mod_python.h	2014-04-15 17:27:39.000000000 +0200
-@@ -156,7 +156,6 @@
+--- src/_apachemodule.c.orig	2013-11-12 03:21:34 UTC
++++ src/_apachemodule.c
+@@ -213,9 +213,11 @@ static PyObject *parse_qs(PyObject *self
+                 cval = PyBytes_AS_STRING(val);
+ 
+                 if (unicode) {
++                    // The query string is supposed to be a valid UTF8 string
++                    // https://url.spec.whatwg.org/#percent-encoded-bytes
+                     PyObject *list, *ukey, *uval;
+-                    ukey = PyUnicode_DecodeLatin1(ckey, strlen(ckey), NULL);
+-                    uval = PyUnicode_DecodeLatin1(ckey, strlen(cval), NULL);
++                    ukey = PyUnicode_DecodeUTF8(ckey, strlen(ckey), NULL);
++                    uval = PyUnicode_DecodeUTF8(ckey, strlen(cval), NULL);
+                     list = PyDict_GetItem(dict, ukey);
+                     if (list) {
+                         PyList_Append(list, uval);
+@@ -371,8 +373,8 @@ static PyObject *parse_qsl(PyObject *sel
+                 PyObject *listitem = NULL;
+                 if (unicode) {
+                     PyObject *ukey, *uval;
+-                    ukey = PyUnicode_DecodeLatin1(ckey, strlen(ckey), NULL);
+-                    uval = PyUnicode_DecodeLatin1(cval, strlen(cval), NULL);
++                    ukey = PyUnicode_DecodeUTF8(ckey, strlen(ckey), NULL);
++                    uval = PyUnicode_DecodeUTF8(cval, strlen(cval), NULL);
+                     listitem = Py_BuildValue("(O,O)", ukey, uval);
+                     Py_DECREF(ukey);
+                     Py_DECREF(uval);
+--- src/include/mod_python.h.orig	2013-11-12 03:21:34 UTC
++++ src/include/mod_python.h
+@@ -156,7 +156,6 @@ extern module AP_MODULE_DECLARE_DATA pyt
  #define MUTEX_DIR "/tmp"
  
  /* version stuff */
@@ -232,7 +282,7 @@ diff -nru ./src/include/mod_python.h ./s
  extern const int mp_version_major;
  extern const int mp_version_minor;
  extern const int mp_version_patch;
-@@ -267,7 +266,7 @@
+@@ -267,7 +266,7 @@ APR_DECLARE_OPTIONAL_FN(PyObject *, mp_g
              if (PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3 &&       \
                  PyUnicode_KIND(obj) == PyUnicode_1BYTE_KIND) {          \
                  if (obj_is_borrowed) Py_INCREF(obj); /* so DECREF ok */ \
@@ -241,7 +291,7 @@ diff -nru ./src/include/mod_python.h ./s
              } else {                                                    \
                  PyObject *latin = PyUnicode_AsLatin1String(obj);        \
                  if (latin) {                                            \
-@@ -292,11 +291,11 @@
+@@ -292,11 +291,11 @@ static inline PyObject *MpObject_ReprAsB
      PyObject *result;
      PyObject *ucode = PyObject_Repr(o);
      /* we can do this because repr() should never have non-ascii characters XXX (really?) */
@@ -256,10 +306,9 @@ diff -nru ./src/include/mod_python.h ./s
      Py_DECREF(ucode);
      return result;
  }
-diff -nru ./src/include/mod_python.h.in ./src/include/mod_python.h.in
---- ./src/include/mod_python.h.in	2013-11-12 04:21:34.000000000 +0100
-+++ ./src/include/mod_python.h.in	2014-04-15 17:27:39.000000000 +0200
-@@ -156,7 +156,6 @@
+--- src/include/mod_python.h.in.orig	2013-11-12 03:21:34 UTC
++++ src/include/mod_python.h.in
+@@ -156,7 +156,6 @@ extern module AP_MODULE_DECLARE_DATA pyt
  #define MUTEX_DIR "@MUTEX_DIR@"
  
  /* version stuff */
@@ -267,7 +316,7 @@ diff -nru ./src/include/mod_python.h.in 
  extern const int mp_version_major;
  extern const int mp_version_minor;
  extern const int mp_version_patch;
-@@ -267,7 +266,7 @@
+@@ -267,7 +266,7 @@ APR_DECLARE_OPTIONAL_FN(PyObject *, mp_g
              if (PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 3 &&       \
                  PyUnicode_KIND(obj) == PyUnicode_1BYTE_KIND) {          \
                  if (obj_is_borrowed) Py_INCREF(obj); /* so DECREF ok */ \
@@ -276,7 +325,7 @@ diff -nru ./src/include/mod_python.h.in 
              } else {                                                    \
                  PyObject *latin = PyUnicode_AsLatin1String(obj);        \
                  if (latin) {                                            \
-@@ -292,11 +291,11 @@
+@@ -292,11 +291,11 @@ static inline PyObject *MpObject_ReprAsB
      PyObject *result;
      PyObject *ucode = PyObject_Repr(o);
      /* we can do this because repr() should never have non-ascii characters XXX (really?) */
@@ -291,19 +340,17 @@ diff -nru ./src/include/mod_python.h.in 
      Py_DECREF(ucode);
      return result;
  }
-diff -nru ./src/include/mp_version.h ./src/include/mp_version.h
---- ./src/include/mp_version.h	2013-11-12 04:21:34.000000000 +0100
-+++ ./src/include/mp_version.h	2014-04-15 17:27:39.000000000 +0200
+--- src/include/mp_version.h.orig	2013-11-12 03:21:34 UTC
++++ src/include/mp_version.h
 @@ -10,5 +10,3 @@
  #define MP_VERSION_MINOR 5
  #define MP_VERSION_PATCH 0
  
 -#define STR(x) #x
 -#define MP_VERSION_STRING(maj, min, p) STR(maj) "." STR(min) "." STR(p)
-diff -nru ./src/mod_python.c ./src/mod_python.c
---- ./src/mod_python.c	2013-11-12 04:21:34.000000000 +0100
-+++ ./src/mod_python.c	2014-04-15 17:27:39.000000000 +0200
-@@ -748,10 +748,10 @@
+--- src/mod_python.c.orig	2013-11-12 03:21:34 UTC
++++ src/mod_python.c
+@@ -748,10 +748,10 @@ static int python_init(apr_pool_t *p, ap
                       py_compile_version, py_dynamic_version);
          ap_log_error(APLOG_MARK, APLOG_ERR, 0, s,
                       "python_init: Python executable found '%s'.",
@@ -316,7 +363,27 @@ diff -nru ./src/mod_python.c ./src/mod_p
      }
  
      /* Python version */
-@@ -1795,7 +1795,7 @@
+@@ -772,8 +772,18 @@ static int python_init(apr_pool_t *p, ap
+     {
+         initialized = 1;
+ 
+-        /* initialze the interpreter */
++        /* disable user site directories */
++        Py_NoUserSiteDirectory = 1;
++
++        /* Initialze the main interpreter. We do not want site.py to
++         * be imported because as of Python 2.7.9 it would cause a
++         * circular dependency related to _locale which breaks
++         * graceful restart so we set Py_NoSiteFlag to 1 just for this
++         * one time. (https://github.com/grisha/mod_python/issues/46)
++         */
++        Py_NoSiteFlag = 1;
+         Py_Initialize();
++        Py_NoSiteFlag = 0;
+ 
+ #ifdef WITH_THREAD
+         /* create and acquire the interpreter lock */
+@@ -1795,7 +1805,7 @@ static apr_status_t python_filter(int is
      }
  
      /* are we in transparent mode? transparent mode is on after an error,
@@ -325,10 +392,18 @@ diff -nru ./src/mod_python.c ./src/mod_p
      if (ctx->transparent) {
          if (is_input)
              return ap_get_brigade(f->next, bb, mode, block, readbytes);
-diff -nru ./src/requestobject.c ./src/requestobject.c
---- ./src/requestobject.c	2013-11-12 04:21:34.000000000 +0100
-+++ ./src/requestobject.c	2014-04-15 17:27:39.000000000 +0200
-@@ -1967,6 +1967,10 @@
+@@ -2646,7 +2656,7 @@ static void PythonChildInitHandler(apr_p
+      * problems as well. Thus disable cleanup of Python when
+      * child processes are being shutdown. (MODPYTHON-109)
+      *
+-    apr_pool_cleanup_register(p, NULL, python_finalize, apr_pool_cleanup_null);
++     * apr_pool_cleanup_register(p, NULL, python_finalize, apr_pool_cleanup_null);
+      */
+ 
+     /*
+--- src/requestobject.c.orig	2013-11-12 03:21:34 UTC
++++ src/requestobject.c
+@@ -1967,6 +1967,10 @@ static int setreq_recmbr(requestobject *
          return 0;
      }
      else if (strcmp(name, "args") == 0) {

Added: head/www/mod_python35/files/patch-test_test.py
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/mod_python35/files/patch-test_test.py	Tue Mar 15 14:02:09 2016	(r411163)
@@ -0,0 +1,15 @@
+--- test/test.py.orig	2013-11-12 03:21:34 UTC
++++ test/test.py
+@@ -310,6 +310,12 @@ class HttpdCtrl:
+         modpath = LIBEXECDIR
+ 
+         s = Container(
++            IfModule("!prefork.c",
++            IfModule("!worker.c",
++            IfModule("!perchild.c",
++            IfModule("!mpm_winnt.c",
++                     LoadModule("mpm_prefork_module %%APACHEMODDIR%%/mod_mpm_prefork.so"),
++            )))),
+             IfModule("prefork.c",
+                      StartServers("3"),
+                      MaxSpareServers("1")),

Copied and modified: head/www/mod_python35/files/pkg-message.in (from r411157, head/www/mod_python35/pkg-message)
==============================================================================
--- head/www/mod_python35/pkg-message	Tue Mar 15 12:37:33 2016	(r411157, copy source)
+++ head/www/mod_python35/files/pkg-message.in	Tue Mar 15 14:02:09 2016	(r411163)
@@ -1,5 +1,8 @@
 ================================================================================
 
+The mod_python module is no longer activated in httpd.conf!
+There is now a dedicated modules file in %%APACHEETCDIR%%/modules.d
+
 Also remember to add to your Apache configuration in the appropriate context:
 
 PythonPath "['/path/to/foo', '/path/to/bar']"

Modified: head/www/mod_python35/pkg-plist
==============================================================================
--- head/www/mod_python35/pkg-plist	Tue Mar 15 13:48:00 2016	(r411162)
+++ head/www/mod_python35/pkg-plist	Tue Mar 15 14:02:09 2016	(r411163)
@@ -1,4 +1,5 @@
 bin/mod_python
+@sample %%APACHEETCDIR%%/modules.d/270_mod_python.conf.sample
 %%PYTHON_SITELIBDIR%%/mod_python-%%PORTVERSION%%-py%%PYTHON_VER%%.egg-info
 %%PYTHON_SITELIBDIR%%/mod_python/Cookie.py
 %%PYTHON_SITELIBDIR%%/mod_python/Cookie.pyc
@@ -43,7 +44,4 @@ bin/mod_python
 %%PYTHON_SITELIBDIR%%/mod_python/wsgi.py
 %%PYTHON_SITELIBDIR%%/mod_python/wsgi.pyc
 %%PYTHON_SITELIBDIR%%/mod_python/wsgi.pyo
-@unexec /usr/bin/sed -i '' '/LoadModule %%AP_NAME%%_module/d' %D/%%APACHEETCDIR%%/httpd.conf
 %%APACHEMODDIR%%/%%AP_MODULE%%
-@exec %D/sbin/apxs -e %%AP_MOD_EN%% -n %%AP_NAME%% %D/%F
-@unexec echo "Don't forget to remove all mod_%%AP_NAME%%-related directives in your httpd.conf"



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