Browse Source

Fixed up some build order stuff

Started work on repository included dependencies
pull/46/head
DaNike 5 years ago
parent
commit
a42da09b24
6 changed files with 104 additions and 8 deletions
  1. +1
    -0
      .gitignore
  2. +7
    -1
      IPA.Injector/IPA.Injector.csproj
  3. +2
    -2
      IPA.Loader/IPA.Loader.csproj
  4. +22
    -5
      IPA/IPA.csproj
  5. +66
    -0
      Refs/grabo.py
  6. +6
    -0
      Refs/refs.txt

+ 1
- 0
.gitignore View File

@ -251,3 +251,4 @@ paket-files/
.idea/
*.sln.iml
/MigrationBackup/d2a2abe6/IPA.Injector
/bsinstalldir.txt

+ 7
- 1
IPA.Injector/IPA.Injector.csproj View File

@ -47,7 +47,7 @@
<Reference Include="System.Xml" />
<Reference Include="UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\..\..\..\Game Library\Steam\steamapps\common\Beat Saber\Beat Saber_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
<HintPath>..\..\..\..\..\..\GameLibrary\Steam\steamapps\common\Beat Saber\Beat Saber_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
<Private>False</Private>
</Reference>
</ItemGroup>
@ -67,6 +67,12 @@
<Project>{5ad344f0-01a0-4ca8-92e5-9d095737744d}</Project>
<Name>IPA.Loader</Name>
</ProjectReference>
<ProjectReference Include="..\MSBuildTasks\MSBuildTasks.csproj">
<Project>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
<Private>False</Private>
<Name>MSBuildTasks</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Content Include="..\Libs\0Harmony.dll">


+ 2
- 2
IPA.Loader/IPA.Loader.csproj View File

@ -47,11 +47,11 @@
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
<Reference Include="UnityEngine.CoreModule">
<HintPath>..\..\..\..\..\..\Game Library\Steam\steamapps\common\Beat Saber\Beat Saber_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
<HintPath>..\..\..\..\..\..\GameLibrary\Steam\steamapps\common\Beat Saber\Beat Saber_Data\Managed\UnityEngine.CoreModule.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="UnityEngine.UnityWebRequestModule">
<HintPath>..\..\..\..\..\..\Game Library\Steam\steamapps\common\Beat Saber\Beat Saber_Data\Managed\UnityEngine.UnityWebRequestModule.dll</HintPath>
<HintPath>..\..\..\..\..\..\GameLibrary\Steam\steamapps\common\Beat Saber\Beat Saber_Data\Managed\UnityEngine.UnityWebRequestModule.dll</HintPath>
<Private>False</Private>
</Reference>
</ItemGroup>


+ 22
- 5
IPA/IPA.csproj View File

@ -30,6 +30,7 @@
<BootstrapperEnabled>true</BootstrapperEnabled>
<Deterministic>true</Deterministic>
<PathMap>$(SolutionDir)=C:\</PathMap>
<ProxyConfig>$(Configuration)</ProxyConfig>
<OtherConfig>
</OtherConfig>
</PropertyGroup>
@ -44,6 +45,7 @@
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
<OtherConfig>Debug</OtherConfig>
<ProxyConfig>Release</ProxyConfig>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
@ -75,6 +77,7 @@
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<OtherConfig>Debug</OtherConfig>
<ProxyConfig>Verbose_Release</ProxyConfig>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Verbose_Release|AnyCPU'">
<OutputPath>bin\Verbose_Release\</OutputPath>
@ -89,6 +92,20 @@
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Doorstop\Proxy\Proxy.vcxproj">
<Project>{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
<Private>False</Private>
<Name>Doorstop</Name>
</ProjectReference>
<ProjectReference Include="..\IPA.Injector\IPA.Injector.csproj">
<Project>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
<Private>False</Private>
<Name>IPA.Injector</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Compile Include="Arguments.cs" />
<Compile Include="PatchContext.cs" />
@ -138,15 +155,15 @@
<Message Text="Packing..." Importance="normal" />
<ItemGroup>
<Dlls Include="$(SolutionDir)IPA.Injector\bin\$(OtherConfig)\**\*" />
<Dlls Include="$(SolutionDir)Doorstop\Proxy\bin\x64\$(Configuration)\**\*.dll" />
<Dlls Include="$(SolutionDir)Doorstop\Proxy\bin\x64\$(Configuration)\**\*.pdb"/>
<Dlls Include="$(SolutionDir)Doorstop\Proxy\bin\x64\$(ProxyConfig)\**\*.dll" />
<Dlls Include="$(SolutionDir)Doorstop\Proxy\bin\x64\$(ProxyConfig)\**\*.pdb" />
</ItemGroup>
<Copy SourceFiles="@(Dlls)" DestinationFolder="$(OutputPath)IPA\%(RecursiveDir)" />
<Move SourceFiles="$(OutputPath)IPA\proxy.dll" DestinationFiles="$(OutputPath)IPA\winhttp.dll" />
<Move Condition="Exists('$(OutputPath)IPA\proxy.pdb')" SourceFiles="$(OutputPath)IPA\proxy.pdb" DestinationFiles="$(OutputPath)IPA\winhttp.pdb" />
<ItemGroup>
<BadFiles Include="$(OutputPath)Mono.Cecil.*" />
<BadFiles Include="$(OutputPath)**\*.pdb" Condition="'$(Configuration)'=='Release' Or '$(Configuration)'=='Verbose_Release'" />
<ItemGroup>
<BadFiles Include="$(OutputPath)*.dll" />
<BadFiles Include="$(OutputPath)**\*.pdb" Condition="'$(Configuration)'=='Release' Or '$(Configuration)'=='Verbose_Release'" />
<!-- Kill the Mono.Cecil stuff that get put in the root, don't want to dupe it -->
</ItemGroup>
<Delete Files="@(BadFiles)" />


+ 66
- 0
Refs/grabo.py View File

@ -0,0 +1,66 @@
import os
import shutil
def toFileList(text):
lines = text.splitlines()
files = []
stack = []
def push(val):
pre = ''
if len(stack) > 0:
pre = stack[-1]
stack.append(pre + val)
def pop():
return stack.pop()
def replace(val):
val2 = pop()
push(val)
return val2
for line in lines:
spl = line.split('"');
spath = spl[-1]
semis = len(spl[:-1])
if spath.startswith('::'):
spl = spath.split(' ')
cmd = spl[0][2:]
if cmd == 'from': # basically just import
content = ''
with open(' '.join(spl[1:]),'r') as f:
content = f.read()
spath = content
elif cmd == 'prompt':
spath = input(' '.join(spl[1:]))
else:
spath = ''
print("No such command", cmd)
if semis > (len(stack)-1):
push(spath)
elif semis == (len(stack)-1):
files.append(replace(spath))
elif semis < (len(stack)-1):
files.append(pop())
while semis < (len(stack)):
pop()
push(spath)
files.append(pop())
return files
if __name__ == '__main__':
file = ''
with open("refs.txt","r") as f:
file = f.read()
refs = toFileList(file)
tgtDir = "target/"
shutil.rmtree(tgtDir, ignore_errors=True)
if not os.path.exists(tgtDir):
os.makedirs(tgtDir)
for filename in refs:
if (os.path.isfile(filename)):
print("Copying",filename)
shutil.copy(filename, tgtDir)

+ 6
- 0
Refs/refs.txt View File

@ -0,0 +1,6 @@
::from ../bsinstalldir.txt
"Beat Saber_Data/
""Managed/
"""UnityEngine.
""""UnityWebRequestModule.dll
""""CoreModule.dll

Loading…
Cancel
Save