Redesigned 'optional API' support.
authorKevin P. Fleming <kpfleming@digium.com>
Mon, 15 Jun 2009 16:07:23 +0000 (16:07 +0000)
committerKevin P. Fleming <kpfleming@digium.com>
Mon, 15 Jun 2009 16:07:23 +0000 (16:07 +0000)
commit6c5987811c7c3decff795e46f5b371fa931475fe
tree890da581f24a2e3e5d3947988627e6a294bed01d
parentd224f78dd552131c387d1ccb8dae33d7883ea3a6
Redesigned 'optional API' support.

This patch provides a new implementation of the optional API support defined
in asterisk/optional_api.h; this new version provides solves compatibility
issues with the use of linker version scripts for suppressing global symbols.
In addition, there is now a functional (and tested!) implementation for Mac OS/X,
so module writers no longer need to use special tests before calling optional
API functions. All future implementations must provide these same semantics,
so that module writers can rely on them.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@200519 65c4cc65-6c06-0410-ace0-fbb531ad65f3
19 files changed:
Makefile
apps/app_queue.c
apps/app_stack.c
apps/app_voicemail.c
configure
configure.ac
include/asterisk/agi.h
include/asterisk/autoconfig.h.in
include/asterisk/compiler.h
include/asterisk/monitor.h
include/asterisk/optional_api.h
include/asterisk/smdi.h
main/Makefile
res/res_agi.c
res/res_agi.exports
res/res_monitor.c
res/res_monitor.exports
res/res_smdi.c
res/res_smdi.exports