summaryrefslogtreecommitdiff
path: root/tests/src/dir.common.props
diff options
context:
space:
mode:
authorMatt Mitchell <mmitche@microsoft.com>2015-02-23 16:34:11 -0800
committerMatt Mitchell <mmitche@microsoft.com>2015-02-23 16:34:52 -0800
commite0e408cf8f0a9421b1fba4e077629209a3d2d744 (patch)
tree0e75f9e97278a04c1d5455d965b3ae002f38347d /tests/src/dir.common.props
parentb2cdaa918c1b13fc08f04050907734e3822e3a4a (diff)
downloadcoreclr-e0e408cf8f0a9421b1fba4e077629209a3d2d744.tar.gz
coreclr-e0e408cf8f0a9421b1fba4e077629209a3d2d744.tar.bz2
coreclr-e0e408cf8f0a9421b1fba4e077629209a3d2d744.zip
Place binaries and intermediates in folders that include OS
Rework the output paths so that the OS may appear in them. This then follows the same form as corefx. This solves a number of problems: 1) When building unix mscorlib after the regular build, we would use the wrong intermediates for incremental. 2) When testing windows after building unix mscorlib we'd use the wrong outputs and fail. This change removes our cmake directory and moves cmake generated files into intermediates (under OS/arch paths) The reason is that the intermediates go under here when actually doing the build, and on unix based systems, we need to generate the cmake files for different builds into different directories for the purpose of preserving incremental builds. Change clean behavior Clean should simply delete the root binary. We also should not make assumptions about whether necessary directories are available when we begin to build and should create them every time if necessary. Create directories as needed.
Diffstat (limited to 'tests/src/dir.common.props')
-rw-r--r--tests/src/dir.common.props10
1 files changed, 6 insertions, 4 deletions
diff --git a/tests/src/dir.common.props b/tests/src/dir.common.props
index b302fbb322..beb6d17555 100644
--- a/tests/src/dir.common.props
+++ b/tests/src/dir.common.props
@@ -5,8 +5,10 @@
<PropertyGroup>
<__BuildArch Condition="'$(__BuildArch)' == ''">x64</__BuildArch>
<__BuildType Condition="'$(__BuildType)' == ''">Debug</__BuildType>
+ <__BuildOS Condition="'$(__BuildOS)' == ''">Windows_NT</__BuildOS>
<BuildArch>$(__BuildArch)</BuildArch>
<BuildType>$(__BuildType)</BuildType>
+ <BuildOS>$(__BuildOS)</BuildOS>
<Configuration Condition="'$(Configuration)' ==''">$(BuildType)</Configuration>
<Platform Condition="'$(Platform)'==''">$(BuildArch)</Platform>
</PropertyGroup>
@@ -27,13 +29,13 @@
<!-- Setup the default output and intermediate paths -->
<PropertyGroup>
- <BaseOutputPathWithConfig>$(ProjectDir)\..\binaries\tests\$(Platform)\$(Configuration)\</BaseOutputPathWithConfig>
+ <BaseOutputPathWithConfig>$(ProjectDir)\..\binaries\tests\$(BuildOS).$(Platform).$(Configuration)\</BaseOutputPathWithConfig>
<BaseOutputPathWithConfig Condition="'$(__TestWorkingDir)' != ''">$(__TestWorkingDir)\</BaseOutputPathWithConfig>
- <BinDir>$(BaseOutputPathWithConfig)\..\..\</BinDir>
- <BaseIntermediateOutputPath>$(BinDir)\obj\</BaseIntermediateOutputPath>
+ <BinDir>$(BaseOutputPathWithConfig)\..\..\..\</BinDir>
+ <BaseIntermediateOutputPath>$(BinDir)\intermediates\</BaseIntermediateOutputPath>
<BuildProjectRelativeDir>$(MSBuildProjectName)\</BuildProjectRelativeDir>
<BuildProjectRelativeDir Condition="'$(MSBuildProjectDirectory.Contains($(SourceDir)))'">$([System.String]::Copy('$(MSBuildProjectDirectory)').Replace($(SourceDir),''))</BuildProjectRelativeDir>
- <IntermediateOutputPath>$(BaseIntermediateOutputPath)$(BuildProjectRelativeDir)\$(Configuration)\$(Platform)\</IntermediateOutputPath>
+ <IntermediateOutputPath>$(BaseIntermediateOutputPath)$(BuildProjectRelativeDir)\$(BuildOS).$(Platform).$(Configuration)\</IntermediateOutputPath>
<OutputPath>$(BaseOutputPathWithConfig)$(BuildProjectRelativeDir)\</OutputPath>
</PropertyGroup>