aboutsummaryrefslogtreecommitdiff
path: root/contrib/header-tools/replace-header
blob: 854640d9302855aadc880b595d7ad6bf3818fc55 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#! /usr/bin/python3
import os.path
import sys
import shlex
import re

from headerutils import *


files = list()
replace = list()
find = ""
usage = False

for x in sys.argv[1:]:
  if x[0:2] == "-h":
    usage = True
  elif x[0:2] == "-f" and find == "":
    find = x[2:]
  elif x[0:2] == "-r":
    replace.append (x[2:])
  elif x[0:1] == "-":
    print ("Error: unrecognized option " + x)
    usage = True
  else:
    files.append (x)

if find == "":
  usage = True

if usage:
  print ("replace-header -fheader -rheader [-rheader] file1 [filen.]")
  sys.exit(0)

string = ""
for x in replace:
  string = string + " '"+x+"'"
print ("Replacing '"+find+"'  with"+string)

for x in files:
  src = readwholefile (x)
  src = find_replace_include (find, replace, src)
  if (len(src) > 0):
    print (x + ": Changed")
    out = open(x, "w")
    for line in src:
      out.write (line);
    out.close ()
  else:
    print (x)