Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp4400356pxb; Tue, 26 Jan 2021 22:21:51 -0800 (PST) X-Google-Smtp-Source: ABdhPJxiHnEYJ6yKglm7MeA8BT/n8olJk+r+9R25iCitPEGUmZLCjvR6mY/Psf6fReNiWH95VsJ9 X-Received: by 2002:a05:6402:2346:: with SMTP id r6mr7769618eda.8.1611728510917; Tue, 26 Jan 2021 22:21:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611728510; cv=none; d=google.com; s=arc-20160816; b=xroNgBu0ZYsVDuxDX60roMJmr+60JJ4aienTIQh1zYA4ubtE/JPoqtG8c3znesq4/b bC8zZf9PHWsUjgNGmHXg+P3WfGFad0Ia3+jhPVFHKkddUb3bm5epd9Jezl/aNQkb+yJf HDxHfvBWntj58Xw7LikiR2SO9uSqiEFTpsfxrwSj8PQtY85xDqiHllpA31GoWI4Hnn1Y 1seyhxcRq9fIHBzyFQ0XPHFD/8eoGMuWVvWT0K5ifgK+uLmF5jn0yKlRrKkgpHCJA9SW x5Wd9Ex2o7q1CFAYPDsz6LwSwqWmu6luPEsygQz9o2QRaPAQj8L65eLvIkEQZlHAeOBw ZzEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature:dkim-filter; bh=kWOccqxKJoFYPnJsQ+y0BCvq3KmzNRThKQzTaXhv0S8=; b=upFfY9umcQO/VdUp0B70eysBO89skkUJN2jrSok0U0+jnxrJ2NDFpWX/DAEiNO1ENP ASUxFutaK7yUmmnsuSKFUm1JSc7JKiXZtcvjRi6zxALgSZhGed3F/kaBDlUhL1xhzx2F hAy8yTCl5v5mA2SwUInszQUQgMJr1aIHK/G1K3t6+VfUnNgxZGefpm28p7/AU7hl6Nbz GfXeIwbhPtgRt5f+O4mfquVVA5YvGewOfuCKsmMUkYwQxo8sxSBeHw4/BYvr+ulUgie0 NYqTfrrg+dNTYDvIgmUWjsLfV+nPkuiaP4+v3ZtrVm0j+Dac6IBNNwag/PaEFMINWSPd q7Dg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nifty.com header.s=dec2015msa header.b=N7TcHLcn; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v17si433794ejb.60.2021.01.26.22.21.27; Tue, 26 Jan 2021 22:21:50 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@nifty.com header.s=dec2015msa header.b=N7TcHLcn; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2404109AbhAZSU2 (ORCPT + 99 others); Tue, 26 Jan 2021 13:20:28 -0500 Received: from conssluserg-05.nifty.com ([210.131.2.90]:38633 "EHLO conssluserg-05.nifty.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2392482AbhAZSE2 (ORCPT ); Tue, 26 Jan 2021 13:04:28 -0500 Received: from mail-pg1-f177.google.com (mail-pg1-f177.google.com [209.85.215.177]) (authenticated) by conssluserg-05.nifty.com with ESMTP id 10QI314b020894; Wed, 27 Jan 2021 03:03:02 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conssluserg-05.nifty.com 10QI314b020894 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1611684182; bh=kWOccqxKJoFYPnJsQ+y0BCvq3KmzNRThKQzTaXhv0S8=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=N7TcHLcnqdF/FFV1Wy+s+viyBMtrA6US56U/UtYazUnTYqU39VnCpTmA3AMq8I6qh Yxzq5E45SKbeLvAjdvbZXkEoaSs6HnpW12otvGY7JDxdwBTA6tC7kLwCmhBvItc/K6 s+2JlSHUg8pF15Uvpkj6KPm7GHd4Jnii/mPGV0gysoR3HGbC/CWD1f0nWbODVNb+7f yZQly0ZOhpqX+r3KLAu6HhIb5GZW2ZPEgnp2JG1J7bUKfQxvJQI/f9YaDLsJr5rwdL 6KufYEBlN1he17eOVTBS+t6F+Tb9kyuUW9qStXlhS8mwwuCvYRyQY0xMySu4dom2Xt EFB+W6S9BlB5A== X-Nifty-SrcIP: [209.85.215.177] Received: by mail-pg1-f177.google.com with SMTP id o16so2317059pgg.5; Tue, 26 Jan 2021 10:03:02 -0800 (PST) X-Gm-Message-State: AOAM5335+Lei3tGibMPWexIKZzcYioLoSAtBRWn7X3y1YYU7NseuYUWo 8byl5bWIyxzp7Wheq7oWx3HpIeKXedJsOivPtPA= X-Received: by 2002:a63:ff09:: with SMTP id k9mr6846869pgi.175.1611684181350; Tue, 26 Jan 2021 10:03:01 -0800 (PST) MIME-Version: 1.0 References: <1611343638-28206-1-git-send-email-eberman@codeaurora.org> <1611343638-28206-2-git-send-email-eberman@codeaurora.org> In-Reply-To: <1611343638-28206-2-git-send-email-eberman@codeaurora.org> From: Masahiro Yamada Date: Wed, 27 Jan 2021 03:02:24 +0900 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [RFC 1/2] Kbuild: Make composite object searching more generic To: Elliot Berman Cc: Nick Desaulniers , Linux Kbuild mailing list , Linux Kernel Mailing List , Michal Marek , Sami Tolvanen , Trilok Soni , Mahesh Kumar Kalikot Veetil , Jeff Johnson Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Jan 23, 2021 at 4:27 AM Elliot Berman wrote: > > Reduce repeated logic around expanding composite objects in preparation > for later commit to support nested composite objects. > > Signed-off-by: Elliot Berman This patch is a nice clean-up regardless of your main motivation in 2/2. I removed the "in preparation ..." part. Applied to linux-kbuild. Thanks. > --- > scripts/Makefile.lib | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) > > diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib > index 213677a5..93e4f10 100644 > --- a/scripts/Makefile.lib > +++ b/scripts/Makefile.lib > @@ -56,15 +56,19 @@ else > obj-y := $(filter-out %/, $(obj-y)) > endif > > +# Expand $(foo-objs) $(foo-y) by calling $(call suffix-search,foo.o,-objs -y) > +suffix-search = $(foreach s,$(2),$($(1:.o=$s))) > # If $(foo-objs), $(foo-y), $(foo-m), or $(foo-) exists, foo.o is a composite object > -multi-used-y := $(sort $(foreach m,$(obj-y), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y)) $($(m:.o=-))), $(m)))) > -multi-used-m := $(sort $(foreach m,$(obj-m), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y)) $($(m:.o=-m)) $($(m:.o=-))), $(m)))) > +multi-search = $(sort $(foreach m,$(1), $(if $(strip $(call suffix-search,$(m),$(2) -)), $(m)))) > +multi-used-y := $(call multi-search,$(obj-y),-objs -y) > +multi-used-m := $(call multi-search,$(obj-m),-objs -y -m) > multi-used := $(multi-used-y) $(multi-used-m) > > # Replace multi-part objects by their individual parts, > # including built-in.a from subdirectories > -real-obj-y := $(foreach m, $(obj-y), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y)) $($(m:.o=-))),$($(m:.o=-objs)) $($(m:.o=-y)),$(m))) > -real-obj-m := $(foreach m, $(obj-m), $(if $(strip $($(m:.o=-objs)) $($(m:.o=-y)) $($(m:.o=-m)) $($(m:.o=-))),$($(m:.o=-objs)) $($(m:.o=-y)) $($(m:.o=-m)),$(m))) > +real-search = $(foreach m,$(1), $(if $(strip $(call suffix-search,$(m),$(2) -)),$(call suffix-search,$(m),$(2)),$(m))) > +real-obj-y := $(call real-search, $(obj-y),-objs -y) > +real-obj-m := $(call real-search, $(obj-m),-objs -y -m) > > always-y += $(always-m) > > -- > The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, > a Linux Foundation Collaborative Project > -- Best Regards Masahiro Yamada