diff options
author | Marcus Comstedt | 2011-01-07 14:40:25 +0000 |
---|---|---|
committer | Marcus Comstedt | 2011-01-07 14:40:25 +0000 |
commit | 710e41c3e8e55dfd643aa08752bb6565de1efe57 (patch) | |
tree | e7487e637ba27fd56760f208b5802d0faae8c411 /backends | |
parent | f9ebeb330b1a07829162a925fe8bb10a3c598dbb (diff) | |
download | scummvm-rg350-710e41c3e8e55dfd643aa08752bb6565de1efe57.tar.gz scummvm-rg350-710e41c3e8e55dfd643aa08752bb6565de1efe57.tar.bz2 scummvm-rg350-710e41c3e8e55dfd643aa08752bb6565de1efe57.zip |
DC: Check plugins for required symbols
Make sure that all the required symbols exist in generated plugins.
If not, the strip command may have removed them...
svn-id: r55144
Diffstat (limited to 'backends')
-rwxr-xr-x | backends/platform/dc/check_plugin_symbols | 15 | ||||
-rw-r--r-- | backends/platform/dc/dreamcast.mk | 1 |
2 files changed, 16 insertions, 0 deletions
diff --git a/backends/platform/dc/check_plugin_symbols b/backends/platform/dc/check_plugin_symbols new file mode 100755 index 0000000000..7dd9d68971 --- /dev/null +++ b/backends/platform/dc/check_plugin_symbols @@ -0,0 +1,15 @@ +#! /bin/sh +case "$0" in + */*) dir=`dirname "$0"`/;; + *) dir="";; +esac +exec < "$dir"plugin.syms +while read sym; do + if sh-elf-nm "$1" | grep >/dev/null " $sym"'$'; then + : + else + echo >&2 "ERROR: Symbol $sym missing from $1" + exit 1 + fi +done +exit 0 diff --git a/backends/platform/dc/dreamcast.mk b/backends/platform/dc/dreamcast.mk index 5723418b59..2bea532b2e 100644 --- a/backends/platform/dc/dreamcast.mk +++ b/backends/platform/dc/dreamcast.mk @@ -14,6 +14,7 @@ plugin_dist : plugins if /usr/bin/test "$$p" -ot "$$t"; then :; else \ echo sh-elf-strip -g -o "$$t" "$$p"; \ sh-elf-strip -g -o "$$t" "$$p"; \ + $(srcdir)/backends/platform/dc/check_plugin_symbols "$$t"; \ fi;\ done |