From patchwork Thu Mar 12 05:59:38 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Frank Rowand X-Patchwork-Id: 5990861 Return-Path: X-Original-To: patchwork-linux-kbuild@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 92A639F318 for ; Thu, 12 Mar 2015 06:00:06 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id B797620218 for ; Thu, 12 Mar 2015 06:00:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id CC55120396 for ; Thu, 12 Mar 2015 06:00:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752868AbbCLF7r (ORCPT ); Thu, 12 Mar 2015 01:59:47 -0400 Received: from mail-we0-f176.google.com ([74.125.82.176]:42214 "EHLO mail-we0-f176.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751470AbbCLF7o (ORCPT ); Thu, 12 Mar 2015 01:59:44 -0400 Received: by wesq59 with SMTP id q59so13935830wes.9; Wed, 11 Mar 2015 22:59:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:reply-to:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; bh=N6l2iuvHdG6xRB5sFWbRchYpeXRQ/Sh5U8eQh11h/lQ=; b=UhKiaEeAOJaqL3T1YuLoPdBthV9FFqoB57/EXxOm6vOcFAL9Cozvh/2hxTWEJ84hIb z3/+dbU337o8Ct5su+nfECeWpYZt8F4lYa4IZKlHlRh+8uAf2BoKaboVFZg6u4D1wby2 FnfkdwdFOOsqHp67hHPk7hWvS/N/jBUhopyV39Oym6gqkqg5YajaykL6bmBK8Y7qs+cv fSi3KKPo3AlpmQUWB7rraMMA9wMDxEhJYPvEY/RYtlfo69n+Pi/KbNhOeeCBVo0s1yoP OXWHVvIchZXRSh9eRZvyta1X5hV68ETlxGEvCsyepnfDgkrXH38H+5Xd7/Hju9jggoOO xe5Q== X-Received: by 10.180.126.98 with SMTP id mx2mr126637443wib.18.1426139981993; Wed, 11 Mar 2015 22:59:41 -0700 (PDT) Received: from [172.26.78.249] ([64.211.224.253]) by mx.google.com with ESMTPSA id e18sm8426038wjz.27.2015.03.11.22.59.39 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 11 Mar 2015 22:59:41 -0700 (PDT) Message-ID: <55012B4A.9050504@gmail.com> Date: Wed, 11 Mar 2015 22:59:38 -0700 From: Frank Rowand Reply-To: frowand.list@gmail.com User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130801 Thunderbird/17.0.8 MIME-Version: 1.0 To: Grant Likely , Rob Herring , Michal Marek , Linux Kernel list , "devicetree@vger.kernel.org" , linux-kbuild@vger.kernel.org Subject: [Patch v2 1/3] dt: OF_UNITTEST make dependency broken, framework fixes Sender: linux-kbuild-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kbuild@vger.kernel.org X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, T_DKIM_INVALID, T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Frank Rowand This 3 patch series is not bisectable. If CONFIG_OF_UNITTEST=y then the kernel will not build with just patch 1 or just patches 1 and 2 applied. If CONFIG_OF_UNITTEST=y then a kernel image make will always cause .version to be incremented, even if there are not source changes. This is caused by a lack of dependency tracking and checking for drivers/of/unittest-data/testcases.dtb.o. Fixing the problem was made more complicated by the fact that testcases.dtb.o was linked into ../of_unittest.o. Patch 1 modifies makefiles to move of_unittest.c into unittest-data/ and creates missing dependency tracking for testcases.dtb.o. Patch 2 will move of_unittest.c into unittest-data/ Patch 3 will fix an of_unittest.c include path to account for the move. Signed-off-by: Frank Rowand --- changes since version 1: patch 1: Remove some changes to scripts/Makefile.lib that are not needed. They were left over from attempts to fix the problem without moving of_unitest.c into unittest-data/. drivers/of/Makefile | 4 ++-- drivers/of/unittest-data/Makefile | 9 +++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Index: b/drivers/of/Makefile =================================================================== --- a/drivers/of/Makefile +++ b/drivers/of/Makefile @@ -6,8 +6,6 @@ obj-$(CONFIG_OF_PROMTREE) += pdt.o obj-$(CONFIG_OF_ADDRESS) += address.o obj-$(CONFIG_OF_IRQ) += irq.o obj-$(CONFIG_OF_NET) += of_net.o -obj-$(CONFIG_OF_UNITTEST) += of_unittest.o -of_unittest-objs := unittest.o unittest-data/testcases.dtb.o obj-$(CONFIG_OF_MDIO) += of_mdio.o obj-$(CONFIG_OF_PCI) += of_pci.o obj-$(CONFIG_OF_PCI_IRQ) += of_pci_irq.o @@ -16,5 +14,7 @@ obj-$(CONFIG_OF_RESERVED_MEM) += of_rese obj-$(CONFIG_OF_RESOLVE) += resolver.o obj-$(CONFIG_OF_OVERLAY) += overlay.o +obj-$(CONFIG_OF_UNITTEST) += unittest-data/ + CFLAGS_fdt.o = -I$(src)/../../scripts/dtc/libfdt CFLAGS_fdt_address.o = -I$(src)/../../scripts/dtc/libfdt Index: b/drivers/of/unittest-data/Makefile =================================================================== --- /dev/null +++ b/drivers/of/unittest-data/Makefile @@ -0,0 +1,9 @@ + +obj-$(CONFIG_OF_UNITTEST) += of_unittest.o +of_unittest-objs := unittest.o testcases.dtb.o + +targets += testcases.dtb testcases.dtb.S + +.SECONDARY: \ + $(obj)/testcases.dtb.S \ + $(obj)/testcases.dtb