Merge branch 'remove-posix-memalign-compl-check' into 'master'
[glib.git] / check-abis.sh
bloba18103bf89214c7ee17ca2c3fd464b7f3d26c9f8
1 #!/bin/sh -e
3 list_leaked_symbols () {
4 nm -D "$1" | grep ' T ' | cut -f 3 -d ' ' | egrep -v "$2"
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
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$'
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