All of lore.kernel.org
 help / color / mirror / Atom feed
From: Johannes Berg <johannes@sipsolutions.net>
To: backports@vger.kernel.org
Cc: Johannes Berg <johannes.berg@intel.com>
Subject: [PATCH 11/15] gentree: add a --list-files option
Date: Fri, 21 Feb 2020 09:56:20 +0100	[thread overview]
Message-ID: <20200221095437.fe83a3330649.I5151aae11023725a5c6e626c2fef46393ec4ebab@changeid> (raw)
In-Reply-To: <20200221085624.6213-1-johannes@sipsolutions.net>

From: Johannes Berg <johannes.berg@intel.com>

This can be used to understand what will go into a backport,
but currently excludes some uninteresting files.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
 gentree.py | 36 ++++++++++++++++++++++++++++--------
 1 file changed, 28 insertions(+), 8 deletions(-)

diff --git a/gentree.py b/gentree.py
index 8fdf34c60f7e..bf2965f2a8c6 100755
--- a/gentree.py
+++ b/gentree.py
@@ -649,6 +649,8 @@ def _main():
                              'and we use git ls-tree to get the files.')
     parser.add_argument('--clean', const=True, default=False, action="store_const",
                         help='Clean output directory instead of erroring if it isn\'t empty')
+    parser.add_argument('--list-files', const=True, default=False, action="store_const",
+                        help='Only list files to copy')
     parser.add_argument('--integrate', const=True, default=False, action="store_const",
                         help='Integrate a future backported kernel solution into ' +
                              'an older kernel tree source directory.')
@@ -715,7 +717,7 @@ def _main():
         sys.stdout.write('\n')
         sys.stdout.flush()
 
-    return process(args.kerneldir, args.copy_list,
+    retv = process(args.kerneldir, args.copy_list,
                    git_revision=args.git_revision,
                    bpid=bpid,
                    clean=args.clean,
@@ -726,7 +728,12 @@ def _main():
                    kup_test=args.kup_test,
                    test_cocci=args.test_cocci,
                    profile_cocci=args.profile_cocci,
-                   logwrite=logwrite)
+                   logwrite=logwrite,
+                   list_files=args.list_files)
+    if args.list_files:
+        print('\n'.join(retv))
+    else:
+        return retv
 
 def process(kerneldir, copy_list_file, git_revision=None,
             bpid=None,
@@ -736,14 +743,15 @@ def process(kerneldir, copy_list_file, git_revision=None,
             test_cocci=None,
             profile_cocci=None,
             logwrite=lambda x:None,
-            git_tracked_version=False):
+            git_tracked_version=False,
+            list_files=False):
     class Args(object):
         def __init__(self, kerneldir, copy_list_file,
                      git_revision, bpid, clean, refresh, base_name,
                      gitdebug, verbose, extra_driver, kup,
                      kup_test,
                      test_cocci,
-                     profile_cocci):
+                     profile_cocci, list_files):
             self.kerneldir = kerneldir
             self.copy_list = copy_list_file
             self.git_revision = git_revision
@@ -760,6 +768,7 @@ def process(kerneldir, copy_list_file, git_revision=None,
             self.profile_cocci = profile_cocci
             if self.test_cocci or self.profile_cocci:
                 self.gitdebug = True
+            self.list_files = list_files
     def git_paranoia(tree=None, logwrite=lambda x:None):
         data = git.paranoia(tree)
         if (data['r'] != 0):
@@ -772,7 +781,7 @@ def process(kerneldir, copy_list_file, git_revision=None,
     args = Args(kerneldir, copy_list_file,
                 git_revision, bpid, clean, refresh, base_name,
                 gitdebug, verbose, extra_driver, kup, kup_test,
-                test_cocci, profile_cocci)
+                test_cocci, profile_cocci, list_files)
     rel_prep = None
 
     if bpid.integrate:
@@ -810,9 +819,6 @@ def process(kerneldir, copy_list_file, git_revision=None,
     copy_list = read_copy_list(args.copy_list)
     deplist = read_dependencies(os.path.join(source_dir, 'dependencies'))
 
-    # validate output directory
-    check_output_dir(bpid.target_dir, args.clean)
-
     # do the copy
     backport_integrate_files = [
             ('Makefile.kernel', 'Makefile'),
@@ -842,6 +848,20 @@ def process(kerneldir, copy_list_file, git_revision=None,
     else:
         backport_files += backport_integrate_files
 
+    if args.list_files:
+        ret = []
+        for f in copy_list:
+            # FIXME: make these exclusions configurable
+            if f[0] in ['COPYING', 'MAINTAINERS']:
+                continue
+            if f[0].startswith('scripts/'):
+                continue
+            ret.append(f[0])
+        return ret
+
+    # validate output directory
+    check_output_dir(bpid.target_dir, args.clean)
+
     if not args.git_revision:
         logwrite('Copy original source files ...')
     else:
-- 
2.24.1

--
To unsubscribe from this list: send the line "unsubscribe backports" in

  parent reply	other threads:[~2020-02-21  9:03 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-21  8:56 [PATCH 00/15] updates & improvements Johannes Berg
2020-02-21  8:56 ` [PATCH 01/15] backports: handle RHEL 7.6 kernel Johannes Berg
2020-02-23 22:24   ` Hauke Mehrtens
2020-02-24  8:40     ` Johannes Berg
2020-02-24 22:47       ` Hauke Mehrtens
2020-03-11  9:38     ` Johannes Berg
2020-02-21  8:56 ` [PATCH 02/15] backports: update x509.asn1.[ch] Johannes Berg
2020-02-23 22:26   ` Hauke Mehrtens
2020-02-24  8:39     ` Johannes Berg
2020-02-21  8:56 ` [PATCH 03/15] backports: suppress attribute((cold)) warnings with gcc 9 Johannes Berg
2020-02-21  8:56 ` [PATCH 04/15] backports: add some more atomic functions Johannes Berg
2020-02-21  8:56 ` [PATCH 05/15] backports: Do not access rx_count and rx_list attributes Johannes Berg
2020-02-21  8:56 ` [PATCH 06/15] backports: if_vlan: add VLAN_N_VID Johannes Berg
2020-02-21  8:56 ` [PATCH 07/15] patches: make nl80211.c include if_vlan.h Johannes Berg
2020-02-23 22:28   ` Hauke Mehrtens
2020-02-21  8:56 ` [PATCH 08/15] gentree: add timing info to git debug commit message Johannes Berg
2020-02-21  8:56 ` [PATCH 09/15] backports: debugfs: add unsigned long helpers Johannes Berg
2020-02-21  8:56 ` [PATCH 10/15] backports: patch lib/refcount.c to make sparse happy Johannes Berg
2020-02-21  8:56 ` Johannes Berg [this message]
2020-02-21  8:56 ` [PATCH 12/15] git-tracker: use python2 explicitly Johannes Berg
2020-02-21  8:56 ` [PATCH 13/15] git-tracker: use write-tree/commit-tree/update-ref Johannes Berg
2020-02-21  8:56 ` [PATCH 14/15] git-tracker: refactor function that adds change-id Johannes Berg
2020-02-21  8:56 ` [PATCH 15/15] gentree: use 'git cat-file' to speed up obtaining objects Johannes Berg
2020-03-24 23:11 ` [PATCH 00/15] updates & improvements Hauke Mehrtens
2020-03-25  7:59   ` Johannes Berg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200221095437.fe83a3330649.I5151aae11023725a5c6e626c2fef46393ec4ebab@changeid \
    --to=johannes@sipsolutions.net \
    --cc=backports@vger.kernel.org \
    --cc=johannes.berg@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.