Improve the build system to *properly* remove unnecessary symbols from the runtime global namespace. Along the way, change the prefixes on some internal-only API calls to use a common prefix.

With these changes, for a module to export symbols into the global namespace, it must have *both* the AST_MODFLAG_GLOBAL_SYMBOLS flag and a linker script that allows the linker to leave the symbols exposed in the module's .so file (see res_odbc.exports for an example).



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@182802 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Kevin P. Fleming
2009-03-18 01:28:42 +00:00
parent 62fbf19157
commit f1f417a9d8
33 changed files with 511 additions and 247 deletions

28
main/asterisk.exports Normal file
View File

@@ -0,0 +1,28 @@
{
global:
ast_*;
_ast_*;
__ast_*;
pbx_*;
astman_*;
ao2_*;
__ao2_*;
option_debug;
option_verbose;
dahdi_chan_name;
dahdi_chan_name_len;
dahdi_chan_mode;
cid_di;
cid_dr;
clidsb;
MD5*;
sched_*;
io_*;
jb_*;
channelreloadreason2txt;
devstate2str;
manager_event;
dialed_interface_info;
local:
*;
};