From 8bf53319b5e39e47fd345afa92f242a6ecd27611 Mon Sep 17 00:00:00 2001 From: Kevin Adler Date: Mon, 18 Feb 2019 11:01:23 -0600 Subject: [PATCH 1/2] Fix shared module generation on AIX bug #77676 Makefiles for PHP extensions generated by phpize expect the PHP_MODULES to contain a list of libtool .la files so that it can read the $dlname variable from them by sourcing them in to a shell. On AIX, the code was setting PHP_MODULES to a list of .so files, which meant the dlname was blank, preventing the tests from being able to run. Change the AIX code path in the PHP_SHARED_MODULE macro to match the output on other platforms, using libtool .la files. --- acinclude.m4 | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/acinclude.m4 b/acinclude.m4 index 6249cb92e6f11..20d052007e431 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -836,14 +836,13 @@ dnl from object_var in build-dir. dnl AC_DEFUN([PHP_SHARED_MODULE],[ install_modules="install-modules" - + suffix=la + case $host_alias in *aix*[)] - suffix=so - link_cmd='$(LIBTOOL) --mode=link ifelse($4,,[$(CC)],[$(CXX)]) $(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) $(LDFLAGS) -Wl,-G -o '$3'/$1.la -export-dynamic -avoid-version -prefer-pic -module -rpath $(phplibdir) $(EXTRA_LDFLAGS) $($2) $(translit($1,a-z_-,A-Z__)_SHARED_LIBADD) && mv -f '$3'/.libs/$1.so '$3'/$1.so' + link_cmd='$(LIBTOOL) --mode=link ifelse($4,,[$(CC)],[$(CXX)]) $(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) $(LDFLAGS) -Wl,-G -o '$3'/$1.la -export-dynamic -avoid-version -prefer-pic -module -rpath $(phplibdir) $(EXTRA_LDFLAGS) $($2) $(translit($1,a-z_-,A-Z__)_SHARED_LIBADD)' ;; *[)] - suffix=la link_cmd='$(LIBTOOL) --mode=link ifelse($4,,[$(CC)],[$(CXX)]) $(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) $(LDFLAGS) -o [$]@ -export-dynamic -avoid-version -prefer-pic -module -rpath $(phplibdir) $(EXTRA_LDFLAGS) $($2) $(translit($1,a-z_-,A-Z__)_SHARED_LIBADD)' ;; esac From 7206d12cea238f1318cafd0e3a14419e1694413f Mon Sep 17 00:00:00 2001 From: Kevin Adler Date: Fri, 1 Mar 2019 18:06:43 -0600 Subject: [PATCH 2/2] Review comments --- acinclude.m4 | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/acinclude.m4 b/acinclude.m4 index 20d052007e431..3b126a55abdac 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -840,10 +840,7 @@ AC_DEFUN([PHP_SHARED_MODULE],[ case $host_alias in *aix*[)] - link_cmd='$(LIBTOOL) --mode=link ifelse($4,,[$(CC)],[$(CXX)]) $(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) $(LDFLAGS) -Wl,-G -o '$3'/$1.la -export-dynamic -avoid-version -prefer-pic -module -rpath $(phplibdir) $(EXTRA_LDFLAGS) $($2) $(translit($1,a-z_-,A-Z__)_SHARED_LIBADD)' - ;; - *[)] - link_cmd='$(LIBTOOL) --mode=link ifelse($4,,[$(CC)],[$(CXX)]) $(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) $(LDFLAGS) -o [$]@ -export-dynamic -avoid-version -prefer-pic -module -rpath $(phplibdir) $(EXTRA_LDFLAGS) $($2) $(translit($1,a-z_-,A-Z__)_SHARED_LIBADD)' + additionalFlags="-Wl,-G" ;; esac @@ -858,7 +855,7 @@ AC_DEFUN([PHP_SHARED_MODULE],[ \$(LIBTOOL) --mode=install cp $3/$1.$suffix \$(phplibdir) $3/$1.$suffix: \$($2) \$(translit($1,a-z_-,A-Z__)_SHARED_DEPENDENCIES) - $link_cmd + \$(LIBTOOL) --mode=link ifelse($4,,[\$(CC)],[\$(CXX)]) \$(COMMON_FLAGS) \$(CFLAGS_CLEAN) \$(EXTRA_CFLAGS) \$(LDFLAGS) $additionalFlags -o [\$]@ -export-dynamic -avoid-version -prefer-pic -module -rpath \$(phplibdir) \$(EXTRA_LDFLAGS) \$($2) \$(translit($1,a-z_-,A-Z__)_SHARED_LIBADD) EOF ])