Skip to content

Commit ef0396a

Browse files
committed
Adding PHP8
1 parent 0672317 commit ef0396a

35 files changed

+555
-137
lines changed

.travis.yml

Lines changed: 56 additions & 49 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,48 @@ 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
57+
php: "7.4"
5958
env:
6059
- RELEASE=bionic
6160
name: bionic
62-
php: "5.6"
6361
before_install:
6462
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
6563
- 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
64+
- sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
65+
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
6866
- sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include
6967
- command -v expect || sudo apt-get install expect
7068
- |
7169
if ! command -v phpenv; then
7270
pushd $HOME
73-
curl -L http://git.io/phpenv-installer | bash
71+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
7472
popd
7573
export PHPENV_ROOT="/home/travis/.phpenv"
7674
if [ -d "${PHPENV_ROOT}" ]; then
@@ -79,19 +77,21 @@ jobs:
7977
fi
8078
fi
8179
- dist: xenial
82-
group: edge
80+
group: stable
8381
env:
8482
- RELEASE=xenial
8583
name: xenial
8684
php: "5.6"
8785
before_install:
8886
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
8987
- sudo apt-get update
88+
- sudo apt-get install -y php-pear php-dev libicu-dev
89+
- if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install php-dev php-pear libonig-dev; fi
9090
- command -v expect || sudo apt-get install expect
9191
- |
9292
if ! command -v phpenv; then
9393
pushd $HOME
94-
curl -L http://git.io/phpenv-installer | bash
94+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
9595
popd
9696
export PHPENV_ROOT="/home/travis/.phpenv"
9797
if [ -d "${PHPENV_ROOT}" ]; then
@@ -100,14 +100,6 @@ jobs:
100100
fi
101101
fi
102102
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]/
111103
- arch: ppc64le
112104
dist: jammy
113105
language: minimal
@@ -121,7 +113,7 @@ jobs:
121113
- |
122114
if ! command -v phpenv; then
123115
pushd $HOME
124-
curl -L http://git.io/phpenv-installer | bash
116+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
125117
popd
126118
export PHPENV_ROOT="/home/travis/.phpenv"
127119
if [ -d "${PHPENV_ROOT}" ]; then
@@ -142,7 +134,7 @@ jobs:
142134
- |
143135
if ! command -v phpenv; then
144136
pushd $HOME
145-
curl -L http://git.io/phpenv-installer | bash
137+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
146138
popd
147139
export PHPENV_ROOT="/home/travis/.phpenv"
148140
if [ -d "${PHPENV_ROOT}" ]; then
@@ -163,7 +155,7 @@ jobs:
163155
- |
164156
if ! command -v phpenv; then
165157
pushd $HOME
166-
curl -L http://git.io/phpenv-installer | bash
158+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
167159
popd
168160
export PHPENV_ROOT="/home/travis/.phpenv"
169161
if [ -d "${PHPENV_ROOT}" ]; then
@@ -181,11 +173,11 @@ jobs:
181173
before_install:
182174
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
183175
- 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
176+
- 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
185177
- |
186178
if ! command -v phpenv; then
187179
pushd $HOME
188-
curl -L http://git.io/phpenv-installer | bash
180+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
189181
popd
190182
export PHPENV_ROOT="/home/travis/.phpenv"
191183
if [ -d "${PHPENV_ROOT}" ]; then
@@ -206,7 +198,7 @@ jobs:
206198
- |
207199
if ! command -v phpenv; then
208200
pushd $HOME
209-
curl -L http://git.io/phpenv-installer | bash
201+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
210202
popd
211203
export PHPENV_ROOT="/home/travis/.phpenv"
212204
if [ -d "${PHPENV_ROOT}" ]; then
@@ -228,7 +220,7 @@ jobs:
228220
- |
229221
if ! command -v phpenv; then
230222
pushd $HOME
231-
curl -L http://git.io/phpenv-installer | bash
223+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
232224
popd
233225
export PHPENV_ROOT="/home/travis/.phpenv"
234226
if [ -d "${PHPENV_ROOT}" ]; then
@@ -250,7 +242,7 @@ jobs:
250242
- |
251243
if ! command -v phpenv; then
252244
pushd $HOME
253-
curl -L http://git.io/phpenv-installer | bash
245+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
254246
popd
255247
export PHPENV_ROOT="/home/travis/.phpenv"
256248
if [ -d "${PHPENV_ROOT}" ]; then
@@ -269,11 +261,11 @@ jobs:
269261
before_install:
270262
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
271263
- 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
264+
- 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
273265
- |
274266
if ! command -v phpenv; then
275267
pushd $HOME
276-
curl -L http://git.io/phpenv-installer | bash
268+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
277269
popd
278270
export PHPENV_ROOT="/home/travis/.phpenv"
279271
if [ -d "${PHPENV_ROOT}" ]; then
@@ -295,7 +287,7 @@ jobs:
295287
- |
296288
if ! command -v phpenv; then
297289
pushd $HOME
298-
curl -L http://git.io/phpenv-installer | bash
290+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
299291
popd
300292
export PHPENV_ROOT="/home/travis/.phpenv"
301293
if [ -d "${PHPENV_ROOT}" ]; then
@@ -316,7 +308,7 @@ jobs:
316308
- |
317309
if ! command -v phpenv; then
318310
pushd $HOME
319-
curl -L http://git.io/phpenv-installer | bash
311+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
320312
popd
321313
export PHPENV_ROOT="/home/travis/.phpenv"
322314
if [ -d "${PHPENV_ROOT}" ]; then
@@ -337,7 +329,7 @@ jobs:
337329
- |
338330
if ! command -v phpenv; then
339331
pushd $HOME
340-
curl -L http://git.io/phpenv-installer | bash
332+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
341333
popd
342334
export PHPENV_ROOT="/home/travis/.phpenv"
343335
if [ -d "${PHPENV_ROOT}" ]; then
@@ -355,11 +347,11 @@ jobs:
355347
before_install:
356348
- sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
357349
- 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
350+
- 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
359351
- |
360352
if ! command -v phpenv; then
361353
pushd $HOME
362-
curl -L http://git.io/phpenv-installer | bash
354+
curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
363355
popd
364356
export PHPENV_ROOT="/home/travis/.phpenv"
365357
if [ -d "${PHPENV_ROOT}" ]; then
@@ -370,7 +362,7 @@ jobs:
370362
env:
371363
global:
372364
- VERSION=master ALIAS=nightly
373-
- ICU_RELEASE=59.1
365+
- ICU_RELEASE=74.2
374366
- ICU_INSTALL_DIR=$HOME/.phpenv/versions/$VERSION
375367
- PATH="$HOME/.phpenv/bin:$HOME/.php-build/bin:$PATH"
376368

