summaryrefslogtreecommitdiffstats
path: root/scripts/fixmtime.py
diff options
context:
space:
mode:
authorJeremy Katz <katzj@redhat.com>2004-06-15 19:35:56 +0000
committerJeremy Katz <katzj@redhat.com>2004-06-15 19:35:56 +0000
commit25c415dab34029d4c63f1687b7887bf3097c777f (patch)
tree48ea2a65892daf95cb1ec8817c5d9502fa873699 /scripts/fixmtime.py
parentfc5279429e5794ec699965a3175c10f6ae84dfbe (diff)
downloadanaconda-25c415dab34029d4c63f1687b7887bf3097c777f.tar.gz
anaconda-25c415dab34029d4c63f1687b7887bf3097c777f.tar.xz
anaconda-25c415dab34029d4c63f1687b7887bf3097c777f.zip
add bits from msw to set mtimes on .pyc files to 0 as that's what they are
on cramfs and this improves the startup time
Diffstat (limited to 'scripts/fixmtime.py')
-rwxr-xr-xscripts/fixmtime.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/scripts/fixmtime.py b/scripts/fixmtime.py
new file mode 100755
index 000000000..f3b046d20
--- /dev/null
+++ b/scripts/fixmtime.py
@@ -0,0 +1,43 @@
+#!/usr/bin/python
+
+"""Walks path given on the command line for .pyc and .pyo files, changing
+the mtime in the header to 0, so it will match the .py file on the cramfs"""
+
+import os
+import sys
+import getopt
+
+debug = 0
+
+def usage():
+ print 'usage: %s /path/to/walk/and/fix' %sys.argv[0]
+ sys.exit(1)
+
+def visit(arg, d, files):
+ for filen in files:
+ if not (filen.endswith('.pyc') or filen.endswith('.pyo')):
+ continue
+ path = os.sep.join((d, filen))
+ #print 'fixing mtime', path
+ f = open(path, 'r+')
+ f.seek(4)
+ f.write('\0\0\0\0')
+ f.close()
+
+if __name__ == '__main__':
+ (args, extra) = getopt.getopt(sys.argv[1:], '', "debug")
+
+ if len(extra) < 1:
+ usage()
+
+ for arg in args:
+ if arg == "--debug":
+ debug = 1
+
+ dir = extra[0]
+
+ if not os.path.isdir(dir):
+ usage()
+
+ os.path.walk(dir, visit, None)
+