From patchwork Sun Oct 16 17:17:22 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Masahiro Yamada X-Patchwork-Id: 77703 Delivered-To: patch@linaro.org Received: by 10.140.97.247 with SMTP id m110csp58533qge; Sun, 16 Oct 2016 10:18:04 -0700 (PDT) X-Received: by 10.28.132.202 with SMTP id g193mr6423778wmd.117.1476638284071; Sun, 16 Oct 2016 10:18:04 -0700 (PDT) Return-Path: Received: from theia.denx.de (theia.denx.de. [85.214.87.163]) by mx.google.com with ESMTP id gq2si14883063wjb.190.2016.10.16.10.18.03; Sun, 16 Oct 2016 10:18:04 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 85.214.87.163 as permitted sender) client-ip=85.214.87.163; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@nifty.com; spf=pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 85.214.87.163 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 02438A7574; Sun, 16 Oct 2016 19:18:00 +0200 (CEST) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nCv0gKSBu8ie; Sun, 16 Oct 2016 19:17:59 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 8D2DBA7579; Sun, 16 Oct 2016 19:17:54 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id DD21EA7544 for ; Sun, 16 Oct 2016 19:17:47 +0200 (CEST) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id SPjwSt11lFrb for ; Sun, 16 Oct 2016 19:17:47 +0200 (CEST) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from conuserg-10.nifty.com (conuserg-10.nifty.com [210.131.2.77]) by theia.denx.de (Postfix) with ESMTPS id 121434BDBD for ; Sun, 16 Oct 2016 19:17:42 +0200 (CEST) Received: from grover.sesame (FL1-111-169-71-157.osk.mesh.ad.jp [111.169.71.157]) (authenticated) by conuserg-10.nifty.com with ESMTP id u9GHHSuk002605; Mon, 17 Oct 2016 02:17:31 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conuserg-10.nifty.com u9GHHSuk002605 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1476638252; bh=ovLWl+hxmDQPOrxu7rLaeWTbBFJCvKIwd7mRj7A9T5k=; h=From:To:Cc:Subject:Date:From; b=1Uvka+2PIksc122e5+1rVWw/ebLf7TSM3onhu1KU6nlxNmmp14sd/9KzBbR1fy0PF 8PYC1dNgLUchR3riTScNpm68Ckv9zNQ8WeHERbys1QC2h/Z8RWQHKJMv2vPFaKYERP uy3z7tW1Q+8qFRs8lqPm5AedYLqVmngIOnwFvEXAwiFzuaAHtDLQqnPb+Tu4hvT4kH XRX0HvJmN5uJQe1IAh/p3WXT5Z7O7Bxl2jCx+ymfbvRT8D2IDxScd/RFqsxibQh338 KtOPLZN8WcFKOSD7FNOqcTTnxIqA9+ewg8ikYChkIHpsFDPEzKSie4P+mX8CPkYZva qBrEAzQXHf2qQ== X-Nifty-SrcIP: [111.169.71.157] From: Masahiro Yamada To: u-boot@lists.denx.de Date: Mon, 17 Oct 2016 02:17:22 +0900 Message-Id: <1476638243-10053-1-git-send-email-yamada.masahiro@socionext.com> X-Mailer: git-send-email 1.9.1 Cc: Joe Hershberger Subject: [U-Boot] [PATCH 1/2] tools: moveconfig: support wildcards in --defconfigs file X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.15 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" Supporting shell-style wildcards for the --defconfigs option will be useful to run the moveconfig tool against a specific platform. For example, "uniphier*" in the file passed by --defconfigs option will be expanded to defconfig files that start with "uniphier". This is easier than listing out all the UniPhier defconfig files. Signed-off-by: Masahiro Yamada --- tools/moveconfig.py | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) -- 1.9.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot diff --git a/tools/moveconfig.py b/tools/moveconfig.py index 87e2bb2..67cf5f0 100755 --- a/tools/moveconfig.py +++ b/tools/moveconfig.py @@ -127,7 +127,8 @@ Available options standard commit message is used which may need to be edited. -d, --defconfigs - Specify a file containing a list of defconfigs to move + Specify a file containing a list of defconfigs to move. The defconfig + files can be given with shell-style wildcards. -n, --dry-run Perform a trial run that does not make any changes. It is useful to @@ -180,6 +181,7 @@ import copy import difflib import filecmp import fnmatch +import glob import multiprocessing import optparse import os @@ -284,6 +286,17 @@ def get_make_cmd(): sys.exit('GNU Make not found') return ret[0].rstrip() +def get_matched_defconfigs(defconfigs_file): + """Get all the defconfig files that match the patterns in a file.""" + # use a set rather than a list in order to avoid double-counting + defconfigs = set() + for line in open(defconfigs_file): + line = os.path.join('configs', line.strip()) + defconfigs |= set(glob.glob(line)) + defconfigs |= set(glob.glob(line + '_defconfig')) + + return [ defconfig[len('configs') + 1:] for defconfig in defconfigs ] + def get_all_defconfigs(): """Get all the defconfig files under the configs/ directory.""" defconfigs = [] @@ -1204,13 +1217,7 @@ def move_config(configs, options): reference_src_dir = None if options.defconfigs: - defconfigs = [line.strip() for line in open(options.defconfigs)] - for i, defconfig in enumerate(defconfigs): - if not defconfig.endswith('_defconfig'): - defconfigs[i] = defconfig + '_defconfig' - if not os.path.exists(os.path.join('configs', defconfigs[i])): - sys.exit('%s - defconfig does not exist. Stopping.' % - defconfigs[i]) + defconfigs = get_matched_defconfigs(options.defconfigs) else: defconfigs = get_all_defconfigs()