[packages/rpm-build-tools] Fix only files that get installed

arekm arekm at pld-linux.org
Mon Dec 23 00:16:38 CET 2019


commit b7387090842641f772832af76b96b0045a5b7caa
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Mon Dec 23 00:14:56 2019 +0100

    Fix only files that get installed
    
    How to use:
    builder -bi kernel
    cd ~/rpm/BUILD/kernel*/linux-*
    check-shebang.py --buildroot=/home/users/arekm/tmp/kernel-5.3.0-root-arekm/ $(pwd)

 check-shebang.py | 40 ++++++++++++++++++++++++++++++++++------
 1 file changed, 34 insertions(+), 6 deletions(-)
---
diff --git a/check-shebang.py b/check-shebang.py
index 9d0ad86..75c37d7 100755
--- a/check-shebang.py
+++ b/check-shebang.py
@@ -1,19 +1,38 @@
 #!/usr/bin/python3
 
+# thisscript.py --root=~/tmp/somepackage ~/rpm/BUILD/somepackage/
+
+import argparse
 import io
 import os
 import re
 import sys
 
+parser = argparse.ArgumentParser()
+parser.add_argument('sourcedir', help='RPM_SOURCE_DIR directory')
+parser.add_argument("--buildroot", help="RPM_BUILD_ROOT directory")
+args = parser.parse_args()
+
 rep = {
     'python2': [],
     'python3': [],
     'perl': [],
 }
 
-skip_files = [".h", ".c", ".cc", ".gif", ".png", ".jpg"]
+skip_files = [".h", ".c", ".cc", ".gif", ".png", ".jpg", ".ko", ".gz", ".o"]
+
+if args.buildroot:
+    print("%s: Caching `%s' files..." % (sys.argv[0], args.buildroot))
+    rpm_build_root_files = []
+    for root, dirs, files in os.walk(args.buildroot):
+        for name in files:
+            fname, fext = os.path.splitext(name)
+            if fext in skip_files:
+                continue
+            rpm_build_root_files.append(fname)
+    print("%s: Caching done." % (sys.argv[0]))
 
-for root, dirs, files in os.walk(sys.argv[1]):
+for root, dirs, files in os.walk(args.sourcedir):
     for name in files:
         fname, fext = os.path.splitext(name)
         if fext in skip_files:
@@ -38,11 +57,20 @@ for root, dirs, files in os.walk(sys.argv[1]):
                 rep['perl'].append(fpath)
 
 def gf(files):
-    files.sort()
-    for i in range(0, len(files) - 1):
-        print("\t%s \\\n" % files[i], end='')
-    print("\t%s\n" % files[len(files) - 1])
+    newfiles = []
+    for f in files:
+        if not rpm_build_root_files or os.path.basename(f) in rpm_build_root_files:
+            newfiles.append(f)
+    newfiles.sort()
+    for i in range(0, len(newfiles) - 1):
+        print("\t%s \\\n" % newfiles[i], end='')
+    print("\t%s\n" % newfiles[len(newfiles) - 1])
 
+print("\n# Copy from here:", file=sys.stderr)
+print("# %s " % sys.argv[0], end='')
+if args.buildroot:
+    print("--root=%s " % args.buildroot, end='')
+print("%s\n" % args.sourcedir)
 
 if rep['python2']:
     print("sed -i -e '1s,#!/usr/bin/env python2,%{__python},' -e '1s,#!/usr/bin/env python,%{__python},' -e '1s,#!/usr/bin/python,%{__python},' \\")
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/rpm-build-tools.git/commitdiff/b7387090842641f772832af76b96b0045a5b7caa



More information about the pld-cvs-commit mailing list