You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

109 lines
5.3 KiB

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Project DefaultTargets="Assemble" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  3. <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
  4. <PropertyGroup>
  5. <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
  6. <Platform Condition=" '$(Platform)' == '' ">x64-Net4</Platform>
  7. <ProjectGuid>{880A3560-82CD-4836-996B-11BEFE6B44DB}</ProjectGuid>
  8. <OutputType>Library</OutputType>
  9. <RootNamespace>BSIPA_Meta</RootNamespace>
  10. <AssemblyName>Meta Project</AssemblyName>
  11. <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
  12. <FileAlignment>512</FileAlignment>
  13. <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
  14. <Deterministic>true</Deterministic>
  15. <OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
  16. <TargetFrameworkProfile />
  17. </PropertyGroup>
  18. <PropertyGroup Condition=" '$(Platform)' == 'x86-Net4' Or '$(Platform)' == 'x86-Net3' ">
  19. <ProxyPlatform>Win32</ProxyPlatform>
  20. </PropertyGroup>
  21. <PropertyGroup Condition=" '$(Platform)' == 'x64-Net4' Or '$(Platform)' == 'x64-Net3' ">
  22. <ProxyPlatform>x64</ProxyPlatform>
  23. </PropertyGroup>
  24. <PropertyGroup Condition=" '$(Platform)' == 'x86-Net4' Or '$(Platform)' == 'x64-Net4' ">
  25. <NetPlatform>Net4</NetPlatform>
  26. </PropertyGroup>
  27. <PropertyGroup Condition=" '$(Platform)' == 'x86-Net3' Or '$(Platform)' == 'x64-Net3' ">
  28. <NetPlatform>Net3</NetPlatform>
  29. </PropertyGroup>
  30. <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
  31. <PlatformTarget>AnyCPU</PlatformTarget>
  32. <DebugSymbols>true</DebugSymbols>
  33. <DebugType>full</DebugType>
  34. <Optimize>false</Optimize>
  35. <DefineConstants>DEBUG;TRACE</DefineConstants>
  36. <ErrorReport>prompt</ErrorReport>
  37. <WarningLevel>4</WarningLevel>
  38. <NoVerboseConfig>Debug</NoVerboseConfig>
  39. <OtherConfig>Debug</OtherConfig>
  40. <ProxyConfig>Release</ProxyConfig>
  41. </PropertyGroup>
  42. <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
  43. <PlatformTarget>AnyCPU</PlatformTarget>
  44. <DebugType>pdbonly</DebugType>
  45. <Optimize>true</Optimize>
  46. <DefineConstants>TRACE</DefineConstants>
  47. <ErrorReport>prompt</ErrorReport>
  48. <WarningLevel>4</WarningLevel>
  49. <NoVerboseConfig>Release</NoVerboseConfig>
  50. <OtherConfig>Release</OtherConfig>
  51. <ProxyConfig>Release</ProxyConfig>
  52. </PropertyGroup>
  53. <PropertyGroup Condition=" '$(Configuration)' == 'Verbose' ">
  54. <PlatformTarget>AnyCPU</PlatformTarget>
  55. <DebugSymbols>true</DebugSymbols>
  56. <DebugType>full</DebugType>
  57. <Optimize>false</Optimize>
  58. <DefineConstants>DEBUG;TRACE</DefineConstants>
  59. <ErrorReport>prompt</ErrorReport>
  60. <WarningLevel>4</WarningLevel>
  61. <NoVerboseConfig>Debug</NoVerboseConfig>
  62. <OtherConfig>Verbose</OtherConfig>
  63. <ProxyConfig>Verbose_Release</ProxyConfig>
  64. </PropertyGroup>
  65. <PropertyGroup Condition=" '$(Configuration)' == 'Verbose_Release' ">
  66. <PlatformTarget>AnyCPU</PlatformTarget>
  67. <DebugType>pdbonly</DebugType>
  68. <Optimize>true</Optimize>
  69. <DefineConstants>TRACE</DefineConstants>
  70. <ErrorReport>prompt</ErrorReport>
  71. <WarningLevel>4</WarningLevel>
  72. <NoVerboseConfig>Release</NoVerboseConfig>
  73. <OtherConfig>Verbose_Release</OtherConfig>
  74. <ProxyConfig>Verbose_Release</ProxyConfig>
  75. </PropertyGroup>
  76. <Target Name="Restore" />
  77. <Target Name="Clean">
  78. <ItemGroup>
  79. <Files Include="$(OutputPath)**\*" />
  80. </ItemGroup>
  81. <Delete Files="@(Files)" />
  82. </Target>
  83. <Target Name="Rebuild">
  84. <CallTarget Targets="Assemble" />
  85. </Target>
  86. <Target Name="Build">
  87. <CallTarget Targets="Assemble" />
  88. </Target>
  89. <Target Name="Assemble" Returns="$(OutputPath)">
  90. <Message Text="Packing..." Importance="High" />
  91. <Message Text="Results will be put in $(OutputPath)" Importance="High" />
  92. <ItemGroup>
  93. <InputDlls Include="$(SolutionDir)IPA.Injector\bin\$(NetPlatform)\$(NoVerboseConfig)\**\*" Exclude="$(SolutionDir)IPA.Injector\bin\$(NetPlatform)\$(NoVerboseConfig)\Libraries\**\*" />
  94. <InputDlls Include="$(SolutionDir)Doorstop\Proxy\bin\$(ProxyPlatform)\$(ProxyConfig)\**\*.dll" />
  95. <InputDlls Include="$(SolutionDir)Doorstop\Proxy\bin\$(ProxyPlatform)\$(ProxyConfig)\**\*.pdb" />
  96. <InputIPAFiles Include="$(SolutionDir)IPA\bin\$(OtherConfig)\**\*" />
  97. </ItemGroup>
  98. <Copy SourceFiles="@(InputDlls)" DestinationFolder="$(OutputPath)IPA\%(RecursiveDir)" />
  99. <Move SourceFiles="$(OutputPath)IPA\proxy.dll" DestinationFiles="$(OutputPath)IPA\winhttp.dll" />
  100. <Move Condition="Exists('$(OutputPath)IPA\proxy.pdb')" SourceFiles="$(OutputPath)IPA\proxy.pdb" DestinationFiles="$(OutputPath)IPA\winhttp.pdb" />
  101. <Copy SourceFiles="@(InputIPAFiles)" DestinationFolder="$(OutputPath)%(RecursiveDir)" />
  102. <ItemGroup>
  103. <BadFiles Include="$(OutputPath)*.dll" />
  104. <BadFiles Include="$(OutputPath)*.pdb" Condition="'$(Configuration)'=='Release' Or '$(Configuration)'=='Verbose_Release'" />
  105. <BadFiles Include="$(OutputPath)IPA\*.pdb" Condition="'$(Configuration)'=='Release' Or '$(Configuration)'=='Verbose_Release'" />
  106. </ItemGroup>
  107. <Delete Files="@(BadFiles)" />
  108. <RemoveDir Directories="$(OutputPath)Libraries\" />
  109. </Target>
  110. </Project>