Skip to content

Commit 70f8a75

Browse files
committed
Adding PHP8
1 parent 0672317 commit 70f8a75

35 files changed

+544
-127
lines changed

.travis.yml

Lines changed: 52 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -3,23 +3,22 @@ language: php
33
jobs:
44
include:
55
- dist: jammy
6-
language: minimal
7-
group: dev
6+
group: minimal
87
env:
98
- RELEASE=jammy
109
name: jammy
1110
php: "8.1"
1211
before_install:
1312
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
1413
- sudo apt-get update
15-
- sudo apt-get -y install libcurl4-openssl-dev
16-
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
14+
- sudo apt-get -y install libcurl4-openssl-dev php-dev libicu-dev php-pear php
15+
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 php-pear libargon2-0-dev php-dev libonig-dev; fi
1716
- sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include
1817
- command -v expect || sudo apt-get install expect
1918
- |
2019
if ! command -v phpenv; then
2120
pushd $HOME
22-
curl -L http://git.io/phpenv-installer | bash
21+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
2322
popd
2423
export PHPENV_ROOT="/home/travis/.phpenv"
2524
if [ -d "${PHPENV_ROOT}" ]; then
@@ -28,49 +27,50 @@ jobs:
2827
fi
2928
fi
3029
- dist: focal
31-
language: __ubuntu_2004__
32-
group: dev
30+
language: minimal
31+
group: stable
3332
env:
3433
- RELEASE=focal
3534
name: focal
36-
php: "5.6"
35+
php: "7.4"
3736
before_install:
3837
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
3938
- sudo apt-get update
40-
- sudo apt-get -y install libcurl4-openssl-dev
41-
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
39+
- sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
40+
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
4241
- sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include
4342
- command -v expect || sudo apt-get install expect
4443
- |
4544
if ! command -v phpenv; then
4645
pushd $HOME
47-
curl -L http://git.io/phpenv-installer | bash
46+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
4847
popd
4948
export PHPENV_ROOT="/home/travis/.phpenv"
5049
if [ -d "${PHPENV_ROOT}" ]; then
5150
export PATH="${PHPENV_ROOT}/bin:${PATH}"
5251
eval "$(phpenv init -)"
5352
fi
5453
fi
55-
if: env(VERSION) !~ /^7\.[23]/
5654
- dist: bionic
5755
language: minimal
58-
group: dev
56+
group: stable
5957
env:
6058
- RELEASE=bionic
6159
name: bionic
6260
php: "5.6"
6361
before_install:
62+
# remove when Bionic image is fixed
63+
- sudo rm -f /etc/apt/sources.list.d/pgdg.list
6464
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
6565
- sudo apt-get update
66-
- sudo apt-get -y install libcurl4-openssl-dev
67-
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
66+
- sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
67+
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
6868
- sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include
6969
- command -v expect || sudo apt-get install expect
7070
- |
7171
if ! command -v phpenv; then
7272
pushd $HOME
73-
curl -L http://git.io/phpenv-installer | bash
73+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
7474
popd
7575
export PHPENV_ROOT="/home/travis/.phpenv"
7676
if [ -d "${PHPENV_ROOT}" ]; then
@@ -79,19 +79,21 @@ jobs:
7979
fi
8080
fi
8181
- dist: xenial
82-
group: edge
82+
group: stable
8383
env:
8484
- RELEASE=xenial
8585
name: xenial
8686
php: "5.6"
8787
before_install:
8888
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
8989
- sudo apt-get update
90+
- sudo apt-get install -y php-pear php-dev libicu-dev
91+
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install php-dev php-pear libonig-dev; fi
9092
- command -v expect || sudo apt-get install expect
9193
- |
9294
if ! command -v phpenv; then
9395
pushd $HOME
94-
curl -L http://git.io/phpenv-installer | bash
96+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
9597
popd
9698
export PHPENV_ROOT="/home/travis/.phpenv"
9799
if [ -d "${PHPENV_ROOT}" ]; then
@@ -100,14 +102,6 @@ jobs:
100102
fi
101103
fi
102104
103-
- services:
104-
- docker
105-
dist: trusty
106-
env:
107-
- RELEASE=trusty
108-
name: trusty
109-
php: "5.6"
110-
if: env(VERSION) =~ /^7\.[0-3]/
111105
- arch: ppc64le
112106
dist: jammy
113107
language: minimal
@@ -121,7 +115,7 @@ jobs:
121115
- |
122116
if ! command -v phpenv; then
123117
pushd $HOME
124-
curl -L http://git.io/phpenv-installer | bash
118+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
125119
popd
126120
export PHPENV_ROOT="/home/travis/.phpenv"
127121
if [ -d "${PHPENV_ROOT}" ]; then
@@ -142,7 +136,7 @@ jobs:
142136
- |
143137
if ! command -v phpenv; then
144138
pushd $HOME
145-
curl -L http://git.io/phpenv-installer | bash
139+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
146140
popd
147141
export PHPENV_ROOT="/home/travis/.phpenv"
148142
if [ -d "${PHPENV_ROOT}" ]; then
@@ -163,7 +157,7 @@ jobs:
163157
- |
164158
if ! command -v phpenv; then
165159
pushd $HOME
166-
curl -L http://git.io/phpenv-installer | bash
160+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
167161
popd
168162
export PHPENV_ROOT="/home/travis/.phpenv"
169163
if [ -d "${PHPENV_ROOT}" ]; then
@@ -181,11 +175,11 @@ jobs:
181175
before_install:
182176
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
183177
- sudo apt-get update
184-
- 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
178+
- 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
185179
- |
186180
if ! command -v phpenv; then
187181
pushd $HOME
188-
curl -L http://git.io/phpenv-installer | bash
182+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
189183
popd
190184
export PHPENV_ROOT="/home/travis/.phpenv"
191185
if [ -d "${PHPENV_ROOT}" ]; then
@@ -206,7 +200,7 @@ jobs:
206200
- |
207201
if ! command -v phpenv; then
208202
pushd $HOME
209-
curl -L http://git.io/phpenv-installer | bash
203+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
210204
popd
211205
export PHPENV_ROOT="/home/travis/.phpenv"
212206
if [ -d "${PHPENV_ROOT}" ]; then
@@ -228,7 +222,7 @@ jobs:
228222
- |
229223
if ! command -v phpenv; then
230224
pushd $HOME
231-
curl -L http://git.io/phpenv-installer | bash
225+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
232226
popd
233227
export PHPENV_ROOT="/home/travis/.phpenv"
234228
if [ -d "${PHPENV_ROOT}" ]; then
@@ -250,7 +244,7 @@ jobs:
250244
- |
251245
if ! command -v phpenv; then
252246
pushd $HOME
253-
curl -L http://git.io/phpenv-installer | bash
247+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
254248
popd
255249
export PHPENV_ROOT="/home/travis/.phpenv"
256250
if [ -d "${PHPENV_ROOT}" ]; then
@@ -269,11 +263,11 @@ jobs:
269263
before_install:
270264
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
271265
- sudo apt-get update
272-
- 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
266+
- 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
273267
- |
274268
if ! command -v phpenv; then
275269
pushd $HOME
276-
curl -L http://git.io/phpenv-installer | bash
270+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
277271
popd
278272
export PHPENV_ROOT="/home/travis/.phpenv"
279273
if [ -d "${PHPENV_ROOT}" ]; then
@@ -295,7 +289,7 @@ jobs:
295289
- |
296290
if ! command -v phpenv; then
297291
pushd $HOME
298-
curl -L http://git.io/phpenv-installer | bash
292+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
299293
popd
300294
export PHPENV_ROOT="/home/travis/.phpenv"
301295
if [ -d "${PHPENV_ROOT}" ]; then
@@ -316,7 +310,7 @@ jobs:
316310
- |
317311
if ! command -v phpenv; then
318312
pushd $HOME
319-
curl -L http://git.io/phpenv-installer | bash
313+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
320314
popd
321315
export PHPENV_ROOT="/home/travis/.phpenv"
322316
if [ -d "${PHPENV_ROOT}" ]; then
@@ -337,7 +331,7 @@ jobs:
337331
- |
338332
if ! command -v phpenv; then
339333
pushd $HOME
340-
curl -L http://git.io/phpenv-installer | bash
334+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
341335
popd
342336
export PHPENV_ROOT="/home/travis/.phpenv"
343337
if [ -d "${PHPENV_ROOT}" ]; then
@@ -355,11 +349,11 @@ jobs:
355349
before_install:
356350
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
357351
- sudo apt-get update
358-
- 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
352+
- 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
359353
- |
360354
if ! command -v phpenv; then
361355
pushd $HOME
362-
curl -L http://git.io/phpenv-installer | bash
356+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
363357
popd
364358
export PHPENV_ROOT="/home/travis/.phpenv"
365359
if [ -d "${PHPENV_ROOT}" ]; then
@@ -370,7 +364,7 @@ jobs:
370364
env:
371365
global:
372366
- VERSION=master ALIAS=nightly
373-
- ICU_RELEASE=59.1
367+
- ICU_RELEASE=74.2
374368
- ICU_INSTALL_DIR=$HOME/.phpenv/versions/$VERSION
375369
- PATH="$HOME/.phpenv/bin:$HOME/.php-build/bin:$PATH"
376370

