summaryrefslogtreecommitdiff
path: root/build/libtool.m4
diff options
context:
space:
mode:
authorfoobar <sniper@php.net>2005-03-26 03:09:09 +0000
committerfoobar <sniper@php.net>2005-03-26 03:09:09 +0000
commit24eb2bfabc0b2ffa6a47a32250d869a6c62271c4 (patch)
tree6686de1cc274ea6f11db26570624aed6ebffb5f4 /build/libtool.m4
parentda53094765bd38510d4f95b3c237e8a1be7314f1 (diff)
downloadphp-git-24eb2bfabc0b2ffa6a47a32250d869a6c62271c4.tar.gz
- Prevent compiling shared extensions when --enable-versioning is used
- Fix -export-symbols in Linux in the bundled libtool.m4: o http://lists.gnu.org/archive/html/libtool/2002-07/msg00029.html # more about this: # http://marc.theaimsgroup.com/?l=php-dev&m=106629582813118&w=2
Diffstat (limited to 'build/libtool.m4')
-rw-r--r--build/libtool.m417
1 files changed, 17 insertions, 0 deletions
diff --git a/build/libtool.m4 b/build/libtool.m4
index 41adb2b9e7..8dccd5160a 100644
--- a/build/libtool.m4
+++ b/build/libtool.m4
@@ -1403,6 +1403,23 @@ EOF
hardcode_shlibpath_var=no
;;
+ linux*)
+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds='echo "{" > $output_objdir/$libname.ver;
+ echo "global:" >> $output_objdir/$libname.ver;
+ cat $export_symbols | while read symbol; do
+ echo " \$symbol;" >> $output_objdir/$libname.ver;
+ done;
+ echo "local: *;" >> $output_objdir/$libname.ver;
+ echo "};" >> $output_objdir/$libname.ver~
+ $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib~
+ rm -f $output_objdir/$libname.ver'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+
*)
if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'