Bug #78348 [PATCH]: Remove -lrt from pdo_sqlite.so because fdatasync removed in 5.3
| From: | petk@php.net | Date: | Mon, 29 Jul 2019 19:17:25 +0000 |
| Subject: | Bug #78348 [PATCH]: Remove -lrt from pdo_sqlite.so because fdatasync removed in 5.3 | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-222006@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=78348&edit=1
ID: 78348
Patch added by: petk@php.net
Reported by: rainer dot jung at kippdata dot de
Summary: Remove -lrt from pdo_sqlite.so because fdatasync
removed in 5.3
Status: Assigned
Type: Bug
Package: PDO SQLite
Operating System: Solaris
PHP Version: 7.4.0beta1
Assigned To: petk
Block user comment: N
Private report: N
New Comment:
The following pull request has been associated:
Patch Name: Fix #78348: Remove -lrt from pdo_sqlite.so
On GitHub: https://github.com/php/php-src/pull/4485
Patch: https://github.com/php/php-src/pull/4485.patch
Previous Comments:
------------------------------------------------------------------------
[2019-07-29 14:34:40] rainer dot jung at kippdata dot de
You are right!
So dropping for 7.4 is save and you can keep it as is in 7.2/7.3. It is just a minor cleanup. Having
the rt lib as an unneeded dependency is not critical, but removing complexity is always nice (for
7.4).
------------------------------------------------------------------------
[2019-07-29 13:13:29] cmb@php.net
While ext/pdo_sqlite/sqlite/* is removed as of PHP 5.3.0,
pdo_sqlite defaults to using ext/sqlite3/libsqlite/* (the latter
is only removed as of PHP 7.4.0), where -lrt *might* still be
needed.
------------------------------------------------------------------------
[2019-07-29 12:07:19] rainer dot jung at kippdata dot de
Description:
------------
PDO SQLite still contains the following configure test in its config.m4:
dnl Solaris fix
PHP_CHECK_LIBRARY(rt, fdatasync, [PHP_ADD_LIBRARY(rt,, PDO_SQLITE_SHARED_LIBADD)])
This check can be dropped, because the fdatasync was only used inside the bundled sqlite, but
starting with 5.3 sqlite is no longer bundled but expected as an external dependency. So
libsqlite3.so itself would have that dependency, but the pdo-sqlite.so extension should not have an
entry for -lrt any more.
You can simply drop the two lines from ext/pdo_sqlite/config.m4 (and regenerate configure).
This applies to any PHP version starting with 5.3 and up until 7.4beta1.
Note that older bugs are about fdatasync being used but -lrt missing. This is about fdatasync no
longer being used but -lrt still present.
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=78348&edit=1