[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 04/12] Specify shared member in soname_spec on AIX.
From: |
Michael Haubenwallner |
Subject: |
[PATCH 04/12] Specify shared member in soname_spec on AIX. |
Date: |
Tue, 2 Oct 2012 17:34:45 +0200 |
On AIX, without runtime linking, we create the shared object as member
of the library archive.
* m4/libtool.m4: (soname_spec) Specify the archive member when creating
traditional lib.a shared archives on AIX.
(archive_expsym_cmds) On AIX, split $soname into both the archive file
name as well as the shared archive member name, and create the shared
archive using these results.
---
m4/libtool.m4 | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 4413a6d..88d8799 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -2296,7 +2296,7 @@ aix[[4-9]]*)
# We preserve .a as extension for shared libraries through AIX4.2
# and later when we are not doing run time linking.
library_names_spec='$libname$release.a $libname.a'
- soname_spec='$libname$release$shared_ext$major'
+ soname_spec='$libname$release.a($libname$release$shared_ext$major)'
fi
shlibpath_var=LIBPATH
fi
@@ -5084,7 +5084,7 @@ _LT_EOF
fi
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
# This is similar to how AIX traditionally builds its shared
libraries.
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o
$output_objdir/$soname $libobjs $deplibs $wl-bnoentry $compiler_flags
$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS
$output_objdir/$libname$release.a $output_objdir/$soname'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='func_stripname
"$libname$release.a(" ")" "$soname"~$CC '$shared_flag' -o
$output_objdir/$func_stripname_result $libobjs $deplibs $wl-bnoentry
$compiler_flags $wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS
$output_objdir/$libname$release.a $output_objdir/$func_stripname_result~$RM
$output_objdir/$func_stripname_result'
fi
fi
;;
@@ -6076,7 +6076,7 @@ if test yes != "$_lt_caught_CXX_error"; then
_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
# This is similar to how AIX traditionally builds its shared
# libraries.
- _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o
$output_objdir/$soname $libobjs $deplibs $wl-bnoentry $compiler_flags
$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS
$output_objdir/$libname$release.a $output_objdir/$soname'
+ _LT_TAGVAR(archive_expsym_cmds, $1)='func_stripname
"$libname$release.a(" ")" "$soname"~$CC '$shared_flag' -o
$output_objdir/$func_stripname_result $libobjs $deplibs $wl-bnoentry
$compiler_flags $wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS
$output_objdir/$libname$release.a $output_objdir/$func_stripname_result~$RM
$output_objdir/$func_stripname_result'
fi
fi
;;
--
1.7.3.4
- [PATCH 00/12] Improve AIX support: libltdl, filename-based versioning., Michael Haubenwallner, 2012/10/02
- [PATCH 01/12] Support loading shared library archive members., Michael Haubenwallner, 2012/10/02
- [PATCH 04/12] Specify shared member in soname_spec on AIX.,
Michael Haubenwallner <=
- [PATCH 11/12] No cross-library undefined symbols test on AIX., Michael Haubenwallner, 2012/10/02
- [PATCH 06/12] Drop useless symlinks with AIX runtime linking., Michael Haubenwallner, 2012/10/02
- [PATCH 08/12] Implement enable/disable aix-soname options., Michael Haubenwallner, 2012/10/02
- [PATCH 05/12] AIX runtime linking allows undef syms by default., Michael Haubenwallner, 2012/10/02
- [PATCH 03/12] Do not remove shared archive member in mode clean., Michael Haubenwallner, 2012/10/02
- [PATCH 07/12] Declare enable/disable aix-soname options., Michael Haubenwallner, 2012/10/02
- [PATCH 10/12] Detect XFAIL based on hardcode configuration., Michael Haubenwallner, 2012/10/02
- [PATCH 02/12] Prepare -dlopen option for shared archive members., Michael Haubenwallner, 2012/10/02
- [PATCH 12/12] Set aix-soname=yes as default., Michael Haubenwallner, 2012/10/02
- [PATCH 09/12] Run versioning checks on aix with 'aix-soname'., Michael Haubenwallner, 2012/10/02