diff options
author | Michal Strehovský <MichalStrehovsky@users.noreply.github.com> | 2017-12-05 11:37:43 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-05 11:37:43 +0100 |
commit | 809b8f792923c95b9d5fee824c60dde21079cca1 (patch) | |
tree | 9aeced1d4c0ba6ef4598fae401526afec17be324 /clr.defines.targets | |
parent | d714acda701d78a572b3fe36f33abcaf7e26c2df (diff) | |
download | coreclr-809b8f792923c95b9d5fee824c60dde21079cca1.tar.gz coreclr-809b8f792923c95b9d5fee824c60dde21079cca1.tar.bz2 coreclr-809b8f792923c95b9d5fee824c60dde21079cca1.zip |
Put default interfaces behind a define (#15358)
This is needed so that we can turn default interfaces off in release branches.
I can't find a central location where the PRERELEASE flag could be defined because native and managed builds seem to be completely disconnected.
To limit the risk of only flipping the flag in one build type, I'm adding a test that verifies being able to load an interface with default methods matches what RuntimeFeature says.
Diffstat (limited to 'clr.defines.targets')
-rw-r--r-- | clr.defines.targets | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/clr.defines.targets b/clr.defines.targets index 7dc442cf1f..b9f159eb0c 100644 --- a/clr.defines.targets +++ b/clr.defines.targets @@ -1,4 +1,10 @@ <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + + <!-- Features we're currently flighting, but don't intend to ship in officially supported releases --> + <PropertyGroup Condition="'$(IsPrerelease)' == 'true'"> + <FeatureDefaultInterfaces>true</FeatureDefaultInterfaces> + </PropertyGroup> + <PropertyGroup> <DefineConstants Condition="'$(FeatureAppX)' == 'true'">$(DefineConstants);FEATURE_APPX</DefineConstants> <DefineConstants Condition="'$(FeatureArrayStubAsIL)' == 'true'">$(DefineConstants);FEATURE_ARRAYSTUB_AS_IL</DefineConstants> @@ -17,6 +23,7 @@ <DefineConstants Condition="'$(FeatureXplatEventSource)' == 'true'">$(DefineConstants);FEATURE_EVENTSOURCE_XPLAT</DefineConstants> <DefineConstants Condition="'$(FeatureUseLcid)' == 'true'">$(DefineConstants);FEATURE_USE_LCID</DefineConstants> <DefineConstants Condition="'$(FeatureWin32Registry)' == 'true'">$(DefineConstants);FEATURE_WIN32_REGISTRY</DefineConstants> + <DefineConstants Condition="'$(FeatureDefaultInterfaces)' == 'true'">$(DefineConstants);FEATURE_DEFAULT_INTERFACES</DefineConstants> <DefineConstants Condition="'$(ProfilingSupportedBuild)' == 'true'">$(DefineConstants);PROFILING_SUPPORTED</DefineConstants> |