Skip to content

Commit 34be324

Browse files
committed
Build fix from Hong
1 parent 1114315 commit 34be324

File tree

1 file changed

+39
-46
lines changed

1 file changed

+39
-46
lines changed

Build/Common.Build.settings

Lines changed: 39 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -9,42 +9,58 @@
99
</MSBuildAllProjects>
1010
</PropertyGroup>
1111

12+
<!-- for root paths -->
1213
<PropertyGroup>
1314
<BuildRoot>$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), build.root))</BuildRoot>
1415
<TargetsPath>$(BuildRoot)\Build</TargetsPath>
1516
<OsVersion>$(registry:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion@CurrentVersion)</OsVersion>
17+
<!--If Dev10 and Dev11 are both installed, the default is to build Dev11. This can be overridden by setting the DevToolsVersion variable in powershell-->
18+
<DevToolsVersion Condition="'$(DevToolsVersion)' == '' And '$(VS110COMNTOOLS)' != ''">110</DevToolsVersion>
19+
<DevToolsVersion Condition="'$(DevToolsVersion)' == '' And '$(VS100COMNTOOLS)' != ''">100</DevToolsVersion>
1620
</PropertyGroup>
1721

18-
<Target Name="CopyToOutputDirectoryAlwaysError"
19-
Condition="'@(Content)'!='' or '@(None)'!=''">
20-
<Error Condition="'%(Content.CopyToOutputDirectory)'=='Always'" Text="CopyToOutputDirectory is not allowed to be 'Always'. Use 'PreserveNewest' instead." File="$(MSBuildProjectFile)" />
21-
<Error Condition="'%(None.CopyToOutputDirectory)'=='Always'" Text="CopyToOutputDirectory is not allowed to be 'Always'. Use 'PreserveNewest' instead." File="$(MSBuildProjectFile)" />
22-
</Target>
2322

23+
<!-- paths can be overriden by configuration -->
24+
<PropertyGroup>
25+
<OutputPath>$(BuildRoot)\Binaries\$(Platform)\$(Configuration)\</OutputPath>
26+
<OutDir>$(OutputPath)</OutDir>
27+
<MSBuildCommunityTasksPath Condition="'$(MSBuildCommunityTasksPath)'==''">$(BuildRoot)\Build\MSBuild.Community.Tasks</MSBuildCommunityTasksPath>
28+
<WixToolPath Condition="'$(WixToolPath)'==''">$(BuildRoot)\Build\Wix\3.6\</WixToolPath>
29+
<WixExtDir Condition="'$(WixExtDir)'==''">$(WixToolPath)</WixExtDir>
30+
<TestRoot>$(BuildRoot)\Release\Tests</TestRoot>
31+
<CasablancaSrcDir>$(BuildRoot)\Release\src</CasablancaSrcDir>
32+
<CasablancaIncludeDir>$(BuildRoot)\Release\include</CasablancaIncludeDir>
33+
<CollateralsDir>$(BuildRoot)\Release\Collateral</CollateralsDir>
34+
</PropertyGroup>
35+
36+
<!-- try locating configuration file -->
2437
<Import Condition="Exists('$(BuildRoot)\..\Build\environment.casablanca.settings')" Project="$(BuildRoot)\..\Build\environment.casablanca.settings"/>
38+
39+
<!-- paths will not be overriden -->
40+
<PropertyGroup>
41+
<OutDir Condition="'$(OutDir)' != '' and !HasTrailingSlash('$(OutDir)')">$(OutDir)\</OutDir>
42+
</PropertyGroup>
43+
44+
<PropertyGroup Condition="'$(DevToolsVersion)' == '100'"> <PlatformToolset>v100</PlatformToolset>
45+
<DevEnvDir>$(VS100COMNTOOLS)..\IDE</DevEnvDir>
46+
</PropertyGroup>
47+
48+
<PropertyGroup Condition="'$(DevToolsVersion)' == '110'">
49+
<DevEnvDir>$(VS110COMNTOOLS)..\IDE</DevEnvDir>
50+
</PropertyGroup>
51+
2552
<PropertyGroup>
2653
<BinaryDependencies>$(TargetsPath)\BinaryDependencies</BinaryDependencies>
2754
<Configuration Condition="'$(Configuration)'==''">Debug</Configuration>
2855
<Platform Condition="'$(Platform)'==''">Win32</Platform>
2956
<ErrorReport>prompt</ErrorReport>
3057
<WarningLevel>4</WarningLevel>
3158

32-
<MSBuildCommunityTasksPath Condition="'$(MSBuildCommunityTasksPath)'==''">$(BuildRoot)\Build\MSBuild.Community.Tasks</MSBuildCommunityTasksPath>
33-
<WixToolPath Condition="'$(WixToolPath)'==''">$(BuildRoot)\Build\Wix\3.6\</WixToolPath>
34-
<WixExtDir Condition="'$(WixExtDir)'==''">$(WixToolPath)</WixExtDir>
3559
<WixTargetsPath>$(WixToolPath)Wix.targets</WixTargetsPath>
3660
<WixTasksPath >$(WixToolPath)WixTasks.dll</WixTasksPath>
3761
<LuxTargetsPath>$(WixToolPath)Lux.targets</LuxTargetsPath>
3862
<LuxTasksPath >$(WixToolPath)LuxTasks.dll</LuxTasksPath>
3963

