Skip to content

Commit

Permalink
Adding PHP 8.3
Browse files Browse the repository at this point in the history
  • Loading branch information
smokodon committed Jan 15, 2024
1 parent 0672317 commit 065efad
Show file tree
Hide file tree
Showing 26 changed files with 528 additions and 113 deletions.
101 changes: 52 additions & 49 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,21 @@ language: php
jobs:
include:
- dist: jammy
language: minimal
group: dev
env:
- RELEASE=jammy
name: jammy
php: "8.1"
before_install:
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
- sudo apt-get update
- sudo apt-get -y install libcurl4-openssl-dev
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
- sudo apt-get -y install libcurl4-openssl-dev php-dev libicu-dev php-pear php
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 php-pear libargon2-0-dev php-dev libonig-dev; fi
- sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include
- command -v expect || sudo apt-get install expect
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -28,49 +26,45 @@ jobs:
fi
fi
- dist: focal
language: __ubuntu_2004__
group: dev
env:
- RELEASE=focal
name: focal
php: "5.6"
php: "7.4"
before_install:
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
- sudo apt-get update
- sudo apt-get -y install libcurl4-openssl-dev
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
- sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
- sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include
- command -v expect || sudo apt-get install expect
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
export PATH="${PHPENV_ROOT}/bin:${PATH}"
eval "$(phpenv init -)"
fi
fi
if: env(VERSION) !~ /^7\.[23]/
- dist: bionic
language: minimal
group: dev
group: stable
php: "7.4"
env:
- RELEASE=bionic
name: bionic
php: "5.6"
before_install:
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
- sudo apt-get update
- sudo apt-get -y install libcurl4-openssl-dev
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
- sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
- sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include
- command -v expect || sudo apt-get install expect
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -79,19 +73,21 @@ jobs:
fi
fi
- dist: xenial
group: edge
group: stable
env:
- RELEASE=xenial
name: xenial
php: "5.6"
php: "7.4"
before_install:
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
- sudo apt-get update
- sudo apt-get install -y libicu-dev
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install php-pear libonig-dev; fi
- command -v expect || sudo apt-get install expect
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -100,14 +96,6 @@ jobs:
fi
fi
- services:
- docker
dist: trusty
env:
- RELEASE=trusty
name: trusty
php: "5.6"
if: env(VERSION) =~ /^7\.[0-3]/
- arch: ppc64le
dist: jammy
language: minimal
Expand All @@ -121,7 +109,7 @@ jobs:
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -142,7 +130,7 @@ jobs:
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -163,7 +151,7 @@ jobs:
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -181,11 +169,11 @@ jobs:
before_install:
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
- sudo apt-get update
- sudo apt-get -y -q=2 --no-install-recommends --no-install-suggests install libtidy-dev libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libmysqlclient-dev libpq-dev libicu-dev libfreetype6-dev libldap2-dev libxslt-dev libssl-dev libldb-dev libc-client-dev libkrb5-dev libsasl2-dev libmcrypt-dev expect re2c libffi-dev
- sudo apt-get -y -q=2 --no-install-recommends --no-install-suggests install libtidy-dev libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libmysqlclient-dev libpq-dev libicu-dev libfreetype6-dev libldap2-dev libxslt-dev libssl-dev libldb-dev libc-client-dev libkrb5-dev libonig-dev libsasl2-dev libmcrypt-dev expect re2c libffi-dev
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -206,7 +194,7 @@ jobs:
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -228,7 +216,7 @@ jobs:
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -250,7 +238,7 @@ jobs:
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -269,11 +257,11 @@ jobs:
before_install:
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
- sudo apt-get update
- sudo apt-get -y -q=2 --no-install-recommends --no-install-suggests install libtidy-dev libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libmysqlclient-dev libpq-dev libicu-dev libfreetype6-dev libldap2-dev libxslt-dev libssl-dev libldb-dev libc-client-dev libkrb5-dev libsasl2-dev libmcrypt-dev expect re2c libffi-dev
- sudo apt-get -y -q=2 --no-install-recommends --no-install-suggests install libtidy-dev libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libmysqlclient-dev libpq-dev libicu-dev libfreetype6-dev libldap2-dev libxslt-dev libssl-dev libldb-dev libc-client-dev libkrb5-dev libonig-dev libsasl2-dev libmcrypt-dev expect re2c libffi-dev
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -295,7 +283,7 @@ jobs:
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -316,7 +304,7 @@ jobs:
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -337,7 +325,7 @@ jobs:
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -355,11 +343,11 @@ jobs:
before_install:
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
- sudo apt-get update
- sudo apt-get -y -q=2 --no-install-recommends --no-install-suggests install libtidy-dev libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libmysqlclient-dev libpq-dev libicu-dev libfreetype6-dev libldap2-dev libxslt-dev libssl-dev libldb-dev libc-client-dev libkrb5-dev libsasl2-dev libmcrypt-dev expect re2c libffi-dev
- sudo apt-get -y -q=2 --no-install-recommends --no-install-suggests install libtidy-dev libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libmysqlclient-dev libpq-dev libicu-dev libfreetype6-dev libldap2-dev libxslt-dev libssl-dev libldb-dev libc-client-dev libkrb5-dev libonig-dev libsasl2-dev libmcrypt-dev expect re2c libffi-dev
- |
if ! command -v phpenv; then
pushd $HOME
curl -L http://git.io/phpenv-installer | bash
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
popd
export PHPENV_ROOT="/home/travis/.phpenv"
if [ -d "${PHPENV_ROOT}" ]; then
Expand All @@ -370,7 +358,7 @@ jobs:
env:
global:
- VERSION=master ALIAS=nightly
- ICU_RELEASE=59.1
- ICU_RELEASE=74.2
- ICU_INSTALL_DIR=$HOME/.phpenv/versions/$VERSION
- PATH="$HOME/.phpenv/bin:$HOME/.php-build/bin:$PATH"

