nexmon – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | #!/bin/sh -e |
2 | |||
3 | list_leaked_symbols () { |
||
4 | nm -D "$1" | grep ' T ' | cut -f 3 -d ' ' | egrep -v "$2" |
||
5 | } |
||
6 | |||
7 | check_symbols () { |
||
8 | if [ "`list_leaked_symbols "$1" "$2" | wc -l`" -ne 0 ]; then |
||
9 | echo File "$1" possibly leaking symbols: |
||
10 | list_leaked_symbols "$1" "$2" |
||
11 | exit 1 |
||
12 | fi |
||
13 | } |
||
14 | |||
15 | allowed="^_init$|^_fini$|^_ftext$|^g_" |
||
16 | allowed_in_libglib="${allowed}|^glib__private__$|^glib_gettext$|^glib_pgettext$|^glib_check_version$" |
||
17 | allowed_in_libgthread='^_init$|^_fini$|^_ftext$|^g_thread_init$|^g_thread_init_with_errorcheck_mutexes$' |
||
18 | |||
19 | check_symbols glib/.libs/libglib-2.0.so "$allowed_in_libglib" |
||
20 | check_symbols gthread/.libs/libgthread-2.0.so "$allowed_in_libgthread" |
||
21 | for file in gmodule/.libs/libgmodule-2.0.so gobject/.libs/libgobject-2.0.so gio/.libs/libgio-2.0.so; do |
||
22 | check_symbols "$file" "$allowed" |
||
23 | done |