import os import os.path import sys keyword = "/include/" def getFiles(path): files = os.listdir(path) return list(filter(lambda x: x[0] != '.', files)) def gen_all_file_strings(path, files, headers, output): for file in files: components = file.split("_") package = components[0] + ":" + components[2].replace(".list", "") f = open(path + file) for line in f: if line.strip()[-1] == "/": continue filepath = line[line.find("/"):] output.write(package + ":" + filepath) if filepath.startswith(keyword): headers.write(package + ":" + filepath[len(keyword):]) f.close() def main(path): try: os.mkdir("scripts/list_files") except FileExistsError: print("Path already exists, continuing...") try: headers = open("scripts/list_files/VCPKGHeadersDatabase.txt", mode='w') output = open("scripts/list_files/VCPKGDatabase.txt", mode='w') gen_all_file_strings(path, getFiles(path), headers, output) headers.close() output.close() except e: print("Failed to generate file lists") if __name__ == "__main__": main(sys.argv[1])