X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=gdb%2Ftestsuite%2Fgdb.base%2Fsolib-nodir.exp;fp=gdb%2Ftestsuite%2Fgdb.base%2Fsolib-nodir.exp;h=f79ceead60c4c41cb78aeff68438b46c1d4d3f52;hb=cbad6d5ba66a94967eaf14df64463a4abca700d6;hp=0000000000000000000000000000000000000000;hpb=b110964dfb2d0779466e4e604983d3afa83993a4;p=pf3gnuchains%2Fpf3gnuchains4x.git diff --git a/gdb/testsuite/gdb.base/solib-nodir.exp b/gdb/testsuite/gdb.base/solib-nodir.exp new file mode 100644 index 0000000000..f79ceead60 --- /dev/null +++ b/gdb/testsuite/gdb.base/solib-nodir.exp @@ -0,0 +1,54 @@ +# Copyright 2010-2012 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . */ + +# are we on a target board +if {[is_remote target] || [skip_shlib_tests]} { + return +} + +set testfile "solib-nodir" +# Arbitrary file, possibly not containing main, even an empty one. +set srclibfile foo.c +# Arbitrary file containing main. +set srcfile start.c +set binlibfilebase ${testfile}.so +set binlibfiledir ${objdir}/${subdir} +set binlibfile ${binlibfiledir}/${binlibfilebase} +set executable ${testfile} +set objfile ${objdir}/${subdir}/${executable}.o +set binfile ${objdir}/${subdir}/${executable} + +# build the first test case +if { [get_compiler_info unused] + || [gdb_compile_shlib "${srcdir}/${subdir}/${srclibfile}" "${binlibfile}" [list debug ldflags=-Wl,-soname,${binlibfilebase}]] != "" + || [gdb_gnu_strip_debug $binlibfile] + || [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${objfile}" object {debug}] != "" + || [gdb_compile "${objfile} ${binlibfile}" "${binfile}" executable {}] != "" } { + untested ${testfile}.exp + return -1 +} + +clean_restart $executable +gdb_load_shlibs ${binlibfile} + +gdb_test_no_output "set env LD_LIBRARY_PATH=:" +gdb_test "cd ${binlibfiledir}" "Working directory [string_to_regexp ${binlibfiledir}]\\." "cd OBJDIR/${subdir}" + +set test "library loaded" +if [runto_main] { + pass $test +} else { + fail $test +}