Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 692442 - No PECL modules can be built with dev-lang/php-7.4.0_beta1
Summary: No PECL modules can be built with dev-lang/php-7.4.0_beta1
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: PHP Bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-08-18 09:40 UTC by Hasso Tepper
Modified: 2019-10-01 19:20 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
PHP7.4 libtool patch (portage-php74.patch,2.44 KB, patch)
2019-08-19 06:37 UTC, Hasso Tepper
Details | Diff
Eclass patch (portage-php-eclass.patch,341 bytes, patch)
2019-08-19 06:43 UTC, Hasso Tepper
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Hasso Tepper 2019-08-18 09:40:47 UTC
phpize errors out with every PECL module out there. There is no problem with upstream php built from source. Updating ebuild to beta2 doesn't fix anything.

Reproducible: Always

Steps to Reproduce:
1. Install dev-lang/php-7.4.0_beta1
2. Download and unpack any PECL module (php-redis for example)
3. Run phpize
Actual Results:  
build@gentoo ~/tmp/redis-5.0.2 $ /usr/lib/php7.4/bin/phpize
Configuring for:
PHP Api Version:         20190529
Zend Module Api No:      20190529
Zend Extension Api No:   320190529
configure.ac:161: warning: LTOPTIONS_VERSION is m4_require'd but not m4_defun'd
build/libtool.m4:61: LT_INIT is expanded from...
build/libtool.m4:99: AC_PROG_LIBTOOL is expanded from...
configure.ac:161: the top level
configure.ac:161: warning: LTSUGAR_VERSION is m4_require'd but not m4_defun'd
build/libtool.m4:61: LT_INIT is expanded from...
build/libtool.m4:99: AC_PROG_LIBTOOL is expanded from...
configure.ac:161: the top level
configure.ac:161: warning: LTVERSION_VERSION is m4_require'd but not m4_defun'd
build/libtool.m4:61: LT_INIT is expanded from...
build/libtool.m4:99: AC_PROG_LIBTOOL is expanded from...
configure.ac:161: the top level
configure.ac:161: warning: LTOBSOLETE_VERSION is m4_require'd but not m4_defun'd
build/libtool.m4:61: LT_INIT is expanded from...
build/libtool.m4:99: AC_PROG_LIBTOOL is expanded from...
configure.ac:161: the top level
configure:5010: error: possibly undefined macro: m4_ifval
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
configure:8608: error: possibly undefined macro: _LT_SET_OPTIONS
configure:8608: error: possibly undefined macro: LT_INIT
build@gentoo ~/tmp/redis-5.0.2 $

Expected Results:  
build@gentoo ~/tmp/redis-5.0.2 $ phpize
Configuring for:
PHP Api Version:         20190529
Zend Module Api No:      20190529
Zend Extension Api No:   320190529
build@gentoo ~/tmp/redis-5.0.2 $
Comment 1 Tomáš Mózes 2019-08-18 12:35:46 UTC
Have you please tried extending USE_PHP with php7-4 in your local overlay and installing via portage?
Comment 2 Hasso Tepper 2019-08-19 06:37:13 UTC
Created attachment 587388 [details, diff]
PHP7.4 libtool patch

After looking at more closely I think I understand somewhat what is going on. PHP folks reworked build system between 7.3 and 7.4 banning aclocal.m4 usage etc. The PHP upstream uses old libtool and it works for them, but not for Gentoo as it uses autoreconf and friends.

Gentoo already copies it's own libtool.m4 into PHP, but with reworked PHP build system it's not enough any more – newer libtool in Gentoo doesn't use single libtool.m4 (like the on in PHP upstream) and we need more.

This patch fixes the issue for me.
Comment 3 Hasso Tepper 2019-08-19 06:43:34 UTC
Created attachment 587390 [details, diff]
Eclass patch

Note that to make PECL etc ebuilds to work, this patch for eclass is needed as well – phpize removes aclocal.m4 itself now.