mirror of
https://github.com/Alia5/GlosSI.git
synced 2024-11-09 01:10:24 +00:00
aff24b8a7e
Add QtMsBuild for appveyor -.-
561 lines
22 KiB
XML
561 lines
22 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
/****************************************************************************
|
|
**
|
|
** Copyright (C) 2019 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$
|
|
**
|
|
****************************************************************************/
|
|
-->
|
|
<!--
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Read Qt Build Variables
|
|
// -->
|
|
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
|
|
<PropertyGroup Condition="'$(QtVsProjectSettings)' == 'true'">
|
|
<QtOuterBuildDependsOn>QtVarsPrepare;QtVars;$(QtDependsOn)</QtOuterBuildDependsOn>
|
|
<CleanDependsOn>$(CleanDependsOn);QtVarsClean</CleanDependsOn>
|
|
</PropertyGroup>
|
|
|
|
<Target Name="ResolveHost" DependsOnTargets="ResolveRemoteDir"
|
|
Condition="'$(ApplicationType)' == 'Linux' AND '$(PlatformToolset)' != 'WSL_1_0'">
|
|
<ResolveRemoteDir
|
|
Condition="'$(_ResolvedRemoteProjectDir)' == ''"
|
|
RemoteProjectDir="$(RemoteProjectDir)"
|
|
RemoteTarget="$(ResolvedRemoteTarget)"
|
|
ProjectDir="$(ProjectDir)"
|
|
IntermediateDir="$(IntDir)"
|
|
RemoteProjectDirFile="$(RemoteProjectDirFile)">
|
|
<Output TaskParameter="ResolvedRemoteProjectDir" PropertyName="_ResolvedRemoteProjectDir"/>
|
|
</ResolveRemoteDir>
|
|
</Target>
|
|
|
|
<!--
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// TARGET QtVars
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Call qmake with generated .pro file to export Qt variables into MSBuild .props file
|
|
// -->
|
|
<Target
|
|
Name="QtVars"
|
|
Condition="'$(QtVsProjectSettings)' == 'true'"
|
|
DependsOnTargets="QtMocInit;QtUicInit;ResolveHost"
|
|
Inputs="$(MSBuildProjectFile)" Outputs="$(QtVarsFilePath)">
|
|
|
|
<!--// Check if qmake is in the tools path -->
|
|
<Error Condition="'$(QtToolsPath)' == ''" Text="There's no Qt version assigned to project $(MSBuildProjectFile) for configuration $(Configuration)/$(Platform). Please assign a Qt installation in 'Qt Project Settings'."/>
|
|
<Error
|
|
Condition="'$(ApplicationType)' != 'Linux' AND !Exists('$(QtToolsPath)\qmake.exe')"
|
|
Text="qmake not found in $(QtToolsPath) when building project $(MSBuildProjectFile)"/>
|
|
|
|
<!--// Ensure C++ compiler in PATH -->
|
|
<Exec
|
|
Condition="'$(ApplicationType)' != 'Linux'"
|
|
Command="WHERE /Q cl.exe" IgnoreExitCode="true">
|
|
<Output TaskParameter="ExitCode" PropertyName="ErrorLevel"/>
|
|
</Exec>
|
|
<SetEnv
|
|
Condition="'$(ApplicationType)' != 'Linux' AND '$(ErrorLevel)' != '0'"
|
|
Name="PATH" Prefix="true" Value="$(ExecutablePath)"/>
|
|
|
|
<!--// Set-up temp directory -->
|
|
<RemoveDir
|
|
Directories="$(QtVarsWorkDir)"/>
|
|
<MakeDir
|
|
Directories="$(QtVarsWorkDir)"/>
|
|
|
|
<!--// Translate local paths to build host paths -->
|
|
<ItemGroup>
|
|
<LocalPath Include="WorkDir">
|
|
<Name>Path</Name>
|
|
<Item>$(QtVarsWorkDir)</Item>
|
|
<Value>$(QtVarsWorkDir)</Value>
|
|
</LocalPath>
|
|
<LocalPath Include="QMakeProps">
|
|
<Name>Path</Name>
|
|
<Item>$(QtVarsWorkDir)\props.txt</Item>
|
|
<Value>$(QtVarsWorkDir)\props.txt</Value>
|
|
</LocalPath>
|
|
<LocalPath Include="QMakeLog">
|
|
<Name>Path</Name>
|
|
<Item>$(QtVarsWorkDir)\qtvars.log</Item>
|
|
<Value>$(QtVarsWorkDir)\qtvars.log</Value>
|
|
</LocalPath>
|
|
<LocalPath Include="QMakeProj">
|
|
<Name>Path</Name>
|
|
<Item>$(QtVarsWorkDir)\qtvars.pro</Item>
|
|
<Value>$(QtVarsWorkDir)\qtvars.pro</Value>
|
|
</LocalPath>
|
|
<LocalPath Include="QtMakefile">
|
|
<Name>Path</Name>
|
|
<Item>$(QtVarsWorkDir)\Makefile</Item>
|
|
<Value>$(QtVarsWorkDir)\Makefile</Value>
|
|
</LocalPath>
|
|
</ItemGroup>
|
|
<HostTranslatePaths Items="@(LocalPath)" Names="Path">
|
|
<Output TaskParameter="Result" ItemName="HostPath"/>
|
|
</HostTranslatePaths>
|
|
<ItemGroup>
|
|
<WorkDir Include="@(HostPath->WithMetadataValue('Identity', 'WorkDir'))">
|
|
<LocalPath>%(Item)</LocalPath>
|
|
<HostPath>%(Value)</HostPath>
|
|
</WorkDir>
|
|
<QMakeProps Include="@(HostPath->WithMetadataValue('Identity', 'QMakeProps'))">
|
|
<LocalPath>%(Item)</LocalPath>
|
|
<HostPath>%(Value)</HostPath>
|
|
</QMakeProps>
|
|
<QMakeLog Include="@(HostPath->WithMetadataValue('Identity', 'QMakeLog'))">
|
|
<LocalPath>%(Item)</LocalPath>
|
|
<HostPath>%(Value)</HostPath>
|
|
</QMakeLog>
|
|
<QMakeProj Include="@(HostPath->WithMetadataValue('Identity', 'QMakeProj'))">
|
|
<LocalPath>%(Item)</LocalPath>
|
|
<HostPath>%(Value)</HostPath>
|
|
</QMakeProj>
|
|
<QtMakefile Include="@(HostPath->WithMetadataValue('Identity', 'QtMakefile'))">
|
|
<LocalPath>%(Item)</LocalPath>
|
|
<HostPath>%(Value)</HostPath>
|
|
</QtMakefile>
|
|
</ItemGroup>
|
|
|
|
<!--// Run qmake: query properties -->
|
|
<PropertyGroup>
|
|
<Cmd><![CDATA["$(QtToolsPath)/qmake" -query]]></Cmd>
|
|
</PropertyGroup>
|
|
<HostExec
|
|
Command="$(Cmd)" RedirectStdOut="props.txt"
|
|
WorkingDirectory="@(WorkDir->'%(HostPath)')"
|
|
Outputs="@(QMakeProps)"
|
|
RemoteTarget="$(ResolvedRemoteTarget)"
|
|
RemoteProjectDir="$(_ResolvedRemoteProjectDir)" />
|
|
<ReadLinesFromFile
|
|
File="@(QMakeProps->'%(LocalPath)')">
|
|
<Output TaskParameter="Lines" ItemName="QMakeQueryResult"/>
|
|
</ReadLinesFromFile>
|
|
|
|
<!--// Parse qmake query result -->
|
|
<ItemGroup>
|
|
<QMakeQueryResult>
|
|
<SepIdx>$([System.String]::Copy('%(Identity)').IndexOf(':'))</SepIdx>
|
|
</QMakeQueryResult>
|
|
<QMakeQueryResult>
|
|
<ValueIdx>$([MSBuild]::Add(%(SepIdx), 1))</ValueIdx>
|
|
</QMakeQueryResult>
|
|
<QMakeQueryResult>
|
|
<Name>$([System.String]::Copy('%(Identity)').Substring(0, %(SepIdx)).Replace('/', "SLASH"))</Name>
|
|
<Value>$([System.String]::Copy('%(Identity)').Substring(%(ValueIdx)))</Value>
|
|
</QMakeQueryResult>
|
|
<QMakeProperty
|
|
Include="@(QMakeQueryResult->'%(Name)')"
|
|
RemoveMetadata="Name;SepIdx;ValueIdx"/>
|
|
</ItemGroup>
|
|
|
|
<!--// Parse Qt version -->
|
|
<PropertyGroup Condition="'@(QMakeProperty)' != ''">
|
|
<QtVersionMajor>0</QtVersionMajor>
|
|
<QtVersionMinor>0</QtVersionMinor>
|
|
<QtVersionPatch>0</QtVersionPatch>
|
|
<QtVersionParts>0</QtVersionParts>
|
|
<QtVersion
|
|
>@(QMakeProperty->WithMetadataValue('Identity', 'QT_VERSION')->'%(Value)')</QtVersion>
|
|
<QtVersionParts
|
|
Condition="'$(QtVersion)' != ''">$(QtVersion.Split('.').Length)</QtVersionParts>
|
|
<QtVersionMajor Condition="$(QtVersionParts) >= 1">$(QtVersion.Split('.')[0])</QtVersionMajor>
|
|
<QtVersionMinor Condition="$(QtVersionParts) >= 2">$(QtVersion.Split('.')[1])</QtVersionMinor>
|
|
<QtVersionPatch Condition="$(QtVersionParts) >= 3">$(QtVersion.Split('.')[2])</QtVersionPatch>
|
|
</PropertyGroup>
|
|
|
|
<!--// Workaround for 5.13.2 NDEBUG obsession -->
|
|
<PropertyGroup
|
|
Condition="$(QtVersionMajor) > 5
|
|
OR ($(QtVersionMajor) == 5 AND ($(QtVersionMinor) > 13
|
|
OR ($(QtVersionMinor) == 13 AND ($(QtVersionPatch) >= 2))))">
|
|
<QMakeOptionEarly>true</QMakeOptionEarly>
|
|
</PropertyGroup>
|
|
|
|
<!--// qmake command line arguments -->
|
|
<ItemGroup>
|
|
<QMakeArgsList Condition="'$(QMakeOptionEarly)' == 'true'" Include="-early"/>
|
|
<QMakeArgsList Include="CONFIG -= debug release debug_and_release"/>
|
|
<QMakeArgsList Include="CONFIG += $(QtBuildConfig)"/>
|
|
<QMakeArgsList Include="$(QMakeExtraArgs)"/>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<QMakeArgsList>
|
|
<Escaped>%(Identity)</Escaped>
|
|
<Escaped Condition="$([System.String]::Copy('%(Identity)').Contains(' '))
|
|
OR $([System.String]::Copy('%(Identity)').Contains('"'))"
|
|
>"$([System.String]::Copy('%(Identity)').Replace('"','\"'))"</Escaped>
|
|
</QMakeArgsList>
|
|
</ItemGroup>
|
|
<PropertyGroup>
|
|
<QMakeArgs>@(QMakeArgsList->'%(Escaped)', ' ')</QMakeArgs>
|
|
</PropertyGroup>
|
|
|
|
<!--// Modules and additional .pro file lines -->
|
|
<ItemGroup>
|
|
<QtModuleList Include="$(QtModules)"/>
|
|
<QMakeCodeLine Include="$(QMakeCodeLines)"/>
|
|
</ItemGroup>
|
|
|
|
<!--// Generate INCLUDEPATH value -->
|
|
<ItemGroup>
|
|
<QtIncludesList Include="$(QtHeaderSearchPath)"/>
|
|
<QtIncludes Include=
|
|
"$([System.IO.Path]::Combine($(QtInstallDir),$([System.String]::Copy('%(QtIncludesList.Identity)'))))"/>
|
|
<QtIncludesList Remove="@(QtIncludesList)"/>
|
|
</ItemGroup>
|
|
<PropertyGroup>
|
|
<QtIncludes>@(QtIncludes->'"%(Identity)"', ' ')</QtIncludes>
|
|
</PropertyGroup>
|
|
|
|
<!--// Generate LIBS value -->
|
|
<ItemGroup>
|
|
<QtLibsList Include="$(QtLibrarySearchPath)"/>
|
|
<QtLibs Include=
|
|
"$([System.IO.Path]::Combine($(QtInstallDir),$([System.String]::Copy('%(QtLibsList.Identity)'))))"/>
|
|
<QtLibsList Include="@(QtLibsList)"/>
|
|
</ItemGroup>
|
|
<PropertyGroup>
|
|
<QtLibs>@(QtLibs->'"-L%(Identity)"', ' ')</QtLibs>
|
|
</PropertyGroup>
|
|
|
|
<Message
|
|
Importance="high"
|
|
Text="Reading Qt configuration ($(QtToolsPath)/qmake)"/>
|
|
|
|
<PropertyGroup>
|
|
|
|
<!--// .pro file configuration -->
|
|
<QtVarsProFileConfig>
|
|
CONFIG += no_fixpath
|
|
</QtVarsProFileConfig>
|
|
|
|
<!--// .pro file input parameters -->
|
|
<QtVarsProFileInput>
|
|
<!--
|
|
# Selected Qt modules -->
|
|
QT += @(QtModuleList->'%(Identity)', ' ')
|
|
<!--
|
|
# Custom additional .pro file code (from property page) -->
|
|
@(QMakeCodeLine->'%(Identity)','%0D%0A')
|
|
</QtVarsProFileInput>
|
|
<!--
|
|
# Custom additional header search paths (from property page) -->
|
|
<QtVarsProFileInput Condition="'$(QtHeaderSearchPath)' != ''">
|
|
$(QtVarsProFileInput)
|
|
INCLUDEPATH += $(QtIncludes)
|
|
</QtVarsProFileInput>
|
|
<!--
|
|
# Custom additional library search paths (from property page) -->
|
|
<QtVarsProFileInput Condition="'$(QtLibrarySearchPath)' != ''">
|
|
$(QtVarsProFileInput)
|
|
LIBS += $(QtLibs)
|
|
</QtVarsProFileInput>
|
|
<!--
|
|
# Undef UNICODE macro if project is configured with multi-byte char set -->
|
|
<QtVarsProFileInput Condition="'$(CharacterSet)' == 'MultiByte'">
|
|
$(QtVarsProFileInput)
|
|
DEFINES -= UNICODE _UNICODE
|
|
</QtVarsProFileInput>
|
|
</PropertyGroup>
|
|
|
|
<!--// Write .pro file to temp path -->
|
|
<WriteLinesToFile
|
|
File="$(QtVarsWorkDir)\qtvars.pro"
|
|
Lines="$(QtVarsProFileConfig)
|
|
;$(QtVarsProFileInput)"/>
|
|
|
|
<!--// Write start of Qt vars data file:
|
|
// * Open property group tag -->
|
|
<PropertyGroup>
|
|
<!--
|
|
######## BEGIN generated XML (.props) ##############################################################
|
|
## -->
|
|
<QtVarsDataFileText>
|
|
<![CDATA[
|
|
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<PropertyGroup>
|
|
]]>
|
|
</QtVarsDataFileText>
|
|
<!--
|
|
##
|
|
######## END generated XML (.props) ################################################################
|
|
-->
|
|
</PropertyGroup>
|
|
<WriteLinesToFile File="$(QtVarsWorkPath)" Lines="$(QtVarsDataFileText)" Overwrite="true"/>
|
|
|
|
<!--// Run qmake: convert Makefile vars to .props (XML) file -->
|
|
<PropertyGroup>
|
|
<Cmd><![CDATA["$(QtToolsPath)/qmake" $(QMakeArgs) qtvars.pro]]></Cmd>
|
|
</PropertyGroup>
|
|
<HostExec
|
|
Command="$(Cmd)" RedirectStdOut="qtvars.log" RedirectStdErr="STDOUT"
|
|
WorkingDirectory="@(WorkDir->'%(HostPath)')"
|
|
Inputs="@(QMakeProj)"
|
|
Outputs="@(QtMakefile);@(QMakeLog)"
|
|
RemoteTarget="$(ResolvedRemoteTarget)"
|
|
RemoteProjectDir="$(_ResolvedRemoteProjectDir)"
|
|
IgnoreExitCode="true">
|
|
<Output TaskParameter="ExitCode" PropertyName="ErrorLevel"/>
|
|
</HostExec>
|
|
|
|
<!--// Check qmake result -->
|
|
<PropertyGroup Condition="'$(ErrorLevel)' != '0' OR !Exists('$(QtVarsWorkDir)\Makefile')">
|
|
<QMakeError>true</QMakeError>
|
|
</PropertyGroup>
|
|
|
|
<!--// Get qmake console output -->
|
|
<ItemGroup>
|
|
<QMakeError Include="($(QtToolsPath)/qmake)"/>
|
|
<QMakeError Include="%24PWD=$(QtVarsWorkDir)"/>
|
|
</ItemGroup>
|
|
<ReadLinesFromFile
|
|
File="$(QtVarsWorkDir)\qtvars.log">
|
|
<Output TaskParameter="Lines" ItemName="QMakeError"/>
|
|
</ReadLinesFromFile>
|
|
<ItemGroup>
|
|
<QMakeError
|
|
Condition="$([System.String]::Copy('%(Identity)').StartsWith('Info: creating stash file'))"
|
|
Remove="@(QMakeError)"/>
|
|
<QMakeError
|
|
Condition="!Exists('$(QtVarsWorkDir)\Makefile')"
|
|
Include="Error creating Makefile"/>
|
|
</ItemGroup>
|
|
|
|
<!--// If error, show qmake console output and stop build -->
|
|
<Error
|
|
Condition="'$(QMakeError)' == 'true'"
|
|
File="$(MSBuildProjectFile)"
|
|
Text="ERROR running qmake%0D%0Aqmake: @(QMakeError->'%(Identity)','%0D%0Aqmake: ')%0D%0A"/>
|
|
<Message
|
|
Importance="high"
|
|
Condition="'$(QMakeError)' != 'true' AND '$(QtVarsDebug)' == 'true'"
|
|
Text="qmake: @(QMakeError->'%(Identity)','%0D%0Aqmake: ')"/>
|
|
|
|
<!--// Parse variable definition expressions -->
|
|
<ParseVarDefs
|
|
Condition="'$(QtVars)' != ''" QtVars="$(QtVars)">
|
|
<Output TaskParameter="OutVarDefs" ItemName="QtVarDef"/>
|
|
</ParseVarDefs>
|
|
|
|
<!--// Read variables from Makefile -->
|
|
<GetVarsFromMakefile
|
|
Makefile="$(QtVarsWorkDir)\Makefile" VarDefs="@(QtVarDef)" ExcludeValues="$(QtVarsWorkDir)">
|
|
<Output TaskParameter="OutVars" ItemName="QtVar"/>
|
|
</GetVarsFromMakefile>
|
|
|
|
<!--// Write variables as MSBuild properties to .props file -->
|
|
<PropertyGroup>
|
|
<QtMakefileVars Condition="'@(QtVar)' != ''">
|
|
<![CDATA[@(QtVar->'<Qt_%(Identity)_>%(Value)</Qt_%(Identity)_>','%0D%0A')]]>
|
|
</QtMakefileVars>
|
|
</PropertyGroup>
|
|
<WriteLinesToFile Condition="'$(QtMakefileVars)' != ''"
|
|
File="$(QtVarsWorkPath)" Lines="$([System.String]::Copy($(QtMakefileVars)))"/>
|
|
|
|
<!--// Write qmake properties as MSBuild properties to .props file -->
|
|
<PropertyGroup>
|
|
<QMakeProps Condition="'@(QtVar)' != ''">
|
|
<![CDATA[@(QMakeProperty->'<QMake_%(Identity)_>%(Value)</QMake_%(Identity)_>','%0D%0A')]]>
|
|
</QMakeProps>
|
|
</PropertyGroup>
|
|
<WriteLinesToFile Condition="'$(QMakeProps)' != ''"
|
|
File="$(QtVarsWorkPath)" Lines="$([System.String]::Copy($(QMakeProps)))"/>
|
|
|
|
<!--// Qt settings list for backup -->
|
|
<ItemGroup>
|
|
<QtInstall Include="$(QtInstall)"/>
|
|
<QtModules Include="$(QtModules)"/>
|
|
<QtPathBinaries Include="$(QtPathBinaries)"/>
|
|
<QtPathLibraryExecutables Include="$(QtPathLibraryExecutables)"/>
|
|
<QtHeaderSearchPath Include="$(QtHeaderSearchPath)"/>
|
|
<QtLibrarySearchPath Include="$(QtLibrarySearchPath)"/>
|
|
<QtVariables Include="$(QtVars)"/>
|
|
<QMakeCodeLines Include="$(QMakeCodeLines)"/>
|
|
<QtBuildConfig Include="$(QtBuildConfig)"/>
|
|
</ItemGroup>
|
|
|
|
<!--// Write end of .props (XML) file
|
|
// * Add Qt tools output directories to include path
|
|
// * Save settings backup
|
|
// * Close property group tag
|
|
// * Create QtVar items to export Qt variables to the calling instance of MSBuild
|
|
// * Close project tag -->
|
|
<PropertyGroup>
|
|
<!--
|
|
######## BEGIN generated XML (.props) ##############################################################
|
|
## -->
|
|
<QtVarsDataFileText>
|
|
<![CDATA[
|
|
<Qt_INCLUDEPATH_
|
|
>%24(Qt_INCLUDEPATH_)%3B@(QtIncludePath->Distinct(),'%3B')</Qt_INCLUDEPATH_>
|
|
<QtBkup_QtInstall
|
|
>@(QtInstall,'%3B')</QtBkup_QtInstall>
|
|
<QtBkup_QtModules
|
|
>@(QtModules,'%3B')</QtBkup_QtModules>
|
|
<QtBkup_QtPathBinaries
|
|
>@(QtPathBinaries,'%3B')</QtBkup_QtPathBinaries>
|
|
<QtBkup_QtPathLibraryExecutables
|
|
>@(QtPathLibraryExecutables,'%3B')</QtBkup_QtPathLibraryExecutables>
|
|
<QtBkup_QtHeaderSearchPath
|
|
>@(QtHeaderSearchPath,'%3B')</QtBkup_QtHeaderSearchPath>
|
|
<QtBkup_QtLibrarySearchPath
|
|
>@(QtLibrarySearchPath,'%3B')</QtBkup_QtLibrarySearchPath>
|
|
<QtBkup_QtVars
|
|
>@(QtVariables,'%3B')</QtBkup_QtVars>
|
|
<QtBkup_QMakeCodeLines
|
|
>@(QMakeCodeLines,'%3B')</QtBkup_QMakeCodeLines>
|
|
<QtBkup_QtBuildConfig
|
|
>@(QtBuildConfig,'%3B')</QtBkup_QtBuildConfig>
|
|
<QtVersion>$(QtVersion)</QtVersion>
|
|
<QtVersionMajor>$(QtVersionMajor)</QtVersionMajor>
|
|
<QtVersionMinor>$(QtVersionMinor)</QtVersionMinor>
|
|
<QtVersionPatch>$(QtVersionPatch)</QtVersionPatch>
|
|
</PropertyGroup>
|
|
</Project>
|
|
]]>
|
|
</QtVarsDataFileText>
|
|
<!--
|
|
##
|
|
######## END generated XML (.props) ################################################################
|
|
-->
|
|
</PropertyGroup>
|
|
<WriteLinesToFile File="$(QtVarsWorkPath)" Lines="$(QtVarsDataFileText)"/>
|
|
|
|
<!--// Create $(QtVarsOutputDir) -->
|
|
<MakeDir Directories="$(QtVarsOutputDir)"/>
|
|
|
|
<!--// Copy generated .props to $(QtVarsOutputDir) -->
|
|
<Delete
|
|
Condition="'$(ErrorLevel)' == '0'"
|
|
Files="$(QtVarsFilePath)"/>
|
|
<Copy
|
|
Condition="'$(ErrorLevel)' == '0'"
|
|
SourceFiles="$(QtVarsWorkPath)" DestinationFiles="$(QtVarsFilePath)"/>
|
|
|
|
<!--// Copy generated qtvars_plugin_import.cpp to $(QtVarsOutputDir) -->
|
|
<Delete
|
|
Condition="'$(ErrorLevel)' == '0'"
|
|
Files="$(QtVarsOutputDir)\qtvars_plugin_import.cpp"/>
|
|
<Copy
|
|
Condition="'$(ErrorLevel)' == '0' AND Exists('$(QtVarsWorkDir)\qtvars_plugin_import.cpp')"
|
|
SourceFiles="$(QtVarsWorkDir)\qtvars_plugin_import.cpp"
|
|
DestinationFiles="$(QtVarsOutputDir)\qtvars_plugin_import.cpp"/>
|
|
|
|
<!--// In design-time, copy generated .props to randomly named file -->
|
|
<PropertyGroup>
|
|
<QtVarsDesignTimeNew
|
|
Condition="'$(ErrorLevel)' == '0' AND '$(QtVSToolsBuild)' == 'true'"
|
|
>$([System.IO.Path]::Combine('$(TEMP)','$([System.IO.Path]::GetRandomFileName()).designtime.props'))
|
|
</QtVarsDesignTimeNew>
|
|
</PropertyGroup>
|
|
<Copy
|
|
Condition="'$(ErrorLevel)' == '0' AND '$(QtVSToolsBuild)' == 'true'"
|
|
SourceFiles="$(QtVarsFilePath)" DestinationFiles="$(QtVarsDesignTimeNew)"/>
|
|
<WriteLinesToFile
|
|
Condition="'$(ErrorLevel)' == '0' AND '$(QtVSToolsBuild)' == 'true'"
|
|
File="$(QtVarsIndexPathDesignTime)" Overwrite="true" Lines="$(QtVarsDesignTimeNew)"/>
|
|
|
|
<!--// Clean-up -->
|
|
<ItemGroup>
|
|
<QtModuleList Remove="@(QtModuleList)"/>
|
|
<QMakeCodeLine Remove="@(QMakeCodeLine)"/>
|
|
<QtIncludes Remove="@(QtIncludes)"/>
|
|
<QtLibs Remove="@(QtLibs)"/>
|
|
<QMakeError Remove="@(QMakeError)"/>
|
|
<QtInstall Remove="@(QtInstall)"/>
|
|
<QtModules Remove="@(QtModules)"/>
|
|
<QtPathBinaries Remove="@(QtPathBinaries)"/>
|
|
<QtPathLibraryExecutables Remove="@(QtPathLibraryExecutables)"/>
|
|
<QtHeaderSearchPath Remove="@(QtHeaderSearchPath)"/>
|
|
<QtLibrarySearchPath Remove="@(QtLibrarySearchPath)"/>
|
|
<QtVariables Remove="@(QtVariables)"/>
|
|
<QMakeCodeLines Remove="@(QMakeCodeLines)"/>
|
|
<QtBuildConfig Remove="@(QtBuildConfig)"/>
|
|
<QtVarDef Remove="@(QtVarDef)"/>
|
|
<QtVar Remove="@(QtVar)"/>
|
|
</ItemGroup>
|
|
<PropertyGroup>
|
|
<QtIncludes/>
|
|
<QtLibs/>
|
|
<QtVarsProFileConfig/>
|
|
<QtVarsProFileInput/>
|
|
<QtVarsDataFileText/>
|
|
<Cmd/>
|
|
<QtMakefileVars/>
|
|
</PropertyGroup>
|
|
</Target>
|
|
|
|
<!--
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// TARGET QtVarsPrepare
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Force QtVars target to run when Qt settings have changed
|
|
// -->
|
|
<Target Name="QtVarsPrepare" BeforeTargets="QtVars" Condition="Exists('$(QtVarsFilePath)')">
|
|
<Delete Files="$(QtVarsFilePath)" Condition="Exists('$(QtVarsFilePath)')
|
|
AND '$(QtBkup_QtInstall)' != '$(QtInstall)'" />
|
|
<Delete Files="$(QtVarsFilePath)" Condition="Exists('$(QtVarsFilePath)')
|
|
AND '$(QtBkup_QtModules)' != '$(QtModules)'" />
|
|
<Delete Files="$(QtVarsFilePath)" Condition="Exists('$(QtVarsFilePath)')
|
|
AND '$(QtBkup_QtPathBinaries)' != '$(QtPathBinaries)'" />
|
|
<Delete Files="$(QtVarsFilePath)" Condition="Exists('$(QtVarsFilePath)')
|
|
AND '$(QtBkup_QtPathLibraryExecutables)' != '$(QtPathLibraryExecutables)'" />
|
|
<Delete Files="$(QtVarsFilePath)" Condition="Exists('$(QtVarsFilePath)')
|
|
AND '$(QtBkup_QtHeaderSearchPath)' != '$(QtHeaderSearchPath)'" />
|
|
<Delete Files="$(QtVarsFilePath)" Condition="Exists('$(QtVarsFilePath)')
|
|
AND '$(QtBkup_QtLibrarySearchPath)' != '$(QtLibrarySearchPath)'" />
|
|
<Delete Files="$(QtVarsFilePath)" Condition="Exists('$(QtVarsFilePath)')
|
|
AND '$(QtBkup_QtVars)' != '$(QtVars)'" />
|
|
<Delete Files="$(QtVarsFilePath)" Condition="Exists('$(QtVarsFilePath)')
|
|
AND '$(QtBkup_QMakeCodeLines)' != '$(QMakeCodeLines)'" />
|
|
<Delete Files="$(QtVarsFilePath)" Condition="Exists('$(QtVarsFilePath)')
|
|
AND '$(QtBkup_QtBuildConfig)' != '$(QtBuildConfig)'" />
|
|
</Target>
|
|
|
|
<!--
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// TARGET QtVarsClean
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Delete all files generated by the QtVars target
|
|
// -->
|
|
<Target Name="QtVarsClean">
|
|
<RemoveDir Directories="$(QtVarsOutputDir)"/>
|
|
</Target>
|
|
|
|
<!--
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// TARGET QtVarsDesignTime
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Force QtVars target to run (called when project properties change)
|
|
// -->
|
|
<Target Name="QtVarsDesignTime">
|
|
<CallTarget Targets="QtVarsClean"/>
|
|
<CallTarget Targets="QtVars"/>
|
|
</Target>
|
|
|
|
</Project>
|