blink layout tests lack support for php7 on Ubuntu 16.04 xenial
Reported by
jwo...@igalia.com,
Jun 20 2016
|
|
Issue descriptionphp5 has been replaced by php7 in Ubuntu 16.04 xenial. Although `build/install-build-deps.sh` is aware of this, it seems none of the other infrastructure will work with php7. Notably, `third_party/WebKit/LayoutTests/http/conf/debian-httpd-2.4.conf` hardcodes "php5", and causes an error when running `run-webkit-tests`: jwolfe@jwolfe-desktop:~/chromium/src$ time python third_party/WebKit/Tools/Scripts/run-webkit-tests -t Release ... Starting HTTP server ...apache2: Syntax error on line 30 of /home/jwolfe/chromium/src/third_party/WebKit/LayoutTests/http/conf/debian-httpd-2.4.conf: Cannot load modules/libphp5.so into server: /usr/lib/apache2/modules/libphp5.so: cannot open shared object file: No such file or directory I can work around this issue locally by editing third_party/WebKit/LayoutTests/http/conf/debian-httpd-2.4.conf and replacing "libphp5.so" with "libphp7.0.so" and all remaining occurrences "php5" with "php7".
,
Jun 24 2016
For the record this is the related WebKit/EFL bug: https://bugs.webkit.org/show_bug.cgi?id=158141 ([EFL] Layout Test doesn't run on Ubuntu 16.04).
,
Jul 1 2016
I believe that this year, more people will be switching to 16.04, so this will be an issue for most people. The most obvious change would be to add a check and use php7 if available and otherwise fall back to php5. Meanwhile, if all layout tests that use PHP could be changed to use wptserve (issue 347864), then that would also solve this issue.
,
Oct 22 2016
The same happens on ArchLinux. The upstream bug at WebKit has been resolved. Those who are interested in fixing the issue in Ubuntu can test the patches and submit a CL if it also works in Chromium/Blink.
,
Oct 26 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b4501f1a7771e0d22074e30ab3be3a9626adcd9e commit b4501f1a7771e0d22074e30ab3be3a9626adcd9e Author: rob <rob@robwu.nl> Date: Wed Oct 26 21:17:39 2016 Change ArchLinux httpd config to php7 (from php5) ArchLinux's default PHP version is now PHP 7 instead of 5. This must be installed using: sudo pacman -S php-apache BUG= 621694 TEST=Before this patch, run-webkit-tests did not work, after this patch it does. Review-Url: https://codereview.chromium.org/2444633002 Cr-Commit-Position: refs/heads/master@{#427796} [modify] https://crrev.com/b4501f1a7771e0d22074e30ab3be3a9626adcd9e/third_party/WebKit/LayoutTests/http/conf/arch-httpd-2.4.conf
,
Nov 11 2016
I didn't properly understand how it was fixed for WebKit, but it looks like it wouldn't work the same way, since we don't have a Tools/efl or Tools/gtk with an install-dependencies script. My initial idea about how this might be solved would be to modify Port._apache_config_file_name_for_platform (at https://cs.chromium.org/chromium/src/third_party/WebKit/Tools/Scripts/webkitpy/layout_tests/port/base.py?l=1542), so that it returns a different config file for Ubuntu 16.04 Xenial, and in that config file it would I can work around this issue locally by editing third_party/WebKit/LayoutTests/http/conf/debian-httpd-2.4.conf and replacing "libphp5.so" with "libphp7.0.so" and all remaining occurrences "php5" with "php7". In order to do this, Tools/Scripts/webkitpy/common/system/platforminfo.py might need to be changed so that we can get the Ubuntu version?
,
Nov 15 2016
What do you think of the following [1]? It works for me on Debian Stretch. I expect it will work on all current Debian and Ubuntu versions. [1] https://codereview.chromium.org/2502893002
,
Nov 16 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a13cddf67f1d46f26103cc2f6704086d9d9a812e commit a13cddf67f1d46f26103cc2f6704086d9d9a812e Author: jack <jack@nottheoilrig.com> Date: Wed Nov 16 17:40:41 2016 Update Debian and Ubuntu Apache configuration. Support PHP 7 for Stretch, Xenial and later, and version 5 for Jessie, Wily and earlier. BUG= 621694 Review-Url: https://codereview.chromium.org/2502893002 Cr-Commit-Position: refs/heads/master@{#432542} [modify] https://crrev.com/a13cddf67f1d46f26103cc2f6704086d9d9a812e/AUTHORS [modify] https://crrev.com/a13cddf67f1d46f26103cc2f6704086d9d9a812e/third_party/WebKit/Tools/Scripts/apache_config/debian-httpd-2.4.conf
,
Nov 16 2016
This seems to work for me now. I don't need the workaround in my httpd conf I mentioned in Comment 0. About 40 tests are still failing on my system, but that's probably due to https://bugs.chromium.org/p/chromium/issues/detail?id=624091 . This is an improvement from 100% of the tests failing. :)
,
Nov 16 2016
|
|
►
Sign in to add a comment |
|
Comment 1 by dpranke@chromium.org
, Jun 20 2016Components: Blink>Infra