|
|
@@ -10,7 +10,7 @@ def getAssemblyReferences(path): |
|
|
|
asmDir = Path(path) |
|
|
|
result = list() |
|
|
|
for child in asmDir.iterdir(): |
|
|
|
if child.is_file() and re.search(DLL_EXCLUSIONS_REGEX, str(child), re.I) is None: |
|
|
|
if child.is_file() and re.search(DLL_EXCLUSIONS_REGEX, str(child), re.I) is None and str(child).lower().endswith(".dll"): |
|
|
|
result.append(str(child).replace("\\", "/")) |
|
|
|
return result |
|
|
|
|
|
|
@@ -24,8 +24,7 @@ def buildReferencesXml(path): |
|
|
|
+ " <HintPath>..\\" + asmPath.replace("/", "\\") + "</HintPath>\n" \ |
|
|
|
+ " </Reference>\n" |
|
|
|
result.append(xml) |
|
|
|
return "".join(result) |
|
|
|
#return "<!--Start Dependencies-->\n <ItemGroup>\n" + "".join(result) + " </ItemGroup>\n<!--End Dependencies-->" |
|
|
|
return "<!--Start Dependencies-->\n <ItemGroup>\n" + "".join(result) + " </ItemGroup>\n<!--End Dependencies-->" |
|
|
|
|
|
|
|
if __name__ == "__main__": |
|
|
|
parser = argparse.ArgumentParser(description="Generate GamecraftModdingAPI.csproj") |
|
|
@@ -34,22 +33,21 @@ if __name__ == "__main__": |
|
|
|
|
|
|
|
print("Building Assembly references") |
|
|
|
asmXml = buildReferencesXml("../ref/Gamecraft_Data/Managed") |
|
|
|
print(asmXml) |
|
|
|
# print(asmXml) |
|
|
|
|
|
|
|
with open("../GamecraftModdingAPI/GamecraftModdingAPI.csproj", "r") as xmlFile: |
|
|
|
print("Parsing GamecraftModdingAPI.csproj") |
|
|
|
fileStr = xmlFile.read() |
|
|
|
print(fileStr) |
|
|
|
# print(fileStr) |
|
|
|
depsStart = re.search(r"\<!--\s*Start\s+Dependencies\s*--\>", fileStr) |
|
|
|
depsEnd = re.search(r"\<!--\s*End\s+Dependencies\s*--\>", fileStr) |
|
|
|
if depsStart is None or depsEnd is None: |
|
|
|
print("Unable to find dependency XML comments, aborting!") |
|
|
|
exit(1) |
|
|
|
newFileStr = fileStr[:depsStart.end()] + "\n" + asmXml + "\n" + fileStr[depsEnd.start():] |
|
|
|
newFileStr = fileStr[:depsStart.start()] + "\n" + asmXml + "\n" + fileStr[depsEnd.end() + 1:] |
|
|
|
with open("../GamecraftModdingAPI/GamecraftModdingAPI.csproj", "w") as xmlFile: |
|
|
|
print("Writing Assembly references (not)") |
|
|
|
#xmlFile.seek(0) |
|
|
|
xmlFile.write(newFileStr) |
|
|
|
print(newFileStr) |
|
|
|
# print(newFileStr) |
|
|
|
|
|
|
|
|