cc_options = line[len(cc_cmd)+2:].split()\r
else:\r
cc_options = line[len(cc_cmd):].split()\r
- SourceFileAbsPathMap = {os.path.basename(item):item for item in cc_options if not item.startswith("/") and os.path.exists(item)}\r
+ for item in cc_options:\r
+ if not item.startswith("/"):\r
+ if item.endswith(".txt") and item.startswith("@"):\r
+ with open(item[1:], "r") as file:\r
+ source_files = file.readlines()[0].split()\r
+ SourceFileAbsPathMap = {os.path.basename(file): file for file in source_files if\r
+ os.path.exists(file)}\r
+ else:\r
+ if os.path.exists(item):\r
+ SourceFileAbsPathMap.update({os.path.basename(item): item.strip()})\r
+ # SourceFileAbsPathMap = {os.path.basename(item):item for item in cc_options if not item.startswith("/") and os.path.exists(item)}\r
if line in SourceFileAbsPathMap:\r
current_source = line\r
if current_source not in ModuleDepDict:\r