aboutsummaryrefslogtreecommitdiffstats
path: root/src/version.tt
diff options
context:
space:
mode:
authorMiguel Costa <miguel.costa@qt.io>2018-11-23 18:07:43 +0100
committerMiguel Costa <miguel.costa@qt.io>2018-11-28 09:45:13 +0000
commit1ffd6fc620195523dc29173780cc92373454928a (patch)
treed2d951b5d44820ab9de9f1cc6fe4f65dcada60f7 /src/version.tt
parente2445defc5a80667a4afc5f9edf1f52845f25e81 (diff)
Automate change of version number
Before this patch, there were 40+ different locations in the source files where the version number was stored. The version number is now defined in a single source file as the property $(QtVSToolsVersion). Other sources that use the version string are then generated from corresponding templates using the template engine included in Visual Studio (Text Template Transformation Toolkit, or T4). Projects that integrate with the Qt VS Tools will also have access to the version definition property. Change-Id: Ib3a372c6f0e0c446eef98b4fa26b58e1565bb025 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Diffstat (limited to 'src/version.tt')
-rw-r--r--src/version.tt46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/version.tt b/src/version.tt
new file mode 100644
index 00000000..ebb2da84
--- /dev/null
+++ b/src/version.tt
@@ -0,0 +1,46 @@
+<#@include file="$(SolutionDir)\common.tt" #>
+<#@ assembly name="System.Core" #>
+<#@ assembly name="System.Xml" #>
+<#@ assembly name="System.Xml.Linq" #>
+<#@ assembly name="System.Linq" #>
+<#@ assembly name="System.Data.Linq" #>
+<#@ import namespace="System.Linq" #>
+<#@ import namespace="System.Xml" #>
+<#@ import namespace="System.Xml.Linq" #>
+<#
+/****************************************************************************
+**
+** Copyright (C) 2018 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$
+**
+****************************************************************************/
+ string QT_VS_TOOLS_VERSION = (string)XDocument.Load(SolutionDir + @"\version.targets")
+ .Descendants()
+ .Where(x => x.Name.LocalName == "QtVSToolsVersion")
+ .FirstOrDefault();
+/***************************************************************************/
+ string QT_VS_TOOLS_VERSION_TAG = QT_VS_TOOLS_VERSION.Replace(".", "");
+ string QT_VS_TOOLS_VERSION_ASSEMBLY = QT_VS_TOOLS_VERSION + ".0";
+ string QT_VS_TOOLS_VERSION_ASSEMBLY_FILE = QT_VS_TOOLS_VERSION + ".0";
+#> \ No newline at end of file