mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-27 00:57:50 +00:00
4d35bc6ad0
This is mod_perl for Apache. It is intended as a replacement for the p5-Apache port. Instead of creating a replacement httpd binary with mod_perl linked into it, it uses Apache's APXS to create and install mod_perl as a DSO. This makes it suitable for use with apachexx-xxx ports other than apache13.
66 lines
1.5 KiB
Bash
66 lines
1.5 KiB
Bash
#!/bin/sh
|
|
#
|
|
# Try to activate mod_perl in the installed httpd.conf and warn
|
|
# if this fails. This script could be replaced with a simple @exec
|
|
# line in the PLIST if the apache13 package installed an httpd.conf.
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
if [ "$2" != "POST-INSTALL" ]; then
|
|
exit 0
|
|
fi
|
|
|
|
TMPDIR=${TMPDIR:=/tmp}
|
|
PKG_TMPDIR=${PKG_TMPDIR:=${TMPDIR}}
|
|
|
|
apxscmd=${PKG_PREFIX}/sbin/apxs
|
|
perlmod=${PKG_PREFIX}/libexec/apache/libperl.so
|
|
tmpdir=${PKG_TMPDIR}/instmod_perl.$$
|
|
|
|
if [ ! -x ${apxscmd} ]; then
|
|
echo Can\'t find the apxs program: ${apxscmd}.
|
|
exit 1
|
|
fi
|
|
|
|
confdir=`${apxscmd} -q SYSCONFDIR`
|
|
|
|
if [ ! -d ${confdir} ]; then
|
|
echo Can\'t find Apache conf dir: ${confdir}
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -f ${confdir}/httpd.conf ]; then
|
|
if [ ! -f ${confdir}/httpd.conf.default ]; then
|
|
echo Can\'t find either of ${confdir}/httpd.conf nor
|
|
echo ${confdir}/httpd.conf.default.
|
|
exit 1
|
|
fi
|
|
|
|
if ! mkdir ${tmpdir}; then
|
|
echo Can\'t create temporary directory: ${tmpdir}
|
|
exit 1
|
|
fi
|
|
|
|
cp ${confdir}/httpd.conf.default ${tmpdir}/httpd.conf
|
|
if ${apxscmd} -e -S SYSCONFDIR=${tmpdir} -a -n perl ${perlmod}; then
|
|
echo Updating httpd.conf.default in config dir: ${confdir}
|
|
cat ${tmpdir}/httpd.conf > ${confdir}/httpd.conf.default
|
|
rm -rf ${tmpdir}
|
|
exit 0
|
|
else
|
|
rm -rf ${tmpdir}
|
|
echo The apxs command failed to activate mod_perl in the config
|
|
echo file: ${tmpdir}/httpd.conf.
|
|
exit 1
|
|
fi
|
|
elif ${apxscmd} -e -a -n perl ${perlmod}; then
|
|
exit 0
|
|
else
|
|
echo The apxs command failed to activate mod_perl in the config
|
|
echo file: ${confdir}/httpd.conf
|
|
exit 1
|
|
fi
|
|
|
|
exit 0
|