File: fixup-cov-paths.py

package info (click to toggle)
glib2.0 2.78.4-6
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 58,048 kB
  • sloc: ansic: 495,608; xml: 17,404; python: 9,572; sh: 1,260; perl: 1,144; cpp: 487; makefile: 225
file content (26 lines) | stat: -rw-r--r-- 755 bytes parent folder | download | duplicates (7)
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
import sys
import os
import io
import re


def main(argv):
    # Fix paths in lcov files generated on a Windows host so they match our
    # current source layout.
    paths = argv[1:]

    for path in paths:
        print("cov-fixup:", path)
        text = io.open(path, "r", encoding="utf-8").read()
        text = text.replace("\\\\", "/")
        old_root = re.search(":(.*?)/glib/.*?$", text, re.MULTILINE).group(1)
        new_root = os.path.dirname(os.getcwd())
        if old_root != new_root:
            print("replacing %r with %r" % (old_root, new_root))
        text = text.replace(old_root, new_root)
        with io.open(path, "w", encoding="utf-8") as h:
            h.write(text)


if __name__ == "__main__":
    sys.exit(main(sys.argv))