<Project Sdk="Microsoft.NET.Sdk">

    <Import Project="..\Apewer\Apewer.props" />

    <PropertyGroup>
        <AppendTargetFrameworkToOutputPath>true</AppendTargetFrameworkToOutputPath>
        <TargetFrameworks>netstandard2.0;netcoreapp3.1;net461;net40;net20</TargetFrameworks>
    </PropertyGroup>

    <!-- .NET Standard 2.1 -->
    <PropertyGroup Condition="'$(TargetFramework)'=='netstandard2.1'">
        <DefineConstants>NETSTD;HAVE_ASYNC;HAVE_BIG_INTEGER;$(DefineConstants);$(AdditionalConstants)</DefineConstants>
    </PropertyGroup>

    <!-- .NET Standard 2.0 -->
    <PropertyGroup Condition="'$(TargetFramework)'=='netstandard2.0'">
        <DefineConstants>NETSTD;HAVE_ASYNC;HAVE_BIG_INTEGER;$(DefineConstants);$(AdditionalConstants)</DefineConstants>
    </PropertyGroup>

    <!-- .NET Framework 2.0 -->
    <PropertyGroup Condition="'$(TargetFramework)'=='net20'">
        <DefineConstants>NETFX;NET20;$(DefineConstants);$(AdditionalConstants)</DefineConstants>
    </PropertyGroup>
    <ItemGroup Condition="'$(TargetFramework)'=='net20'">
        <Reference Include="System.Web" />
    </ItemGroup>

    <!-- .NET Framework 4.0 -->
    <PropertyGroup Condition="'$(TargetFramework)'=='net40'">
        <DefineConstants>NETFX;NET40;HAVE_BIG_INTEGER;$(DefineConstants);$(AdditionalConstants)</DefineConstants>
    </PropertyGroup>
    <ItemGroup Condition="'$(TargetFramework)'=='net40'">
        <Reference Include="System.Web" />
    </ItemGroup>

    <!-- .NET Framework 4.6.1 -->
    <PropertyGroup Condition="'$(TargetFramework)'=='net461'">
        <DefineConstants>NETFX;NET461;NET45;HAVE_ASYNC;HAVE_BIG_INTEGER;$(DefineConstants);$(AdditionalConstants)</DefineConstants>
    </PropertyGroup>
    <ItemGroup Condition="'$(TargetFramework)'=='net461'">
        <Reference Include="System.Web" />
    </ItemGroup>

    <!-- .NET Core 3.1 -->
    <PropertyGroup Condition="'$(TargetFramework)'=='netcoreapp3.1'">
        <DefineConstants>HAVE_ASYNC;HAVE_BIG_INTEGER;$(DefineConstants);$(AdditionalConstants)</DefineConstants>
    </PropertyGroup>

</Project>