#22035 [Opn->Csd]: EXTRA_LDFLAGS for AIX not quite right

From: Date: Mon, 03 Feb 2003 17:36:06 +0000
Subject: #22035 [Opn->Csd]: EXTRA_LDFLAGS for AIX not quite right
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-31997@lists.php.net to get a copy of this message
ID: 22035 Updated by: sniper@php.net Reported By: trawick@apache.org -Status: Open +Status: Closed Bug Type: Apache2 related Operating System: AIX PHP Version: 4.3.0 New Comment: Patch committed. Thanks! Previous Comments: ------------------------------------------------------------------------ [2003-02-03 11:21:41] trawick@apache.org In the build for apache2filter, there is some AIX-specific logic to set EXTRA_LDFLAGS: APXS_SBINDIR=$APXS -q SBINDIR EXTRA_LDFLAGS="$EXTRA_LDFLAGS \ -Wl,-bI:$APXS_SBINDIR/httpd.exp" Problem: 1) With Apache 2.0, httpd.exp is in the libexec dir, not the sbin dir, so the link step fails. 2) Once the path for httpd.exp is tweaked, the DSO is built but run-time linking is not enabled so PHP segfaults the first time it tries to call an APR function (httpd.exp doesn't have apr_ stuff in it; run-time linking is used to resolve APR references) The fix for that is to add -Wl,-brtl to the link step. For my own gcc build I had to include -L/path/to/libgcc.a -lgcc in EXTRA_LDFLAGS to resolve references to some arithmetic operations, but I doubt that is something for PHP to worry about. So here is a patch to sapi/apache2filter/config.m4 (tested with 4.3.0, but CVS HEAD looks like patch should apply fine there too). See http://www.apache.org/~trawick/php.patch1 A funny thing about existing code in the area of the patch is the use of $(INSTALL_ROOT) in front of directories printed by "apxs -q"... I don't see how that makes any sense, but for my builds INSTALL_ROOT was unset so it worked. Here is a line from config.m4 that has an example of this use of $(INSTALL_ROOT): APXS_LIBEXECDIR='$(INSTALL_ROOT)'$APXS -q LIBEXECDIR My patch depends on the setting of APXS_LIBEXECDIR. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=22035&edit=1

« previous php.bugs (#31997) next »