40-
<!--If Dev10 and Dev11 are both installed, the default is to build Dev11. This can be overridden by setting the DevToolsVersion variable in powershell-->
41-
<DevToolsVersion Condition="'$(DevToolsVersion)' == '' And '$(VS110COMNTOOLS)' != ''">110</DevToolsVersion>
42-
<DevToolsVersion Condition="'$(DevToolsVersion)' == '' And '$(VS100COMNTOOLS)' != ''">100</DevToolsVersion>
43-
44-
<TestRoot>$(BuildRoot)\Release\Tests</TestRoot>
45-
<CasablancaSrcDir>$(BuildRoot)\Release\src</CasablancaSrcDir>
46-
<CasablancaIncludeDir>$(BuildRoot)\Release\include</CasablancaIncludeDir>
47-
<CollateralsDir>$(BuildRoot)\Release\Collateral</CollateralsDir>
4864

4965
<!--For C#:-->
5066
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
@@ -63,20 +79,7 @@
6379
<WholeProgramOptimization Condition="'$(WholeProgramOptimization)'=='' And '$(Configuration)'!='Debug'">true</WholeProgramOptimization>
6480
</PropertyGroup>
6581

66-
<PropertyGroup Condition="'$(DevToolsVersion)' == '100'"> <PlatformToolset>v100</PlatformToolset>
67-
<DevEnvDir>$(VS100COMNTOOLS)..\IDE</DevEnvDir>
68-
</PropertyGroup>
69-
70-
<PropertyGroup Condition="'$(DevToolsVersion)' == '110'">
71-
<DevEnvDir>$(VS110COMNTOOLS)..\IDE</DevEnvDir>
72-
</PropertyGroup>
7382

74-
<!--For Incubation only:-->
75-
<PropertyGroup>
76-
<ActorsIncludeDir>$(BuildRoot)\Incubation\Actors\include</ActorsIncludeDir>
77-
<ActorsInternalIncludeDir>$(BuildRoot)\Incubation\Actors\internalinc</ActorsInternalIncludeDir>
78-
</PropertyGroup>
79-
8083
<ItemDefinitionGroup>
8184
<ClCompile>
8285
<WarningLevel>Level4</WarningLevel>
@@ -146,7 +149,6 @@
146149
<DebugSymbols>true</DebugSymbols>
147150
<DebugType>full</DebugType>
148151
<Optimize>false</Optimize>
149-
<OutputPath>$(BuildRoot)\Binaries\Win32\Debug\</OutputPath>
150152
<DefineConstants>DEBUG;TRACE</DefineConstants>
151153
<InstallerPlatform>x86</InstallerPlatform>
152154
</PropertyGroup>
@@ -155,52 +157,43 @@
155157
<DebugSymbols>true</DebugSymbols>
156158
<DebugType>full</DebugType>
157159
<Optimize>false</Optimize>
158-
<OutputPath>$(BuildRoot)\Binaries\x64\Debug\</OutputPath>
159160
<DefineConstants>DEBUG;TRACE;X64</DefineConstants>
160161
</PropertyGroup>
161162

162163
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|Win32' ">
163164
<DebugType>pdbonly</DebugType>
164165
<Optimize>true</Optimize>
165-
<OutputPath>$(BuildRoot)\Binaries\Win32\Release\</OutputPath>
166166
<DefineConstants>TRACE</DefineConstants>
167167
<InstallerPlatform>x86</InstallerPlatform>
168168
</PropertyGroup>
169169

170170
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
171171
<DebugType>pdbonly</DebugType>
172172
<Optimize>true</Optimize>
173-
<OutputPath>$(BuildRoot)\Binaries\x64\Release\</OutputPath>
174173
<DefineConstants>TRACE;X64</DefineConstants>
175174
</PropertyGroup>
176175

177176
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|ARM' ">
178177
<DebugSymbols>true</DebugSymbols>
179178
<DebugType>full</DebugType>
180179
<Optimize>false</Optimize>
181-
<OutputPath>$(BuildRoot)\Binaries\ARM\Debug\</OutputPath>
182180
<DefineConstants>DEBUG;TRACE;ARM</DefineConstants>
183181
</PropertyGroup>
184182

185183
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|ARM' ">
186184
<DebugType>pdbonly</DebugType>
187185
<Optimize>true</Optimize>
188-
<OutputPath>$(BuildRoot)\Binaries\ARM\Release\</OutputPath>
189186
<DefineConstants>TRACE;ARM</DefineConstants>
190187
</PropertyGroup>
191188

192-
<PropertyGroup>
193-
<OutDir Condition="'$(OutDir)' == ''">$(OutputPath)</OutDir>
194-
</PropertyGroup>
195-
196-
<PropertyGroup>
197-
<OutDir Condition="'$(OutDir)' != '' and !HasTrailingSlash('$(OutDir)')">$(OutDir)\</OutDir>
198-
</PropertyGroup>
199-
200-
<ItemGroup>
201-
<CodeAnalysisDictionary Include="$(BuildRoot)\Build\CustomDictionary.xml" />
202-
</ItemGroup>
203189

190+
191+
<!--end paths configuration -->
192+
<Target Name="CopyToOutputDirectoryAlwaysError"
193+
Condition="'@(Content)'!='' or '@(None)'!=''">
194+
<Error Condition="'%(Content.CopyToOutputDirectory)'=='Always'" Text="CopyToOutputDirectory is not allowed to be 'Always'. Use 'PreserveNewest' instead." File="$(MSBuildProjectFile)" />
195+
<Error Condition="'%(None.CopyToOutputDirectory)'=='Always'" Text="CopyToOutputDirectory is not allowed to be 'Always'. Use 'PreserveNewest' instead." File="$(MSBuildProjectFile)" />
196+
</Target>
204197
<!-- BEGIN: Workaround for MSBuild.exe bug that will be fixed in v4.5 -->
205198
<!-- Bug Symptom: -->
206199
<!-- Multi-proc build returns "CSC : fatal error CS0009: Metadata file '(FilePath)' could not be opened == 'File is corrupt.' -->

0 commit comments

Comments
 (0)