From patchwork Sun Sep 3 09:44:27 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Yann E. MORIN" X-Patchwork-Id: 809239 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="DxrO2Ck3"; dkim-atps=neutral Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3xlSkP4rxqz9s71 for ; Sun, 3 Sep 2017 19:44:45 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 1A0CA86EA2; Sun, 3 Sep 2017 09:44:43 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id T1CmPeDzcl6f; Sun, 3 Sep 2017 09:44:40 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id BD94086D8A; Sun, 3 Sep 2017 09:44:40 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id 2C7961C41C7 for ; Sun, 3 Sep 2017 09:44:40 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 2518725D7D for ; Sun, 3 Sep 2017 09:44:40 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5SoA6jlV0dJB for ; Sun, 3 Sep 2017 09:44:39 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wr0-f194.google.com (mail-wr0-f194.google.com [209.85.128.194]) by silver.osuosl.org (Postfix) with ESMTPS id 1674526448 for ; Sun, 3 Sep 2017 09:44:39 +0000 (UTC) Received: by mail-wr0-f194.google.com with SMTP id y15so1516347wrc.4 for ; Sun, 03 Sep 2017 02:44:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=tNPLmkVSrUtVNOHxCQvY0lIV+zrbo8VJgAyRmbXGX+8=; b=DxrO2Ck3nX4AQ4/vyVNscKgCbu2o4dIurV66UQA1DaXBNJy4xlFzgKxSFkWjWxKqRr n0oYIkVvpEAOQUfeuK/XMTXkibBw4HwvAt8Q/CHomyk95JW/aeUXLAYQ2ViKKgl7uu6M DHsYlB7ubfdNaO77Yzhfvv7HNBwrYYhQDaJ0YmNTZ9M/G96BCGwUl7hZTiwpbtrMMODc bi/YkWhuvMGyJsJjdpG6iB16HpMg/WLJSInSESeaTIcnEWARFO1AqdyBckTgoG+EvzmM NnFQZDMNyibYKiR6RXpXIipDgnFODAdZlXlAqsTwS67YOYNuHgkpAke2E5EjYFWxuXuo z5ng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=tNPLmkVSrUtVNOHxCQvY0lIV+zrbo8VJgAyRmbXGX+8=; b=sPQd08h4r+vvNNN7pTr3Ki3xHB7UZ5ixqW9RISDKi3krKKtJHXHjoRs+FtbmqJtLWi gczvrWA0TF+UmGkljD6AAuKlrZJLleexzUKS0gwKMUjglvQ+kfzFfT1SV+y3jVRFuZgF VSKFaCqs+Zp9tLACU/+S8M7gG2M+glREL7mPr3FJ0jnMETu2X0BgLwa1tziHM6A3fPoa mtFLPFKvNsd9azOc/3Q/Ru2qDHv75YUiJXkygzFN47iXG1njWrQrNPHwDs8bBsZyrQqG kFSnWDP+5x9Wrv8RzNHNmuMykZxwSelo3eLb/oX+ca+aVqn+q/LrnCZaaZDRohOw7BBp sOEA== X-Gm-Message-State: AHPjjUgbsS0SXXoKfAZ3v2xrVnkFsfBhTBsaCHSeoP8srt6vR6c4LOEU 7ZMLYlgcgKY5XLns X-Google-Smtp-Source: ADKCNb70w/smAy67NO6KnZZcBNkDTl6KNELOCZ1xJN3b4+jfdgZZpPWn5N87y2SmpJCBfRmgR1mGKg== X-Received: by 10.223.147.132 with SMTP id 4mr1754219wrp.119.1504431877386; Sun, 03 Sep 2017 02:44:37 -0700 (PDT) Received: from localhost.localdomain (2a01cb08861073004cc40c703ef54565.ipv6.abo.wanadoo.fr. [2a01:cb08:8610:7300:4cc4:c70:3ef5:4565]) by smtp.gmail.com with ESMTPSA id t135sm1972938wmt.30.2017.09.03.02.44.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 03 Sep 2017 02:44:36 -0700 (PDT) From: "Yann E. MORIN" To: buildroot@buildroot.org Date: Sun, 3 Sep 2017 11:44:27 +0200 Message-Id: <8de5375c8ca0110ebd5baaec946fed002cc7eb80.1504431850.git.yann.morin.1998@free.fr> X-Mailer: git-send-email 2.11.0 In-Reply-To: References: Cc: Thomas Petazzoni , "Yann E. MORIN" Subject: [Buildroot] [PATCH 1/8] arch: introduce minimal required gcc version X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.18-1 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" Some CPU variants require that a recent-enough gcc be selected. For example, ARM's cortex-a35 requires gcc-5, while cortex-a73 requires gcc-7. Same goes for other architectures, of course. Currently, we hard-code every such conditions in the gcc version choice, as well as in the individual external toolchains. However, as we add even more CPU variants, the conditions are getting more and more complex to write and maintain. Introduce new symbols, that architectures can select if they have a specific requirement on the gcc version. gcc and external toolchains can then properly depend on those symbols. The burden of maintaining the requirements on the gcc version now falls down to the architeture, instead of being split up in gcc and all the external toolchains. As the oldest gcc version to handle, we can either choose gcc-4.9, as the odlest version we support in our internal toolchain, or choose gcc-4.8, as the oldest external toolchain we support (except for the custom ones, but they'll be handled specifically in upcoming changes). We choose to go back up to gcc-4.8. Signed-off-by: "Yann E. MORIN" Cc: Thomas Petazzoni --- arch/Config.in | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/arch/Config.in b/arch/Config.in index c10bf16809..607da36c1d 100644 --- a/arch/Config.in +++ b/arch/Config.in @@ -261,6 +261,27 @@ config BR2_ARCH_HAS_TOOLCHAIN_BUILDROOT bool default y if !BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT +# The following symbols are selected by the individual +# Config.in.$ARCH files +config BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 + bool + +config BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 + bool + select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 + +config BR2_ARCH_NEEDS_GCC_AT_LEAST_5 + bool + select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 + +config BR2_ARCH_NEEDS_GCC_AT_LEAST_6 + bool + select BR2_ARCH_NEEDS_GCC_AT_LEAST_5 + +config BR2_ARCH_NEEDS_GCC_AT_LEAST_7 + bool + select BR2_ARCH_NEEDS_GCC_AT_LEAST_6 + # The following string values are defined by the individual # Config.in.$ARCH files config BR2_ARCH