Don't include *sol2-tdep.o on Linux/sparc*
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Thu, 25 Jun 2020 11:54:42 +0000 (13:54 +0200)
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Thu, 25 Jun 2020 11:54:42 +0000 (13:54 +0200)
Linux/sparc* currently links Solaris-specific files (sparc-sol2-tdep.o,
sparc64-sol2-tdep.o, sol2-tdep.o) for no apparent reason.  It has no
business doing so, and none of the functions/variables defined there are
used explicitly.  If support for the Solaris OSABI were desired, this
should be done using --enable-targets instead.

Since neither sparc{32,64}_sol2_init_abi currently declared in common
headers (sparc*-tdep.h) are used outside their source files, they are made
static and the declarations removed.

Tested on sparcv9-sun-solaris2.11 and sparc64-unknown-linux-gnu.

* configure.tgt <sparc-*-linux*> (gdb_target_obs): Remove
sparc-sol2-tdep.o, sol2-tdep.o, sparc64-sol2-tdep.o.
<sparc64-*-linux*> (gdb_target_obs): Remove sparc64-sol2-tdep.o,
sol2-tdep.o, sparc-sol2-tdep.o.
* sparc-sol2-tdep.c (sparc32_sol2_init_abi): Make static.
* sparc-tdep.h (sparc32_sol2_init_abi): Remove.
* sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Make static.
* sparc64-tdep.h (sparc64_sol2_init_abi): Remove.

gdb/ChangeLog
gdb/configure.tgt
gdb/sparc-sol2-tdep.c
gdb/sparc-tdep.h
gdb/sparc64-sol2-tdep.c
gdb/sparc64-tdep.h

index 0799ec3a5c83231f136f249c99b7d590b1bf0b6f..7298617b80edc8abca2c07f2f88ba6adc7ae1743 100644 (file)
@@ -1,3 +1,14 @@
+2020-06-25  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.tgt <sparc-*-linux*> (gdb_target_obs): Remove
+       sparc-sol2-tdep.o, sol2-tdep.o, sparc64-sol2-tdep.o.
+       <sparc64-*-linux*> (gdb_target_obs): Remove sparc64-sol2-tdep.o,
+       sol2-tdep.o, sparc-sol2-tdep.o.
+       * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Make static.
+       * sparc-tdep.h (sparc32_sol2_init_abi): Remove.
+       * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Make static.
+       * sparc64-tdep.h (sparc64_sol2_init_abi): Remove.
+
 2020-06-25  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
 
        * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Remove.
index b3f31af763ceec031646518008b5e0dd0ff7ccba..d66f01bb9f7b11b1c9489c4e4fc8270d30188563 100644 (file)
@@ -585,20 +585,20 @@ sh*)
 
 sparc-*-linux*)
        # Target: GNU/Linux SPARC
-       gdb_target_obs="sparc-tdep.o sparc-sol2-tdep.o sol2-tdep.o \
+       gdb_target_obs="sparc-tdep.o \
                        sparc-linux-tdep.o solib-svr4.o symfile-mem.o \
                        linux-tdep.o \
                        ravenscar-thread.o sparc-ravenscar-thread.o"
        if test "x$enable_64_bit_bfd" = "xyes"; then
            # Target: GNU/Linux UltraSPARC
-           gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o \
+           gdb_target_obs="sparc64-tdep.o \
                            sparc64-linux-tdep.o ${gdb_target_obs}"
        fi
        ;;
 sparc64-*-linux*)
        # Target: GNU/Linux UltraSPARC
-       gdb_target_obs="sparc64-tdep.o sparc64-sol2-tdep.o sol2-tdep.o \
-                       sparc64-linux-tdep.o sparc-tdep.o sparc-sol2-tdep.o \
+       gdb_target_obs="sparc64-tdep.o \
+                       sparc64-linux-tdep.o sparc-tdep.o \
                        sparc-linux-tdep.o solib-svr4.o linux-tdep.o \
                        ravenscar-thread.o sparc-ravenscar-thread.o"
        ;;
index dfd6e3454e5477d63c428ccfadfd939c41284d9e..1c61ecc960f92207d9686cd12a296a5ea118f593 100644 (file)
@@ -192,7 +192,7 @@ static const struct frame_unwind sparc32_sol2_sigtramp_frame_unwind =
 
 \f
 
-void
+static void
 sparc32_sol2_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 {
   struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
index 59eaf29be4db26b40edf5007009c98acafad5b94..625b3e8914a89300d678e61fe9bef45445e09b0e 100644 (file)
@@ -245,9 +245,6 @@ extern int sparc_is_annulled_branch_insn (CORE_ADDR pc);
 extern const struct sparc_gregmap sparc32_sol2_gregmap;
 extern const struct sparc_fpregmap sparc32_sol2_fpregmap;
 
-extern void sparc32_sol2_init_abi (struct gdbarch_info info,
-                                  struct gdbarch *gdbarch);
-
 /* Functions and variables exported from sparcnbsd-tdep.c.  */
 
 /* Register offsets for NetBSD.  */
index 31ee8739e6f8569cb13a1e60cd81d69a56327786..824444dd669e9e60d2f45849f80b8a2997819031 100644 (file)
@@ -195,7 +195,7 @@ static const struct frame_unwind sparc64_sol2_sigtramp_frame_unwind =
 
 \f
 
-void
+static void
 sparc64_sol2_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 {
   struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
index 614160e90faf790d775f492bcb3abbb55d5198df..d3ba9e22a456ccec82ed7c37f7fccd927e5e8e97 100644 (file)
@@ -119,9 +119,6 @@ extern void sparc64_collect_fpregset (const struct sparc_fpregmap *fpregmap,
 extern const struct sparc_gregmap sparc64_sol2_gregmap;
 extern const struct sparc_fpregmap sparc64_sol2_fpregmap;
 
-extern void sparc64_sol2_init_abi (struct gdbarch_info info,
-                                  struct gdbarch *gdbarch);
-
 /* Variables exported from sparc64-fbsd-tdep.c.  */
 
 /* Register offsets for FreeBSD/sparc64.  */