aboutsummaryrefslogtreecommitdiffstats
path: root/roms/skiboot/libstb/crypto/mbedtls/tests/scripts/list-symbols.sh
diff options
context:
space:
mode:
Diffstat (limited to 'roms/skiboot/libstb/crypto/mbedtls/tests/scripts/list-symbols.sh')
-rwxr-xr-xroms/skiboot/libstb/crypto/mbedtls/tests/scripts/list-symbols.sh39
1 files changed, 39 insertions, 0 deletions
diff --git a/roms/skiboot/libstb/crypto/mbedtls/tests/scripts/list-symbols.sh b/roms/skiboot/libstb/crypto/mbedtls/tests/scripts/list-symbols.sh
new file mode 100755
index 000000000..930722c1b
--- /dev/null
+++ b/roms/skiboot/libstb/crypto/mbedtls/tests/scripts/list-symbols.sh
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+set -eu
+
+if [ -d include/mbedtls ]; then :; else
+ echo "$0: must be run from root" >&2
+ exit 1
+fi
+
+if grep -i cmake Makefile >/dev/null; then
+ echo "$0: not compatible with cmake" >&2
+ exit 1
+fi
+
+cp include/mbedtls/config.h include/mbedtls/config.h.bak
+scripts/config.pl full
+make clean
+make_ret=
+CFLAGS=-fno-asynchronous-unwind-tables make lib \
+ >list-symbols.make.log 2>&1 ||
+ {
+ make_ret=$?
+ echo "Build failure: CFLAGS=-fno-asynchronous-unwind-tables make lib"
+ cat list-symbols.make.log >&2
+ }
+rm list-symbols.make.log
+mv include/mbedtls/config.h.bak include/mbedtls/config.h
+if [ -n "$make_ret" ]; then
+ exit "$make_ret"
+fi
+
+if uname | grep -F Darwin >/dev/null; then
+ nm -gUj library/libmbed*.a 2>/dev/null | sed -n -e 's/^_//p'
+elif uname | grep -F Linux >/dev/null; then
+ nm -og library/libmbed*.a | grep -v '^[^ ]*: *U \|^$\|^[^ ]*:$' | sed 's/^[^ ]* . //'
+fi | sort > exported-symbols
+make clean
+
+wc -l exported-symbols