@@ -433,19 +427,31 @@ script:
433427
- echo "--enable-option-checking=fatal" >> $HOME/.php-build/share/php-build/default_configure_options
434428
- cat $HOME/.php-build/share/php-build/default_configure_options
435429
- export PKG_CONFIG_PATH="$HOME/.phpenv/versions/$VERSION/lib/pkgconfig:$PKG_CONFIG_PATH"
436-
- ./bin/compile
430+
- sudo ./bin/compile
437431
- | # disable 3rd-party extension builds on master
438-
if [[ ! $VERSION =~ ^master$ ]]; then
432+
if [[ $VERSION =~ ^7.3.* ]]; then
439433
(yes '' | ./bin/compile-extension-redis) &&
440-
(./bin/compile-extension-mongo;
441-
./bin/compile-extension-mongodb) &&
434+
(./bin/compile-extension-mongo) &&
442435
./bin/compile-extension-amqp &&
443436
./bin/compile-extension-apcu &&
444437
./bin/compile-extension-zmq &&
445438
(./bin/compile-extension-memcache;
446439
./bin/compile-extension-memcached) &&
447440
./bin/compile-extension-ssh2 &&
448441
sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini
442+
else
443+
if [[ ! $VERSION =~ ^master$ ]]; then
444+
(yes '' | ./bin/compile-extension-redis) &&
445+
(./bin/compile-extension-mongo;
446+
./bin/compile-extension-mongodb) &&
447+
./bin/compile-extension-amqp &&
448+
./bin/compile-extension-apcu &&
449+
./bin/compile-extension-zmq &&
450+
(./bin/compile-extension-memcache;
451+
./bin/compile-extension-memcached) &&
452+
./bin/compile-extension-ssh2 &&
453+
sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini
454+
fi
449455
fi
450456
451457
after_success:

