aboutsummaryrefslogtreecommitdiffstats
path: root/README
blob: 5dca309b47b108f60791ec0641e03fbaec3bd5a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
How to build
============

The instructions should help you build the Qt Visual Studio Tools from scratch.



Get the sources
---------------

Use Git to check out the Qt Visual Studio Tools sources that are hosted at:

http://code.qt.io/cgit/qt-labs/vstools.git/



Build a static Qt
-----------------

Building the Qt Visual Studio Tools from sources requires a static build of Qt (version 5.6.0
or newer). Supported compilers are MSVC 2013 or newer, GCC 4.7 or newer, and Clang 3.1 or newer.

See the Qt documentation for the prerequisites and steps to build Qt from sources.
https://wiki.qt.io/Building_Qt_5_from_Git#Windows

Recommended configuration options:
configure -prefix %CD%\qtbase -release -static -static-runtime -opensource -nomake examples -nomake tests

Recommended (n)make options: (n)make module-qtbase



Build the Qt Visual Studio Tools
--------------------------------

Change the directory into 'src' and run 'qmake && make' (or 'mingw32-make', 'nmake' ...) to build
the Qt Visual Studio Tools command line applications. Once finished, open the solution QtVsTools.sln
in Visual Studio and build the solution.

To debug the resulting VSIX, select the 'QtVsTools' node, right click and choose 'Properties|Debug'.
Update 'Start Action|Start external program:' to point to your Visual Studio 'devenv.exe' application.
Update 'Start Options|Command line arguments:' with '/rootSuffix Exp'. Note: The implemented post
build targets will only work reliable if you use the 'Exp' hive of Visual Studio.



Build the Qt Visual Studio Tools documentation
----------------------------------------------

Run 'qmake && make docs' (or 'mingw32-make docs', 'nmake docs' ...) from the root directory to
build the Qt Visual Studio Tools documentation. You need to have 'qdoc' and friends built already.

See the Qt documentation for the prerequisites and steps to build Qt documentation from sources.
https://wiki.qt.io/Building_Qt_Documentation




Product name or Publisher name update
-------------------------------------

Open the file 'source.extension.vsixmanifest' inside the 'src\config\$(VisualStudioVersion)'
directory and update the 'DisplayName' tag's value or the 'Identity' tag's 'Publisher' attribute.
Important: Updating the information requires also updating the MsBuild 'AfterTargets' information
inside the 'qtvstools.afterbuild.targets' file in the 'src\config' directory.



Version number update
---------------------

Open the file 'source.extension.vsixmanifest' inside the 'src\config\$(VisualStudioVersion)'
directory and update the 'Identity' tag's 'Version' attribute.
Important: Updating the version number there requires also updating the 'VsixVersion' tag at the
top of the 'qtvstools.targets' file in the same directory.



Support for newer Visual Studio Versions
----------------------------------------

Add a new directory in 'src\config' matching '$(VisualStudioVersion)' by copying one of the existing
directories.

Minimum changes to the 'qtvstools.targets' file:

Update the 'Project' tag's 'ToolsVersion' attribute to match the new VS tools version.
Update the 'DefineConstants' tag's value to match the new VS version.
Update the 'ItemGroup' tag's 'Condition' attribute to match the new VS version.
Update the 'Reference' tag's 'Include' attribute to match the new VS version, most likely the following:
    - Microsoft.VisualStudio.ExtensionsExplorer.UI
    - Microsoft.VisualStudio.Shell.{VersionNumber}
    - Microsoft.VisualStudio.VCCodeModel
    - Microsoft.VisualStudio.VCProjectEngine

Minimum changes to the 'source.extension.vsixmanifest' file:

Update the 'Identity' tag's 'Id' attribute with a new GUID.



How to locally test the Qt Visual Studio Tools update
-----------------------------------------------------

Inside the src\config directory, edit the qt.io.xml file and modify the following tags:

    <updated>2016-11-11T10:51:55Z</updated>   Use the current date and time, keep the 'T' and 'Z'
    <id>{ Product ID }</id>                   Set to the Product ID that can be found in the 'source.extension.vsixmanifest' file,
                                              for example: <id>QtVsTools.30112013-cd02-4fd0-89bd-e36f85abe16a</id>
    <Version>{ Version }</Version>            Set to the Version that can be found in the 'source.extension.vsixmanifest' file,
                                              for example: <Version>2.0.0</Version>

Copy the XML file and the VSIX package inside a new folder side by side and open the
'Tools | Options | Extensions and Updates' settings dialog in Visual Studio. Add a new entry in the
Additional Extension Gallery, like this:

    Name: qt.io
    Url: file://path/to/your/atom.xml