Edit report at https://bugs.php.net/bug.php?id=60812&edit=1
ID: 60812
Comment by: childers dot paula at epa dot gov
Reported by: david at davidfavor dot com
Summary: Makefile INSTALL_IT target ignores --exec-prefix,
--libexecdir, --sysconfdir
Status: Open
Type: Bug
Package: *Configuration Issues
Operating System: Ubuntu 11.10
PHP Version: 5.3.9
Block user comment: N
Private report: N
New Comment:
PHP 5.5.2 on RHEL 2.6.32-358.11.1.el6.x86_64
Similar but not identical issue: --exec-prefix is read, but --libexecdir and
--sysconfdir are not.
For those two variables, the default configure is pulling in a path to a
different installed Apache on the same server (we have 4 total), which we
believe was the last thing that was built & installed using "config/make" prior
to this PHP build.
Setting the --libexecdir and --sysconfdir explicitly at configure does not
change anything, the incorrect path is still used.
Since the Apache libs are currently all the same version, we were able to move
the libphp5.so to the correct Apache's /libexec dir and still use it, but this
may not be possible in the future if one Apache is upgraded prior to the others.
Previous Comments:
------------------------------------------------------------------------
[2012-01-19 20:12:36] david at davidfavor dot com
Description:
------------
The INSTALL_IT target hardcodes apxs2 directories making it very difficult to
install multiple versions of php or relocate php.
This also causes unexpected over writing of system php files, causing Apache to
segfault.
Fixes are a bit complex because they involve configure + Makefile.
Suggest the end result produce a Makefile which honors these setting in all
cases. So Makefile should include...
sysconfdir=argument_passed_to_configure || /usr/lib/apache2/modules
libexecdir=${exec_prefix}/argument_passed_to_configure || /etc/apache2
INSTALL_IT target then changes to...
INSTALL_IT = $(mkinstalldirs) '$(INSTALL_ROOT)/$libexecdir' && \
$(mkinstalldirs) '$(INSTALL_ROOT)/$sysconfdir' && \
/usr/bin/apxs2 -S LIBEXECDIR='$(INSTALL_ROOT)/$libexecdir' \
-S SYSCONFDIR='$(INSTALL_ROOT)/$sysconfdir' \
-i -a -n php5 libphp5.la
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=60812&edit=1