mod_php_install.sh: install pecl imap extension, if '/usr/local/imap/lib/libc-client.a' is present.
This commit is contained in:
@@ -6951,11 +6951,10 @@ if ([[ "$PHP_MAJOR_VERSION" -eq 8 ]] && [[ "$PHP_MINOR_VERSION" -ge 4 ]]) \
|
||||
|| [[ "$PHP_MAJOR_VERSION" -gt 8 ]] \
|
||||
|| ([[ "$os_dist" = "debian" ]] && [[ "$os_version" -ge 13 ]]) ; then
|
||||
|
||||
if ( dpkg -s libc-client-dev > /dev/null 2>&1 \
|
||||
if dpkg -s libc-client-dev > /dev/null 2>&1 \
|
||||
|| dpkg -s libc-client2007e-dev > /dev/null 2>&1 \
|
||||
|| dpkg -s libc-client2007f-dev > /dev/null 2>&1 \
|
||||
|| dpkg -s uw-imap-dev >/dev/null 2>&1; ) \
|
||||
|| [[ -f /usr/local/imap/lib/libc-client.a ]] ; then
|
||||
|| dpkg -s uw-imap-dev >/dev/null 2>&1; then
|
||||
|
||||
printf "\n" | ${PREFIX_PHP}/bin/pecl install imap >> "${_logdir}/pecl_install.log" 2>&1
|
||||
if [ "$?" = "0" ]; then
|
||||
@@ -6985,6 +6984,277 @@ if ([[ "$PHP_MAJOR_VERSION" -eq 8 ]] && [[ "$PHP_MINOR_VERSION" -ge 4 ]]) \
|
||||
echo ""
|
||||
fi
|
||||
|
||||
elif [[ -f "/usr/local/imap/lib/libc-client.a" ]] ; then
|
||||
|
||||
_failed=false
|
||||
|
||||
echo_skipped
|
||||
|
||||
echo -e "\tTry to install imap from source.."
|
||||
cd /tmp
|
||||
rm -rf /tmp/imap-*
|
||||
|
||||
echo "" >> ${_logdir}/pecl_install.log
|
||||
echo "# Try to install imap from source.." >> ${_logdir}/pecl_install.log
|
||||
echo "cd /tmp" >> ${_logdir}/pecl_install.log
|
||||
echo "rm -rf /tmp/imap-*" >> ${_logdir}/pecl_install.log
|
||||
|
||||
# Download imap archive
|
||||
echononl "\t Download imap source (pecl download imap).."
|
||||
|
||||
echo "" >> ${_logdir}/pecl_install.log
|
||||
echo "# Download imap source .." >> ${_logdir}/pecl_install.log
|
||||
echo "pecl download imap" >> ${_logdir}/pecl_install.log
|
||||
|
||||
pecl download imap > /dev/null 2>&1
|
||||
|
||||
if [[ $? -eq 0 ]]; then
|
||||
echo_ok
|
||||
else
|
||||
echo_failed
|
||||
|
||||
echo ""
|
||||
echononl "continue anyway [yes/no]: "
|
||||
read OK
|
||||
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
|
||||
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
|
||||
echononl "Wrong entry! - repeat [yes/nno]: "
|
||||
read OK
|
||||
done
|
||||
[[ $OK = "yes" ]] || fatal "Abbruch durch User"
|
||||
echo ""
|
||||
|
||||
_failed=true
|
||||
fi
|
||||
|
||||
# Unzip imap source archive
|
||||
if ! ${_failed} ; then
|
||||
|
||||
echononl "\t Unzip imap source archive .."
|
||||
|
||||
echo "" >> ${_logdir}/pecl_install.log
|
||||
echo "# Unzip imap source archiv .." >> ${_logdir}/pecl_install.log
|
||||
echo "tar xzf imap-*.tgz " >> ${_logdir}/pecl_install.log
|
||||
|
||||
tar xzf imap-*.tgz >> ${_logdir}/pecl_install.log
|
||||
|
||||
if [[ $? -eq 0 ]]; then
|
||||
echo_ok
|
||||
|
||||
echo " cd imap-*/" >> ${_logdir}/pecl_install.log
|
||||
cd imap-*/ >> ${_logdir}/pecl_install.log
|
||||
|
||||
if [[ $? -gt 0 ]]; then
|
||||
|
||||
error "Error changing directory.."
|
||||
|
||||
echo ""
|
||||
echo "command was: cd imap-*/"
|
||||
echo ""
|
||||
echononl "continue anyway [yes/no]: "
|
||||
read OK
|
||||
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
|
||||
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
|
||||
echononl "Wrong entry! - repeat [yes/nno]: "
|
||||
read OK
|
||||
done
|
||||
[[ $OK = "yes" ]] || fatal "Abbruch durch User"
|
||||
echo ""
|
||||
|
||||
_failed=true
|
||||
fi
|
||||
|
||||
else
|
||||
echo_failed
|
||||
|
||||
echo ""
|
||||
echo "command was: tar xzf imap-*.tgz"
|
||||
echo ""
|
||||
echononl "continue anyway [yes/no]: "
|
||||
read OK
|
||||
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
|
||||
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
|
||||
echononl "Wrong entry! - repeat [yes/nno]: "
|
||||
read OK
|
||||
done
|
||||
[[ $OK = "yes" ]] || fatal "Abbruch durch User"
|
||||
echo ""
|
||||
|
||||
_failed=true
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
|
||||
# phpize
|
||||
if ! ${_failed} ; then
|
||||
|
||||
echononl "\t Prepare for building extension imap: phpize .."
|
||||
|
||||
echo "" >> ${_logdir}/pecl_install.log
|
||||
echo "# Prepare for building extension imap: phpize .." >> ${_logdir}/pecl_install.log
|
||||
echo "/usr/local/php-${VERSION}/bin/phpize " >> ${_logdir}/pecl_install.log
|
||||
|
||||
/usr/local/php-${VERSION}/bin/phpize >> ${_logdir}/pecl_install.log 2>&1
|
||||
|
||||
if [[ $? -eq 0 ]]; then
|
||||
echo_ok
|
||||
else
|
||||
echo_failed
|
||||
|
||||
echo ""
|
||||
echo "command was: /usr/local/php-${VERSION}/bin/phpize"
|
||||
echo ""
|
||||
echononl "continue anyway [yes/no]: "
|
||||
read OK
|
||||
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
|
||||
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
|
||||
echononl "Wrong entry! - repeat [yes/nno]: "
|
||||
read OK
|
||||
done
|
||||
[[ $OK = "yes" ]] || fatal "Abbruch durch User"
|
||||
echo ""
|
||||
|
||||
_failed=true
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
# Configure..
|
||||
if ! ${_failed} ; then
|
||||
|
||||
echononl "\t Configure imap extension.. .."
|
||||
|
||||
echo "" >> ${_logdir}/pecl_install.log
|
||||
echo "# Configure imap extension .." >> ${_logdir}/pecl_install.log
|
||||
cat <<EOF >> ${_logdir}/pecl_install.log
|
||||
export CPPFLAGS="-I/usr/local/imap/include"
|
||||
export LDFLAGS="-L/usr/local/imap/lib"
|
||||
|
||||
./configure \
|
||||
--with-php-config=/usr/local/php-${VERSION}/bin/php-config \
|
||||
--with-imap=/usr/local/imap \
|
||||
--with-kerberos \
|
||||
--with-imap-ssl
|
||||
EOF
|
||||
|
||||
export CPPFLAGS="-I/usr/local/imap/include"
|
||||
export LDFLAGS="-L/usr/local/imap/lib"
|
||||
|
||||
./configure \
|
||||
--with-php-config=/usr/local/php-${VERSION}/bin/php-config \
|
||||
--with-imap=/usr/local/imap \
|
||||
--with-kerberos \
|
||||
--with-imap-ssl >> ${_logdir}/pecl_install.log 2>&1
|
||||
|
||||
if [[ $? -eq 0 ]]; then
|
||||
echo_ok
|
||||
else
|
||||
echo_failed
|
||||
|
||||
echo ""
|
||||
echo "command was: ./configure .."
|
||||
echo ""
|
||||
echononl "continue anyway [yes/no]: "
|
||||
read OK
|
||||
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
|
||||
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
|
||||
echononl "Wrong entry! - repeat [yes/nno]: "
|
||||
read OK
|
||||
done
|
||||
[[ $OK = "yes" ]] || fatal "Abbruch durch User"
|
||||
echo ""
|
||||
|
||||
_failed=true
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
if ! ${_failed} ; then
|
||||
|
||||
echononl "\t make.."
|
||||
|
||||
echo "" >> ${_logdir}/pecl_install.log
|
||||
echo "# make .." >> ${_logdir}/pecl_install.log
|
||||
echo "make -j\"$(nproc)\"" >> ${_logdir}/pecl_install.log
|
||||
|
||||
make -j"$(nproc)" >> ${_logdir}/pecl_install.log 2>&1
|
||||
|
||||
if [[ $? -eq 0 ]]; then
|
||||
echo_ok
|
||||
else
|
||||
echo_failed
|
||||
|
||||
echo ""
|
||||
echo "command was: make -j\"$(nproc)\""
|
||||
echo ""
|
||||
echononl "continue anyway [yes/no]: "
|
||||
read OK
|
||||
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
|
||||
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
|
||||
echononl "Wrong entry! - repeat [yes/nno]: "
|
||||
read OK
|
||||
done
|
||||
[[ $OK = "yes" ]] || fatal "Abbruch durch User"
|
||||
echo ""
|
||||
|
||||
_failed=true
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
if ! ${_failed} ; then
|
||||
|
||||
echononl "\t make install.."
|
||||
|
||||
echo "" >> ${_logdir}/pecl_install.log
|
||||
echo "# make install .." >> ${_logdir}/pecl_install.log
|
||||
echo "make install" >> ${_logdir}/pecl_install.log
|
||||
|
||||
make install >> ${_logdir}/pecl_install.log 2>&1
|
||||
|
||||
if [[ $? -eq 0 ]]; then
|
||||
echo_ok
|
||||
else
|
||||
echo_failed
|
||||
|
||||
echo ""
|
||||
echo "command was: make install"
|
||||
echo ""
|
||||
echononl "continue anyway [yes/no]: "
|
||||
read OK
|
||||
OK="$(echo "$OK" | tr '[:upper:]' '[:lower:]')"
|
||||
while [[ "$OK" != "yes" ]] && [[ "$OK" != "no" ]] ; do
|
||||
echononl "Wrong entry! - repeat [yes/nno]: "
|
||||
read OK
|
||||
done
|
||||
[[ $OK = "yes" ]] || fatal "Abbruch durch User"
|
||||
echo ""
|
||||
|
||||
_failed=true
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
rm -rf /tmp/imap-*
|
||||
if ! $_failed ; then
|
||||
|
||||
echononl "\tphp.ini: extension=propro .."
|
||||
_extension="imap.so"
|
||||
|
||||
echo "" >> ${_logdir}/pecl_install.log
|
||||
echo "# php.ini: extension=${_extension} .." >> ${_logdir}/pecl_install.log
|
||||
echo "perl -i -n -p -e \"s#^(\s*\[PHP\]\s*)#\1\nextension=${_extension}\n#\" $PHP_INI_FILE" >> ${_logdir}/pecl_install.log
|
||||
|
||||
perl -i -n -p -e "s#^(\s*\[PHP\]\s*)#\1\nextension=${_extension}\n#" $PHP_INI_FILE
|
||||
if [ "$?" = "0" ]; then
|
||||
echo_ok
|
||||
else
|
||||
echo_failed
|
||||
fi
|
||||
echo ""
|
||||
fi
|
||||
|
||||
else
|
||||
|
||||
echo_skipped
|
||||
@@ -7237,7 +7507,7 @@ else
|
||||
_extension="propro.so"
|
||||
|
||||
echo "" >> ${_logdir}/pecl_install.log
|
||||
echo "# php.ini: extension=memcsched .." >> ${_logdir}/pecl_install.log
|
||||
echo "# php.ini: extension=${_extension} .." >> ${_logdir}/pecl_install.log
|
||||
echo "perl -i -n -p -e \"s#^(\s*\[PHP\]\s*)#\1\nextension=${_extension}\n#\" $PHP_INI_FILE" >> ${_logdir}/pecl_install.log
|
||||
|
||||
perl -i -n -p -e "s#^(\s*\[PHP\]\s*)#\1\nextension=${_extension}\n#" $PHP_INI_FILE
|
||||
|
||||
Reference in New Issue
Block a user