Files
buildroot/package
Thomas Petazzoni 81ef52b630 package/gdb: fix build of gdbserver-only on the ARC gdb version
The GDB version used on ARC is based on a recent gdb code base, post
gdb 9.2. This recent gdb code base, which pre-figures what will be in
gdb 10, has a significant change: gdbserver is not longer in
gdb/gdbserver, but at the top-level, and the mechanism to build
gdbserver only has changed. Due to this change, a build of ARC GDB for
gdbserver only fails with:

/bin/bash: line 0: cd: /opt/output/build/gdb-arc-2020.03-release-gdb/gdb/gdbserver: No such file or directory

This commit adjusts gdb.mk to support four cases:

 - "old" gdb, gdbserver only
 - "old" gdb, with the gdb debugger (and optionally gdbserver as well)
 - "new" gdb, gdbserver only
 - "new" gdb, with the gdb debugger (and optionally gdbserver as well)

A boolean GDB_GDBSERVER_TOPLEVEL is introduced to differentiate
between the old and new gdb, it is set to "y" for gdb versions that
have the gdbserver code at the top-level. For now, only the ARC
version sets it, but in the future, upstream gdb version 10 will also
have to set it.

Here is the behavior, for each case:

 (1) "old" gdb, gdbserver only

     We set GDB_SUBDIR to gdb/gdbserver, so only the configure script
     in this folder gets called.

     --enable-gdbserver --disable-gdb are passed in CONF_OPTS.

 (2) "old" gdb, with the gdb debugger (and optionally gdbserver as well)

     We set GDB_SUBDIR to build/, an empty directory which allows to
     do an out of tree build, which is mandatory for a full gdb build
     since gdb 9.x.

     --enable-gdb is passed in CONF_OPTS as well as --enable-gdbserver
     or --disable-gdbserver depending on whether gdbserver is enabled
     as well.

 (3) "new" gdb, gdbserver only

     We set GDB_SUBDIR to build/, an empty directory which allows to
     do an out of tree build, which is mandatory for a full gdb build
     since gdb 9.x.

     --enable-gdbserver --disable-gdb are passed in CONF_OPTS.

 (4) "new" gdb, with the gdb debugger (and optionally gdbserver as well)

     We set GDB_SUBDIR to build/, an empty directory which allows to
     do an out of tree build, which is mandatory for a full gdb build
     since gdb 9.x.

     --enable-gdb is passed in CONF_OPTS as well as --enable-gdbserver
     or --disable-gdbserver depending on whether gdbserver is enabled
     as well.

In addition to these changes, some related changes are done as well:

 - We re-enable building both gdb and gdbserver on ARC, as it works
   again.

 - We only pass --with-curses when curses is really provided, i.e when
   the full debugger is being built.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Tested-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-09-30 22:47:09 +02:00
..
2020-07-18 15:56:46 +02:00
2020-09-14 22:16:23 +02:00
2020-08-15 16:14:28 +02:00
2020-09-03 22:17:20 +02:00
2020-07-18 14:18:33 +02:00
2020-09-02 18:14:46 +02:00
2020-07-27 17:19:46 +02:00
2020-09-22 21:41:06 +02:00
2020-08-13 21:59:36 +02:00
2020-09-01 09:18:37 +02:00
2020-09-19 22:10:50 +02:00
2020-09-09 22:54:26 +02:00
2020-07-19 18:49:56 +02:00
2020-09-17 21:40:39 +02:00
2020-08-12 16:44:27 +02:00
2020-08-26 23:03:40 +02:00
2020-08-19 22:47:44 +02:00
2020-07-14 10:01:05 +02:00
2020-09-19 21:53:14 +02:00
2020-08-29 23:05:20 +02:00
2020-09-21 22:37:31 +02:00
2020-08-29 21:58:02 +02:00
2020-09-20 16:08:09 +02:00
2020-09-07 23:15:11 +02:00
2020-07-18 23:25:26 +02:00
2020-09-08 22:31:51 +02:00
2020-07-13 19:10:20 +02:00
2020-08-29 22:57:17 +02:00
2020-09-19 21:10:27 +02:00
2020-09-23 22:08:37 +02:00
2020-08-16 22:21:11 +02:00
2020-09-26 15:42:51 +02:00
2020-08-28 22:56:49 +02:00
2020-08-29 16:03:15 +02:00
2020-07-27 10:13:06 +02:00
2020-09-19 21:18:26 +02:00
2020-09-05 23:30:10 +02:00
2020-07-26 21:47:22 +02:00
2020-09-07 21:35:21 +02:00
2020-09-20 15:36:47 +02:00
2020-09-07 21:30:43 +02:00
2020-09-06 16:38:02 +02:00
2020-08-18 23:42:20 +02:00
2020-09-14 21:10:26 +02:00
2020-08-26 23:23:44 +02:00
2020-07-26 21:47:07 +02:00
2020-08-29 23:13:51 +02:00
2020-09-19 14:52:33 +02:00
2020-08-27 23:04:17 +02:00
2020-09-03 20:51:04 +02:00
2020-08-24 22:54:54 +02:00
2020-09-19 14:22:00 +02:00
2020-08-28 22:56:49 +02:00
2020-09-19 22:08:37 +02:00
2020-08-23 15:03:18 +02:00
2020-07-13 23:24:19 +02:00
2020-09-20 15:05:57 +02:00
2020-08-31 22:18:09 +02:00
2020-09-22 21:59:02 +02:00
2020-09-13 18:56:47 +02:00
2020-08-16 22:13:54 +02:00
2020-08-28 22:56:49 +02:00
2020-09-03 20:47:36 +02:00
2020-07-16 22:20:07 +02:00
2020-08-03 16:37:23 +02:00
2020-09-20 15:06:01 +02:00
2020-08-16 11:27:28 +02:00
2020-09-20 15:05:59 +02:00
2020-07-14 23:44:31 +02:00
2020-09-21 22:40:21 +02:00
2020-07-27 15:12:53 +02:00
2020-07-16 09:16:36 +02:00
2020-07-16 09:14:34 +02:00
2020-09-19 23:22:59 +02:00
2020-07-16 09:10:40 +02:00
2020-09-20 15:06:00 +02:00
2020-09-24 23:01:44 +02:00
2020-09-19 22:36:18 +02:00
2020-08-08 18:25:51 +02:00