Expand All @@ -379,6 +367,7 @@ before_install:

install:
- if [[ ! -d $HOME/.php-build ]]; then git clone https://github.com/php-build/php-build.git $HOME/.php-build; fi
- ~/.php-build/install-dependencies.sh
- rm -rf $HOME/.phpenv
- git clone 'https://github.com/phpenv/phpenv.git' $HOME/.phpenv
- eval "$($HOME/.phpenv/bin/phpenv init -)"
Expand All @@ -397,7 +386,7 @@ install:
- touch custom_configure_options
- ./bin/install-libzip
- ./bin/install-libsodium
- ./bin/install-password-argon2
- sudo ./bin/install-password-argon2
- . ./bin/install-onig # sourced to export ONIG_LIBS
- MINOR_VERSION=`echo $VERSION | sed -E 's/^([0-9]+\.[0-9]+).*$/\1/'` # Rewrites 7.2, 7.2snapshot, 7.2.13 => '7.2'. Leaves 'master' as-is
- |
Expand All @@ -423,6 +412,7 @@ install:
fi
before_script:
- "export COMPOSER_ALLOW_SUPERUSER=1"
- "export LSB_RELEASE=${LSB_RELEASE:-$(lsb_release -rs || echo ${$(sw_vers -productVersion)%*.*})}"
- 'export OS_NAME=${OS_NAME:-$(lsb_release -is | tr "A-Z" "a-z" || echo "osx")}'
- "export ARCH=${ARCH:-$(uname -m)}"
Expand All @@ -434,18 +424,31 @@ script:
- cat $HOME/.php-build/share/php-build/default_configure_options
- export PKG_CONFIG_PATH="$HOME/.phpenv/versions/$VERSION/lib/pkgconfig:$PKG_CONFIG_PATH"
- ./bin/compile
#- sudo mkdir -p /usr/local/bin/composer && sudo wget -P /usr/local/bin/composer http://getcomposer.org/composer.phar && sudo chmod +x /usr/local/bin/composer/composer.phar && alias composer='/usr/local/bin/composer/composer.phar' && composer self-update
- | # disable 3rd-party extension builds on master
if [[ ! $VERSION =~ ^master$ ]]; then
if [[ $VERSION =~ ^7.3.* ]]; then
(yes '' | ./bin/compile-extension-redis) &&
(./bin/compile-extension-mongo;
./bin/compile-extension-mongodb) &&
(./bin/compile-extension-mongo) &&
./bin/compile-extension-amqp &&
./bin/compile-extension-apcu &&
./bin/compile-extension-zmq &&
(./bin/compile-extension-memcache;
./bin/compile-extension-memcached) &&
./bin/compile-extension-ssh2 &&
sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini
else
if [[ ! $VERSION =~ ^master$ ]]; then
(yes '' | ./bin/compile-extension-redis) &&
(./bin/compile-extension-mongo;
./bin/compile-extension-mongodb) &&
./bin/compile-extension-amqp &&
./bin/compile-extension-apcu &&
./bin/compile-extension-zmq &&
(./bin/compile-extension-memcache;
./bin/compile-extension-memcached) &&
./bin/compile-extension-ssh2 &&
sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini
fi
fi
after_success:
Expand Down
5 changes: 3 additions & 2 deletions bin/compile-extension-memcached
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,9 @@ travis_time_start
install_memcache

