be084204eb
When a package A depends on config option B and toolchain option C, then the comment that is given when C is not fulfilled should also depend on B. For example: config BR2_PACKAGE_A depends on BR2_B depends on BR2_LARGEFILE depends on BR2_WCHAR comment "A needs a toolchain w/ largefile, wchar" depends on !BR2_LARGEFILE || !BR2_WCHAR This comment should actually be: comment "A needs a toolchain w/ largefile, wchar" depends on BR2_B depends on !BR2_LARGEFILE || !BR2_WCHAR or if possible (typically when B is a package config option declared in that same Config.in file): if BR2_B comment "A needs a toolchain w/ largefile, wchar" depends on !BR2_LARGEFILE || !BR2_WCHAR [other config options depending on B] endif Otherwise, the comment would be visible even though the other dependencies are not met. This patch adds such missing dependencies, and changes existing such dependencies from depends on BR2_BASE_DEP && !BR2_TOOLCHAIN_USES_GLIBC to depends on BR2_BASE_DEP depends on !BR2_TOOLCHAIN_USES_GLIBC so that (positive) base dependencies are separate from the (negative) toolchain dependencies. This strategy makes it easier to write such comments (because one can simply copy the base dependency from the actual package config option), but also avoids complex and long boolean expressions. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> (untested) Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
50 lines
1.7 KiB
Plaintext
50 lines
1.7 KiB
Plaintext
comment "gdb/gdbserver needs a toolchain w/ threads, threads debug"
|
|
depends on !BR2_aarch64
|
|
depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_HAS_THREADS_DEBUG
|
|
|
|
config BR2_PACKAGE_GDB
|
|
bool "gdb"
|
|
# When the external toolchain gdbserver is copied to the
|
|
# target, we don't allow building a separate gdbserver. The
|
|
# one from the external toolchain should be used.
|
|
select BR2_PACKAGE_GDB_SERVER if \
|
|
(!BR2_PACKAGE_GDB_DEBUGGER && !BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY)
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS && BR2_TOOLCHAIN_HAS_THREADS_DEBUG
|
|
depends on !BR2_aarch64
|
|
help
|
|
GDB, the GNU Project debugger, allows you to see what is
|
|
going on `inside' another program while it executes -- or
|
|
what another program was doing at the moment it crashed.
|
|
|
|
This option allows to build gdbserver and/or the gdb
|
|
debugger for the target.
|
|
|
|
For embedded development, the most common solution is to
|
|
build only 'gdbserver' for the target, and use a cross-gdb
|
|
on the host. See BR2_PACKAGE_HOST_GDB in the Toolchain menu
|
|
to enable one. Notice that external toolchains often provide
|
|
their own pre-built cross-gdb and gdbserver binaries.
|
|
|
|
http://www.gnu.org/software/gdb/
|
|
|
|
if BR2_PACKAGE_GDB
|
|
|
|
config BR2_PACKAGE_GDB_SERVER
|
|
bool "gdbserver"
|
|
depends on !BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY
|
|
help
|
|
Build the gdbserver stub to run on the target.
|
|
A full gdb is needed to debug the progam.
|
|
|
|
config BR2_PACKAGE_GDB_DEBUGGER
|
|
bool "full debugger"
|
|
select BR2_PACKAGE_NCURSES
|
|
depends on BR2_USE_WCHAR
|
|
depends on !BR2_sh && !BR2_sh64 && !BR2_avr32 && !BR2_microblaze && !BR2_bfin
|
|
|
|
comment "full gdb on target needs a toolchain w/ wchar"
|
|
depends on !BR2_sh && !BR2_sh64 && !BR2_avr32 && !BR2_microblaze && !BR2_bfin
|
|
depends on !BR2_USE_WCHAR
|
|
|
|
endif
|