From ca47896204482bf4a6979e3838bf7f09f61cebeb Mon Sep 17 00:00:00 2001 From: giy <giy@omp-system.ru> Date: Fri, 02 Sep 2022 14:16:56 +0300 Subject: [PATCH] Обновление до версии 2.9.0 --- QtMSBuild/QtMsBuild/qt_vars.targets | 74 +++++++++++++++++++++++++++++++++++-- 1 files changed, 70 insertions(+), 4 deletions(-) diff --git a/QtMSBuild/QtMsBuild/qt_vars.targets b/QtMSBuild/QtMsBuild/qt_vars.targets index 80c141c..2ad7445 100644 --- a/QtMSBuild/QtMsBuild/qt_vars.targets +++ b/QtMSBuild/QtMsBuild/qt_vars.targets @@ -199,7 +199,8 @@ <ItemGroup> <QMakeArgsList Condition="'$(QMakeOptionEarly)' == 'true'" Include="-early"/> <QMakeArgsList Include="CONFIG -= debug release debug_and_release"/> - <QMakeArgsList Include="CONFIG += $(QtBuildConfig)"/> + <QMakeArgsList Include="CONFIG += $(QtBuildConfig) warn_off"/> + <QMakeArgsList Condition="'$(QtPlugin)' == 'true'" Include="CONFIG += plugin"/> <QMakeArgsList Include="$(QMakeExtraArgs)"/> </ItemGroup> <ItemGroup> @@ -281,7 +282,32 @@ $(QtVarsProFileInput) DEFINES -= UNICODE _UNICODE </QtVarsProFileInput> + <!-- +# Add dummy QML object if needed --> + <QtVarsProFileInput Condition="$(QtModules.Contains('quick'))"> + $(QtVarsProFileInput) + RESOURCES += qml.qrc + </QtVarsProFileInput> </PropertyGroup> + + <!--// Write dummy QML and QRC files --> + <WriteLinesToFile + Condition="$(QtModules.Contains('quick'))" + File="$(QtVarsWorkDir)\main.qml" + Lines=" +import QtQuick +DummyQmlObject { } +"/> + <WriteLinesToFile + Condition="$(QtModules.Contains('quick'))" + File="$(QtVarsWorkDir)\qml.qrc" + Lines=" +<RCC> + <qresource prefix="/"> + <file>main.qml</file> + </qresource> +</RCC> +"/> <!--// Write .pro file to temp path --> <WriteLinesToFile @@ -313,6 +339,7 @@ <Cmd><![CDATA["$(QtToolsPath)/qmake" $(QMakeArgs) qtvars.pro]]></Cmd> </PropertyGroup> <HostExec + Condition="'$(ApplicationType)' == 'Linux'" Command="$(Cmd)" RedirectStdOut="qtvars.log" RedirectStdErr="STDOUT" WorkingDirectory="@(WorkDir->'%(HostPath)')" Inputs="@(QMakeProj)" @@ -322,6 +349,45 @@ IgnoreExitCode="true"> <Output TaskParameter="ExitCode" PropertyName="ErrorLevel"/> </HostExec> + + <!--// Run qmake in Windows: set %CD% to subfolder of %TEMP% --> + <PropertyGroup + Condition="'$(ApplicationType)' != 'Linux'"> + <QMakeTempDir>$(Temp)\$([System.IO.Path]::GetRandomFileName())</QMakeTempDir> + </PropertyGroup> + <MakeDir + Condition="'$(ApplicationType)' != 'Linux'" + Directories="$(QMakeTempDir)" /> + <Copy + Condition="'$(ApplicationType)' != 'Linux'" + SourceFiles="$(QtVarsWorkDir)\qtvars.pro" + DestinationFolder="$(QMakeTempDir)" /> + <Copy + Condition="'$(ApplicationType)' != 'Linux' AND Exists('$(QtVarsWorkDir)\main.qml')" + SourceFiles="$(QtVarsWorkDir)\main.qml" + DestinationFolder="$(QMakeTempDir)" /> + <Copy + Condition="'$(ApplicationType)' != 'Linux' AND Exists('$(QtVarsWorkDir)\qml.qrc')" + SourceFiles="$(QtVarsWorkDir)\qml.qrc" + DestinationFolder="$(QMakeTempDir)" /> + <HostExec + Condition="'$(ApplicationType)' != 'Linux'" + Command="$(Cmd)" RedirectStdOut="qtvars.log" RedirectStdErr="STDOUT" + WorkingDirectory="$(QMakeTempDir)" + IgnoreExitCode="true"> + <Output TaskParameter="ExitCode" PropertyName="ErrorLevel"/> + </HostExec> + <ItemGroup> + <QMakeGeneratedFiles Include="$(QMakeTempDir)\*" /> + </ItemGroup> + <Copy + Condition="'$(ApplicationType)' != 'Linux'" + SkipUnchangedFiles="true" + SourceFiles="@(QMakeGeneratedFiles)" + DestinationFolder="$(QtVarsWorkDir)" /> + <RemoveDir + Condition="'$(ApplicationType)' != 'Linux'" + Directories="$(QMakeTempDir)" /> <!--// Check qmake result --> <PropertyGroup @@ -501,15 +567,15 @@ <!--// In design-time, copy generated .props to randomly named file --> <PropertyGroup> <QtVarsDesignTimeNew - Condition="'$(ErrorLevel)' == '0' AND '$(QtVSToolsBuild)' == 'true'" + Condition="'$(ErrorLevel)' == '0' AND '$(QtDesignTimeBuild)' == 'true'" >$([System.IO.Path]::Combine('$(TEMP)','$([System.IO.Path]::GetRandomFileName()).designtime.props')) </QtVarsDesignTimeNew> </PropertyGroup> <Copy - Condition="'$(ErrorLevel)' == '0' AND '$(QtVSToolsBuild)' == 'true'" + Condition="'$(ErrorLevel)' == '0' AND '$(QtDesignTimeBuild)' == 'true'" SourceFiles="$(QtVarsFilePath)" DestinationFiles="$(QtVarsDesignTimeNew)"/> <WriteLinesToFile - Condition="'$(ErrorLevel)' == '0' AND '$(QtVSToolsBuild)' == 'true'" + Condition="'$(ErrorLevel)' == '0' AND '$(QtDesignTimeBuild)' == 'true'" File="$(QtVarsIndexPathDesignTime)" Overwrite="true" Lines="$(QtVarsDesignTimeNew)"/> <!--// Clean-up --> -- Gitblit v1.9.1