qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gdbstub: Only build libgdb_user.fa / libgdb_softmmu.fa if ne


From: Richard Henderson
Subject: Re: [PATCH] gdbstub: Only build libgdb_user.fa / libgdb_softmmu.fa if necessary
Date: Wed, 29 Mar 2023 09:39:33 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0

On 3/29/23 09:18, Philippe Mathieu-Daudé wrote:
It is pointless to build libgdb_user.fa in a system-only build
(or libgdb_softmmu.fa in a user-only build). Besides, in some
restricted build configurations, some APIs might be restricted /
not available. Example in a KVM-only builds where TCG is disabled:

   $ ninja qemu-system-x86_64
   [99/2187] Compiling C object gdbstub/libgdb_user.fa.p/user.c.o
   FAILED: gdbstub/libgdb_user.fa.p/user.c.o
   ../../gdbstub/user.c: In function ‘gdb_breakpoint_insert’:
   ../../gdbstub/user.c:438:19: error: implicit declaration of function 
‘cpu_breakpoint_insert’; did you mean ‘gdb_breakpoint_insert’? 
[-Werror=implicit-function-declaration]
     438 |             err = cpu_breakpoint_insert(cpu, addr, BP_GDB, NULL);
         |                   ^~~~~~~~~~~~~~~~~~~~~
         |                   gdb_breakpoint_insert
   ../../gdbstub/user.c:438:19: error: nested extern declaration of 
‘cpu_breakpoint_insert’ [-Werror=nested-externs]
   ../../gdbstub/user.c: In function ‘gdb_breakpoint_remove’:
   ../../gdbstub/user.c:459:19: error: implicit declaration of function 
‘cpu_breakpoint_remove’; did you mean ‘gdb_breakpoint_remove’? 
[-Werror=implicit-function-declaration]
     459 |             err = cpu_breakpoint_remove(cpu, addr, BP_GDB);
         |                   ^~~~~~~~~~~~~~~~~~~~~
         |                   gdb_breakpoint_remove
   ../../gdbstub/user.c:459:19: error: nested extern declaration of 
‘cpu_breakpoint_remove’ [-Werror=nested-externs]
   cc1: all warnings being treated as errors
   ninja: build stopped: subcommand failed.

Fixes: 61b2e136db ("gdbstub: only compile gdbstub twice for whole build")
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

r~

  gdbstub/meson.build | 6 ++++--
  1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/gdbstub/meson.build b/gdbstub/meson.build
index bd5c5cd67d..cdb4d28691 100644
--- a/gdbstub/meson.build
+++ b/gdbstub/meson.build
@@ -20,11 +20,13 @@ gdb_softmmu_ss = gdb_softmmu_ss.apply(config_host, strict: 
false)
  libgdb_user = static_library('gdb_user',
                               gdb_user_ss.sources() + genh,
                               name_suffix: 'fa',
-                             c_args: '-DCONFIG_USER_ONLY')
+                             c_args: '-DCONFIG_USER_ONLY',
+                             build_by_default: have_user)
libgdb_softmmu = static_library('gdb_softmmu',
                                  gdb_softmmu_ss.sources() + genh,
-                                name_suffix: 'fa')
+                                name_suffix: 'fa',
+                                build_by_default: have_system)
gdb_user = declare_dependency(link_whole: libgdb_user)
  user_ss.add(gdb_user)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]