From patchwork Fri Oct 13 09:12:41 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Masahiro Yamada X-Patchwork-Id: 115715 Delivered-To: patch@linaro.org Received: by 10.140.22.163 with SMTP id 32csp499912qgn; Fri, 13 Oct 2017 02:14:04 -0700 (PDT) X-Google-Smtp-Source: AOwi7QDdiLDfCvAGBmXGtjLJlHj62yT296NIeeju3j7F81iNS6ISiKlY/WaDp8k0UoT2DOWdYs2j X-Received: by 10.80.153.205 with SMTP id n13mr1336131edb.281.1507886044752; Fri, 13 Oct 2017 02:14:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1507886044; cv=none; d=google.com; s=arc-20160816; b=aD4Chl/A+4P6xbh+FGVH5rItbWE3xBd1RmY2bcbkaW7VO7vbWtM9920nE+rD6A8hij RCzR5EOX/IntwXM9A+YhC7m/pcBtMU1WMidUG7PUB9c6JxJcvq/8zW3lLQzgmHbH7+Ik mfRmbmTsQT5Z5dZq4aabSrQoCp16qmYYOI13LR6CVGyD17oq3oXoWupNFmNwjlcBBIjX gqr8HEiIdMqCn8NmdAXO87AJV2MEWJIwEl2cEWhcw2nMtr68PmN7pk08FUO8aNvjMrAv SzaPnytpE+6Xr+vUrTiDSGjJq4LQ8NmwpJXygbYb+nq0QKsvrtH0wYzqKp20bWT/VgTC FBHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:cc:references:in-reply-to:message-id :date:to:from:dkim-signature:dkim-filter:arc-authentication-results; bh=9drrZY1IRF+9P/fTmYO4H3LUInXweyWUcPteIESXGyM=; b=To/OHdrfblVIKQ4INRkwvY19+YxodVsB8r3W3ZH+1PQjAaqfBO/6FwVhPd0NPuiCWk J3On/LrnlGPnN2yMegVrislwon5k2t2YwDjYBf5vdpI2TEHHrnX/waz+9vYY+sPc4ZBg G68oaudwp2UKqFb4XR2XJbLpALqQCOqTVukIgT7z4HVYdc/BCQ66phz94xzN9e/moH0R elIzlUvQm+NjkHq2iIn6SkzYUlSwUgtF8TUl9ETN0VagKyRFI54QiOrfM+l6aNsHdJBf Tjp/teL7stKSpNJskZwuC9g8gbhYgZ9OMOMD6n7RjkshEhFX5jeUcBTLF1Qs2RDDcZrp kvgA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@nifty.com header.s=dec2015msa header.b=lcNK7QIC; spf=pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de Return-Path: Received: from lists.denx.de (dione.denx.de. [81.169.180.215]) by mx.google.com with ESMTP id j2si706012edj.200.2017.10.13.02.14.04; Fri, 13 Oct 2017 02:14:04 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) client-ip=81.169.180.215; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@nifty.com header.s=dec2015msa header.b=lcNK7QIC; spf=pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de Received: by lists.denx.de (Postfix, from userid 105) id 2F527C21F6B; Fri, 13 Oct 2017 09:13:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 68614C21FA8; Fri, 13 Oct 2017 09:13:13 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 72482C21EEE; Fri, 13 Oct 2017 09:13:10 +0000 (UTC) Received: from conuserg-08.nifty.com (conuserg-08.nifty.com [210.131.2.75]) by lists.denx.de (Postfix) with ESMTPS id 3FC61C21EF8 for ; Fri, 13 Oct 2017 09:13:07 +0000 (UTC) Received: from pug.e01.socionext.com (p14092-ipngnfx01kyoto.kyoto.ocn.ne.jp [153.142.97.92]) (authenticated) by conuserg-08.nifty.com with ESMTP id v9D9CiH4002457; Fri, 13 Oct 2017 18:12:47 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conuserg-08.nifty.com v9D9CiH4002457 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1507885967; bh=sNZysxVvpOJcpW41VyJbAvUEb7Dpi80dnXcC1vZw1AA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lcNK7QICQSkY5lLOmZVXsqd3hSGDNN5MqSMHtYPnqXwK5NZPE47Nl+o6sVjB78pzR OOrc86FisHnObD5w/Oy1cp3xIxnea5NYUpI1NyK3euNU4u5Gs/N2uOId63Au/EmzA4 GDU2FviMQOgI5JcyFbLLIrELEW6QfvafxJjUJBeREjJI1QQpF5YTgTXU+ReRo10DUU ZQcs4ZPzwNo8BSn54yIlcZx3Px6eo8YcMfQZtim/te7eh3al1wFabXhRhsvWf0wdgK Lzt6gTwexm1zRoyOH1tpnoL0KDrXX2MxJR7MqNTRLf8K1VWfZ0wCN8g0p0iDAJMNpi KfxVQ4YpUmbQg== X-Nifty-SrcIP: [153.142.97.92] From: Masahiro Yamada To: u-boot@lists.denx.de Date: Fri, 13 Oct 2017 18:12:41 +0900 Message-Id: <1507885961-12665-4-git-send-email-yamada.masahiro@socionext.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1507885961-12665-1-git-send-email-yamada.masahiro@socionext.com> References: <1507885961-12665-1-git-send-email-yamada.masahiro@socionext.com> Cc: Tom Rini Subject: [U-Boot] [PATCH 3/3] kbuild: redefine __FILE__ as relative path from $(srctree) if possible X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Since Kbuild runs in the objtree, __FILE__ can be a very long path depending of $(srctree). If objtree is a child of srctree, the situation is a bit better. ($(srctree) is "..") For other cases of out-of-tree build, filenames in WARN_ON() etc. are still an absolute path. It also means the U-Boot image depends on where it was built. Here, the idea is to redefine __FILE__ as the relative path from $(srctree), but doing so causes a compiler warning: warning: "__FILE__" redefined [-Wbuiltin-macro-redefined] The option -Wno-builtin-macro-redefined can suppress it, but it is only recognized by GCC 4.4 or newer. Redefine __FILE__ only when possible. Signed-off-by: Masahiro Yamada --- Makefile | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Makefile b/Makefile index 888486b..ab7775d 100644 --- a/Makefile +++ b/Makefile @@ -1334,6 +1334,15 @@ prepare0: archprepare FORCE # All the preparing.. prepare: prepare0 +# If possible, redefne __FILE__ as relative path from $(srctree). +# $$ is needed to expand the following in submake +ifeq ($(call cc-option-yn,-Wno-builtin-macro-redefined),y) +KBUILD_CFLAGS += -Wno-builtin-macro-redefined \ + -D__FILE__=$$(call stringify,$$(src)/$$(notdir $$<)) +endif +# CAUTION: Do not add any reference to KBUILD_CFLAGS below this line. +# Any call of cc-option, etc. will fail. + # Generate some files # ---------------------------------------------------------------------------