diff --git a/Automation/gen_csproj.py b/Automation/gen_csproj.py index bda910b..fecdc0b 100755 --- a/Automation/gen_csproj.py +++ b/Automation/gen_csproj.py @@ -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) diff --git a/GamecraftModdingAPI/GamecraftModdingAPI.csproj b/GamecraftModdingAPI/GamecraftModdingAPI.csproj index 7be5a6b..100a7c9 100644 --- a/GamecraftModdingAPI/GamecraftModdingAPI.csproj +++ b/GamecraftModdingAPI/GamecraftModdingAPI.csproj @@ -16,24 +16,23 @@ <ItemGroup> <PackageReference Include="Lib.Harmony" Version="1.2.0.1" /> </ItemGroup> + <ItemGroup> + <Reference Include="Microsoft.CSharp" /> + </ItemGroup> + + + <!--Start Dependencies--> + <ItemGroup> <Reference Include="IllusionInjector"> <HintPath>..\ref\Gamecraft_Data\Managed\IllusionInjector.dll</HintPath> <HintPath>..\..\ref\Gamecraft_Data\Managed\IllusionInjector.dll</HintPath> </Reference> - <Reference Include="IllusionInjector.pdb"> - <HintPath>..\ref\Gamecraft_Data\Managed\IllusionInjector.pdb</HintPath> - <HintPath>..\..\ref\Gamecraft_Data\Managed\IllusionInjector.pdb</HintPath> - </Reference> <Reference Include="IllusionPlugin"> <HintPath>..\ref\Gamecraft_Data\Managed\IllusionPlugin.dll</HintPath> <HintPath>..\..\ref\Gamecraft_Data\Managed\IllusionPlugin.dll</HintPath> </Reference> - <Reference Include="IllusionPlugin.pdb"> - <HintPath>..\ref\Gamecraft_Data\Managed\IllusionPlugin.pdb</HintPath> - <HintPath>..\..\ref\Gamecraft_Data\Managed\IllusionPlugin.pdb</HintPath> - </Reference> <Reference Include="JWT"> <HintPath>..\ref\Gamecraft_Data\Managed\JWT.dll</HintPath> <HintPath>..\..\ref\Gamecraft_Data\Managed\JWT.dll</HintPath> @@ -806,7 +805,7 @@ <HintPath>..\ref\Gamecraft_Data\Managed\VisualProfiler.dll</HintPath> <HintPath>..\..\ref\Gamecraft_Data\Managed\VisualProfiler.dll</HintPath> </Reference> - + </ItemGroup> <!--End Dependencies--> </Project>