bin/compile

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,13 @@ export PATH="$HOME/.phpenv/bin:$HOME/.php-build/bin:$PATH"
6363
buildDefinition=${VERSION}
6464
if [[ $VERSION == nightly* || $VERSION == master* ]]; then
6565
if [[ $RELEASE == jammy ]]; then
66-
buildDefinition=8.1snapshot
66+
buildDefinition=8.3snapshot
6767
else
6868
buildDefinition=8.0snapshot
6969
fi
7070
fi
7171

72-
php-build -i development "${buildDefinition}" "${INSTALL_DEST}/${VERSION}"
72+
php-build -i development "${buildDefinition}" "${INSTALL_DEST}/${VERSION}" --verbose
7373

7474
pushd "${INSTALL_DEST}/${VERSION}"
7575

@@ -91,7 +91,7 @@ rm go-pear.phar
9191
ln -sv ../sbin/php-fpm bin/php-fpm
9292

9393
# composer and phpunit
94-
curl -fsSL -o bin/composer http://getcomposer.org/composer.phar
94+
wget -O /usr/local/bin/composer http://getcomposer.org/composer.phar
9595
if [[ $VERSION == nightly* || $VERSION == master* || $VERSION == 7* || $VERSION == 8* ]]; then
9696
PHPUNIT_ARCHIVE=phpunit.phar
9797
elif [[ $VERSION == 5.6* ]]; then
@@ -101,7 +101,7 @@ else
101101
fi
102102
curl -fsSL -o bin/phpunit https://phar.phpunit.de/$PHPUNIT_ARCHIVE
103103

