summaryrefslogtreecommitdiff
path: root/Makefile.rules
diff options
context:
space:
mode:
authorTilghman Lesher <tilghman@meg.abyt.es>2009-11-30 16:53:10 +0000
committerTilghman Lesher <tilghman@meg.abyt.es>2009-11-30 16:53:10 +0000
commit6642c90029aa7afd9ab6d674f57e98a3dd369fc6 (patch)
treef4d7d4489d057b79c16fa636b6bdb76e5648c84a /Makefile.rules
parent0c880d58ef82a20ce320217ed3ed874951de73c8 (diff)
Export dynamic (weak-linked) symbols correctly.
(closes issue #15193) Reported by: eliel Patches: 20091111__issue15193.diff.txt uploaded by tilghman (license 14) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@231439 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'Makefile.rules')
-rw-r--r--Makefile.rules5
1 files changed, 4 insertions, 1 deletions
diff --git a/Makefile.rules b/Makefile.rules
index 76bf0eeff..10970cfbc 100644
--- a/Makefile.rules
+++ b/Makefile.rules
@@ -49,7 +49,10 @@ CC_CFLAGS=$(PTHREAD_CFLAGS) $(_ASTCFLAGS) $(ASTCFLAGS)
CXX_CFLAGS=$(PTHREAD_CFLAGS) $(filter-out -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations $(AST_DECLARATION_AFTER_STATEMENT),$(_ASTCFLAGS) $(ASTCFLAGS))
ifeq ($(GNU_LD),1)
-SO_SUPPRESS_SYMBOLS=-Wl,--version-script,$(if $(wildcard $(subst .so,.exports,$@)),$(subst .so,.exports,$@),$(ASTTOPDIR)/default.exports)
+SO_SUPPRESS_SYMBOLS=-Wl,--version-script,$(if $(wildcard $(subst .so,.exports,$@)),$(subst .so,.exports,$@),$(ASTTOPDIR)/default.exports),--warn-common
+ifneq ($(wildcard $(subst .so,.dynamics,$@)),)
+SO_SUPPRESS_SYMBOLS+=-Wl,--dynamic-list,$(subst .so,.dynamics,$@)
+endif
endif
CC_LDFLAGS_SO=$(PTHREAD_CFLAGS) $(_ASTLDFLAGS) $(SOLINK) $(SO_SUPPRESS_SYMBOLS) $(ASTLDFLAGS)