<!--
 *
 * Eagle.Builds.targets -
 *
 * WARNING: Contains more evil MSBuild hacks than your doctor recommended.
 *
 * Copyright (c) 2007-2012 by Joe Mistachkin.  All rights reserved.
 *
 * See the file "license.terms" for information on usage and redistribution of
 * this file, and for a DISCLAIMER OF ALL WARRANTIES.
 *
 * RCS: @(#) $Id: $
 *
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <!--
  ******************************************************************************
  **                          Load Per-User Settings                          **
  ******************************************************************************
  -->

  <!--
      NOTE: If the per-user settings file exists, import it now.  The contained
            settings, if any, will override the default ones provided below.
  -->
  <Import Condition="'$(EagleDir)' != '' And
                     !HasTrailingSlash('$(EagleDir)') And
                     Exists('$(EagleDir)\Targets\Eagle.Builds.targets.user')"
          Project="$(EagleDir)\Targets\Eagle.Builds.targets.user" />

  <!--
  ******************************************************************************
  **                            Eagle Build Types                             **
  ******************************************************************************
  -->

  <!--
      NOTE: This is an "official release" build configuration.  This build
            configuration is primarily designed for use with the .NET Framework
            2.0 on Windows XP or higher.  Most default values from the settings
            file (i.e. "Eagle.Settings.targets") are used; however, some of the
            defaults are overridden here to create a good out-of-box-experience
            (OOBE).  Please refer to the file "Eagle.Settings.targets" (or the
            source code) for further details of what each setting does.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'Default' Or
                            '$(EagleBuildType)' == 'NetFx20'">
    <EagleAppDomains Condition="'$(EagleAppDomains)' == ''">true</EagleAppDomains>
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleCacheDictionary Condition="'$(EagleCacheDictionary)' == ''">true</EagleCacheDictionary>
    <EagleCasPolicy Condition="'$(EagleCasPolicy)' == ''">true</EagleCasPolicy>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">NetFx20</EagleConfigurationSuffix>
    <EagleDebuggerExpression Condition="'$(EagleDebuggerExpression)' == ''">false</EagleDebuggerExpression>
    <EagleEmbeddedLibrary Condition="'$(EagleEmbeddedLibrary)' == ''">true</EagleEmbeddedLibrary>
    <EagleIsolatedInterpreters Condition="'$(EagleIsolatedInterpreters)' == ''">true</EagleIsolatedInterpreters>
    <EagleIsolatedPlugins Condition="'$(EagleIsolatedPlugins)' == ''">true</EagleIsolatedPlugins>
    <EagleMonoLegacy Condition="'$(EagleMonoLegacy)' == ''">false</EagleMonoLegacy>
    <EagleNotifyExecute Condition="'$(EagleNotifyExecute)' == ''">false</EagleNotifyExecute>
    <EagleNotifyExpression Condition="'$(EagleNotifyExpression)' == ''">false</EagleNotifyExpression>
    <EagleOnlyNetFx20 Condition="'$(EagleOnlyNetFx20)' == ''">true</EagleOnlyNetFx20>
    <EaglePowerShellVersion Condition="'$(EaglePowerShellVersion)' == ''">1.0</EaglePowerShellVersion>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleUnix Condition="'$(EagleUnix)' == ''">true</EagleUnix>
    <EagleWixVersion Condition="'$(EagleWixVersion)' == ''">3.5</EagleWixVersion>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: This is NOT an "official release" build configuration.  This build
            configuration is primarily designed for use with the .NET Framework
            3.5 on Windows XP or higher.  Currently, the release preparation
            tool does NOT build this configuration during the automated release
            processing.  Most default values from the settings file (i.e.
            "Eagle.Settings.targets") are used; however, some of the defaults
            are overridden here to create a good out-of-box-experience (OOBE).
            Please refer to the file "Eagle.Settings.targets" (or the source
            code) for further details of what each setting does.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'NetFx35'">
    <TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == ''">v3.5</TargetFrameworkVersion>
    <EagleAppDomains Condition="'$(EagleAppDomains)' == ''">true</EagleAppDomains>
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleCacheDictionary Condition="'$(EagleCacheDictionary)' == ''">true</EagleCacheDictionary>
    <EagleCasPolicy Condition="'$(EagleCasPolicy)' == ''">true</EagleCasPolicy>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">NetFx35</EagleConfigurationSuffix>
    <EagleDebuggerExpression Condition="'$(EagleDebuggerExpression)' == ''">false</EagleDebuggerExpression>
    <EagleEmbeddedLibrary Condition="'$(EagleEmbeddedLibrary)' == ''">true</EagleEmbeddedLibrary>
    <EagleIsolatedInterpreters Condition="'$(EagleIsolatedInterpreters)' == ''">true</EagleIsolatedInterpreters>
    <EagleIsolatedPlugins Condition="'$(EagleIsolatedPlugins)' == ''">true</EagleIsolatedPlugins>
    <EagleMonoLegacy Condition="'$(EagleMonoLegacy)' == ''">false</EagleMonoLegacy>
    <EagleNotifyExecute Condition="'$(EagleNotifyExecute)' == ''">false</EagleNotifyExecute>
    <EagleNotifyExpression Condition="'$(EagleNotifyExpression)' == ''">false</EagleNotifyExpression>
    <EaglePatchLevel Condition="'$(EaglePatchLevel)' == ''">true</EaglePatchLevel>
    <EaglePowerShellVersion Condition="'$(EaglePowerShellVersion)' == ''">2.0</EaglePowerShellVersion>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleUnix Condition="'$(EagleUnix)' == ''">true</EagleUnix>
    <EagleWixVersion Condition="'$(EagleWixVersion)' == ''">3.5</EagleWixVersion>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: This is an "official release" build configuration.  This build
            configuration is primarily designed for use with the .NET Framework
            4.0 on Windows XP or higher.  Most default values from the settings
            file (i.e. "Eagle.Settings.targets") are used; however, some of the
            defaults are overridden here to create a good out-of-box-experience
            (OOBE).  Please refer to the file "Eagle.Settings.targets" (or the
            source code) for further details of what each setting does.

      NOTE: When building this configuration directly from MSBuild (i.e. not via
            the "flight.bat" tool), the EaglePatchLevel property must be set to
            false, by adding this to the build command line:

                /property:EaglePatchLevel=false

            Otherwise, compilation errors will occur due to the AssemblyVersion
            attribute value being null.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'NetFx40'">
    <EagleAppDomains Condition="'$(EagleAppDomains)' == ''">true</EagleAppDomains>
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleCacheDictionary Condition="'$(EagleCacheDictionary)' == ''">true</EagleCacheDictionary>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">NetFx40</EagleConfigurationSuffix>
    <EagleDebuggerExpression Condition="'$(EagleDebuggerExpression)' == ''">false</EagleDebuggerExpression>
    <EagleEmbeddedLibrary Condition="'$(EagleEmbeddedLibrary)' == ''">true</EagleEmbeddedLibrary>
    <EagleIsolatedInterpreters Condition="'$(EagleIsolatedInterpreters)' == ''">true</EagleIsolatedInterpreters>
    <EagleIsolatedPlugins Condition="'$(EagleIsolatedPlugins)' == ''">true</EagleIsolatedPlugins>
    <EagleMonoLegacy Condition="'$(EagleMonoLegacy)' == ''">false</EagleMonoLegacy>
    <EagleNotifyExecute Condition="'$(EagleNotifyExecute)' == ''">false</EagleNotifyExecute>
    <EagleNotifyExpression Condition="'$(EagleNotifyExpression)' == ''">false</EagleNotifyExpression>
    <EaglePatchLevel Condition="'$(EaglePatchLevel)' == ''">true</EaglePatchLevel>
    <EaglePowerShellVersion Condition="'$(EaglePowerShellVersion)' == ''">3.0</EaglePowerShellVersion>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleUnix Condition="'$(EagleUnix)' == ''">true</EagleUnix>
    <EagleWixVersion Condition="'$(EagleWixVersion)' == ''">3.5</EagleWixVersion>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: This is NOT an "official release" build configuration.  This build
            configuration is primarily designed for use with the .NET Framework
            4.5 on Windows Vista or higher.  Most default values from the
            settings file (i.e. "Eagle.Settings.targets") are used; however,
            some of the defaults are overridden here to create a good
            out-of-box-experience (OOBE).  Please refer to the file
            "Eagle.Settings.targets" (or the source code) for further details
            of what each setting does.

      NOTE: When building this configuration directly from MSBuild (i.e. not via
            the "flight.bat" tool), the EaglePatchLevel property must be set to
            false, by adding this to the build command line:

                /property:EaglePatchLevel=false

            Otherwise, compilation errors will occur due to the AssemblyVersion
            attribute value being null.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'NetFx45'">
    <TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == ''">v4.5</TargetFrameworkVersion>
    <EagleAppDomains Condition="'$(EagleAppDomains)' == ''">true</EagleAppDomains>
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleCacheDictionary Condition="'$(EagleCacheDictionary)' == ''">true</EagleCacheDictionary>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">NetFx45</EagleConfigurationSuffix>
    <EagleDebuggerExpression Condition="'$(EagleDebuggerExpression)' == ''">false</EagleDebuggerExpression>
    <EagleEmbeddedLibrary Condition="'$(EagleEmbeddedLibrary)' == ''">true</EagleEmbeddedLibrary>
    <EagleIsolatedInterpreters Condition="'$(EagleIsolatedInterpreters)' == ''">true</EagleIsolatedInterpreters>
    <EagleIsolatedPlugins Condition="'$(EagleIsolatedPlugins)' == ''">true</EagleIsolatedPlugins>
    <EagleMonoLegacy Condition="'$(EagleMonoLegacy)' == ''">false</EagleMonoLegacy>
    <EagleNotifyExecute Condition="'$(EagleNotifyExecute)' == ''">false</EagleNotifyExecute>
    <EagleNotifyExpression Condition="'$(EagleNotifyExpression)' == ''">false</EagleNotifyExpression>
    <EaglePatchLevel Condition="'$(EaglePatchLevel)' == ''">true</EaglePatchLevel>
    <EaglePowerShellVersion Condition="'$(EaglePowerShellVersion)' == ''">3.0</EaglePowerShellVersion>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleUnix Condition="'$(EagleUnix)' == ''">true</EagleUnix>
    <EagleWixVersion Condition="'$(EagleWixVersion)' == ''">3.5</EagleWixVersion>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: This is NOT an "official release" build configuration.  This build
            configuration is primarily designed for use with the .NET Framework
            4.5.1 on Windows Vista SP2 or higher.  Most default values from the
            settings file (i.e. "Eagle.Settings.targets") are used; however,
            some of the defaults are overridden here to create a good
            out-of-box-experience (OOBE).  Please refer to the file
            "Eagle.Settings.targets" (or the source code) for further details
            of what each setting does.

      NOTE: When building this configuration directly from MSBuild (i.e. not via
            the "flight.bat" tool), the EaglePatchLevel property must be set to
            false, by adding this to the build command line:

                /property:EaglePatchLevel=false

            Otherwise, compilation errors will occur due to the AssemblyVersion
            attribute value being null.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'NetFx451'">
    <TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == ''">v4.5.1</TargetFrameworkVersion>
    <EagleAppDomains Condition="'$(EagleAppDomains)' == ''">true</EagleAppDomains>
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleCacheDictionary Condition="'$(EagleCacheDictionary)' == ''">true</EagleCacheDictionary>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">NetFx451</EagleConfigurationSuffix>
    <EagleDebuggerExpression Condition="'$(EagleDebuggerExpression)' == ''">false</EagleDebuggerExpression>
    <EagleEmbeddedLibrary Condition="'$(EagleEmbeddedLibrary)' == ''">true</EagleEmbeddedLibrary>
    <EagleIsolatedInterpreters Condition="'$(EagleIsolatedInterpreters)' == ''">true</EagleIsolatedInterpreters>
    <EagleIsolatedPlugins Condition="'$(EagleIsolatedPlugins)' == ''">true</EagleIsolatedPlugins>
    <EagleMonoLegacy Condition="'$(EagleMonoLegacy)' == ''">false</EagleMonoLegacy>
    <EagleNotifyExecute Condition="'$(EagleNotifyExecute)' == ''">false</EagleNotifyExecute>
    <EagleNotifyExpression Condition="'$(EagleNotifyExpression)' == ''">false</EagleNotifyExpression>
    <EaglePatchLevel Condition="'$(EaglePatchLevel)' == ''">true</EaglePatchLevel>
    <EaglePowerShellVersion Condition="'$(EaglePowerShellVersion)' == ''">3.0</EaglePowerShellVersion>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleUnix Condition="'$(EagleUnix)' == ''">true</EagleUnix>
    <EagleWixVersion Condition="'$(EagleWixVersion)' == ''">3.5</EagleWixVersion>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: This is NOT an "official release" build configuration.  This build
            configuration is primarily designed for use with the .NET Framework
            4.5.2 on Windows Vista SP2 or higher.  Currently, the release
            preparation tool does NOT build this configuration during the
            automated release processing.  Most default values from the settings
            file (i.e. "Eagle.Settings.targets") are used; however, some of the
            defaults are overridden here to create a good out-of-box-experience
            (OOBE).  Please refer to the file "Eagle.Settings.targets" (or the
            source code) for further details of what each setting does.

      NOTE: When building this configuration directly from MSBuild (i.e. not via
            the "flight.bat" tool), the EaglePatchLevel property must be set to
            false, by adding this to the build command line:

                /property:EaglePatchLevel=false

            Otherwise, compilation errors will occur due to the AssemblyVersion
            attribute value being null.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'NetFx452'">
    <TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == ''">v4.5.2</TargetFrameworkVersion>
    <EagleAppDomains Condition="'$(EagleAppDomains)' == ''">true</EagleAppDomains>
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleCacheDictionary Condition="'$(EagleCacheDictionary)' == ''">true</EagleCacheDictionary>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">NetFx452</EagleConfigurationSuffix>
    <EagleDebuggerExpression Condition="'$(EagleDebuggerExpression)' == ''">false</EagleDebuggerExpression>
    <EagleEmbeddedLibrary Condition="'$(EagleEmbeddedLibrary)' == ''">true</EagleEmbeddedLibrary>
    <EagleIsolatedInterpreters Condition="'$(EagleIsolatedInterpreters)' == ''">true</EagleIsolatedInterpreters>
    <EagleIsolatedPlugins Condition="'$(EagleIsolatedPlugins)' == ''">true</EagleIsolatedPlugins>
    <EagleMonoLegacy Condition="'$(EagleMonoLegacy)' == ''">false</EagleMonoLegacy>
    <EagleNotifyExecute Condition="'$(EagleNotifyExecute)' == ''">false</EagleNotifyExecute>
    <EagleNotifyExpression Condition="'$(EagleNotifyExpression)' == ''">false</EagleNotifyExpression>
    <EaglePatchLevel Condition="'$(EaglePatchLevel)' == ''">true</EaglePatchLevel>
    <EaglePowerShellVersion Condition="'$(EaglePowerShellVersion)' == ''">3.0</EaglePowerShellVersion>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleUnix Condition="'$(EagleUnix)' == ''">true</EagleUnix>
    <EagleWixVersion Condition="'$(EagleWixVersion)' == ''">3.5</EagleWixVersion>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: This is NOT an "official release" build configuration.  However, the
            "unofficial policy" governing this build configuration is to exclude
            almost every non-essential feature.  The only real purpose of this
            build configuration is to reveal any accidental hidden dependencies
            between optional features (i.e. primarily through compiler errors).
            One important thing to note about this build configuration is that
            it does NOT provide any interactive input/output functionality (i.e.
            no console host).  This build configuration is primarily designed
            for use with the .NET Framework 2.0 on Windows XP or higher.  There
            is absolutely NO guarantee whatsoever that this build configuration
            will be supported in the future.

      NOTE: When building this configuration directly from MSBuild (i.e. not via
            the "flight.bat" tool), the EaglePatchLevel property must be set to
            false, by adding this to the build command line:

                /property:EaglePatchLevel=false

            Otherwise, compilation errors will occur due to the AssemblyVersion
            attribute value being null.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'Bare'">
    <EagleAppDomains Condition="'$(EagleAppDomains)' == ''">false</EagleAppDomains>
    <EagleApprovedVerbs Condition="'$(EagleApprovedVerbs)' == ''">false</EagleApprovedVerbs>
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleBreakOnExiting Condition="'$(EagleBreakOnExiting)' == ''">false</EagleBreakOnExiting>
    <EagleBreakpoints Condition="'$(EagleBreakpoints)' == ''">false</EagleBreakpoints>
    <EagleCacheArgumentToString Condition="'$(EagleCacheArgumentToString)' == ''">false</EagleCacheArgumentToString>
    <EagleCacheArgumentListToString Condition="'$(EagleCacheArgumentListToString)' == ''">false</EagleCacheArgumentListToString>
    <EagleCacheDictionary Condition="'$(EagleCacheDictionary)' == ''">false</EagleCacheDictionary>
    <EagleCacheResultToString Condition="'$(EagleCacheResultToString)' == ''">false</EagleCacheResultToString>
    <EagleCacheStatistics Condition="'$(EagleCacheStatistics)' == ''">false</EagleCacheStatistics>
    <EagleCacheStringListToString Condition="'$(EagleCacheStringListToString)' == ''">false</EagleCacheStringListToString>
    <EagleCallbackQueue Condition="'$(EagleCallbackQueue)' == ''">false</EagleCallbackQueue>
    <EagleCasPolicy Condition="'$(EagleCasPolicy)' == ''">false</EagleCasPolicy>
    <EagleComTypeCache Condition="'$(EagleComTypeCache)' == ''">false</EagleComTypeCache>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">Bare</EagleConfigurationSuffix>
    <EagleConsole Condition="'$(EagleConsole)' == ''">false</EagleConsole>
    <EagleData Condition="'$(EagleData)' == ''">false</EagleData>
    <EagleDeadCode Condition="'$(EagleDeadCode)' == ''">false</EagleDeadCode>
    <EagleDebugTrace Condition="'$(EagleDebugTrace)' == ''">false</EagleDebugTrace>
    <EagleDebugWrite Condition="'$(EagleDebugWrite)' == ''">false</EagleDebugWrite>
    <EagleDebugger Condition="'$(EagleDebugger)' == ''">false</EagleDebugger>
    <EagleDebuggerArguments Condition="'$(EagleDebuggerArguments)' == ''">false</EagleDebuggerArguments>
    <EagleDebuggerEngine Condition="'$(EagleDebuggerEngine)' == ''">false</EagleDebuggerEngine>
    <EagleDebuggerExecute Condition="'$(EagleDebuggerExecute)' == ''">false</EagleDebuggerExecute>
    <EagleDebuggerExpression Condition="'$(EagleDebuggerExpression)' == ''">false</EagleDebuggerExpression>
    <EagleDebuggerVariable Condition="'$(EagleDebuggerVariable)' == ''">false</EagleDebuggerVariable>
    <EagleDetectNetFx20Sp Condition="'$(EagleDetectNetFx20Sp)' == ''">false</EagleDetectNetFx20Sp>
    <EagleDrawing Condition="'$(EagleDrawing)' == ''">false</EagleDrawing>
    <EagleDynamic Condition="'$(EagleDynamic)' == ''">false</EagleDynamic>
    <EagleEmbeddedLibrary Condition="'$(EagleEmbeddedLibrary)' == ''">false</EagleEmbeddedLibrary>
    <EagleExecuteCache Condition="'$(EagleExecuteCache)' == ''">false</EagleExecuteCache>
    <EagleExpressionFlags Condition="'$(EagleExpressionFlags)' == ''">false</EagleExpressionFlags>
    <EagleFastErrorCode Condition="'$(EagleFastErrorCode)' == ''">false</EagleFastErrorCode>
    <EagleFastErrorInfo Condition="'$(EagleFastErrorInfo)' == ''">false</EagleFastErrorInfo>
    <EagleHistory Condition="'$(EagleHistory)' == ''">false</EagleHistory>
    <EagleInteractiveCommands Condition="'$(EagleInteractiveCommands)' == ''">false</EagleInteractiveCommands>
    <EagleIsolatedInterpreters Condition="'$(EagleIsolatedInterpreters)' == ''">false</EagleIsolatedInterpreters>
    <EagleIsolatedPlugins Condition="'$(EagleIsolatedPlugins)' == ''">false</EagleIsolatedPlugins>
    <EagleLibrary Condition="'$(EagleLibrary)' == ''">false</EagleLibrary>
    <EagleListCache Condition="'$(EagleListCache)' == ''">false</EagleListCache>
    <EagleMono Condition="'$(EagleMono)' == ''">false</EagleMono>
    <EagleMonoHacks Condition="'$(EagleMonoHacks)' == ''">false</EagleMonoHacks>
    <EagleMonoLegacy Condition="'$(EagleMonoLegacy)' == ''">false</EagleMonoLegacy>
    <EagleNative Condition="'$(EagleNative)' == ''">false</EagleNative>
    <EagleNativePackage Condition="'$(EagleNativePackage)' == ''">false</EagleNativePackage>
    <EagleNativeUtility Condition="'$(EagleNativeUtility)' == ''">false</EagleNativeUtility>
    <EagleNativeUtilityBstr Condition="'$(EagleNativeUtilityBstr)' == ''">false</EagleNativeUtilityBstr>
    <EagleNetwork Condition="'$(EagleNetwork)' == ''">false</EagleNetwork>
    <EagleNotify Condition="'$(EagleNotify)' == ''">false</EagleNotify>
    <EagleNotifyActive Condition="'$(EagleNotifyActive)' == ''">false</EagleNotifyActive>
    <EagleNotifyArguments Condition="'$(EagleNotifyArguments)' == ''">false</EagleNotifyArguments>
    <EagleNotifyException Condition="'$(EagleNotifyException)' == ''">false</EagleNotifyException>
    <EagleNotifyExecute Condition="'$(EagleNotifyExecute)' == ''">false</EagleNotifyExecute>
    <EagleNotifyExpression Condition="'$(EagleNotifyExpression)' == ''">false</EagleNotifyExpression>
    <EagleNotifyGlobal Condition="'$(EagleNotifyGlobal)' == ''">false</EagleNotifyGlobal>
    <EagleNotifyObject Condition="'$(EagleNotifyObject)' == ''">true</EagleNotifyObject>
    <EagleOnlyNetFx20 Condition="'$(EagleOnlyNetFx20)' == ''">true</EagleOnlyNetFx20>
    <EagleParseCache Condition="'$(EagleParseCache)' == ''">false</EagleParseCache>
    <EaglePatchLevel Condition="'$(EaglePatchLevel)' == ''">true</EaglePatchLevel>
    <EaglePolicyTrace Condition="'$(EaglePolicyTrace)' == ''">false</EaglePolicyTrace>
    <EaglePowerShellVersion Condition="'$(EaglePowerShellVersion)' == ''">1.0</EaglePowerShellVersion>
    <EaglePreviousResult Condition="'$(EaglePreviousResult)' == ''">false</EaglePreviousResult>
    <EagleRandomizeId Condition="'$(EagleRandomizeId)' == ''">false</EagleRandomizeId>
    <EagleRemoting Condition="'$(EagleRemoting)' == ''">false</EagleRemoting>
    <EagleSerialization Condition="'$(EagleSerialization)' == ''">false</EagleSerialization>
    <EagleSharedIdPool Condition="'$(EagleSharedIdPool)' == ''">false</EagleSharedIdPool>
    <!--
    <EagleShell Condition="'$(EagleShell)' == ''">false</EagleShell>
    -->
    <EagleShellStartupObject Condition="'$(EagleShellStartupObject)' == ''">Eagle._Shell.StaticCommandLine</EagleShellStartupObject>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleStatic Condition="'$(EagleStatic)' == ''">true</EagleStatic>
    <EagleTcl Condition="'$(EagleTcl)' == ''">false</EagleTcl>
    <EagleTclKits Condition="'$(EagleTclKits)' == ''">false</EagleTclKits>
    <EagleTclThreaded Condition="'$(EagleTclThreaded)' == ''">false</EagleTclThreaded>
    <EagleTclThreads Condition="'$(EagleTclThreads)' == ''">false</EagleTclThreads>
    <EagleTclUnicode Condition="'$(EagleTclUnicode)' == ''">false</EagleTclUnicode>
    <EagleTclWrapper Condition="'$(EagleTclWrapper)' == ''">false</EagleTclWrapper>
    <EagleThrowOnDisposed Condition="'$(EagleThrowOnDisposed)' == ''">true</EagleThrowOnDisposed>
    <EagleTest Condition="'$(EagleTest)' == ''">false</EagleTest>
    <EagleThreading Condition="'$(EagleThreading)' == ''">false</EagleThreading>
    <EagleTypeCache Condition="'$(EagleTypeCache)' == ''">false</EagleTypeCache>
    <EagleUnix Condition="'$(EagleUnix)' == ''">false</EagleUnix>
    <EagleVerbose Condition="'$(EagleVerbose)' == ''">false</EagleVerbose>
    <EagleWeb Condition="'$(EagleWeb)' == ''">false</EagleWeb>
    <EagleWindows Condition="'$(EagleWindows)' == ''">false</EagleWindows>
    <EagleWinForms Condition="'$(EagleWinForms)' == ''">false</EagleWinForms>
    <EagleWixVersion Condition="'$(EagleWixVersion)' == ''">3.0</EagleWixVersion>
    <EagleXml Condition="'$(EagleXml)' == ''">false</EagleXml>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: This is NOT an "official release" build configuration.  However, the
            "unofficial policy" governing this build configuration is to exclude
            every non-essential feature that can negatively impact the speed of
            the library.  This build configuration is primarily designed for use
            with the .NET Framework 2.0 on Windows XP or higher.  There is
            absolutely NO guarantee whatsoever that this build configuration
            will be supported in the future.

      NOTE: When building this configuration directly from MSBuild (i.e. not via
            the "flight.bat" tool), the EaglePatchLevel property must be set to
            false, by adding this to the build command line:

                /property:EaglePatchLevel=false

            Otherwise, compilation errors will occur due to the AssemblyVersion
            attribute value being null.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'LeanAndMean'">
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleBreakpoints Condition="'$(EagleBreakpoints)' == ''">false</EagleBreakpoints>
    <EagleCacheStatistics Condition="'$(EagleCacheStatistics)' == ''">false</EagleCacheStatistics>
    <EagleCallbackQueue Condition="'$(EagleCallbackQueue)' == ''">false</EagleCallbackQueue>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">LeanAndMean</EagleConfigurationSuffix>
    <EagleDeadCode Condition="'$(EagleDeadCode)' == ''">false</EagleDeadCode>
    <EagleDebugTrace Condition="'$(EagleDebugTrace)' == ''">false</EagleDebugTrace>
    <EagleDebugger Condition="'$(EagleDebugger)' == ''">false</EagleDebugger>
    <EagleDetectNetFx20Sp Condition="'$(EagleDetectNetFx20Sp)' == ''">false</EagleDetectNetFx20Sp>
    <EagleEmbeddedLibrary Condition="'$(EagleEmbeddedLibrary)' == ''">true</EagleEmbeddedLibrary>
    <EagleExpressionFlags Condition="'$(EagleExpressionFlags)' == ''">false</EagleExpressionFlags>
    <EagleFastErrorCode Condition="'$(EagleFastErrorCode)' == ''">true</EagleFastErrorCode>
    <EagleFastErrorInfo Condition="'$(EagleFastErrorInfo)' == ''">true</EagleFastErrorInfo>
    <EagleHistory Condition="'$(EagleHistory)' == ''">false</EagleHistory>
    <EagleMonoLegacy Condition="'$(EagleMonoLegacy)' == ''">false</EagleMonoLegacy>
    <EagleNotify Condition="'$(EagleNotify)' == ''">false</EagleNotify>
    <EagleOnlyNetFx20 Condition="'$(EagleOnlyNetFx20)' == ''">true</EagleOnlyNetFx20>
    <EaglePatchLevel Condition="'$(EaglePatchLevel)' == ''">true</EaglePatchLevel>
    <EaglePolicyTrace Condition="'$(EaglePolicyTrace)' == ''">false</EaglePolicyTrace>
    <EaglePreviousResult Condition="'$(EaglePreviousResult)' == ''">false</EaglePreviousResult>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleTclWrapper Condition="'$(EagleTclWrapper)' == ''">true</EagleTclWrapper>
    <EagleTest Condition="'$(EagleTest)' == ''">false</EagleTest>
    <EagleThreading Condition="'$(EagleThreading)' == ''">false</EagleThreading>
    <EagleVerbose Condition="'$(EagleVerbose)' == ''">false</EagleVerbose>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: This is NOT an "official release" build configuration.  However, the
            "unofficial policy" governing this build configuration is to exclude
            any feature that will not work properly when hosted inside SQL
            Server.  This build configuration is primarily designed for use with
            the .NET Framework 2.0 on Windows XP or higher.  There is absolutely
            NO guarantee whatsoever that this build configuration will be
            supported in the future.

      NOTE: When building this configuration directly from MSBuild (i.e. not via
            the "flight.bat" tool), the EaglePatchLevel property must be set to
            false, by adding this to the build command line:

                /property:EaglePatchLevel=false

            Otherwise, compilation errors will occur due to the AssemblyVersion
            attribute value being null.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'Database'">
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">Database</EagleConfigurationSuffix>
    <EagleDebuggerExpression Condition="'$(EagleDebuggerExpression)' == ''">false</EagleDebuggerExpression>
    <EagleDrawing Condition="'$(EagleDrawing)' == ''">false</EagleDrawing>
    <EagleEmbeddedLibrary Condition="'$(EagleEmbeddedLibrary)' == ''">true</EagleEmbeddedLibrary>
    <EagleMonoLegacy Condition="'$(EagleMonoLegacy)' == ''">false</EagleMonoLegacy>
    <EagleNativePackage Condition="'$(EagleNativePackage)' == ''">false</EagleNativePackage>
    <EagleNativeUtility Condition="'$(EagleNativeUtility)' == ''">false</EagleNativeUtility>
    <EagleNotifyExecute Condition="'$(EagleNotifyExecute)' == ''">false</EagleNotifyExecute>
    <EagleNotifyExpression Condition="'$(EagleNotifyExpression)' == ''">false</EagleNotifyExpression>
    <EagleOnlyNetFx20 Condition="'$(EagleOnlyNetFx20)' == ''">true</EagleOnlyNetFx20>
    <EaglePatchLevel Condition="'$(EaglePatchLevel)' == ''">true</EaglePatchLevel>
    <EagleRemoting Condition="'$(EagleRemoting)' == ''">false</EagleRemoting>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleUnix Condition="'$(EagleUnix)' == ''">true</EagleUnix>
    <EagleWeb Condition="'$(EagleWeb)' == ''">false</EagleWeb>
    <EagleWinForms Condition="'$(EagleWinForms)' == ''">false</EagleWinForms>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: This is an "official release" build configuration.  This build
            configuration is primarily designed for use with Mono 2.0 or higher
            on Unix (i.e. at this point, any supported operating system that is
            not Windows).  Most default values from the settings file (i.e.
            "Eagle.Settings.targets") are used; however, some of the defaults
            are overridden here to create a good out-of-box-experience (OOBE).
            Please refer to the file "Eagle.Settings.targets" (or the source
            code) for further details of what each setting does.

      NOTE: When building this configuration directly from MSBuild (i.e. not via
            the "flight.bat" tool), the EaglePatchLevel property must be set to
            false, by adding this to the build command line:

                /property:EaglePatchLevel=false

            Otherwise, compilation errors will occur due to the AssemblyVersion
            attribute value being null.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'MonoOnUnix'">
    <EagleAppDomains Condition="'$(EagleAppDomains)' == ''">true</EagleAppDomains>
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleCasPolicy Condition="'$(EagleCasPolicy)' == ''">true</EagleCasPolicy>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">MonoOnUnix</EagleConfigurationSuffix>
    <EagleDebuggerExpression Condition="'$(EagleDebuggerExpression)' == ''">false</EagleDebuggerExpression>
    <EagleIsolatedInterpreters Condition="'$(EagleIsolatedInterpreters)' == ''">true</EagleIsolatedInterpreters>
    <EagleIsolatedPlugins Condition="'$(EagleIsolatedPlugins)' == ''">true</EagleIsolatedPlugins>
    <EagleMono Condition="'$(EagleMono)' == ''">true</EagleMono>
    <EagleNativeUtilityBstr Condition="'$(EagleNativeUtilityBstr)' == ''">false</EagleNativeUtilityBstr>
    <EagleNotifyExecute Condition="'$(EagleNotifyExecute)' == ''">false</EagleNotifyExecute>
    <EagleNotifyExpression Condition="'$(EagleNotifyExpression)' == ''">false</EagleNotifyExpression>
    <EagleOnlyNetFx20 Condition="'$(EagleOnlyNetFx20)' == ''">true</EagleOnlyNetFx20>
    <EaglePatchLevel Condition="'$(EaglePatchLevel)' == ''">true</EaglePatchLevel>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleStackSize Condition="'$(EagleStackSize)' == ''">0x100000</EagleStackSize>
    <EagleTclThreaded Condition="'$(EagleTclThreaded)' == ''">false</EagleTclThreaded>
    <EagleUnix Condition="'$(EagleUnix)' == ''">true</EagleUnix>
    <EagleWindows Condition="'$(EagleWindows)' == ''">false</EagleWindows>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: This is NOT an "official release" build configuration.  This build
            configuration is primarily designed for use when actively working
            on the Eagle core library during development.  Most default values
            from the settings file (i.e. "Eagle.Settings.targets") are used;
            however, some of the defaults are overridden here to ease testing
            of new features and optimizations.  Please refer to the file
            "Eagle.Settings.targets" (or the source code) for further details
            of what each setting does.
  -->
  <PropertyGroup Condition="'$(EagleBuildType)' == 'Development'">
    <EagleAppDomains Condition="'$(EagleAppDomains)' == ''">true</EagleAppDomains>
    <EagleAssemblyRelease Condition="'$(EagleAssemblyRelease)' == ''">true</EagleAssemblyRelease>
    <EagleAssemblyStrongNameTag Condition="'$(EagleAssemblyStrongNameTag)' == ''">true</EagleAssemblyStrongNameTag>
    <!--
    <EagleAssemblyTag Condition="'$(EagleAssemblyTag)' == ''">true</EagleAssemblyTag>
    -->
    <EagleAssemblyText Condition="'$(EagleAssemblyText)' == ''">true</EagleAssemblyText>
    <!--
    <EagleAssemblyUri Condition="'$(EagleAssemblyUri)' == ''">true</EagleAssemblyUri>
    -->
    <EagleAuthenticodeSign Condition="'$(EagleAuthenticodeSign)' == ''">true</EagleAuthenticodeSign>
    <EagleCacheDictionary Condition="'$(EagleCacheDictionary)' == ''">true</EagleCacheDictionary>
    <EagleCasPolicy Condition="'$(EagleCasPolicy)' == ''">true</EagleCasPolicy>
    <EagleConfigurationSuffix Condition="'$(EagleConfigurationSuffix)' == ''">Development</EagleConfigurationSuffix>
    <EagleDeadCode Condition="'$(EagleDeadCode)' == ''">true</EagleDeadCode>
    <EagleEmbeddedLibrary Condition="'$(EagleEmbeddedLibrary)' == ''">true</EagleEmbeddedLibrary>
    <EagleIsolatedInterpreters Condition="'$(EagleIsolatedInterpreters)' == ''">true</EagleIsolatedInterpreters>
    <EagleIsolatedPlugins Condition="'$(EagleIsolatedPlugins)' == ''">true</EagleIsolatedPlugins>
    <EagleObsolete Condition="'$(EagleObsolete)' == ''">true</EagleObsolete>
    <EaglePolicyTrace Condition="'$(EaglePolicyTrace)' == ''">true</EaglePolicyTrace>
    <EagleSourceId Condition="'$(EagleSourceId)' == ''">true</EagleSourceId>
    <EagleSourceTimeStamp Condition="'$(EagleSourceTimeStamp)' == ''">true</EagleSourceTimeStamp>
    <EagleStatic Condition="'$(EagleStatic)' == ''">true</EagleStatic>
    <EagleTclWrapper Condition="'$(EagleTclWrapper)' == ''">true</EagleTclWrapper>
    <EagleUnix Condition="'$(EagleUnix)' == ''">true</EagleUnix>
  </PropertyGroup>

  <!--
  ******************************************************************************
  **                             Eagle Test Types                             **
  ******************************************************************************
  -->

  <!--
      HACK: Apparently, we must be quiet with v3.5 or higher of MSBuild because
            it sees any output to the standard error stream as an indication it
            should proceed to fail the entire build process.  There is supposed
            to be a workaround by setting the "IgnoreStandardErrorWarningFormat"
            property of the "Exec" task to true; however, some reports seem to
            indicate that this is a flaky workaround, at best.  Also, it is not
            available with the .NET Framework 2.0 version of MSBuild; therefore,
            we cannot use it anyway.  Also, disable various tests that interact
            poorly with MSBuild, such as those requiring network access, an
            interactive desktop session, integration via COM, or very precise
            timing.  Finally, set the stop-on-failure flag for the test suite so
            that we halt the entire build process immediately upon encountering
            the first test failure.
  -->
  <PropertyGroup Condition="'$(EagleTestType)' != ''">
    <EagleCommonTestArguments Condition="'$(EagleCommonTestArguments)' == ''">-namespaces true -preInitialize &quot;set no(speech) true; set no(network) true; set no(excel) true; set no(preciseTiming) true; set test_stop_on_failure true; set test_stop_on_leak true; object invoke Interpreter.GetActive Quiet true; object invoke -flags +NonPublic Interpreter.GetActive SetNoBackgroundError true&quot;</EagleCommonTestArguments>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: For all non-default builds, set the build suffix for this test run
            (primarily for the benefit of the test log file).  Also, set the
            threshold for the percentage of tests that must pass for this test
            run to be considered successful.  This should almost always be 100%
            unless there is a very special reason.
  -->
  <PropertyGroup Condition="'$(EagleTestType)' != '' And
                            '$(EagleTestType)' != 'Default' And
                            '$(EagleTestType)' != 'NetFx20'">
    <EagleTestArguments Condition="'$(EagleTestArguments)' == ''">-preInitialize &quot;set eagle_platform(suffix) $(EagleConfigurationSuffix); set test_threshold 100&quot;</EagleTestArguments>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      HACK: For all non-default builds, we want to skip running the performance
            tests (i.e. "benchmark.eagle" and "perf*.eagle") either because the
            basic performance has already been verified to be roughly the same
            (or better) than the default build OR because we lack the necessary
            fine-grained timing functionality, which requires access to native
            code and the Win32 API.
  -->
  <PropertyGroup Condition="'$(EagleTestType)' != '' And
                            '$(EagleTestPerformance)' != 'true'">
    <EagleTestFlags>$(EagleTestFlags) -notFile &quot;benchmark.eagle perf*.eagle&quot;</EagleTestFlags>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: Check if some specific test file patterns need to be excluded.  If
            so, add the necessary arguments to the existing test flags, if any.
  -->
  <PropertyGroup Condition="'$(EagleTestNotFile)' != ''">
    <EagleTestFlags>$(EagleTestFlags) -notFile &quot;$(EagleTestNotFile)&quot;</EagleTestFlags>
  </PropertyGroup>

  <!--
  ******************************************************************************
  -->

  <!--
      NOTE: Check if some specific test file patterns need to be included.  If
            so, add the necessary arguments to the existing test flags, if any.
  -->
  <PropertyGroup Condition="'$(EagleTestFile)' != ''">
    <EagleTestFlags>$(EagleTestFlags) -file &quot;$(EagleTestFile)&quot;</EagleTestFlags>
  </PropertyGroup>
</Project>
