From patchwork Thu May 17 14:05:20 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Petazzoni X-Patchwork-Id: 159909 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from hemlock.osuosl.org (hemlock.osuosl.org [140.211.166.133]) by ozlabs.org (Postfix) with ESMTP id C1A68B6FAA for ; Fri, 18 May 2012 00:05:39 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 33D62A02CC; Thu, 17 May 2012 14:05:38 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7YSVQdCEY1XR; Thu, 17 May 2012 14:05:36 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id 1DF64A0287; Thu, 17 May 2012 14:05:36 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (fraxinus.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 88B2E8F753 for ; Thu, 17 May 2012 14:05:35 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 79A27101E86 for ; Thu, 17 May 2012 14:05:35 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9Ry5V2ESgiXC for ; Thu, 17 May 2012 14:05:34 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail.free-electrons.com (mail.free-electrons.com [88.190.12.23]) by fraxinus.osuosl.org (Postfix) with ESMTP id DFC1C101DEA for ; Thu, 17 May 2012 14:05:33 +0000 (UTC) Received: by mail.free-electrons.com (Postfix, from userid 106) id D7CD91AE; Thu, 17 May 2012 16:05:32 +0200 (CEST) Received: from localhost (humanoidz.org [82.247.183.72]) by mail.free-electrons.com (Postfix) with ESMTPSA id 8B569D1 for ; Thu, 17 May 2012 16:05:21 +0200 (CEST) From: Thomas Petazzoni To: buildroot@uclibc.org Date: Thu, 17 May 2012 16:05:20 +0200 Message-Id: <1337263520-5865-1-git-send-email-thomas.petazzoni@free-electrons.com> X-Mailer: git-send-email 1.7.9.5 Subject: [Buildroot] [PATCH] gdb: adjust behavior when thread debug is not available X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: buildroot-bounces@busybox.net When an external toolchain without thread debug is used, the gdb package can be selected, but no version can be choosen, since none match any of the requirements. This leads Buildroot to try to build gdb for the target without a version being defined, as in the following build log: http://autobuild.buildroot.org/results/84e8fd2df0cc22448052a572c2e9a6e03dd137eb/build-end.log To fix this, we adjust the dependencies of the BR2_PACKAGE_GDB option so that the package as a whole is not selectable when the required conditions are not met. Basically, we have the choice of: * Having a toolchain that supports thread debugging, which is needed for gdb >= 7.x * Having BR2_DEPRECATED enabled, which allows gdb 6.8 to be selected, which doesn't require thread debugging * Using either avr32 of bfin, since those architectures have special old gdb versions Signed-off-by: Thomas Petazzoni --- toolchain/gdb/Config.in | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/toolchain/gdb/Config.in b/toolchain/gdb/Config.in index c9c54b8..4670b25 100644 --- a/toolchain/gdb/Config.in +++ b/toolchain/gdb/Config.in @@ -5,6 +5,15 @@ config BR2_PACKAGE_GDB select BR2_PACKAGE_NCURSES depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS + # The newest versions of gdb require thread debugging in the + # toolchain. The only cases for which this is not needed is if + # we use gdb 6.8 (marked deprecated), or old versions (as is + # the case for bfin and avr32 architectures) + depends on \ + BR2_TOOLCHAIN_HAS_THREADS_DEBUG_IF_NEEDED || \ + BR2_DEPRECATED || \ + BR2_bfin || \ + BR2_avr32 depends on !BR2_sh && !BR2_sh64 help Build the full gdb debugger to run on the target. @@ -90,9 +99,8 @@ choice endchoice -comment "gdb 7.x support needs pthread debug support in toolchain" - depends on BR2_PACKAGE_GDB || BR2_PACKAGE_GDB_SERVER || BR2_PACKAGE_GDB_HOST - depends on !BR2_TOOLCHAIN_HAS_THREADS_DEBUG_IF_NEEDED +comment "gdb support needs pthread debug support in toolchain" + depends on !BR2_DEPRECATED && !BR2_avr32 && !BR2_bfin && !BR2_TOOLCHAIN_HAS_THREADS_DEBUG_IF_NEEDED config BR2_GDB_VERSION string