/build/win32/mozilla-dos2unix.py
http://github.com/zpao/v8monkey · Python · 73 lines · 53 code · 18 blank · 2 comment · 14 complexity · b68af67a903bbdb47b4eff22c1e3d871 MD5 · raw file
- #!/usr/bin/python
- import sys
- if not sys.platform == "win32":
- raise Exception("This script was only meant for Windows.")
- import os
- def dos2unix(path):
- print "dos2unix: %s" % path
- inf = open(path, "r")
- data = inf.read()
- inf.close()
- outf = open(path, "wb")
- outf.write(data)
- outf.close()
- adminfiles = [
- "Root",
- "Repository",
- "Entries",
- "Entries.Log",
- "Entries.Static",
- "Tag",
- "Notify",
- "Template"
- ]
- def walkdirectory(path):
- if not os.path.exists(os.path.join(path, "CVS")):
- return
- print "Directory: %s" % path
- for f in adminfiles:
- cvsf = os.path.join(path, "CVS", f)
- if os.path.exists(cvsf):
- dos2unix(cvsf)
- entries = open(os.path.join(path, "CVS", "Entries"), "r")
- for entry in entries:
- if entry == "D\n":
- continue
-
- (type, filename, rev, date, flags, extra) = entry.split('/')
- if type == "D" or flags == "-kb" or rev[0] == "-":
- continue
- dos2unix(os.path.join(path, filename))
- # Now walk subdirectories
- for entry in os.listdir(path):
- subdir = os.path.join(path, entry)
- if os.path.isdir(subdir):
- walkdirectory(subdir)
- topsrcdir = os.sep.join(os.path.abspath(__file__).split(os.sep)[:-3])
- print """This command will convert the source tree at
- %s
- to an MSYS-compatible (unix mode) source tree. You can run this
- command multiple times safely. Are you sure you want to continue (Y/N)? """ % topsrcdir,
- sys.stdout.flush()
- print
- ask = raw_input()
- if len(ask) == 0 or (ask[0] != "y" and ask[0] != "Y"):
- raise Exception("User aborted action.")
- walkdirectory(topsrcdir)