summaryrefslogtreecommitdiff
path: root/src/check-def.sh
diff options
context:
space:
mode:
authorFrederic Crozat <fcrozat@mandriva.com>2006-12-16 13:55:21 -0500
committerBehdad Esfahbod <behdad@behdad.org>2006-12-16 13:55:21 -0500
commitfe21f9d8ca1e509952b1dd84a5c0430953ca663a (patch)
tree1e640043dceea5e8f9f09f3325b0638fa72d87bc /src/check-def.sh
parentfa618df6e216f9418d4769ba01cd305f3f12a113 (diff)
[check-defs.sh] Fix make check for OPD platforms
Make symbol checks work on OPD platform (such as IA64 or PPC64).
Diffstat (limited to 'src/check-def.sh')
-rwxr-xr-xsrc/check-def.sh7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/check-def.sh b/src/check-def.sh
index aae3fc66..563641ce 100755
--- a/src/check-def.sh
+++ b/src/check-def.sh
@@ -10,6 +10,11 @@ fi
test -z "$srcdir" && srcdir=.
status=0
+get_cairo_syms='nm "$so" | grep " T " | cut -d" " -f3'
+if [ "`uname -s`" = "Linux" ]; then
+ get_cairo_syms='objdump -t "$so" | sed -n "/.*g *F *\.\(opd\|text\).* \(.*cairo_.*\)$/s//\2/p"'
+fi
+
defs="cairo.def"
make $defs
for def in $defs; do
@@ -22,7 +27,7 @@ for def in $defs; do
{
echo EXPORTS
- nm $so | grep ' T ' | cut -d' ' -f3 | grep -v '^_cairo_.*_test_\|^_fini\|^_init' | sort -u
+ eval $get_cairo_syms | grep -v '^_cairo_.*_test_\|^_fini\|^_init' | sort -u
# cheat: copy the last line from the def file!
tail -n1 $def
} | diff $def - || status=1