summaryrefslogtreecommitdiff
path: root/www/mod_cplusplus
diff options
context:
space:
mode:
Diffstat (limited to 'www/mod_cplusplus')
-rw-r--r--www/mod_cplusplus/Makefile47
-rw-r--r--www/mod_cplusplus/distinfo3
-rw-r--r--www/mod_cplusplus/files/patch-configure.in46
-rw-r--r--www/mod_cplusplus/files/pkg-message.in7
-rw-r--r--www/mod_cplusplus/pkg-descr7
-rw-r--r--www/mod_cplusplus/pkg-plist11
6 files changed, 121 insertions, 0 deletions
diff --git a/www/mod_cplusplus/Makefile b/www/mod_cplusplus/Makefile
new file mode 100644
index 000000000000..a290a33211ee
--- /dev/null
+++ b/www/mod_cplusplus/Makefile
@@ -0,0 +1,47 @@
+# Ports collection makefile for: mod_cplusplus for Apache 2.x
+# Date created: Dec 29, 2006
+# Whom: Michael Durian <durian@shadetreesoftware.com>
+#
+# $FreeBSD$
+#
+
+PORTNAME= mod_cplusplus
+PORTVERSION= 1.5.2
+CATEGORIES= www
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= modcplusplus
+
+MAINTAINER= durian@shadetreesoftware.com
+COMMENT= Apache module for loading C++ objects as handlers
+
+USE_APACHE= 2.0+
+USE_AUTOTOOLS= autoconf:259 autoheader:259 libtool:15 automake:19 aclocal:19
+# ${LOCALBASE}/share/aclocal19 does not contain libtool.m4 and that causes
+# problems. Explicitly include ${LOCALBASE}/share/aclocal in the search
+# patch since that directory does contain libtool.m4
+ACLOCAL_ARGS+= -I ${LOCALBASE}/share/aclocal
+AUTOMAKE_ARGS+= -a
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS+= --with-apxs=${APXS}
+
+SUB_FILES= pkg-message
+SUB_LIST= "APACHEMODDIR=${APACHEMODDIR}"
+
+# Redefine the autotools run order to match what would happen in the
+# autogen.sh script. We cannot use that script directly since it does
+# not use the versioned autotools.
+run-autotools: run-autotools-aclocal patch-autotools run-autotools-autoheader \
+ run-libtoolize run-autotools-automake run-autotools-autoconf
+
+run-libtoolize:
+ @(cd ${CONFIGURE_WRKSRC} && ${SETENV} ${AUTOTOOLS_ENV} \
+ ${LIBTOOLIZE} --force --copy)
+
+do-install:
+ ${INSTALL_DATA} ${WRKSRC}/include/*.h ${PREFIX}/${APACHEINCLUDEDIR}
+ ${INSTALL_DATA} ${WRKSRC}/src/.libs/libmod_cplusplus.so ${PREFIX}/${APACHEMODDIR}/mod_cplusplus.so
+
+post-install:
+ @${CAT} ${PKGMESSAGE}
+
+.include <bsd.port.mk>
diff --git a/www/mod_cplusplus/distinfo b/www/mod_cplusplus/distinfo
new file mode 100644
index 000000000000..996eee3d466f
--- /dev/null
+++ b/www/mod_cplusplus/distinfo
@@ -0,0 +1,3 @@
+MD5 (mod_cplusplus-1.5.2.tar.gz) = b523636990c9212d50f0ba144fe65b09
+SHA256 (mod_cplusplus-1.5.2.tar.gz) = 0a7a4a32dd56062586db4f250954e058ce273e2f5f19bca8a32c88bc59863c0a
+SIZE (mod_cplusplus-1.5.2.tar.gz) = 123912
diff --git a/www/mod_cplusplus/files/patch-configure.in b/www/mod_cplusplus/files/patch-configure.in
new file mode 100644
index 000000000000..30a730368b35
--- /dev/null
+++ b/www/mod_cplusplus/files/patch-configure.in
@@ -0,0 +1,46 @@
+*** configure.in.orig Sat Dec 30 10:47:15 2006
+--- configure.in Sat Dec 30 10:56:16 2006
+***************
+*** 9,15 ****
+ dnl hack to get shlib extension
+ AC_MSG_CHECKING(what the shared library extension is)
+ eval SHLIB_EXT=\"$shrext\"
+! if test "$SHLIB_EXT" == "" ; then
+ AC_MSG_RESULT(could not determine shared library extension. Defaulting to .so)
+ SHLIB_EXT=".so"
+ fi
+--- 9,15 ----
+ dnl hack to get shlib extension
+ AC_MSG_CHECKING(what the shared library extension is)
+ eval SHLIB_EXT=\"$shrext\"
+! if test "x$SHLIB_EXT" = "x" ; then
+ AC_MSG_RESULT(could not determine shared library extension. Defaulting to .so)
+ SHLIB_EXT=".so"
+ fi
+***************
+*** 58,69 ****
+ fi
+ ],)
+
+! if test "$INCLUDES" == "" ; then
+ AC_MSG_ERROR(could not generate includes with apxs set to "$APXS" - you must specify a valid path to apxs using the --with-apxs flag)
+ fi
+
+ AC_CHECK_LIB(stdc++, __gxx_personality_v0, LIB_STDCPP="-lstdc++")
+! if test "$LIB_STDCPP" == "" ; then
+ CPPFLAGS="$CPPFLAGS -DNO_STDCPP"
+ fi
+ CPLUSPLUS_BUILDDIR=`pwd`
+--- 58,69 ----
+ fi
+ ],)
+
+! if test "x$INCLUDES" = "x" ; then
+ AC_MSG_ERROR(could not generate includes with apxs set to "$APXS" - you must specify a valid path to apxs using the --with-apxs flag)
+ fi
+
+ AC_CHECK_LIB(stdc++, __gxx_personality_v0, LIB_STDCPP="-lstdc++")
+! if test "x$LIB_STDCPP" = "x" ; then
+ CPPFLAGS="$CPPFLAGS -DNO_STDCPP"
+ fi
+ CPLUSPLUS_BUILDDIR=`pwd`
diff --git a/www/mod_cplusplus/files/pkg-message.in b/www/mod_cplusplus/files/pkg-message.in
new file mode 100644
index 000000000000..f2507249cd67
--- /dev/null
+++ b/www/mod_cplusplus/files/pkg-message.in
@@ -0,0 +1,7 @@
+************************************************************
+To enable this module, add the following to your server
+configuration file:
+
+ LoadModule cplusplus_module %%APACHEMODDIR%%/mod_cplusplus.so
+
+************************************************************
diff --git a/www/mod_cplusplus/pkg-descr b/www/mod_cplusplus/pkg-descr
new file mode 100644
index 000000000000..3f32419b0ee8
--- /dev/null
+++ b/www/mod_cplusplus/pkg-descr
@@ -0,0 +1,7 @@
+mod_cplusplus is a proper apache module which allows you to load cpp objects
+as handlers for Apache-2.0. It differs from other modules i've seen in that
+it manages the loading and calling of separate shared objects containing your
+handler classes. This allows you to easily and cleanly run an entire site
+with c++ handlers.
+
+WWW: http://modcplusplus.sourceforge.net/
diff --git a/www/mod_cplusplus/pkg-plist b/www/mod_cplusplus/pkg-plist
new file mode 100644
index 000000000000..91af842dd896
--- /dev/null
+++ b/www/mod_cplusplus/pkg-plist
@@ -0,0 +1,11 @@
+%%APACHEINCLUDEDIR%%/apache_filters.h
+%%APACHEINCLUDEDIR%%/apache_handler.h
+%%APACHEINCLUDEDIR%%/apache_output_buffer.h
+%%APACHEINCLUDEDIR%%/apache_protocol.h
+%%APACHEINCLUDEDIR%%/cpp_request.h
+%%APACHEINCLUDEDIR%%/cpp_server.h
+%%APACHEINCLUDEDIR%%/env_hash.h
+%%APACHEINCLUDEDIR%%/env_value.h
+%%APACHEINCLUDEDIR%%/mod_cplusplus.h
+%%APACHEINCLUDEDIR%%/request_env.h
+%%APACHEMODDIR%%/mod_cplusplus.so