@@ -379,6 +371,7 @@ before_install:
379371

380372
install:
381373
- if [[ ! -d $HOME/.php-build ]]; then git clone https://github.com/php-build/php-build.git $HOME/.php-build; fi
374+
- ~/.php-build/install-dependencies.sh
382375
- rm -rf $HOME/.phpenv
383376
- git clone 'https://github.com/phpenv/phpenv.git' $HOME/.phpenv
384377
- eval "$($HOME/.phpenv/bin/phpenv init -)"
@@ -423,6 +416,7 @@ install:
423416
fi
424417
425418
before_script:
419+
- "export COMPOSER_ALLOW_SUPERUSER=1"
426420
- "export LSB_RELEASE=${LSB_RELEASE:-$(lsb_release -rs || echo ${$(sw_vers -productVersion)%*.*})}"
427421
- 'export OS_NAME=${OS_NAME:-$(lsb_release -is | tr "A-Z" "a-z" || echo "osx")}'
428422
- "export ARCH=${ARCH:-$(uname -m)}"
@@ -433,19 +427,32 @@ 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
431+
- sudo mkdir -p /usr/local/bin/composer && sudo wget -P /usr/local/bin/composer http://getcomposer.org/composer.phar && sudo chmod +x bin/phpunit /usr/local/bin/composer/composer.phar && composer self-update
437432
- | # disable 3rd-party extension builds on master
438-
if [[ ! $VERSION =~ ^master$ ]]; then
439-
(yes '' | ./bin/compile-extension-redis) &&
440-
(./bin/compile-extension-mongo;
441-
./bin/compile-extension-mongodb) &&
433+
if [[ $VERSION =~ ^7.3.* ]]; then
434+
(yes '' | sudo ./bin/compile-extension-redis) &&
435+
(./bin/compile-extension-mongo) &&
442436
./bin/compile-extension-amqp &&
443437
./bin/compile-extension-apcu &&
444438
./bin/compile-extension-zmq &&
445439
(./bin/compile-extension-memcache;
446440
./bin/compile-extension-memcached) &&
447441
./bin/compile-extension-ssh2 &&
448-
sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini
442+
sudo sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini
443+
else
444+
if [[ ! $VERSION =~ ^master$ ]]; then
445+
(yes '' | ./bin/compile-extension-redis) &&
446+
(./bin/compile-extension-mongo;
447+
./bin/compile-extension-mongodb) &&
448+
./bin/compile-extension-amqp &&
449+
./bin/compile-extension-apcu &&
450+
./bin/compile-extension-zmq &&
451+
(./bin/compile-extension-memcache;
452+
./bin/compile-extension-memcached) &&
453+
./bin/compile-extension-ssh2 &&
454+
sudo sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini
455+
fi
449456
fi
450457
451458
after_success:

bin/compile

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -63,19 +63,19 @@ 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

7676
# update default_cert_file
77-
sudo mkdir -p /usr/local/ssl
78-
sudo wget -O /usr/local/ssl/cert.pem https://curl.haxx.se/ca/cacert.pem
77+
mkdir -p /usr/local/ssl
78+
wget -O /usr/local/ssl/cert.pem https://curl.haxx.se/ca/cacert.pem
7979

8080
# Fetch latest PEAR phar
8181
curl -fsSL --retry 20 -O http://pear.php.net/go-pear.phar
@@ -91,17 +91,17 @@ 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
9594
if [[ $VERSION == nightly* || $VERSION == master* || $VERSION == 7* || $VERSION == 8* ]]; then
9695
PHPUNIT_ARCHIVE=phpunit.phar
9796
elif [[ $VERSION == 5.6* ]]; then
9897
PHPUNIT_ARCHIVE=phpunit-5.7.phar
9998
else
10099
PHPUNIT_ARCHIVE=phpunit-old.phar
101100
fi
102-
curl -fsSL -o bin/phpunit https://phar.phpunit.de/$PHPUNIT_ARCHIVE
103-
104-
chmod +x bin/composer bin/phpunit
101+
wget -P bin/phpunit https://phar.phpunit.de/$PHPUNIT_ARCHIVE
102+
# mkdir -p /usr/local/bin/composer
103+
# wget -P /usr/local/bin/composer http://getcomposer.org/composer.phar
104+
# chmod +x bin/phpunit /usr/local/bin/composer/composer.phar
105105

106106
popd
107107

@@ -127,6 +127,6 @@ pushd /tmp
127127

128128
phpenv local "${VERSION}"
129129
phpenv rehash
130-
composer self-update
130+
#composer self-update
131131

132132
popd

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

0 commit comments

Comments
 (0)