[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 4/4] AIX: Stop exporting any _GLOBAL__ symbol.
From: |
Michael Haubenwallner |
Subject: |
[PATCH 4/4] AIX: Stop exporting any _GLOBAL__ symbol. |
Date: |
Thu, 10 Mar 2016 10:01:38 +0100 |
* m4/libtool.m4 (_LT_LINKER_SHLIBS): On AIX, GNU g++ generates
_GLOBAL__* symbols as, amongst others, landing pads for C++ exceptions.
These symbols must not be exported from shared libraries, or exception
handling may break for applications with runtime linking enabled.
---
m4/libtool.m4 | 2 ++
1 file changed, 2 insertions(+)
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 6134522..c8a878f 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -5042,6 +5042,7 @@ m4_if([$1], [CXX], [
_LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
case $host_os in
aix[[4-9]]*)
+ _LT_TAGVAR(exclude_expsyms, $1)='_GLOBAL_OFFSET_TABLE_|_GLOBAL__.*'
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience |
$global_symbol_pipe | $EGREP -v " ($exclude_expsyms)$" | awk '\''{ kw = "" }
/^[[VWZ]] / { kw = " weak" } { print $ 3 kw }'\'' | sort -u > $export_symbols'
;;
pw32*)
@@ -5485,6 +5486,7 @@ _LT_EOF
exp_sym_flag='-Bexport'
no_entry_flag=
else
+ _LT_TAGVAR(exclude_expsyms, $1)='_GLOBAL_OFFSET_TABLE_|_GLOBAL__.*'
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience |
$global_symbol_pipe | $EGREP -v " ($exclude_expsyms)$" | awk '\''{ kw = "" }
/^[[VWZ]] / { kw = " weak" } { print $ 3 kw }'\'' | sort -u > $export_symbols'
aix_use_runtimelinking=no
--
2.4.6
- Re: [PATCH 1/4] Fix func_echo_all inside configure., (continued)
- [PATCH 2/4] AIX: Do not rely on OBJECT_MODE env var being set., Michael Haubenwallner, 2016/03/10
- [PATCH 3/4] Use POSIX nm to simplify AIX export_symbols_cmds., Michael Haubenwallner, 2016/03/10
- Re: [PATCH 3/4] Use POSIX nm to simplify AIX export_symbols_cmds., Peter Rosin, 2016/03/10
- Re: [PATCH 3/4] Use POSIX nm to simplify AIX export_symbols_cmds., Eric Blake, 2016/03/10
- Re: [PATCH 3/4] Use POSIX nm to simplify AIX export_symbols_cmds., Michael Haubenwallner, 2016/03/11
- Re: [PATCH 3/4] Use POSIX nm to simplify AIX export_symbols_cmds., Peter Rosin, 2016/03/11
- Re: [PATCH 3/4] Use POSIX nm to simplify AIX export_symbols_cmds., Michael Haubenwallner, 2016/03/14
- Re: [PATCH 3/4] Use POSIX nm to simplify AIX export_symbols_cmds., Peter Rosin, 2016/03/14
[PATCH 4/4] AIX: Stop exporting any _GLOBAL__ symbol.,
Michael Haubenwallner <=