Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp1638806yba; Fri, 17 May 2019 02:45:44 -0700 (PDT) X-Google-Smtp-Source: APXvYqzm0Gz6G+8QPCfA8RAWtLCUnxxc20gAZOtRiK0fnn837yqKWLhEsNFiKP5PhczQ1rSVofvI X-Received: by 2002:a63:5d3:: with SMTP id 202mr54150635pgf.363.1558086344325; Fri, 17 May 2019 02:45:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1558086344; cv=none; d=google.com; s=arc-20160816; b=XBMunL2vY3m3N7DMze+JANEG5gYCn/3GdqOmFsooGWGlXu9X+qaCr/izicaRRwIQ2m sQOQxj19aig+SdT4C7UuUx7lvB1u14uJknXGwJXd0StW3L/pJbHxlahq3Q/DKfYQ28OP hsXxFOslFry+ZTJeSOj0kO7X1B9BzwV6PdD7QqxQJp3nQlqyG+kTcZBsENRcj0QOaodF SSUBarvogkuYHXsvR8QhN0joeBkGusvk00voMF6u3LGKdAUfjsaf1OzaivtIUJP8df+V kx/RpDYx6vN5Bud+Uaw+GsblZpoTk2k+47lKpruNAQQVfUnwUoMMOAO4llF2FKuLNzEq 3rTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=bKzWWnOH9ydjE40E51J019WWbkt1Rysxj2Dtj7CPBxw=; b=RNjOY+waexKoSMFy8aG3jmg4YLeC9l+u8c6DOT5WN86iv9j/V8ZQgqMHh8rWo2SWKj czOxUsPU0rYZrLN59TD3yRFSRpPHc58/9FQwjXNGhva9yu9F6TJq3mineCtIBSxXiFIH Zui60LATlNmUcFtrl2b0wJdSx7szGII1by4r69KcyTs1r73qCHMtCG+mTBa/1CKaAv4Z vt2AMFm9AjmPf4fECvfFgTElaDDNuMcmw0QdKL05q6maZzAsGqfVe8UqVBjkoBXCbXwO Sl1xTsUp9GfuHMmOHBC4k1uLwyxaEM0r4H+PqnEdImMZqoJGJnukSSTyfJFywDp5vc/G i9KA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=hwL0cUFx; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c10si7632703pge.278.2019.05.17.02.45.29; Fri, 17 May 2019 02:45:44 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=hwL0cUFx; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728899AbfEQJZt (ORCPT + 99 others); Fri, 17 May 2019 05:25:49 -0400 Received: from mail-io1-f65.google.com ([209.85.166.65]:39827 "EHLO mail-io1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728372AbfEQJZs (ORCPT ); Fri, 17 May 2019 05:25:48 -0400 Received: by mail-io1-f65.google.com with SMTP id m7so4937768ioa.6; Fri, 17 May 2019 02:25:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=bKzWWnOH9ydjE40E51J019WWbkt1Rysxj2Dtj7CPBxw=; b=hwL0cUFxucCOmv0o3XAkQAKca82DGUJVm1ca/Dbp2gWH7WmayUc1iz4KQeAX1cg5am mWz53Cr0ZUz5Fd7CnD3Xzj99EMSA5ej7m+1b1xv5iCqwvqvzgO8oqwAiuuTG/ISlPZae WduTyb5EDzypBr//Vi3LxBBwbDIBu+4MV5TJgGXnLUh2U6hTyTF9Iic8CofvMlRK1mLu MSYKK486pvy8OUIW8CY02gGCGmlWfQBgaYpb//oWtCdhviFlLKVWBlfr6d09A7XuhohB wB+jfzWuVHh4w9NUythOejL07BsUwYWQyHDeCZf8MB7aCbv23QAcTP4szJKRyd/1blWm ZBMA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=bKzWWnOH9ydjE40E51J019WWbkt1Rysxj2Dtj7CPBxw=; b=pSYyBDU9HBzXqowk1UxznFZcdbCOT2CNOc6dHLizwFQy5RpQyDACvlwJOANI8aPxbw u0lkU5Eul5cbw25ae7IzUIdPqE6Riu/4PODdY2gtS8IwiK6jxYOfIVL5a/eZVWVajOuf C9I2DQONGO/d7qs8b8tENhOYdC1UE4JNlnU3TrGL9/BBUrVBr9TNHEDALlhkdxJz6Tix vLyGFfJRJPTMCyagkPG1EP3mZxenxuGMDDD3JV15Ia7wT+duUt5nH2HmuT73/hEYrVcJ /Ycl5Tr5LBfFmVK1MPrhBs4FHFb4qSF0CXHpp7yvXfyATXNLouVKpRjNCJ8UQwnJY/I9 2hPg== X-Gm-Message-State: APjAAAUSjiHj5dh7bEhwed/jb/0cy5KpnMgr8JITpXRscleW0BdJrakm U8p+Nk0mfaJSnR8oJTG/FiWUiBHA/K+3O9ltvo8= X-Received: by 2002:a6b:8e84:: with SMTP id q126mr12832502iod.118.1558085147348; Fri, 17 May 2019 02:25:47 -0700 (PDT) MIME-Version: 1.0 References: <20190517042753.25857-1-yamada.masahiro@socionext.com> <68270a84-966b-05e3-c82e-893c320febfd@petrovitsch.priv.at> In-Reply-To: <68270a84-966b-05e3-c82e-893c320febfd@petrovitsch.priv.at> From: Alexander Kapshuk Date: Fri, 17 May 2019 12:25:10 +0300 Message-ID: Subject: Re: [PATCH v2] kbuild: check uniqueness of module names To: Bernd Petrovitsch Cc: Masahiro Yamada , linux-kbuild@vger.kernel.org, Sam Ravnborg , Arnd Bergmann , Greg KH , Jessica Yu , Lucas De Marchi , Stephen Rothwell , Michael Schmitz , Linus Torvalds , Rusty Russell , Kees Cook , Michal Marek , linux-kernel Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, May 17, 2019 at 11:58 AM Bernd Petrovitsch wrote: > > On 17/05/2019 10:16, Alexander Kapshuk wrote: > [...] > > The 'xargs' '-r' flag is a GNU extension. > > If POSIX compliance is important here, the use of 'cat', 'xargs' and > > 'basename' may be substituted with that of 'sed' to initialise > > same_name_modules: > > sed 's!.*/!!' modules.order modules.builtin | sort | uniq -d > > 's!' is TTBOMK also a GNU-extension: > sed 's/.*\///' modules.order modules.builtin | sort | uniq -d It isn't. Here's an excerpt from the POSIX manpage for 'sed', http://pubs.opengroup.org/onlinepubs/009695399/utilities/sed.html: [2addr]s/BRE/replacement/flags ... Any character other than backslash or can be used instead of a slash to delimit the BRE and the replacement.... > > > 'Sed' may also be used on its own in the 'for' loop instead of as part > > of a pipeline along with 'grep' to generate the desired output: > > sed '/\/'$m'/!d;s:^kernel/: :' modules.order modules.builtin > > sed "/\/${m}/!d;s/^kernel\// /" modules.order modules.builtin The parameter expansion syntax is redundant here. See https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_02: The parameter name or symbol can be enclosed in braces, which are optional except for positional parameters with more than one digit or when parameter is a name and is followed by a character that could be interpreted as part of the name. Here's an alternative version using double quotes. sed "/\/$m/!d;s:^kernel/: :" modules.order modules.builtin > > MfG, > Bernd > -- > Bernd Petrovitsch Email : bernd@petrovitsch.priv.at > LUGA : http://www.luga.at