diff options
author | Matt Ward <matt.ward@xamarin.com> | 2017-02-14 16:40:51 +0300 |
---|---|---|
committer | Matt Ward <matt.ward@xamarin.com> | 2017-02-14 21:56:14 +0300 |
commit | 9030d6f2ccaa75516804175bb37a1d341c35ff45 (patch) | |
tree | b8570a50086cddb3ebfe7733e805be301372d532 /main/tests/test-projects/console-project-with-wildcards/ConsoleProject-with-property-trailing-slash-excludes.csproj | |
parent | ffbde5b1c8b2aec69a0e9360a87e2ca3cdd56f52 (diff) |
[Core] Handle property with trailing backslash in exclude
.NET Core defines excludes of the form below which would result
in files not being excluded since the regex generated was incorrect:
<PropertyGroup>
<BaseOutputPath>bin\</BaseOutputPath>
</PropertyGroup>
<ItemGroup>
<Compile Include="**/*.cs" Exclude="$(BaseOutputPath)/**" />
</ItemGroup>
The extra trailing slash resulted in two slashes being used for the
exclude regex. Now after the forward slashes are replaced with
backslashes the duplicate backslashes are replaced with a single
backslash so the correct regex is created.
Diffstat (limited to 'main/tests/test-projects/console-project-with-wildcards/ConsoleProject-with-property-trailing-slash-excludes.csproj')
-rwxr-xr-x | main/tests/test-projects/console-project-with-wildcards/ConsoleProject-with-property-trailing-slash-excludes.csproj | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/main/tests/test-projects/console-project-with-wildcards/ConsoleProject-with-property-trailing-slash-excludes.csproj b/main/tests/test-projects/console-project-with-wildcards/ConsoleProject-with-property-trailing-slash-excludes.csproj new file mode 100755 index 0000000000..a78e3812ed --- /dev/null +++ b/main/tests/test-projects/console-project-with-wildcards/ConsoleProject-with-property-trailing-slash-excludes.csproj @@ -0,0 +1,47 @@ +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <ProductVersion>8.0.50727</ProductVersion> + <SchemaVersion>2.0</SchemaVersion> + <ProjectGuid>{4A9E3523-48F0-4BDF-A0F4-49DAD4431FAB}</ProjectGuid> + <OutputType>Exe</OutputType> + <AppDesignerFolder>Properties</AppDesignerFolder> + <RootNamespace>ConsoleProject</RootNamespace> + <AssemblyName>ConsoleProject</AssemblyName> + <TargetFrameworkVersion>v4.5</TargetFrameworkVersion> + <ContentDataPath>Content\Data\</ContentDataPath> + <ExtraNoPath>Extra\No</ExtraNoPath> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <DebugSymbols>True</DebugSymbols> + <DebugType>full</DebugType> + <Optimize>False</Optimize> + <OutputPath>bin\Debug\</OutputPath> + <DefineConstants>DEBUG;TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> + <DebugType>pdbonly</DebugType> + <Optimize>True</Optimize> + <OutputPath>bin\Release\</OutputPath> + <DefineConstants>TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> + <ItemGroup> + <Reference Include="System" /> + <Reference Include="System.Data" /> + <Reference Include="System.Xml" /> + </ItemGroup> + <ItemGroup> + <Compile Include="Content\**\*.cs" Exclude="$(ContentDataPath)/Data1.cs;Content/Data3.cs" /> + <Content Include="*.txt" Exclude="*2.txt"/> + <Content Include="Extra\**\*.txt" Exclude="$(ExtraNoPath)/**/*.txt;**/p6.txt"/> + </ItemGroup> + <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> + <Target Name="Test"> + <Message Text="@(Compile);@(Content)" /> + </Target> +</Project> |