diff -bNur mod_perl2.old/Makefile mod_perl2/Makefile --- mod_perl2.old/Makefile 2015-05-31 14:21:32.000000000 +0100 +++ mod_perl2/Makefile 2015-06-07 22:16:35.000000000 +0100 @@ -3,6 +3,7 @@ PORTNAME= mod_perl DISTVERSION= 2.0.9-rc2 +PORTREVISION= 1 PORTEPOCH= 3 CATEGORIES= www perl5 #MASTER_SITES= APACHE/perl @@ -40,6 +41,14 @@ PLIST_SUB+= AP22="" .endif +# Test whether the system uses a multithreaded perl +HAS_ITHREADS= `${PREFIX}/bin/perl5 -e 'use Config; print $Config{useithreads} ? 1 : 0'` +.if ${HAS_ITHREADS} +PLIST_SUB+= ITHREADS="@comment " +.else +PLIST_SUB+= ITHREADS="" +.endif + CONFIGURE_ARGS= PREFIX=${PREFIX} MP_APXS=${APXS} \ MP_APR_CONFIG=${LOCALBASE}/bin/apr-1-config diff -bNur mod_perl2.old/files/patch-src-modules-perl-modperl_error.h mod_perl2/files/patch-src-modules-perl-modperl_error.h --- mod_perl2.old/files/patch-src-modules-perl-modperl_error.h 1970-01-01 01:00:00.000000000 +0100 +++ mod_perl2/files/patch-src-modules-perl-modperl_error.h 2015-06-07 22:12:43.000000000 +0100 @@ -0,0 +1,20 @@ +--- src/modules/perl/modperl_error.h.orig 2015-05-30 19:49:12 UTC ++++ src/modules/perl/modperl_error.h +@@ -37,6 +37,7 @@ char *modperl_error_strerror(pTHX_ apr_status_t rc); + + void modperl_croak(pTHX_ apr_status_t rc, const char* func); + ++#ifdef USE_ITHREADS + #define MP_PUTBACK_IF_USED() STMT_START \ + { \ + modperl_interp_t *interp = modperl_thx_interp_get(aTHX); \ +@@ -44,6 +45,9 @@ void modperl_croak(pTHX_ apr_status_t rc, const char* func); + modperl_interp_unselect(interp); \ + } \ + } STMT_END ++#else ++#define MP_PUTBACK_IF_USED() NOOP ++#endif + + #define MP_CROAK_PUTBACK(rc, func) STMT_START \ + { \ diff -bNur mod_perl2.old/pkg-plist mod_perl2/pkg-plist --- mod_perl2.old/pkg-plist 2015-05-31 14:21:32.000000000 +0100 +++ mod_perl2/pkg-plist 2015-06-07 22:04:20.000000000 +0100 @@ -160,8 +160,8 @@ %%SITE_ARCH%%/ModPerl/Const.pm %%SITE_ARCH%%/ModPerl/FunctionMap.pm %%SITE_ARCH%%/ModPerl/Global.pm -%%SITE_ARCH%%/ModPerl/InterpPool.pm -%%SITE_ARCH%%/ModPerl/Interpreter.pm +%%ITHREADS%%%%SITE_ARCH%%/ModPerl/InterpPool.pm +%%ITHREADS%%%%SITE_ARCH%%/ModPerl/Interpreter.pm %%SITE_ARCH%%/ModPerl/MM.pm %%SITE_ARCH%%/ModPerl/Manifest.pm %%SITE_ARCH%%/ModPerl/MapUtil.pm @@ -177,8 +177,8 @@ %%SITE_ARCH%%/ModPerl/StructureMap.pm %%SITE_ARCH%%/ModPerl/TestReport.pm %%SITE_ARCH%%/ModPerl/TestRun.pm -%%SITE_ARCH%%/ModPerl/TiPool.pm -%%SITE_ARCH%%/ModPerl/TiPoolConfig.pm +%%ITHREADS%%%%SITE_ARCH%%/ModPerl/TiPool.pm +%%ITHREADS%%%%SITE_ARCH%%/ModPerl/TiPoolConfig.pm %%SITE_ARCH%%/ModPerl/TypeMap.pm %%SITE_ARCH%%/ModPerl/Util.pm %%SITE_ARCH%%/ModPerl/WrapXS.pm @@ -235,10 +235,10 @@ %%SITE_ARCH%%/auto/Apache2/typemap %%SITE_ARCH%%/auto/ModPerl/Const/Const.so %%SITE_ARCH%%/auto/ModPerl/Global/Global.so -%%SITE_ARCH%%/auto/ModPerl/InterpPool/InterpPool.so -%%SITE_ARCH%%/auto/ModPerl/Interpreter/Interpreter.so -%%SITE_ARCH%%/auto/ModPerl/TiPool/TiPool.so -%%SITE_ARCH%%/auto/ModPerl/TiPoolConfig/TiPoolConfig.so +%%ITHREADS%%%%SITE_ARCH%%/auto/ModPerl/InterpPool/InterpPool.so +%%ITHREADS%%%%SITE_ARCH%%/auto/ModPerl/Interpreter/Interpreter.so +%%ITHREADS%%%%SITE_ARCH%%/auto/ModPerl/TiPool/TiPool.so +%%ITHREADS%%%%SITE_ARCH%%/auto/ModPerl/TiPoolConfig/TiPoolConfig.so %%SITE_ARCH%%/auto/ModPerl/Util/Util.so %%SITE_ARCH%%/mod_perl2.pm %%PERL5_MAN3%%/APR.3.gz