From 50a4e78b530563917eb606ff3b96dcc9eed5b3ee Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Fri, 13 Jul 2012 09:48:39 -0400 Subject: [PATCH] Check for exported weak symbols Ouch, all our C++ inline functions are being exported (weakly) already. Fix coming. --- src/check-internal-symbols.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/check-internal-symbols.sh b/src/check-internal-symbols.sh index ba6a45d38..729b08608 100755 --- a/src/check-internal-symbols.sh +++ b/src/check-internal-symbols.sh @@ -14,12 +14,18 @@ else exit 77 fi +if which c++filt 2>/dev/null >/dev/null; then + cplusplusfilt=c++filt +else + cplusplusfilt=cat +fi + tested=false for suffix in so; do so=.libs/libharfbuzz.$suffix if test -f "$so"; then echo "Checking that we are not exposing internal symbols" - if nm $so | grep ' T ' | grep -v ' T _fini\>\| T _init\>\| T hb_'; then + if nm $so | grep ' [TW] ' | $cplusplusfilt | grep -v ' T _fini\>\| T _init\>\| T hb_'; then echo "Ouch, internal symbols exposed" stat=1 fi