MCPcopy Create free account
hub / github.com/MegEngine/MegCC / MakeRelativePathsInFlagsAbsolute

Function MakeRelativePathsInFlagsAbsolute

compiler/.ycm_extra_conf.py:76–102  ·  view source on GitHub ↗
(flags, working_directory=None)

Source from the content-addressed store, hash-verified

74
75
76def MakeRelativePathsInFlagsAbsolute(flags, working_directory=None):
77 if not working_directory:
78 return list(flags)
79 new_flags = []
80 make_next_absolute = False
81 path_flags = ["-isystem", "-I", "-iquote", "--sysroot="]
82 for flag in flags:
83 new_flag = flag
84
85 if make_next_absolute:
86 make_next_absolute = False
87 if not flag.startswith("/"):
88 new_flag = os.path.join(working_directory, flag)
89
90 for path_flag in path_flags:
91 if flag == path_flag:
92 make_next_absolute = True
93 break
94
95 if flag.startswith(path_flag):
96 path = flag[len(path_flag):]
97 new_flag = path_flag + os.path.join(working_directory, path)
98 break
99
100 if new_flag:
101 new_flags.append(new_flag)
102 return new_flags
103
104
105def IsHeaderFile(filename):

Callers 1

FlagsForFileFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected