From e20859d74cff676bc679667554dffc209dc367ca Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Mon, 15 Mar 2010 21:42:55 +0100 Subject: debug/gdb: split menuconfig for easier maintenance diff --git a/config/debug/gdb.in b/config/debug/gdb.in index a5c69c5..34237fb 100644 --- a/config/debug/gdb.in +++ b/config/debug/gdb.in @@ -4,94 +4,9 @@ config DEBUG_gdb help Enable gdb for the target -config GDB_CROSS - bool - prompt "Cross-gdb" - default y - select GDB_GDBSERVER if ! BARE_METAL - help - Build and install a cross-gdb for the target, to run on host. - -config GDB_CROSS_STATIC - bool - prompt "Build a static cross gdb" - default n - depends on GDB_CROSS - help - A static cross gdb can be usefull if you debug on a machine that is - not the one that is used to compile the toolchain. - - That way, you can share the cross-gdb without installing a toolchain - on every machine that will be used to debug target programs. - -config GDB_CROSS_INSIGHT - bool - prompt "Use Insight instead (EXPERIMENTAL)" - default n - depends on GDB_CROSS - depends on EXPERIMENTAL - help - If you say 'Y' here, then Insight will be used to build the cross - debugger, instead of the plain gdb. - - Insight is gdb plus a TCL/TK GUI: http://sourceware.org/insight/ - -config GDB_NATIVE - bool - prompt "Native gdb" - default n - depends on ! BARE_METAL - depends on ! BACKEND - help - Build and install a native gdb for the target, to run on the target. - -config GDB_NATIVE_STATIC - bool - prompt "Build a static native gdb" - default n - depends on GDB_NATIVE - help - In case you have trouble with dynamic loading of shared libraries, - you will find that a static gdb comes in handy. - -config GDB_NATIVE_USE_GMP_MPFR - bool - prompt "Use GMP and MPFR" - default n - depends on GDB_NATIVE - select GMP_TARGET - select MPFR_TARGET - help - gdb can make use of the GMP and MPFR libraries. - - While the cross-gdb (above) can use the libraries compiled for the - host, the native gdb needs the libraries for the target (where it will - eventually run). - - Setting this option will force building the GMP and MPFR libraries for - the target, and configure the native gdb to use them. - -config GDB_GDBSERVER - bool - prompt "gdbserver" - default n - depends on ! BARE_METAL - help - Build and install a gdbserver for the target, to run on the target. - -config GDB_GDBSERVER_STATIC - bool - prompt "Build a static gdbserver" - default y - depends on GDB_GDBSERVER - help - In case you have trouble with dynamic loading of shared libraries, - you will find that a static gdbserver comes in handy. - -if BARE_METAL -comment "In bare-metal, you'll need to " -comment "provide your own gdbserver stub." -endif # BARE_METAL +source "config/debug/gdb.in.cross" +source "config/debug/gdb.in.native" +source "config/debug/gdb.in.gdbserver" choice bool diff --git a/config/debug/gdb.in.cross b/config/debug/gdb.in.cross new file mode 100644 index 0000000..4c04b7e --- /dev/null +++ b/config/debug/gdb.in.cross @@ -0,0 +1,35 @@ +# Menu for the cross GDB + +config GDB_CROSS + bool + prompt "Cross-gdb" + default y + select GDB_GDBSERVER if ! BARE_METAL + help + Build and install a cross-gdb for the target, to run on host. + +if GDB_CROSS + +config GDB_CROSS_STATIC + bool + prompt "Build a static cross gdb" + default n + help + A static cross gdb can be usefull if you debug on a machine that is + not the one that is used to compile the toolchain. + + That way, you can share the cross-gdb without installing a toolchain + on every machine that will be used to debug target programs. + +config GDB_CROSS_INSIGHT + bool + prompt "Use Insight instead (EXPERIMENTAL)" + default n + depends on EXPERIMENTAL + help + If you say 'Y' here, then Insight will be used to build the cross + debugger, instead of the plain gdb. + + Insight is gdb plus a TCL/TK GUI: http://sourceware.org/insight/ + +endif # GDB_CROSS diff --git a/config/debug/gdb.in.gdbserver b/config/debug/gdb.in.gdbserver new file mode 100644 index 0000000..23f0fe5 --- /dev/null +++ b/config/debug/gdb.in.gdbserver @@ -0,0 +1,26 @@ +# Menu for the native gdbserver + +config GDB_GDBSERVER + bool + prompt "gdbserver" + default n + depends on ! BARE_METAL + help + Build and install a gdbserver for the target, to run on the target. + +if GDB_GDBSERVER + +config GDB_GDBSERVER_STATIC + bool + prompt "Build a static gdbserver" + default y + help + In case you have trouble with dynamic loading of shared libraries, + you will find that a static gdbserver comes in handy. + +endif # GDB_GDBSERVER + +if BARE_METAL +comment "In bare-metal, you'll need to " +comment "provide your own gdbserver stub." +endif # BARE_METAL diff --git a/config/debug/gdb.in.native b/config/debug/gdb.in.native new file mode 100644 index 0000000..be00606 --- /dev/null +++ b/config/debug/gdb.in.native @@ -0,0 +1,38 @@ +# Menu for the native GDB + +config GDB_NATIVE + bool + prompt "Native gdb" + default n + depends on ! BARE_METAL + depends on ! BACKEND + help + Build and install a native gdb for the target, to run on the target. + +if GDB_NATIVE + +config GDB_NATIVE_STATIC + bool + prompt "Build a static native gdb" + default n + help + In case you have trouble with dynamic loading of shared libraries, + you will find that a static gdb comes in handy. + +config GDB_NATIVE_USE_GMP_MPFR + bool + prompt "Use GMP and MPFR" + default n + select GMP_TARGET + select MPFR_TARGET + help + gdb can make use of the GMP and MPFR libraries. + + While the cross-gdb (above) can use the libraries compiled for the + host, the native gdb needs the libraries for the target (where it will + eventually run). + + Setting this option will force building the GMP and MPFR libraries for + the target, and configure the native gdb to use them. + +endif # GDB_NATIVE -- cgit v0.10.2-6-g49f6