if [[ $VERSION =~ ^7 || $VERSION =~ ^8 || $VERSION =~ ^master$ ]]; then
pecl download memcached-3.1.2
tar zxvf memcached*.tgz && pushd memcached*/
pecl download memcached-3.2.0
ls -al
tar xf /home/travis/build/travis-ci/php-src-builder/memcached-3.2.0.tar && pushd memcached*/
make clean || true
else
pecl download memcached-2.2.0
Expand Down
2 changes: 1 addition & 1 deletion bin/compile-extension-mongodb
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ if [[ $VERSION =~ ^master$ || $VERSION =~ snapshot$ ]]; then
make install
popd
else
pecl_install mongodb
no | pecl_install mongodb
fi

travis_time_finish
Expand Down
2 changes: 1 addition & 1 deletion bin/compile-extensions-common
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ function pecl_install() {
if [ $return = 0 ] || [ -f "$(pecl config-get ext_dir)/${extension}.so" ]; then
echo "Extension ${extension} was already installed for PHP ${VERSION}."
elif [ $return = 1 ]; then
pecl -q install ${extension} | tee ${extension}-install.log
sudo pecl -q install ${extension} | tee ${extension}-install.log
if (tail -1 ${extension}-install.log | grep failed); then
echo "There was an error installing extension ${extension} for PHP ${VERSION}:"
echo "$result"
Expand Down
2 changes: 1 addition & 1 deletion bin/install-libzip
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ if [[ $HOSTTYPE == "powerpc64le" || $HOSTTYPE == "s390x"|| $HOSTTYPE == "aarch64
then
wget -O - https://cmake.org/files/v3.14/cmake-3.14.0.tar.gz | tar -xz --strip-components=1
#compile cmake
./configure > /dev/null 2>&1 && make > /dev/null 2>&1 && sudo make install > /dev/null 2>&1
./configure > /dev/null 2>&1 && make > /dev/null 2>&1 && make install > /dev/null 2>&1
else
wget https://github.com/Kitware/CMake/releases/download/v3.14.0/cmake-3.14.0-Linux-x86_64.sh
sudo sh cmake-3.14.0-Linux-x86_64.sh --prefix=/usr --skip-license
Expand Down
2 changes: 1 addition & 1 deletion bin/install-password-argon2
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ git clone https://github.com/P-H-C/phc-winner-argon2.git libargon2
# compile
pushd libargon2
make test
sudo make install PREFIX=/usr
make install PREFIX=/usr
popd

echo "--with-password-argon2" >> $TRAVIS_BUILD_DIR/custom_configure_options
Expand Down
9 changes: 0 additions & 9 deletions default_configure_options.bionic
Original file line number Diff line number Diff line change
@@ -1,14 +1,7 @@
--enable-intl
--with-openssl
--without-pear
--with-gd
--with-jpeg-dir=/usr
--with-png-dir=/usr
--with-freetype-dir=/usr
--enable-exif
--enable-zip
--with-zlib
--with-zlib-dir=/usr
--with-pdo-sqlite
--enable-soap
--enable-xmlreader
Expand All @@ -24,7 +17,6 @@
--with-pdo-mysql=mysqlnd
--enable-pcntl
--with-readline
--enable-mbstring
--with-curl
--with-pgsql
--with-pdo-pgsql
Expand All @@ -35,7 +27,6 @@
--enable-calendar
--with-libdir=lib
--enable-fpm
--enable-maintainer-zts
--with-gmp
--with-kerberos
--with-imap
Expand Down
Loading

0 comments on commit 065efad

Please sign in to comment.