mirror of
git://git.savannah.gnu.org/libtool.git
synced 2025-01-30 14:30:15 +08:00
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]:
Symbols in "pick any" sections are not global. Use awk, not sed, in the global_symbol_pipe so that keeping track of sections is easier. * doc/libtool.texi (libtool script contents): Update to hint at new findings concerning "pick any" sections.
This commit is contained in:
parent
ea0ebd6da1
commit
aa7580d941
@ -1,3 +1,12 @@
|
||||
2005-09-08 Peter Ekberg <peda@axentia.se>
|
||||
|
||||
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]:
|
||||
Symbols in "pick any" sections are not global. Use
|
||||
awk, not sed, in the global_symbol_pipe so that keeping
|
||||
track of sections is easier.
|
||||
* doc/libtool.texi (libtool script contents): Update to hint
|
||||
at new findings concerning "pick any" sections.
|
||||
|
||||
2005-09-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
||||
|
||||
* tests/early-libtool.at (config.status): Use EXEEXT
|
||||
|
@ -5017,7 +5017,8 @@ formats:
|
||||
@end example
|
||||
|
||||
The @var{size} of the global variables are not zero and the @var{section}
|
||||
of the global functions are not "UNDEF".
|
||||
of the global functions are not "UNDEF". Symbols in "pick any" sections
|
||||
("pick any" appears in the section header) are not global either.
|
||||
@end defvar
|
||||
|
||||
@defvar RANLIB
|
||||
|
16
libltdl/m4/libtool.m4
vendored
16
libltdl/m4/libtool.m4
vendored
@ -3078,11 +3078,17 @@ for ac_symprfx in "" "_"; do
|
||||
# and D for any global variable.
|
||||
# Also find C++ and __fastcall symbols from MSVC++,
|
||||
# which start with @ or ?.
|
||||
lt_cv_sys_global_symbol_pipe="$SED -n -e ['/ UNDEF [^|]*()/d; / 00* UNDEF /d;
|
||||
s/.*().*External *| *$ac_symprfx$sympat.*/T $ac_symprfx\1 \1/p;
|
||||
s/.*External *| *$ac_symprfx$sympat.*/D $ac_symprfx\1 \1/p;
|
||||
s/.*().*External *| *\([@?][_A-Za-z0-9@?]*\).*/T \1 \1/p;
|
||||
s/.*External *| *\([@?][_A-Za-z0-9@?]*\).*/D \1 \1/p']"
|
||||
lt_cv_sys_global_symbol_pipe="$AWK ['
|
||||
{last_section=section; section=\$ 3}
|
||||
/Section length .*#relocs.*(pick any)/{hide[last_section]=1}
|
||||
\$ 0!~/External *\|/{next}
|
||||
/ 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next}
|
||||
{if(hide[section]) next}
|
||||
{f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"}
|
||||
{split(\$ 0, a, /\||\r/); split(a[2], s)}
|
||||
s[1]~/^[@?]/{print s[1], s[1]; next}
|
||||
s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}
|
||||
' prfx=^$ac_symprfx]"
|
||||
else
|
||||
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user