Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [PATCH] gdb: sim: disable integration w/some multitarget configs [PR sim/13418]
@ 2016-01-02  8:42 Mike Frysinger
  2016-01-04 13:38 ` Pedro Alves
  0 siblings, 1 reply; 4+ messages in thread
From: Mike Frysinger @ 2016-01-02  8:42 UTC (permalink / raw)
  To: gdb-patches

Multitarget builds currently fail when:
(1) simulator support is enabled
(2) powerpc is included in the target list
(3) powerpc is not the main/default target

This is because the powerpc sim provides a non-standard API function
sim_spr_register_name which the powerpc gdb utilizes.  Since the sim
does not yet support multitarget, only the sim for the main target
(if one exists) is built.  When that target isn't powerpc, this func
is not available leading to linking errors.

Since multitarget support is going to take a while, and specifically
the powerpc target is going to take even longer, disable sim support
automatically when the aforementioned conditions are met.

2016-01-02  Mike Frysinger  <vapier@gentoo.org>

	PR sim/13418
	* configure.ac: Set gdb_sim= when target is not powerpc*, and
	all_targets is true or rs6000-tdep.o is in TARGET_OBS.
	* configure: Regenerate.
---
 gdb/configure    | 14 ++++++++++++++
 gdb/configure.ac | 13 +++++++++++++
 2 files changed, 27 insertions(+)

diff --git a/gdb/configure b/gdb/configure
index 5afdbbc..57c1ea7 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -15840,6 +15840,20 @@ fi
 SIM=
 SIM_OBS=
 if test "${ignore_sim}" = "false"; then
+  # The ppc gdb/sim only works when it's the main target.  PR sim/13418
+  case $target in
+  powerpc*-*-*) ;;
+  *)
+    case "${all_targets}: ${TARGET_OBS} " in
+    true:*|*" rs6000-tdep.o "*)
+      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Disabling sim integration for multitarget powerpc configs" >&5
+$as_echo "$as_me: WARNING: Disabling sim integration for multitarget powerpc configs" >&2;}
+      gdb_sim=
+      ;;
+    esac
+    ;;
+  esac
+
   if test x"${gdb_sim}" != x ; then
     SIM="${gdb_sim}"
     SIM_OBS="remote-sim.o"
diff --git a/gdb/configure.ac b/gdb/configure.ac
index 5b618c9..458605f 100644
--- a/gdb/configure.ac
+++ b/gdb/configure.ac
@@ -2256,6 +2256,19 @@ fi
 SIM=
 SIM_OBS=
 if test "${ignore_sim}" = "false"; then
+  # The ppc gdb/sim only works when it's the main target.  PR sim/13418
+  case $target in
+  powerpc*-*-*) ;;
+  *)
+    case "${all_targets}: ${TARGET_OBS} " in
+    true:*|*" rs6000-tdep.o "*)
+      AC_MSG_WARN([Disabling sim integration for multitarget powerpc configs])
+      gdb_sim=
+      ;;
+    esac
+    ;;
+  esac
+
   if test x"${gdb_sim}" != x ; then
     SIM="${gdb_sim}"
     SIM_OBS="remote-sim.o"
-- 
2.6.2


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-01-05 11:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-02  8:42 [PATCH] gdb: sim: disable integration w/some multitarget configs [PR sim/13418] Mike Frysinger
2016-01-04 13:38 ` Pedro Alves
2016-01-05  0:55   ` Mike Frysinger
2016-01-05 11:09     ` Pedro Alves

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox