2021-03-05 23:39:20 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
VERSION=$1
|
|
|
|
|
2024-08-13 17:59:45 +00:00
|
|
|
|
2021-03-05 23:39:20 +00:00
|
|
|
mkdir -p /opt/techs
|
|
|
|
|
|
|
|
cd /usr/src
|
|
|
|
|
|
|
|
wget https://www.php.net/distributions/php-$VERSION.tar.bz2
|
|
|
|
tar xf php-$VERSION.tar.bz2
|
|
|
|
rm php-$VERSION.tar.bz2
|
|
|
|
|
2022-12-29 08:07:45 +00:00
|
|
|
test -e /usr/lib/x86_64-linux-gnu/libc-client.a || ln -s /usr/lib/libc-client.a /usr/lib/x86_64-linux-gnu/libc-client.a
|
2021-03-05 23:39:20 +00:00
|
|
|
|
|
|
|
cd php-$VERSION
|
|
|
|
./configure --enable-fpm --with-mysqli --prefix=/opt/techs/php-$VERSION \
|
|
|
|
--with-config-file-path=/opt/techs/php-$VERSION/etc \
|
|
|
|
--with-config-file-scan-dir=/opt/techs/php-$VERSION/etc/conf.d/ \
|
|
|
|
--sbindir=/opt/techs/php-$VERSION/bin \
|
|
|
|
--with-pdo-pgsql \
|
|
|
|
--with-zlib-dir \
|
|
|
|
--with-freetype \
|
|
|
|
--enable-mbstring \
|
|
|
|
--enable-soap \
|
|
|
|
--enable-calendar \
|
|
|
|
--with-curl \
|
|
|
|
--with-zlib \
|
|
|
|
--enable-gd \
|
|
|
|
--with-zip \
|
|
|
|
--with-pgsql \
|
|
|
|
--disable-rpath \
|
|
|
|
--with-bz2 \
|
|
|
|
--with-zlib \
|
|
|
|
--enable-sockets \
|
|
|
|
--enable-sysvsem \
|
|
|
|
--enable-sysvshm \
|
|
|
|
--enable-pcntl \
|
|
|
|
--enable-mbregex \
|
|
|
|
--enable-exif \
|
|
|
|
--enable-bcmath \
|
|
|
|
--with-mhash \
|
|
|
|
--with-pdo-mysql \
|
|
|
|
--with-jpeg \
|
|
|
|
--with-openssl \
|
|
|
|
--with-fpm-user=app\
|
|
|
|
--with-fpm-group=app\
|
|
|
|
--with-libdir=/lib/x86_64-linux-gnu \
|
|
|
|
--enable-ftp \
|
|
|
|
--with-gettext \
|
|
|
|
--with-xsl \
|
|
|
|
--enable-opcache \
|
|
|
|
--with-imap \
|
|
|
|
--with-imap-ssl \
|
|
|
|
--with-sodium \
|
|
|
|
--with-kerberos \
|
2021-03-18 20:43:06 +00:00
|
|
|
--with-pear \
|
2021-04-07 16:35:50 +00:00
|
|
|
--enable-intl \
|
|
|
|
--with-webp
|
2021-03-05 23:39:20 +00:00
|
|
|
make -j
|
|
|
|
make install
|
|
|
|
|
|
|
|
mkdir -p /opt/techs/php-$VERSION/etc/conf.d/
|
|
|
|
ln -s /srv/conf/php-fpm/php.ini /opt/techs/php-$VERSION/etc/conf.d/app.ini
|
|
|
|
|
|
|
|
cd /opt/techs/php-$VERSION/bin
|
|
|
|
curl -s https://getcomposer.org/installer | ./php -d allow_url_fopen=On
|
|
|
|
cd -
|
|
|
|
|
|
|
|
echo "no" | /opt/techs/php-$VERSION/bin/pecl install redis
|
2023-01-12 15:46:33 +00:00
|
|
|
echo "no" | /opt/techs/php-$VERSION/bin/pecl install mongodb
|
2021-03-05 23:39:20 +00:00
|
|
|
|
2024-08-13 17:59:45 +00:00
|
|
|
export PATH=$PATH:/opt/techs/php-$VERSION/bin
|
|
|
|
composer.phar require ext-simplexml
|
|
|
|
|
2021-03-05 23:39:20 +00:00
|
|
|
echo "zend_extension=opcache.so" > /opt/techs/php-$VERSION/etc/conf.d/extensions.ini
|
|
|
|
echo "extension=redis.so" >> /opt/techs/php-$VERSION/etc/conf.d/extensions.ini
|
2023-01-12 15:46:33 +00:00
|
|
|
echo "extension=mongodb.so" >> /opt/techs/php-$VERSION/etc/conf.d/extensions.ini
|
2024-08-13 17:59:45 +00:00
|
|
|
|
2021-03-05 23:39:20 +00:00
|
|
|
# Not supported yet
|
|
|
|
# https://github.com/Imagick/imagick/issues/358
|
2024-08-13 17:59:45 +00:00
|
|
|
# We ignore PHP 8.3.2 until it's fixed
|
2024-10-08 10:16:00 +00:00
|
|
|
if [ "$VERSION" != "8.3.2" -a "$VERSION" != "8.3.6" -a "$VERSION" != "8.3.9" -a "$VERSION" != "8.3.12" ]; then
|
2024-08-13 17:59:45 +00:00
|
|
|
echo "no" | /opt/techs/php-$VERSION/bin/pecl install imagick
|
|
|
|
echo "extension=imagick.so" >> /opt/techs/php-$VERSION/etc/conf.d/extensions.ini
|
|
|
|
fi
|
|
|
|
|
2021-03-28 11:00:53 +00:00
|
|
|
|
|
|
|
ln -s /srv/conf/php-fpm/php.ini /opt/techs/php-$VERSION/etc/conf.d/99-app.ini
|