104-
chmod +x bin/composer bin/phpunit
104+
chmod +x /usr/local/bin/composer bin/phpunit
105105

106106
popd
107107

bin/compile-extension-amqp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,15 @@ git clone https://github.com/alanxz/rabbitmq-c.git
1111
pushd rabbitmq-c
1212
git submodule init
1313
git submodule update
14-
autoreconf -i && ./configure --prefix $INSTALL_DEST/$VERSION && make && make install
14+
autoreconf -i && ./configure --prefix $INSTALL_DEST/$VERSION && make && sudo make install
1515

1616
popd
1717

1818
git clone https://github.com/pdezwart/php-amqp.git
1919
pushd php-amqp
2020

2121
phpize
22-
./configure && make && make install
22+
./configure && make && sudo make install
2323
popd
2424

2525
travis_time_finish

bin/compile-extension-apcu

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,12 @@ source $(dirname $0)/compile-extensions-common
66
travis_time_start
77

88
if [[ ! $VERSION =~ ^7 && ! $VERSION =~ ^8 && ! $VERSION =~ ^master$ ]]; then
9-
apcu=apcu-4.0.11
9+
apcu=apcu-5.1.23
1010
else
1111
apcu=apcu
1212
fi
1313

14-
pecl channel-update pecl.php.net
14+
sudo pecl channel-update pecl.php.net
1515

1616
echo | pecl_install $apcu
1717

bin/compile-extension-memcache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ if [[ ! $VERSION =~ ^7 && ! $VERSION =~ ^8 && ! $VERSION =~ ^master$ ]]; then
1010
tar zxvf memcache*.tgz && pushd memcache*/
1111
make clean || true
1212
phpize
13-
./configure && make && make install
13+
./configure && make && sudo make install
1414
popd
1515
fi
1616

bin/compile-extension-memcached

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ function install_memcache() {
88
wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
99
tar xzf libmemcached-1.0.18.tar.gz
1010
pushd libmemcached-1.0.18
11-
./configure --prefix=$INSTALL_DEST/$VERSION && make && make install
11+
./configure --prefix=$INSTALL_DEST/$VERSION && make && sudo make install
1212
popd
1313
popd
1414
}
@@ -27,7 +27,7 @@ else
2727
make clean || true
2828
fi
2929
phpize
30-
./configure --with-libmemcached-dir=$INSTALL_DEST/$VERSION && make && make install
30+
./configure --with-libmemcached-dir=$INSTALL_DEST/$VERSION && make && sudo make install
3131
popd
3232

3333
travis_time_finish

bin/compile-extension-mongo

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ if [[ ! $VERSION =~ ^7 && ! $VERSION =~ ^8 && ! $VERSION =~ ^master$ ]]; then
1010
pushd mongo-php-driver-legacy
1111
git checkout 1.6.16
1212
phpize
13-
./configure && make && make install
13+
./configure && make && sudo make install
1414
popd
1515
fi
1616

0 commit comments

Comments
 (0)