Skip dlopen-libpthread.exp in cross testing
authorYao Qi <yao@codesourcery.com>
Thu, 25 Sep 2014 07:50:07 +0000 (15:50 +0800)
committerYao Qi <yao@codesourcery.com>
Tue, 30 Sep 2014 03:42:51 +0000 (11:42 +0800)
commit345bcc73f2714713c8fc58992d989e3e55be0f8a
tree576dc3a5820ff90be2b8a8a9ba6968dc8e5ea68c
parent5f77241211f17f37cd9b5795e6b7e1e65fd54ee3
Skip dlopen-libpthread.exp in cross testing

I see the following fails on arm-linux-gnueabi,

result of ldd build-git/arm/gdb/testsuite/gdb.threads/dlopen-libpthread.so is 1
output of ldd build-git/arm/gdb/testsuite/gdb.threads/dlopen-libpthread.so is not a dynamic executable
child process exited abnormally
FAIL: gdb.threads/dlopen-libpthread.exp: ldd dlopen-libpthread.so
FAIL: gdb.threads/dlopen-libpthread.exp: ldd dlopen-libpthread.so output contains libs

the test script invokes ldd (on host) for the target libraries, which
is wrong.  ldd can't be cross because it invokes dynamic linker with
LD_TRACE_LOADED_OBJECTS and gets the dependent libraries.  My first
reaction to this problem is to execute ld.so on the target (like
remote_exec target).  When I start to hack proc build_executable_own_libs,
I find it has assumptions here and there that the native testing is
performed.  Then I check the callers of build_executable_own_libs,
and they are all skipped if isnative is false.  It is reasonable to do
the same in dlopen-libpthread.exp too.

gdb/testsuite:

2014-09-30  Yao Qi  <yao@codesourcery.com>

* gdb.threads/dlopen-libpthread.exp: Skip it if isnative is
false.
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.threads/dlopen-libpthread.exp