Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Romain Naour <romain.naour@gmail.com>
Cc: buildroot@buildroot.org
Subject: Re: [Buildroot] [for-master] package/gdb: include gdbarch.h in xtensa-linux-nat.c
Date: Tue, 6 Sep 2022 17:50:10 +0200	[thread overview]
Message-ID: <20220906155010.GF1585594@scaer> (raw)
In-Reply-To: <20220829202159.407642-1-romain.naour@gmail.com>

Romain, All,

On 2022-08-29 22:21 +0200, Romain Naour spake thusly:
> It seems that gdb doesn't build for xtensa since a while, indeed commit
> [1] merged in gdb 9 introduced a few number of build issues on several
> architectures:
> 
> [Fix gdb build on macOS]
> https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=b1c896b365f2dbcd14145a88d103623244cf0fb0
> 
> [gdb: Fix gdb build on mips64-linux]
> https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=2208ee917050bcc901c7faefdee257ffbf8ef2ab
> 
> [gdb: Fix native build on Linux/Alpha.]
> https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=7a27b85f6d9b5eea9bd1493f903158fbea4b2231
> 
> [Include gdbarch.h in m68k-linux-nat.c]
> https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=a7cdaa914f4b937544d8f102679bb5129bb1ef08
> 
> [gdb: include gdbarch.h in hppa-linux-nat.c]
> https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=ad75efa628656716982f2674008952bfd2c268af
> 
> Most of them has been fixed before the gdb 9 release but it seems
> that xtensa is the last one on this list and still unfixed with
> gdb 11 (not even noticed by Buildroot autobuilders).
> 
> [1] https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=0d12e84cfc9bd36b7bbda01a3c8f83f65a832398
> 
> Signed-off-by: Romain Naour <romain.naour@gmail.com>
> Cc: Max Filippov <jcmvbkbc@gmail.com>

Applied to master, thanks.

> ---
> gcc 12 is also broken due to too old xtensa overlay for gdb:
> 
> xtensa overlays form 2016 override gdb/xtensa-config.c breaking
> the gdb 12 build due a recent changes from commit:
> https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=345bd07cce33565f1cd66acabdaf387ca3a7ccb3

Should we mask out gdb-12 for xtensa in next, then?

Regards,
Yann E. MORIN.

