aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite
diff options
context:
space:
mode:
authorStan Shebs <shebs@codesourcery.com>1999-01-30 00:03:21 +0000
committerStan Shebs <shebs@codesourcery.com>1999-01-30 00:03:21 +0000
commita8edbc4de003acc6cebac86c074d01b6969e67ce (patch)
tree89a3f0433ef4916084859f40c6d40a40824cda42 /gdb/testsuite
parentdb36fe70e7f6976feaafbc4af3b52fb815107204 (diff)
downloadgdb-a8edbc4de003acc6cebac86c074d01b6969e67ce.zip
gdb-a8edbc4de003acc6cebac86c074d01b6969e67ce.tar.gz
gdb-a8edbc4de003acc6cebac86c074d01b6969e67ce.tar.bz2
* gdb.hp/gen-so-thresh.c, so-thresh.sh, so-thresh.exp,
so-thresh.linkopts, so-thresh.mk: Move to gdb.hp from gdb.base (shortening names from solib_threshold.exp etc), won't run on anything but HP-UX for the foreseeable future. * gdb.hp/Makefile.in, gdb.base/Makefile.in (clean): Adjust to reflect move.
Diffstat (limited to 'gdb/testsuite')
-rw-r--r--gdb/testsuite/ChangeLog57
-rwxr-xr-xgdb/testsuite/gdb.base/solib_threshold.build12
-rw-r--r--gdb/testsuite/gdb.base/solib_threshold.link_opts4
-rw-r--r--gdb/testsuite/gdb.base/solib_threshold.mk73
-rw-r--r--gdb/testsuite/gdb.hp/gen-so-thresh.c (renamed from gdb/testsuite/gdb.base/gen_solib_threshold.c)50
-rw-r--r--gdb/testsuite/gdb.hp/so-thresh.exp (renamed from gdb/testsuite/gdb.base/solib_threshold.exp)25
-rw-r--r--gdb/testsuite/gdb.hp/so-thresh.linkopts5
-rw-r--r--gdb/testsuite/gdb.hp/so-thresh.mk73
-rwxr-xr-xgdb/testsuite/gdb.hp/so-thresh.sh12
9 files changed, 135 insertions, 176 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 8a9b1e5..5647dfe 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,12 +1,12 @@
-start-sanitize-gdbtk
-Fri Jan 29 06:32:16 1999 Keith Seitz <keiths@cygnus.com>
+Mon Jan 25 18:35:56 1999 Stan Shebs <shebs@andros.cygnus.com>
- * gdb.gdbtk/cpp_variable.test (cpp_variable-1.1): Fix
- function name error.
+ * gdb.hp/gen-so-thresh.c, so-thresh.sh, so-thresh.exp,
+ so-thresh.linkopts, so-thresh.mk: Move to gdb.hp from gdb.base
+ (shortening names from solib_threshold.exp etc), won't run on
+ anything but HP-UX for the foreseeable future.
+ * gdb.hp/Makefile.in, gdb.base/Makefile.in (clean): Adjust to
+ reflect move.
- * gdb.gdbtk/cpp_variable.h (class VC): Fix compiler warning.
-
-end-sanitize-gdbtk
Thu Jan 21 15:46:49 1999 Stan Shebs <shebs@andros.cygnus.com>
* gdb.base/Makefile.in, gdb.c++/Makefile.in,
@@ -311,13 +311,6 @@ Mon Jan 4 10:06:43 1999 David Taylor <taylor@texas.cygnus.com>
* gdb.hp/xdb0.h: new file.
* gdb.hp/xdb1.c: new file.
-start-sanitize-gdbtk
-Wed Dec 30 08:52:58 1998 Keith Seitz <keiths@cygnus.com>
-
- * gdb.gdbtk/{console.exp, browser.exp}: If no DISPLAY is set,
- skip the tests.
-
-end-sanitize-gdbtk
Mon Dec 21 14:08:38 1998 David Taylor <taylor@texas.cygnus.com>
The following change was made by Edith Epstein
@@ -382,14 +375,6 @@ Thu Oct 1 20:56:14 1998 Andrew Cagney <cagney@b1.cygnus.com>
* lib/gdb.exp, gdb.base/default.exp, config/monitor.exp,
gdb.base/default.exp: Replace "exec" with "executable".
-start-sanitize-gdbtk
-1998-09-29 Keith Seitz <keiths@cygnus.com>
-
- * gdb.gdbtk/browser.test: Fix tests which incorrectly assume
- that gdb knows _exactly_ which files belong to the user
- and which come from libraries.
-
-end-sanitize-gdbtk
Tue Sep 29 15:06:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
* gdb.base/default.exp: Change else if to elseif from previous
@@ -443,15 +428,6 @@ Fri Sep 11 13:58:02 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* gdb.base/setshow.exp: Fix error introduced by call to runto_main.
-start-sanitize-gdbtk
-Fri Jul 24 14:57:19 1998 Keith Seitz <keiths@cygnus.com>
-
- * gdb.gdbtk/Makefile.in: Add new example program "stack".
- * gdb.gdbtk/browser.test,browser.exp: Add browser window
- tests.
- * gdb.gdbtk/stack1.c,stack2.c: Test case for browser window.
-
-end-sanitize-gdbtk
start-sanitize-cygnus
Fri Jul 24 15:51:34 1998 Jeffrey A Law (law@cygnus.com)
@@ -481,25 +457,6 @@ Thurs Jul 9 11:08:31 1998 Dawn Perchik <dawn@cygnus.com>
* gdb.base/commands.exp: Break up infrun_breakpoint_command_test
into two parts to get around a synchronization problem in expect.
-start-sanitize-gdbtk
-Sun Jun 28 22:34:34 1998 Martin M. Hunt <hunt@cygnus.com>
-
- * gdb.gdbtk/simple.c (main): Make main return an
- int so compiler will stop complaining.
-
-Fri Jun 26 14:27:13 1998 Keith Seitz <keiths@cygnus.com>
-
- * lib/gdb.exp (gdbtk_start): Add startup for gdbtk.
-
- * configure.in: Add options for gdbtk testsuite.
-
- * configure: Regenerate.
-
- * gdb.gdbtk: New directory to hold gdbtk tests.
-
- * gdb.gdbtk/console.{exp, test}: New console window tests.
-
-end-sanitize-gdbtk
Fri Jun 26 14:52:47 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* gdb.fortran/types.exp: Escape brackets in expect patterns
diff --git a/gdb/testsuite/gdb.base/solib_threshold.build b/gdb/testsuite/gdb.base/solib_threshold.build
deleted file mode 100755
index e95478d..0000000
--- a/gdb/testsuite/gdb.base/solib_threshold.build
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/ksh
-#
-# This script is a "wrapper" to use the auto_solib_add_threshold.mk
-# Makefile. See the comments in auto_solib_add_threshold.exp
-# regarding why this script exists.
-#
-
-#set -o xtrace
-#set -o verbose
-
-MAKEFLAGS=
-make -f solib_threshold.mk require_shlibs all
diff --git a/gdb/testsuite/gdb.base/solib_threshold.link_opts b/gdb/testsuite/gdb.base/solib_threshold.link_opts
deleted file mode 100644
index bbf874a..0000000
--- a/gdb/testsuite/gdb.base/solib_threshold.link_opts
+++ /dev/null
@@ -1,4 +0,0 @@
-# Linker options for solib_threshold test
--l00_solib_threshold
--l01_solib_threshold
--l02_solib_threshold
diff --git a/gdb/testsuite/gdb.base/solib_threshold.mk b/gdb/testsuite/gdb.base/solib_threshold.mk
deleted file mode 100644
index 83a6956..0000000
--- a/gdb/testsuite/gdb.base/solib_threshold.mk
+++ /dev/null
@@ -1,73 +0,0 @@
-# Make file for solib_threshold test
-
-OBJDIR=.
-SRCDIR=.
-CFLAGS = +DA1.1 -g
-
-# This is how to build this generator.
-gen_solib_threshold.o: ${SRCDIR}/gen_solib_threshold.c
- $(CC) $(CFLAGS) -o gen_solib_threshold.o -c ${SRCDIR}/gen_solib_threshold.c
-gen_solib_threshold: gen_solib_threshold.o
- $(CC) $(CFLAGS) -o gen_solib_threshold gen_solib_threshold.o
-
-# This is how to run this generator.
-# This target should be made before the 'all' target,
-# to ensure that the shlib sources are all available.
-require_shlibs: gen_solib_threshold
- if ! [ -a lib00_solib_threshold.c ] ; then \
- gen_solib_threshold ; \
- fi
- if ! [ -a lib01_solib_threshold.c ] ; then \
- gen_solib_threshold ; \
- fi
- if ! [ -a lib02_solib_threshold.c ] ; then \
- gen_solib_threshold ; \
- fi
-
-# This is how to build all the shlibs.
-# Be sure to first make the require_shlibs target!
-lib00_solib_threshold.o: lib00_solib_threshold.c
- $(CC) $(CFLAGS) +Z -o lib00_solib_threshold.o -c lib00_solib_threshold.c
-lib00_solib_threshold.sl: lib00_solib_threshold.o
- $(LD) $(LDFLAGS) -b -o lib00_solib_threshold.sl lib00_solib_threshold.o
-lib01_solib_threshold.o: lib01_solib_threshold.c
- $(CC) $(CFLAGS) +Z -o lib01_solib_threshold.o -c lib01_solib_threshold.c
-lib01_solib_threshold.sl: lib01_solib_threshold.o
- $(LD) $(LDFLAGS) -b -o lib01_solib_threshold.sl lib01_solib_threshold.o
-lib02_solib_threshold.o: lib02_solib_threshold.c
- $(CC) $(CFLAGS) +Z -o lib02_solib_threshold.o -c lib02_solib_threshold.c
-lib02_solib_threshold.sl: lib02_solib_threshold.o
- $(LD) $(LDFLAGS) -b -o lib02_solib_threshold.sl lib02_solib_threshold.o
-
-
-
-
-# For convenience, here's names for all pieces of all shlibs.
-SHLIB_SOURCES = \
- lib00_solib_threshold.c \
- lib01_solib_threshold.c \
- lib02_solib_threshold.c
-
-SHLIB_OBJECTS = $(SHLIB_SOURCES:.c=.o)
-SHLIBS = $(SHLIB_SOURCES:.c=.sl)
-SHLIB_NAMES = $(SHLIB_SOURCES:.c=)
-EXECUTABLES = $(SHLIBS) gen_solib_threshold solib_threshold
-OBJECT_FILES = $(SHLIB_OBJECTS) gen_solib_threshold.o solib_threshold.o
-
-shlib_objects: $(SHLIB_OBJECTS)
-shlibs: $(SHLIBS)
-
-# This is how to build the debuggable testcase that uses the shlibs.
-solib_threshold.o: solib_threshold.c
- $(CC) $(CFLAGS) -o solib_threshold.o -c solib_threshold.c
-solib_threshold: shlibs solib_threshold.o
- $(LD) $(LDFLAGS) -o solib_threshold -lc -L${OBJDIR} -c solib_threshold.link_opts /opt/langtools/lib/end.o /lib/crt0.o solib_threshold.o
-
-# Yeah, but you should first make the require_shlibs target!
-all: solib_threshold gen_solib_threshold
-
-# To remove everything built via this makefile...
-clean:
- rm -f lib0*_solib_threshold.*
- rm -f *.o gen_solib_threshold solib_threshold.link_opts solib_threshold.c
- rm -f solib_threshold
diff --git a/gdb/testsuite/gdb.base/gen_solib_threshold.c b/gdb/testsuite/gdb.hp/gen-so-thresh.c
index d8352f9..c1a3eb5 100644
--- a/gdb/testsuite/gdb.base/gen_solib_threshold.c
+++ b/gdb/testsuite/gdb.hp/gen-so-thresh.c
@@ -1,24 +1,24 @@
/*
- * Program to generate the auto_solib_add_threshhold testcase,
+ * Program to generate the so-thresh testcase,
* including associated linked-against shared libraries.
* Build as:
*
- * cc -g -o gen_auto_solib_add_threshhold gen_auto_solib_add_threshhold.c
+ * cc -g -o gen-so-thresh gen-so-thresh.c
*
* Invoke as:
*
- * gen_auto_solib_add_threshhold
+ * gen-so-thresh
*
* It will put all the code in the current directory (".").
*
* A makefile can also be generated if the -makemake option is used.
* To use the makefile:
*
- * make -f auto_solib_add_threshhold.mk all
+ * make -f so-thresh.mk all
*
* The name of the application is
*
- * auto_solib_add_threshhold
+ * so-thresh
*
* (Revised from a program by John Bishop. --rehrauer)
*/
@@ -65,15 +65,15 @@ char **argv;
return;
}
- if (strncmp (argv[0], "gen_", 4) != 0)
+ if (strncmp (argv[0], "gen-", 4) != 0)
{
- printf ("** This tool expected to be named \"gen_something\"\n");
+ printf ("** This tool expected to be named \"gen-something\"\n");
return;
}
strcpy (testcase_name, argv[0]+4);
strcpy (linkfile_name, testcase_name);
- strcat (linkfile_name, ".link_opts");
+ strcat (linkfile_name, ".linkopts");
link_file = fopen (linkfile_name, "w");
fprintf (link_file, "# Linker options for %s test\n", testcase_name);
@@ -114,15 +114,15 @@ char **argv;
{
fprintf (make_file, "lib%2.2d_%s.o: lib%2.2d_%s.c\n", i, testcase_name, i, testcase_name);
fprintf (make_file, "\t$(CC) $(CFLAGS) +Z -o lib%2.2d_%s.o -c lib%2.2d_%s.c\n", i, testcase_name, i, testcase_name);
- fprintf (make_file, "lib%2.2d_%s.sl: lib%2.2d_%s.o\n", i, testcase_name, i, testcase_name);
- fprintf (make_file, "\t$(LD) $(LDFLAGS) -b -o lib%2.2d_%s.sl lib%2.2d_%s.o\n", i, testcase_name, i, testcase_name);
+ fprintf (make_file, "lib%2.2d-%s.sl: lib%2.2d-%s.o\n", i, testcase_name, i, testcase_name);
+ fprintf (make_file, "\t$(LD) $(LDFLAGS) -b -o lib%2.2d-%s.sl lib%2.2d-%s.o\n", i, testcase_name, i, testcase_name);
}
fprintf (make_file, "\n");
fprintf (make_file, "# For convenience, here's names for all pieces of all shlibs.\n");
fprintf (make_file, "SHLIB_SOURCES = \\\n");
for (i=0; i < lib_num-1; i++)
- fprintf (make_file, "\tlib%2.2d_%s.c \\\n", i, testcase_name);
- fprintf (make_file, "\tlib%2.2d_%s.c\n", lib_num-1, testcase_name);
+ fprintf (make_file, "\tlib%2.2d-%s.c \\\n", i, testcase_name);
+ fprintf (make_file, "\tlib%2.2d-%s.c\n", lib_num-1, testcase_name);
fprintf (make_file, "SHLIB_OBJECTS = $(SHLIB_SOURCES:.c=.o)\n");
fprintf (make_file, "SHLIBS = $(SHLIB_SOURCES:.c=.sl)\n");
fprintf (make_file, "SHLIB_NAMES = $(SHLIB_SOURCES:.c=)\n");
@@ -145,16 +145,16 @@ fprintf (make_file, "# For convenience, here's names for all pieces of all shlib
fprintf (make_file, "# To remove everything built via this makefile...\n");
fprintf (make_file, "clean:\n");
/* Do this carefully, to avoid hitting silly HP-UX ARG_MAX limits... */
- fprintf (make_file, "\trm -f lib0*_%s.*\n", testcase_name);
- fprintf (make_file, "\trm -f lib1*_%s.*\n", testcase_name);
- fprintf (make_file, "\trm -f lib2*_%s.*\n", testcase_name);
- fprintf (make_file, "\trm -f lib3*_%s.*\n", testcase_name);
- fprintf (make_file, "\trm -f lib4*_%s.*\n", testcase_name);
- fprintf (make_file, "\trm -f lib5*_%s.*\n", testcase_name);
- fprintf (make_file, "\trm -f lib6*_%s.*\n", testcase_name);
- fprintf (make_file, "\trm -f lib7*_%s.*\n", testcase_name);
- fprintf (make_file, "\trm -f lib8*_%s.*\n", testcase_name);
- fprintf (make_file, "\trm -f lib9*_%s.*\n", testcase_name);
+ fprintf (make_file, "\trm -f lib0*-%s.*\n", testcase_name);
+ fprintf (make_file, "\trm -f lib1*-%s.*\n", testcase_name);
+ fprintf (make_file, "\trm -f lib2*-%s.*\n", testcase_name);
+ fprintf (make_file, "\trm -f lib3*-%s.*\n", testcase_name);
+ fprintf (make_file, "\trm -f lib4*-%s.*\n", testcase_name);
+ fprintf (make_file, "\trm -f lib5*-%s.*\n", testcase_name);
+ fprintf (make_file, "\trm -f lib6*-%s.*\n", testcase_name);
+ fprintf (make_file, "\trm -f lib7*-%s.*\n", testcase_name);
+ fprintf (make_file, "\trm -f lib8*-%s.*\n", testcase_name);
+ fprintf (make_file, "\trm -f lib9*-%s.*\n", testcase_name);
fprintf (make_file, "\trm -f %s %s %s %s.c\n", argv[0], testcase_name, linkfile_name, testcase_name);
fprintf (make_file, "\n");
fclose (make_file);
@@ -166,8 +166,8 @@ fprintf (make_file, "# For convenience, here's names for all pieces of all shlib
/* Generate the names for the library.
*/
- sprintf (file_name, "lib%2.2d_%s.c", i, testcase_name);
- sprintf (file_name_core, "lib%2.2d_%s", i, testcase_name);
+ sprintf (file_name, "lib%2.2d-%s.c", i, testcase_name);
+ sprintf (file_name_core, "lib%2.2d-%s", i, testcase_name);
/* Generate the source code.
*/
@@ -189,7 +189,7 @@ fprintf (make_file, "# For convenience, here's names for all pieces of all shlib
/* Add a linker options line
*/
- fprintf (link_file, "-l%2.2d_%s\n", i, testcase_name);
+ fprintf (link_file, "-l%2.2d-%s\n", i, testcase_name);
}
/* Generate the "main" file.
diff --git a/gdb/testsuite/gdb.base/solib_threshold.exp b/gdb/testsuite/gdb.hp/so-thresh.exp
index 33abcfd..1977e92 100644
--- a/gdb/testsuite/gdb.base/solib_threshold.exp
+++ b/gdb/testsuite/gdb.hp/so-thresh.exp
@@ -29,7 +29,7 @@ if ![isnative] then {
return
}
-set testfile "solib_threshold"
+set testfile "so-thresh"
set srcfile ${testfile}.c
set binfile ${objdir}/${subdir}/${testfile}
@@ -38,22 +38,22 @@ if [get_compiler_info ${binfile}] {
}
# This testcase is automatically generated, via the
-# gen_solib_threshold program, which also should
+# gen-so-thresh program, which also should
# live in this same directory.
#
# The generator produces:
-# - solib_threshhold.c
-# - 3 .c files named solib_threshold_libXX.c
-# - a makefile named solib_threshold.mk with a
-# target named "solib_threshold" that will compile
+# - so-thresh.c
+# - 3 .c files named libXX-so-thresh.c
+# - a makefile named so-thresh.mk with a
+# target named "so-thresh" that will compile
# and link the testcase
#
-# Making with solib_threshold.mk produces:
-# - solib_threshold
+# Making with so-thresh.mk produces:
+# - so-thresh
# - 3 shared libraries that are linked against, named
-# solib_threshhold_libXX.sl
+# libXX-so-thresh.sl
#
-# We build gen_solib_threshhold, run it, and then make with
+# We build gen-so-thresh, run it, and then make with
# the makefile it produces.
#
set genfile gen_${testfile}
@@ -86,7 +86,8 @@ set timeout 60
#
send_user "Making with ${testfile}.mk ...\n"
-remote_exec build "sh -c \\\"cd ${objdir}/${subdir}\\; make -f ${srcdir}/${subdir}/${testfile}.mk clean require_shlibs all SRCDIR=${srcdir}/${subdir} OBJDIR=${objdir}/${subdir}\\\""
+# remote_exec build "sh -c \\\"cd ${objdir}/${subdir}\\; make -v -f ${srcdir}/${subdir}/${testfile}.mk clean require_shlibs all SRCDIR=${srcdir}/${subdir} OBJDIR=${objdir}/${subdir}\\\""
+remote_exec build "sh -c \\\"cd ${objdir}/${subdir}\\; make -v -f ${srcdir}/${subdir}/${testfile}.mk clean require_shlibs all SRCDIR=${srcdir}/${subdir} OBJDIR=${objdir}/${subdir}\\\""
# Only HP-UX (and any other platforms using SOM shared libraries, I
# guess) interprets the auto-solib-add variable as a threshhold,
@@ -350,7 +351,7 @@ gdb_expect {
}
send_gdb "sharedlibrary\n"
gdb_expect {
- -re ".*Reading symbols from .*/lib02_solib_threshold\\.sl\\.\\.\\.done\\..*$gdb_prompt $"\
+ -re ".*Reading symbols from .*/lib02-so-thresh\\.sl\\.\\.\\.done\\..*$gdb_prompt $"\
{pass "manually load all symbols"}
-re "$gdb_prompt $"\
{fail "manually load all symbols"}
diff --git a/gdb/testsuite/gdb.hp/so-thresh.linkopts b/gdb/testsuite/gdb.hp/so-thresh.linkopts
new file mode 100644
index 0000000..547b4eb
--- /dev/null
+++ b/gdb/testsuite/gdb.hp/so-thresh.linkopts
@@ -0,0 +1,5 @@
+# Linker options for so-thresh test
+-l00-so-thresh
+-l01-so-thresh
+-l02-so-thresh
+
diff --git a/gdb/testsuite/gdb.hp/so-thresh.mk b/gdb/testsuite/gdb.hp/so-thresh.mk
new file mode 100644
index 0000000..343185c
--- /dev/null
+++ b/gdb/testsuite/gdb.hp/so-thresh.mk
@@ -0,0 +1,73 @@
+# Make file for so-thresh test
+
+OBJDIR=.
+SRCDIR=.
+CFLAGS = +DA1.1 -g
+
+# This is how to build this generator.
+gen-so-thresh.o: ${SRCDIR}/gen-so-thresh.c
+ $(CC) $(CFLAGS) -o gen-so-thresh.o -c ${SRCDIR}/gen-so-thresh.c
+gen-so-thresh: gen-so-thresh.o
+ $(CC) $(CFLAGS) -o gen-so-thresh gen-so-thresh.o
+
+# This is how to run this generator.
+# This target should be made before the 'all' target,
+# to ensure that the shlib sources are all available.
+require_shlibs: gen-so-thresh
+ if ! [ -a lib00-so-thresh.c ] ; then \
+ gen-so-thresh ; \
+ fi
+ if ! [ -a lib01-so-thresh.c ] ; then \
+ gen-so-thresh ; \
+ fi
+ if ! [ -a lib02-so-thresh.c ] ; then \
+ gen-so-thresh ; \
+ fi
+
+# This is how to build all the shlibs.
+# Be sure to first make the require_shlibs target!
+lib00-so-thresh.o: lib00-so-thresh.c
+ $(CC) $(CFLAGS) +Z -o lib00-so-thresh.o -c lib00-so-thresh.c
+lib00-so-thresh.sl: lib00-so-thresh.o
+ $(LD) $(LDFLAGS) -b -o lib00-so-thresh.sl lib00-so-thresh.o
+lib01-so-thresh.o: lib01-so-thresh.c
+ $(CC) $(CFLAGS) +Z -o lib01-so-thresh.o -c lib01-so-thresh.c
+lib01-so-thresh.sl: lib01-so-thresh.o
+ $(LD) $(LDFLAGS) -b -o lib01-so-thresh.sl lib01-so-thresh.o
+lib02-so-thresh.o: lib02-so-thresh.c
+ $(CC) $(CFLAGS) +Z -o lib02-so-thresh.o -c lib02-so-thresh.c
+lib02-so-thresh.sl: lib02-so-thresh.o
+ $(LD) $(LDFLAGS) -b -o lib02-so-thresh.sl lib02-so-thresh.o
+
+
+
+
+# For convenience, here's names for all pieces of all shlibs.
+SHLIB_SOURCES = \
+ lib00-so-thresh.c \
+ lib01-so-thresh.c \
+ lib02-so-thresh.c
+
+SHLIB_OBJECTS = $(SHLIB_SOURCES:.c=.o)
+SHLIBS = $(SHLIB_SOURCES:.c=.sl)
+SHLIB_NAMES = $(SHLIB_SOURCES:.c=)
+EXECUTABLES = $(SHLIBS) gen-so-thresh so-thresh
+OBJECT_FILES = $(SHLIB_OBJECTS) gen-so-thresh.o so-thresh.o
+
+shlib_objects: $(SHLIB_OBJECTS)
+shlibs: $(SHLIBS)
+
+# This is how to build the debuggable testcase that uses the shlibs.
+so-thresh.o: so-thresh.c
+ $(CC) $(CFLAGS) -o so-thresh.o -c so-thresh.c
+so-thresh: shlibs so-thresh.o
+ $(LD) $(LDFLAGS) -o so-thresh -lc -L${OBJDIR} -c so-thresh.linkopts /opt/langtools/lib/end.o /lib/crt0.o so-thresh.o
+
+# Yeah, but you should first make the require_shlibs target!
+all: so-thresh gen-so-thresh
+
+# To remove everything built via this makefile...
+clean:
+ rm -f lib0*-so-thresh.*
+ rm -f *.o gen-so-thresh so-thresh.linkopts so-thresh.c
+ rm -f so-thresh
diff --git a/gdb/testsuite/gdb.hp/so-thresh.sh b/gdb/testsuite/gdb.hp/so-thresh.sh
new file mode 100755
index 0000000..dc90270
--- /dev/null
+++ b/gdb/testsuite/gdb.hp/so-thresh.sh
@@ -0,0 +1,12 @@
+#!/bin/ksh
+#
+# This script is a "wrapper" to use the so-thresh.mk
+# Makefile. See the comments in so-thresh.exp
+# regarding why this script exists.
+#
+
+#set -o xtrace
+#set -o verbose
+
+MAKEFLAGS=
+make -v -f so-thresh.mk require_shlibs all