diff options
author | Miguel Costa <miguel.costa@qt.io> | 2020-12-11 16:58:06 +0100 |
---|---|---|
committer | Miguel Costa <miguel.costa@qt.io> | 2020-12-17 13:20:30 +0000 |
commit | cb9ec156845a9efc163a9c67d7a54c8ca790e805 (patch) | |
tree | ce0b45168cccc98f5c157a5ca1730ee94d796976 | |
parent | 3ff1f75dc878bd76186e1925f54c68ee31c42afc (diff) |
Integrate Qt.props in the VS Property Manager
The Qt property definitions file (Qt.props) will now be shown in the
evaluation list of the Property Manager window. This allows the user to
customize the order of evaluation of Qt.props in relation to other
property files loaded during the build, thereby defining the correct
dependency between Qt properties and other build settings. Previously,
the order of evaluation of Qt.props was fixed and could only be changed
by manually editing the project file's XML.
Allowing Qt.props to be manipulated in the Property Manager window will
enable the user to define properties and default metadata within the
Qt.props itself. To ensure these custom definitions are not lost when
installing Qt/MSBuild files, the Qt.props file will no longer be
replaced during start-up.
Task-number: QTVSADDINBUG-748
Change-Id: Icaee64772f41300a1e8faad131e3b09b8185fc3b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
-rw-r--r-- | src/config/12.0/source.extension.vsixmanifest_TT | 3 | ||||
-rw-r--r-- | src/qtmsbuild/Qt.props | 59 | ||||
-rw-r--r-- | src/qtmsbuild/QtMSBuild.csproj | 6 | ||||
-rw-r--r-- | src/qtmsbuild/qt.targets | 8 | ||||
-rw-r--r-- | src/qtmsbuild/qt_private.props | 3 | ||||
-rw-r--r-- | src/qtmsbuild/qt_settings.xml | 1 | ||||
-rw-r--r-- | src/qtmsbuild/qt_settings_vs2015.xml | 1 | ||||
-rw-r--r-- | src/qttemplates/console/console.vcxproj | 11 | ||||
-rw-r--r-- | src/qttemplates/designer/designer.vcxproj | 11 | ||||
-rw-r--r-- | src/qttemplates/empty/empty.vcxproj | 11 | ||||
-rw-r--r-- | src/qttemplates/gui/gui.vcxproj | 11 | ||||
-rw-r--r-- | src/qttemplates/lib/lib.vcxproj | 11 | ||||
-rw-r--r-- | src/qttemplates/quick/quick.vcxproj | 11 | ||||
-rw-r--r-- | src/qttemplates/server/server.vcxproj | 11 | ||||
-rw-r--r-- | src/qtvstools.core/Resources.cs | 2 | ||||
-rw-r--r-- | src/qtvstools/QtVsTools.csproj | 10 | ||||
-rw-r--r-- | src/qtvstools/Vsix.cs | 41 | ||||
-rw-r--r-- | src/qtwizard/Wizards/ProjectWizard/ProjectTemplateWizard.cs | 1 |
18 files changed, 156 insertions, 56 deletions
diff --git a/src/config/12.0/source.extension.vsixmanifest_TT b/src/config/12.0/source.extension.vsixmanifest_TT index f8870814..9ec4a28c 100644 --- a/src/config/12.0/source.extension.vsixmanifest_TT +++ b/src/config/12.0/source.extension.vsixmanifest_TT @@ -139,6 +139,9 @@ Type="File" d:Source="File" Path="qtmsbuild\qt.props" d:VsixSubPath="qtmsbuild" /> <Asset + Type="File" d:Source="File" Path="qtmsbuild\qt_private.props" + d:VsixSubPath="qtmsbuild" /> + <Asset Type="File" d:Source="File" Path="qtmsbuild\qt.targets" d:VsixSubPath="qtmsbuild" /> <Asset diff --git a/src/qtmsbuild/Qt.props b/src/qtmsbuild/Qt.props new file mode 100644 index 00000000..3ad337af --- /dev/null +++ b/src/qtmsbuild/Qt.props @@ -0,0 +1,59 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the Qt VS Tools. +** +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +--> +<!-- +/////////////////////////////////////////////////////////////////////////////////////////////////// +// Item type definition and default values +// --> +<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <!-- + ///////////////////////////////////////////////////////////////////////////////////////////////// + // Import private Qt property definitions + // --> + <ImportGroup Label="Qt"> + <Import Project="$(MSBuildThisFileDirectory)\qt_private.props"/> + </ImportGroup> + <!-- + ///////////////////////////////////////////////////////////////////////////////////////////////// + // User-defined settings + // --> + <PropertyGroup Label="UserMacros"> + <!-- Placeholder for user macros written by VS Property Manager --> + </PropertyGroup> + <PropertyGroup> + <!-- Placeholder for properties written by VS Property Manager --> + </PropertyGroup> + <ItemDefinitionGroup> + <!-- Placeholder for default metadata written by VS Property Manager --> + </ItemDefinitionGroup> + <ItemGroup> + <!-- Placeholder for items written by VS Property Manager --> + </ItemGroup> +</Project> diff --git a/src/qtmsbuild/QtMSBuild.csproj b/src/qtmsbuild/QtMSBuild.csproj index 84ec9583..3407e054 100644 --- a/src/qtmsbuild/QtMSBuild.csproj +++ b/src/qtmsbuild/QtMSBuild.csproj @@ -50,7 +50,11 @@ <CopyToOutputDirectory>Always</CopyToOutputDirectory> <SubType>Designer</SubType> </Content> - <Content Include="qt.props"> + <Content Include="Qt.props"> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + <SubType>Designer</SubType> + </Content> + <Content Include="qt_private.props"> <CopyToOutputDirectory>Always</CopyToOutputDirectory> <SubType>Designer</SubType> </Content> diff --git a/src/qtmsbuild/qt.targets b/src/qtmsbuild/qt.targets index 0d9b2fc6..3a99ed22 100644 --- a/src/qtmsbuild/qt.targets +++ b/src/qtmsbuild/qt.targets @@ -36,6 +36,14 @@ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <!-- ///////////////////////////////////////////////////////////////////////////////////////////////// + // Fail-safe import of private definitions + // --> + <Import + Condition="'$(QtPrivateLoaded)' != 'true'" + Project="$(MSBuildThisFileDirectory)\qt_private.props"/> + + <!-- + ///////////////////////////////////////////////////////////////////////////////////////////////// // Defaults for project version constants // --> <PropertyGroup> diff --git a/src/qtmsbuild/qt_private.props b/src/qtmsbuild/qt_private.props index 159d2dc7..a0bb3b70 100644 --- a/src/qtmsbuild/qt_private.props +++ b/src/qtmsbuild/qt_private.props @@ -34,6 +34,9 @@ // Item type definition and default values // --> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <QtPrivateLoaded>true</QtPrivateLoaded> + </PropertyGroup> <!-- ///////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/src/qtmsbuild/qt_settings.xml b/src/qtmsbuild/qt_settings.xml index e8b53546..b6a25d93 100644 --- a/src/qtmsbuild/qt_settings.xml +++ b/src/qtmsbuild/qt_settings.xml @@ -59,6 +59,7 @@ <EnumValue Name="QtVS_v301" DisplayName="Version 3.1"/> <EnumValue Name="QtVS_v302" DisplayName="Version 3.2"/> <EnumValue Name="QtVS_v303" DisplayName="Version 3.3"/> + <EnumValue Name="QtVS_v304" DisplayName="Version 3.4"/> </EnumProperty> <DynamicEnumProperty Name="QtInstall" diff --git a/src/qtmsbuild/qt_settings_vs2015.xml b/src/qtmsbuild/qt_settings_vs2015.xml index a42f9bfd..4170d399 100644 --- a/src/qtmsbuild/qt_settings_vs2015.xml +++ b/src/qtmsbuild/qt_settings_vs2015.xml @@ -59,6 +59,7 @@ <EnumValue Name="QtVS_v301" DisplayName="Version 3.1"/> <EnumValue Name="QtVS_v302" DisplayName="Version 3.2"/> <EnumValue Name="QtVS_v303" DisplayName="Version 3.3"/> + <EnumValue Name="QtVS_v304" DisplayName="Version 3.4"/> </EnumProperty> <DynamicEnumProperty Name="QtInstall" diff --git a/src/qttemplates/console/console.vcxproj b/src/qttemplates/console/console.vcxproj index bbb86c5a..fbd4048a 100644 --- a/src/qttemplates/console/console.vcxproj +++ b/src/qttemplates/console/console.vcxproj @@ -13,6 +13,10 @@ $Globals$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> $Configurations$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> + <Import Project="$(QtMsBuild)\qt_defaults.props" /> + </ImportGroup> +$QtSettings$ <Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')"> @@ -23,14 +27,7 @@ $Configurations$ <ImportGroup Label="Shared" /> $PropertySheets$ <PropertyGroup Label="UserMacros" /> - <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> - <Import Project="$(QtMsBuild)\qt_defaults.props" /> - </ImportGroup> $Properties$ -$QtSettings$ - <ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')"> - <Import Project="$(QtMsBuild)\qt.props" /> - </ImportGroup> $BuildSettings$ <ItemGroup> <ClCompile Include="main.cpp" /> diff --git a/src/qttemplates/designer/designer.vcxproj b/src/qttemplates/designer/designer.vcxproj index 0ecc97b8..f32dc6e3 100644 --- a/src/qttemplates/designer/designer.vcxproj +++ b/src/qttemplates/designer/designer.vcxproj @@ -13,6 +13,10 @@ $Globals$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> $Configurations$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> + <Import Project="$(QtMsBuild)\qt_defaults.props" /> + </ImportGroup> +$QtSettings$ <Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')"> @@ -23,14 +27,7 @@ $Configurations$ <ImportGroup Label="Shared" /> $PropertySheets$ <PropertyGroup Label="UserMacros" /> - <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> - <Import Project="$(QtMsBuild)\qt_defaults.props" /> - </ImportGroup> $Properties$ -$QtSettings$ - <ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')"> - <Import Project="$(QtMsBuild)\qt.props" /> - </ImportGroup> $BuildSettings$ <ItemGroup> <QtMoc Include="$headerfilename$"/> diff --git a/src/qttemplates/empty/empty.vcxproj b/src/qttemplates/empty/empty.vcxproj index 658b695e..70c2cef5 100644 --- a/src/qttemplates/empty/empty.vcxproj +++ b/src/qttemplates/empty/empty.vcxproj @@ -13,6 +13,10 @@ $Globals$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> $Configurations$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> + <Import Project="$(QtMsBuild)\qt_defaults.props" /> + </ImportGroup> +$QtSettings$ <Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')"> @@ -23,14 +27,7 @@ $Configurations$ <ImportGroup Label="Shared" /> $PropertySheets$ <PropertyGroup Label="UserMacros" /> - <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> - <Import Project="$(QtMsBuild)\qt_defaults.props" /> - </ImportGroup> $Properties$ -$QtSettings$ - <ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')"> - <Import Project="$(QtMsBuild)\qt.props" /> - </ImportGroup> $BuildSettings$ <ItemGroup> $ProjectItems$ diff --git a/src/qttemplates/gui/gui.vcxproj b/src/qttemplates/gui/gui.vcxproj index 0bd31e55..58731f3c 100644 --- a/src/qttemplates/gui/gui.vcxproj +++ b/src/qttemplates/gui/gui.vcxproj @@ -13,6 +13,10 @@ $Globals$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> $Configurations$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> + <Import Project="$(QtMsBuild)\qt_defaults.props" /> + </ImportGroup> +$QtSettings$ <Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')"> @@ -23,14 +27,7 @@ $Configurations$ <ImportGroup Label="Shared" /> $PropertySheets$ <PropertyGroup Label="UserMacros" /> - <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> - <Import Project="$(QtMsBuild)\qt_defaults.props" /> - </ImportGroup> $Properties$ -$QtSettings$ - <ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')"> - <Import Project="$(QtMsBuild)\qt.props" /> - </ImportGroup> $BuildSettings$ <ItemGroup> <QtRcc Include="$qrcfilename$"/> diff --git a/src/qttemplates/lib/lib.vcxproj b/src/qttemplates/lib/lib.vcxproj index 44b7ee57..e3f38124 100644 --- a/src/qttemplates/lib/lib.vcxproj +++ b/src/qttemplates/lib/lib.vcxproj @@ -13,6 +13,10 @@ $Globals$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> $Configurations$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> + <Import Project="$(QtMsBuild)\qt_defaults.props" /> + </ImportGroup> +$QtSettings$ <Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')"> @@ -23,14 +27,7 @@ $Configurations$ <ImportGroup Label="Shared" /> $PropertySheets$ <PropertyGroup Label="UserMacros" /> - <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> - <Import Project="$(QtMsBuild)\qt_defaults.props" /> - </ImportGroup> $Properties$ -$QtSettings$ - <ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')"> - <Import Project="$(QtMsBuild)\qt.props" /> - </ImportGroup> $BuildSettings$ <ItemGroup> <ClInclude Include="$saveglobal$_global.h"/> diff --git a/src/qttemplates/quick/quick.vcxproj b/src/qttemplates/quick/quick.vcxproj index 68f9ed6c..17f6b66a 100644 --- a/src/qttemplates/quick/quick.vcxproj +++ b/src/qttemplates/quick/quick.vcxproj @@ -13,6 +13,10 @@ $Globals$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> $Configurations$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> + <Import Project="$(QtMsBuild)\qt_defaults.props" /> + </ImportGroup> +$QtSettings$ <Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')"> @@ -23,14 +27,7 @@ $Configurations$ <ImportGroup Label="Shared" /> $PropertySheets$ <PropertyGroup Label="UserMacros" /> - <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> - <Import Project="$(QtMsBuild)\qt_defaults.props" /> - </ImportGroup> $Properties$ -$QtSettings$ - <ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')"> - <Import Project="$(QtMsBuild)\qt.props" /> - </ImportGroup> $BuildSettings$ <ItemGroup> <ClCompile Include="main.cpp"/> diff --git a/src/qttemplates/server/server.vcxproj b/src/qttemplates/server/server.vcxproj index a83c5ff9..b2a0d838 100644 --- a/src/qttemplates/server/server.vcxproj +++ b/src/qttemplates/server/server.vcxproj @@ -13,6 +13,10 @@ $Globals$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> $Configurations$ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> + <Import Project="$(QtMsBuild)\qt_defaults.props" /> + </ImportGroup> +$QtSettings$ <Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')"> @@ -23,14 +27,7 @@ $Configurations$ <ImportGroup Label="Shared" /> $PropertySheets$ <PropertyGroup Label="UserMacros" /> - <ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')"> - <Import Project="$(QtMsBuild)\qt_defaults.props" /> - </ImportGroup> $Properties$ -$QtSettings$ - <ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')"> - <Import Project="$(QtMsBuild)\qt.props" /> - </ImportGroup> $BuildSettings$ <ItemGroup> <QtUic Include="$uifilename$" /> diff --git a/src/qtvstools.core/Resources.cs b/src/qtvstools.core/Resources.cs index be807610..2bfced2b 100644 --- a/src/qtvstools.core/Resources.cs +++ b/src/qtvstools.core/Resources.cs @@ -83,7 +83,7 @@ namespace QtVsTools.Core // Qt VS project tag and format version public const string qtProjectKeyword = "QtVS"; - public const int qtProjectFormatVersion = 303; + public const int qtProjectFormatVersion = 304; public static string QtVSVersionTag => string.Format("{0}_v{1}", qtProjectKeyword, qtProjectFormatVersion); diff --git a/src/qtvstools/QtVsTools.csproj b/src/qtvstools/QtVsTools.csproj index 1ec1d62a..af71661e 100644 --- a/src/qtvstools/QtVsTools.csproj +++ b/src/qtvstools/QtVsTools.csproj @@ -577,8 +577,14 @@ <IncludeInVSIX>true</IncludeInVSIX> <SubType>Designer</SubType> </Content> - <Content Include="..\qtmsbuild\qt.props"> - <Link>QtMsBuild\qt.props</Link> + <Content Include="..\qtmsbuild\Qt.props"> + <Link>QtMsBuild\Qt.props</Link> + <CopyToOutputDirectory>Always</CopyToOutputDirectory> + <IncludeInVSIX>true</IncludeInVSIX> + <SubType>Designer</SubType> + </Content> + <Content Include="..\qtmsbuild\qt_private.props"> + <Link>QtMsBuild\qt_private.props</Link> <CopyToOutputDirectory>Always</CopyToOutputDirectory> <IncludeInVSIX>true</IncludeInVSIX> <SubType>Designer</SubType> diff --git a/src/qtvstools/Vsix.cs b/src/qtvstools/Vsix.cs index 298e97b4..7a40e2a7 100644 --- a/src/qtvstools/Vsix.cs +++ b/src/qtvstools/Vsix.cs @@ -130,6 +130,8 @@ namespace QtVsTools static EventWaitHandle initDone = new EventWaitHandle(false, EventResetMode.ManualReset); static Vsix instance = null; + const StringComparison IGNORE_CASE = StringComparison.InvariantCultureIgnoreCase; + /// <summary> /// Gets the instance of the package. /// </summary> @@ -223,6 +225,10 @@ namespace QtVsTools PkgInstallPath = Path.GetDirectoryName( Uri.UnescapeDataString(uri.AbsolutePath)) + @"\"; + /////////// + // Install Qt/MSBuild files from package folder to standard location + // -> %LOCALAPPDATA%\QtMsBuild + // var QtMsBuildDefault = Path.Combine( Environment.GetEnvironmentVariable("LocalAppData"), "QtMsBuild"); try { @@ -239,16 +245,45 @@ namespace QtVsTools var targetPathTemp = targetPath + ".tmp"; Directory.CreateDirectory(Path.GetDirectoryName(targetPath)); File.Copy(sourcePath, targetPathTemp, overwrite: true); - if (File.Exists(targetPath)) - File.Replace(targetPathTemp, targetPath, null); - else + //////// + // Copy Qt/MSBuild files to standard location, taking care not to + // overwrite the updated Qt props file, possibly containing user-defined + // build settings (written by the VS Property Manager). This file is + // recognized as being named "Qt.props" and containing the import + // statement for qt_private.props. + // + string qtPrivateImport = + @"<Import Project=""$(MSBuildThisFileDirectory)\qt_private.props"""; + Func<string, bool> isUpdateQtProps = (string filePath) => + { + return Path.GetFileName(targetPath).Equals("Qt.props", IGNORE_CASE) + && File.ReadAllText(targetPath).Contains(qtPrivateImport); + }; + if (!File.Exists(targetPath)) { + // Target file does not exist + // -> Create new File.Move(targetPathTemp, targetPath); + } else if (!isUpdateQtProps(targetPath)) { + // Target file is not the updated Qt.props + // -> Overwrite + File.Replace(targetPathTemp, targetPath, null); + } else { + // Target file *is* the updated Qt.props; skip! + // -> Remove temp file + File.Delete(targetPathTemp); + } } } } catch { + ///////// + // Error copying files to standard location. + // -> FAIL-SAFE: use source folder (within package) as the standard location QtMsBuildDefault = Path.Combine(PkgInstallPath, "QtMsBuild"); } + /////// + // Set %QTMSBUILD% by default to point to standard location of Qt/MSBuild + // var QtMsBuildPath = Environment.GetEnvironmentVariable("QtMsBuild"); if (string.IsNullOrEmpty(QtMsBuildPath)) { diff --git a/src/qtwizard/Wizards/ProjectWizard/ProjectTemplateWizard.cs b/src/qtwizard/Wizards/ProjectWizard/ProjectTemplateWizard.cs index ca9f7d9a..dca0dafd 100644 --- a/src/qtwizard/Wizards/ProjectWizard/ProjectTemplateWizard.cs +++ b/src/qtwizard/Wizards/ProjectWizard/ProjectTemplateWizard.cs @@ -447,6 +447,7 @@ namespace QtVsTools.Wizards.ProjectWizard xml.AppendLine(string.Format(@" <ImportGroup Label=""PropertySheets"" Condition=""'$(Configuration)|$(Platform)' == '{0}|{1}'""> <Import Project=""$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"" Condition=""exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')"" Label=""LocalAppDataPlatform"" /> + <Import Project=""$(QtMsBuild)\Qt.props"" /> </ImportGroup>", /*{0}*/ c.Name, /*{1}*/ c.Platform)); |