> ---
>  .../0009-gdb-Fix-native-build-on-xtensa.patch | 57 +++++++++++++++++++
>  .../0009-gdb-Fix-native-build-on-xtensa.patch | 57 +++++++++++++++++++
>  .../0009-gdb-Fix-native-build-on-xtensa.patch | 57 +++++++++++++++++++
>  3 files changed, 171 insertions(+)
>  create mode 100644 package/gdb/10.2/0009-gdb-Fix-native-build-on-xtensa.patch
>  create mode 100644 package/gdb/11.2/0009-gdb-Fix-native-build-on-xtensa.patch
>  create mode 100644 package/gdb/9.2/0009-gdb-Fix-native-build-on-xtensa.patch
> 
> diff --git a/package/gdb/10.2/0009-gdb-Fix-native-build-on-xtensa.patch b/package/gdb/10.2/0009-gdb-Fix-native-build-on-xtensa.patch
> new file mode 100644
> index 0000000000..927bf20de5
> --- /dev/null
> +++ b/package/gdb/10.2/0009-gdb-Fix-native-build-on-xtensa.patch
> @@ -0,0 +1,57 @@
> +From 02d9e6a3bc47dfe138ef4511aaeeae26b7dbd1ba Mon Sep 17 00:00:00 2001
> +From: Romain Naour <romain.naour@gmail.com>
> +Date: Sun, 28 Aug 2022 23:21:37 +0200
> +Subject: [PATCH] gdb: Fix native build on xtensa
> +MIME-Version: 1.0
> +Content-Type: text/plain; charset=UTF-8
> +Content-Transfer-Encoding: 8bit
> +
> +Apply a similar fix than for Alpha architecture on gdb 9:
> +https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=7a27b85f6d9b5eea9bd1493f903158fbea4b2231
> +
> +Fixes:
> +
> +../../gdb/xtensa-linux-nat.c: In function ‘void fill_gregset(const regcache*, elf_greg_t (*)[128], int)’:
> +../../gdb/xtensa-linux-nat.c:66:17: error: ‘gdbarch_pc_regnum’ was not declared in this scope
> +   66 |   if (regnum == gdbarch_pc_regnum (gdbarch) || regnum == -1)
> +      |                 ^~~~~~~~~~~~~~~~~
> +  CXX    complaints.o
> +../../gdb/xtensa-linux-nat.c:68:17: error: ‘gdbarch_ps_regnum’ was not declared in this scope
> +   68 |   if (regnum == gdbarch_ps_regnum (gdbarch) || regnum == -1)
> +      |                 ^~~~~~~~~~~~~~~~~
> +../../gdb/xtensa-linux-nat.c:71:38: error: no matching function for call to ‘gdbarch_tdep::gdbarch_tdep(gdbarch*&)’
> +   71 |   if (regnum == gdbarch_tdep (gdbarch)->wb_regnum || regnum == -1)
> +      |                                      ^
> +In file included from ../../gdb/xtensa-linux-nat.c:38:
> +../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘gdbarch_tdep::gdbarch_tdep()’
> +  160 | struct gdbarch_tdep
> +      |        ^~~~~~~~~~~~
> +../../gdb/xtensa-tdep.h:160:8: note:   candidate expects 0 arguments, 1 provided
> +../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘constexpr gdbarch_tdep::gdbarch_tdep(const gdbarch_tdep&)’
> +../../gdb/xtensa-tdep.h:160:8: note:   no known conversion for argument 1 from ‘gdbarch*’ to ‘const gdbarch_tdep&’
> +../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘constexpr gdbarch_tdep::gdbarch_tdep(gdbarch_tdep&&)’
> +../../gdb/xtensa-tdep.h:160:8: note:   no known conversion for argument 1 from ‘gdbarch*’ to ‘gdbarch_tdep&&’
> +../../gdb/xtensa-linux-nat.c:72:49: error: no matching function for call to ‘gdbarch_tdep::gdbarch_tdep(gdbarch*&)’
> +   72 |     regcache->raw_collect (gdbarch_tdep (gdbarch)->wb_regnum,
> +      |                                                 ^
> +
> +Signed-off-by: Romain Naour <romain.naour@gmail.com>
> +---
> + gdb/xtensa-linux-nat.c | 1 +
> + 1 file changed, 1 insertion(+)
> +
> +diff --git a/gdb/xtensa-linux-nat.c b/gdb/xtensa-linux-nat.c
> +index b2b3db182bc..b230e08b69f 100644
> +--- a/gdb/xtensa-linux-nat.c
> ++++ b/gdb/xtensa-linux-nat.c
> +@@ -36,6 +36,7 @@
> + 
> + #include "gregset.h"
> + #include "xtensa-tdep.h"
> ++#include "gdbarch.h"
> + 
> + /* Defines ps_err_e, struct ps_prochandle.  */
> + #include "gdb_proc_service.h"
> +-- 
> +2.37.2
> +
> diff --git a/package/gdb/11.2/0009-gdb-Fix-native-build-on-xtensa.patch b/package/gdb/11.2/0009-gdb-Fix-native-build-on-xtensa.patch
> new file mode 100644
> index 0000000000..bf4d617fc1
> --- /dev/null
> +++ b/package/gdb/11.2/0009-gdb-Fix-native-build-on-xtensa.patch
> @@ -0,0 +1,57 @@
> +From d3bb361eb0b6cbf0257f515f9d5e64add89e6bfa Mon Sep 17 00:00:00 2001
> +From: Romain Naour <romain.naour@gmail.com>
> +Date: Sun, 28 Aug 2022 23:21:37 +0200
> +Subject: [PATCH] gdb: Fix native build on xtensa
> +MIME-Version: 1.0
> +Content-Type: text/plain; charset=UTF-8
> +Content-Transfer-Encoding: 8bit
> +
> +Apply a similar fix than for Alpha architecture on gdb 9:
> +https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=7a27b85f6d9b5eea9bd1493f903158fbea4b2231
> +
> +Fixes:
> +
> +../../gdb/xtensa-linux-nat.c: In function ‘void fill_gregset(const regcache*, elf_greg_t (*)[128], int)’:
> +../../gdb/xtensa-linux-nat.c:66:17: error: ‘gdbarch_pc_regnum’ was not declared in this scope
> +   66 |   if (regnum == gdbarch_pc_regnum (gdbarch) || regnum == -1)
> +      |                 ^~~~~~~~~~~~~~~~~
> +  CXX    complaints.o
> +../../gdb/xtensa-linux-nat.c:68:17: error: ‘gdbarch_ps_regnum’ was not declared in this scope
> +   68 |   if (regnum == gdbarch_ps_regnum (gdbarch) || regnum == -1)
> +      |                 ^~~~~~~~~~~~~~~~~
> +../../gdb/xtensa-linux-nat.c:71:38: error: no matching function for call to ‘gdbarch_tdep::gdbarch_tdep(gdbarch*&)’
> +   71 |   if (regnum == gdbarch_tdep (gdbarch)->wb_regnum || regnum == -1)
> +      |                                      ^
> +In file included from ../../gdb/xtensa-linux-nat.c:38:
> +../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘gdbarch_tdep::gdbarch_tdep()’
> +  160 | struct gdbarch_tdep
> +      |        ^~~~~~~~~~~~
> +../../gdb/xtensa-tdep.h:160:8: note:   candidate expects 0 arguments, 1 provided
> +../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘constexpr gdbarch_tdep::gdbarch_tdep(const gdbarch_tdep&)’
> +../../gdb/xtensa-tdep.h:160:8: note:   no known conversion for argument 1 from ‘gdbarch*’ to ‘const gdbarch_tdep&’
> +../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘constexpr gdbarch_tdep::gdbarch_tdep(gdbarch_tdep&&)’
> +../../gdb/xtensa-tdep.h:160:8: note:   no known conversion for argument 1 from ‘gdbarch*’ to ‘gdbarch_tdep&&’
> +../../gdb/xtensa-linux-nat.c:72:49: error: no matching function for call to ‘gdbarch_tdep::gdbarch_tdep(gdbarch*&)’
> +   72 |     regcache->raw_collect (gdbarch_tdep (gdbarch)->wb_regnum,
> +      |                                                 ^
> +
> +Signed-off-by: Romain Naour <romain.naour@gmail.com>
> +---
> + gdb/xtensa-linux-nat.c | 1 +
> + 1 file changed, 1 insertion(+)
> +
> +diff --git a/gdb/xtensa-linux-nat.c b/gdb/xtensa-linux-nat.c
> +index ec33f4a10f2..73f35eac683 100644
> +--- a/gdb/xtensa-linux-nat.c
> ++++ b/gdb/xtensa-linux-nat.c
> +@@ -36,6 +36,7 @@
> + 
> + #include "gregset.h"
> + #include "xtensa-tdep.h"
> ++#include "gdbarch.h"
> + 
> + /* Defines ps_err_e, struct ps_prochandle.  */
> + #include "gdb_proc_service.h"
> +-- 
> +2.37.2
> +
> diff --git a/package/gdb/9.2/0009-gdb-Fix-native-build-on-xtensa.patch b/package/gdb/9.2/0009-gdb-Fix-native-build-on-xtensa.patch
> new file mode 100644
> index 0000000000..4ff3828f2a
> --- /dev/null
> +++ b/package/gdb/9.2/0009-gdb-Fix-native-build-on-xtensa.patch
> @@ -0,0 +1,57 @@
> +From 222cb32acf044fe90e8534b064f9168ad0d8c705 Mon Sep 17 00:00:00 2001
> +From: Romain Naour <romain.naour@gmail.com>
> +Date: Sun, 28 Aug 2022 23:21:37 +0200
> +Subject: [PATCH] gdb: Fix native build on xtensa
> +MIME-Version: 1.0
> +Content-Type: text/plain; charset=UTF-8
> +Content-Transfer-Encoding: 8bit
> +
> +Apply a similar fix than for Alpha architecture on gdb 9:
> +https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=7a27b85f6d9b5eea9bd1493f903158fbea4b2231
> +
> +Fixes:
> +
> +../../gdb/xtensa-linux-nat.c: In function ‘void fill_gregset(const regcache*, elf_greg_t (*)[128], int)’:
> +../../gdb/xtensa-linux-nat.c:66:17: error: ‘gdbarch_pc_regnum’ was not declared in this scope
> +   66 |   if (regnum == gdbarch_pc_regnum (gdbarch) || regnum == -1)
> +      |                 ^~~~~~~~~~~~~~~~~
> +  CXX    complaints.o
> +../../gdb/xtensa-linux-nat.c:68:17: error: ‘gdbarch_ps_regnum’ was not declared in this scope
> +   68 |   if (regnum == gdbarch_ps_regnum (gdbarch) || regnum == -1)
> +      |                 ^~~~~~~~~~~~~~~~~
> +../../gdb/xtensa-linux-nat.c:71:38: error: no matching function for call to ‘gdbarch_tdep::gdbarch_tdep(gdbarch*&)’
> +   71 |   if (regnum == gdbarch_tdep (gdbarch)->wb_regnum || regnum == -1)
> +      |                                      ^
> +In file included from ../../gdb/xtensa-linux-nat.c:38:
> +../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘gdbarch_tdep::gdbarch_tdep()’
> +  160 | struct gdbarch_tdep
> +      |        ^~~~~~~~~~~~
> +../../gdb/xtensa-tdep.h:160:8: note:   candidate expects 0 arguments, 1 provided
> +../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘constexpr gdbarch_tdep::gdbarch_tdep(const gdbarch_tdep&)’
> +../../gdb/xtensa-tdep.h:160:8: note:   no known conversion for argument 1 from ‘gdbarch*’ to ‘const gdbarch_tdep&’
> +../../gdb/xtensa-tdep.h:160:8: note: candidate: ‘constexpr gdbarch_tdep::gdbarch_tdep(gdbarch_tdep&&)’
> +../../gdb/xtensa-tdep.h:160:8: note:   no known conversion for argument 1 from ‘gdbarch*’ to ‘gdbarch_tdep&&’
> +../../gdb/xtensa-linux-nat.c:72:49: error: no matching function for call to ‘gdbarch_tdep::gdbarch_tdep(gdbarch*&)’
> +   72 |     regcache->raw_collect (gdbarch_tdep (gdbarch)->wb_regnum,
> +      |                                                 ^
> +
> +Signed-off-by: Romain Naour <romain.naour@gmail.com>
> +---
> + gdb/xtensa-linux-nat.c | 1 +
> + 1 file changed, 1 insertion(+)
> +
> +diff --git a/gdb/xtensa-linux-nat.c b/gdb/xtensa-linux-nat.c
> +index 097d7bd6f96..4e4290fe038 100644
> +--- a/gdb/xtensa-linux-nat.c
> ++++ b/gdb/xtensa-linux-nat.c
> +@@ -36,6 +36,7 @@
> + 
> + #include "gregset.h"
> + #include "xtensa-tdep.h"
> ++#include "gdbarch.h"
> + 
> + /* Defines ps_err_e, struct ps_prochandle.  */
> + #include "gdb_proc_service.h"
> +-- 
> +2.37.2
> +
> -- 
> 2.37.2
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

  reply	other threads:[~2022-09-06 15:50 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-29 20:21 [Buildroot] [for-master] package/gdb: include gdbarch.h in xtensa-linux-nat.c Romain Naour
2022-09-06 15:50 ` Yann E. MORIN [this message]
2022-09-06 16:52   ` Romain Naour
2022-09-18  9:03 ` Peter Korsgaard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220906155010.GF1585594@scaer \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@buildroot.org \
    --cc=romain.naour@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox