Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932676AbcLOQoY (ORCPT ); Thu, 15 Dec 2016 11:44:24 -0500 Received: from smtp07.smtpout.orange.fr ([80.12.242.129]:27106 "EHLO smtp.smtpout.orange.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755649AbcLOQoX (ORCPT ); Thu, 15 Dec 2016 11:44:23 -0500 X-ME-Helo: belgarion.home X-ME-Date: Thu, 15 Dec 2016 17:35:49 +0100 X-ME-IP: 109.222.95.68 From: Robert Jarzmik To: Michal Marek Cc: linux-kernel@vger.kernel.org, linux-kbuild@vger.kernel.org, Robert Jarzmik Subject: [PATCH v2] tags: honor COMPILED_SOURCE with apart output directory Date: Thu, 15 Dec 2016 17:35:33 +0100 Message-Id: <1481819733-3002-1-git-send-email-robert.jarzmik@free.fr> X-Mailer: git-send-email 2.1.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1170 Lines: 38 When the kernel is compiled with an "O=" argument, the object files are not necessarily in the source tree, and more probably in another tree. In this situation, the current used check doesn't work, and COMPILED_SOURCE tags is broken with O= builds. This patch fixes it by looking for object files both in source tree and potential destination tree. It was verified that in the case of O= usage, the current directory is the build tree, ie. the tree referenced by O=xxx, and j is the source tree path concatenated with relative path of the object to the source tree root, hence the simple expression to compute "k" as the built object. Signed-off-by: Robert Jarzmik --- Since v1: amended k expression, Marek's comments --- scripts/tags.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/tags.sh b/scripts/tags.sh index a2ff3388e5ea..35cb64d5211c 100755 --- a/scripts/tags.sh +++ b/scripts/tags.sh @@ -106,7 +106,8 @@ all_compiled_sources() case "$i" in *.[cS]) j=${i/\.[cS]/\.o} - if [ -e $j ]; then + k="${j#$tree}" + if [ -e $j -o -e "$k" ]; then echo $i fi ;; -- 2.1.4