Blame src/util/krb5-mark-cstyle.py
|
Packit |
fd8b60 |
from optparse import OptionParser
|
|
Packit |
fd8b60 |
import os
|
|
Packit |
fd8b60 |
import re
|
|
Packit |
fd8b60 |
import sys
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
styles = {
|
|
Packit |
fd8b60 |
"bsd":
|
|
Packit |
fd8b60 |
"/* -*- mode: c; c-file-style: \"bsd\"; indent-tabs-mode: t -*- */\n",
|
|
Packit |
fd8b60 |
"krb5":
|
|
Packit |
fd8b60 |
"/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */\n"
|
|
Packit |
fd8b60 |
}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
def dofile(fname, style):
|
|
Packit |
fd8b60 |
changed = False
|
|
Packit |
fd8b60 |
newname = fname + ".new"
|
|
Packit |
fd8b60 |
infile = open(fname)
|
|
Packit |
fd8b60 |
outfile = open(newname, "w")
|
|
Packit |
fd8b60 |
first = next(infile)
|
|
Packit |
fd8b60 |
if (first != style):
|
|
Packit |
fd8b60 |
changed = True
|
|
Packit |
fd8b60 |
outfile.write(style)
|
|
Packit |
fd8b60 |
if re.match(r"""\s*/\*\s*-\*-.*-\*-\s*\*/""", first):
|
|
Packit |
fd8b60 |
# Replace first line if it was already a local variables line.
|
|
Packit |
fd8b60 |
pass
|
|
Packit |
fd8b60 |
else:
|
|
Packit |
fd8b60 |
outfile.write(first)
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
# Simply copy remaining lines.
|
|
Packit |
fd8b60 |
for line in infile:
|
|
Packit |
fd8b60 |
outfile.write(line)
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
infile.close()
|
|
Packit |
fd8b60 |
outfile.close()
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
if changed:
|
|
Packit |
fd8b60 |
os.rename(newname, fname)
|
|
Packit |
fd8b60 |
else:
|
|
Packit |
fd8b60 |
os.remove(newname)
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
parser = OptionParser()
|
|
Packit |
fd8b60 |
parser.add_option("--cstyle", action="store", dest="style",
|
|
Packit |
fd8b60 |
choices=("bsd", "krb5"), default="krb5")
|
|
Packit |
fd8b60 |
(options, args) = parser.parse_args()
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
for fname in args:
|
|
Packit |
fd8b60 |
print(fname)
|
|
Packit |
fd8b60 |
dofile(fname, styles[options.style])
|