├── .gitattributes
├── .gitignore
├── LICENSE.TXT
├── README.md
├── Win32
├── Microsoft.Cpp.Win32.LLVM-vs2010.props
├── Microsoft.Cpp.Win32.LLVM-vs2010.targets
├── Microsoft.Cpp.Win32.LLVM-vs2012.props
├── Microsoft.Cpp.Win32.LLVM-vs2012.targets
├── Microsoft.Cpp.Win32.LLVM-vs2012_xp.props
├── Microsoft.Cpp.Win32.LLVM-vs2012_xp.targets
├── toolset-vs2013.props
├── toolset-vs2013.targets
├── toolset-vs2013_xp.props
├── toolset-vs2013_xp.targets
├── toolset-vs2014.props
├── toolset-vs2014.targets
├── toolset-vs2014_xp.props
├── toolset-vs2014_xp.targets
├── toolset-vs2017.props
├── toolset-vs2017.targets
├── toolset-vs2017_xp.props
└── toolset-vs2017_xp.targets
├── install.bat
├── uninstall.bat
└── x64
├── Microsoft.Cpp.x64.LLVM-vs2010.props
├── Microsoft.Cpp.x64.LLVM-vs2010.targets
├── Microsoft.Cpp.x64.LLVM-vs2012.props
├── Microsoft.Cpp.x64.LLVM-vs2012.targets
├── Microsoft.Cpp.x64.LLVM-vs2012_xp.props
├── Microsoft.Cpp.x64.LLVM-vs2012_xp.targets
├── toolset-vs2013.props
├── toolset-vs2013.targets
├── toolset-vs2013_xp.props
├── toolset-vs2013_xp.targets
├── toolset-vs2014.props
├── toolset-vs2014.targets
├── toolset-vs2014_xp.props
├── toolset-vs2014_xp.targets
├── toolset-vs2017.props
├── toolset-vs2017.targets
├── toolset-vs2017_xp.props
└── toolset-vs2017_xp.targets
/.gitattributes:
--------------------------------------------------------------------------------
1 | ###############################################################################
2 | # Set default behavior to automatically normalize line endings.
3 | ###############################################################################
4 | * text=auto
5 |
6 | *.bat text eol=crlf
7 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | ## Ignore Visual Studio temporary files, build results, and
2 | ## files generated by popular Visual Studio add-ons.
3 | ##
4 | ## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
5 |
6 | # User-specific files
7 | *.suo
8 | *.user
9 | *.userosscache
10 | *.sln.docstates
11 |
12 | # User-specific files (MonoDevelop/Xamarin Studio)
13 | *.userprefs
14 |
15 | # Build results
16 | [Dd]ebug/
17 | [Dd]ebugPublic/
18 | [Rr]elease/
19 | [Rr]eleases/
20 | bld/
21 | [Bb]in/
22 | [Oo]bj/
23 | [Ll]og/
24 |
25 | # Visual Studio 2015 cache/options directory
26 | .vs/
27 | # Uncomment if you have tasks that create the project's static files in wwwroot
28 | #wwwroot/
29 |
30 | # MSTest test Results
31 | [Tt]est[Rr]esult*/
32 | [Bb]uild[Ll]og.*
33 |
34 | # NUNIT
35 | *.VisualState.xml
36 | TestResult.xml
37 |
38 | # Build Results of an ATL Project
39 | [Dd]ebugPS/
40 | [Rr]eleasePS/
41 | dlldata.c
42 |
43 | # .NET Core
44 | project.lock.json
45 | project.fragment.lock.json
46 | artifacts/
47 | **/Properties/launchSettings.json
48 |
49 | *_i.c
50 | *_p.c
51 | *_i.h
52 | *.ilk
53 | *.meta
54 | *.obj
55 | *.pch
56 | *.pdb
57 | *.pgc
58 | *.pgd
59 | *.rsp
60 | *.sbr
61 | *.tlb
62 | *.tli
63 | *.tlh
64 | *.tmp
65 | *.tmp_proj
66 | *.log
67 | *.vspscc
68 | *.vssscc
69 | .builds
70 | *.pidb
71 | *.svclog
72 | *.scc
73 |
74 | # Chutzpah Test files
75 | _Chutzpah*
76 |
77 | # Visual C++ cache files
78 | ipch/
79 | *.aps
80 | *.ncb
81 | *.opendb
82 | *.opensdf
83 | *.sdf
84 | *.cachefile
85 | *.VC.db
86 | *.VC.VC.opendb
87 |
88 | # Visual Studio profiler
89 | *.psess
90 | *.vsp
91 | *.vspx
92 | *.sap
93 |
94 | # TFS 2012 Local Workspace
95 | $tf/
96 |
97 | # Guidance Automation Toolkit
98 | *.gpState
99 |
100 | # ReSharper is a .NET coding add-in
101 | _ReSharper*/
102 | *.[Rr]e[Ss]harper
103 | *.DotSettings.user
104 |
105 | # JustCode is a .NET coding add-in
106 | .JustCode
107 |
108 | # TeamCity is a build add-in
109 | _TeamCity*
110 |
111 | # DotCover is a Code Coverage Tool
112 | *.dotCover
113 |
114 | # Visual Studio code coverage results
115 | *.coverage
116 | *.coveragexml
117 |
118 | # NCrunch
119 | _NCrunch_*
120 | .*crunch*.local.xml
121 | nCrunchTemp_*
122 |
123 | # MightyMoose
124 | *.mm.*
125 | AutoTest.Net/
126 |
127 | # Web workbench (sass)
128 | .sass-cache/
129 |
130 | # Installshield output folder
131 | [Ee]xpress/
132 |
133 | # DocProject is a documentation generator add-in
134 | DocProject/buildhelp/
135 | DocProject/Help/*.HxT
136 | DocProject/Help/*.HxC
137 | DocProject/Help/*.hhc
138 | DocProject/Help/*.hhk
139 | DocProject/Help/*.hhp
140 | DocProject/Help/Html2
141 | DocProject/Help/html
142 |
143 | # Click-Once directory
144 | publish/
145 |
146 | # Publish Web Output
147 | *.[Pp]ublish.xml
148 | *.azurePubxml
149 | # TODO: Comment the next line if you want to checkin your web deploy settings
150 | # but database connection strings (with potential passwords) will be unencrypted
151 | *.pubxml
152 | *.publishproj
153 |
154 | # Microsoft Azure Web App publish settings. Comment the next line if you want to
155 | # checkin your Azure Web App publish settings, but sensitive information contained
156 | # in these scripts will be unencrypted
157 | PublishScripts/
158 |
159 | # NuGet Packages
160 | *.nupkg
161 | # The packages folder can be ignored because of Package Restore
162 | **/packages/*
163 | # except build/, which is used as an MSBuild target.
164 | !**/packages/build/
165 | # Uncomment if necessary however generally it will be regenerated when needed
166 | #!**/packages/repositories.config
167 | # NuGet v3's project.json files produces more ignorable files
168 | *.nuget.props
169 | *.nuget.targets
170 |
171 | # Microsoft Azure Build Output
172 | csx/
173 | *.build.csdef
174 |
175 | # Microsoft Azure Emulator
176 | ecf/
177 | rcf/
178 |
179 | # Windows Store app package directories and files
180 | AppPackages/
181 | BundleArtifacts/
182 | Package.StoreAssociation.xml
183 | _pkginfo.txt
184 |
185 | # Visual Studio cache files
186 | # files ending in .cache can be ignored
187 | *.[Cc]ache
188 | # but keep track of directories ending in .cache
189 | !*.[Cc]ache/
190 |
191 | # Others
192 | ClientBin/
193 | ~$*
194 | *~
195 | *.dbmdl
196 | *.dbproj.schemaview
197 | *.jfm
198 | *.pfx
199 | *.publishsettings
200 | orleans.codegen.cs
201 |
202 | # Since there are multiple workflows, uncomment next line to ignore bower_components
203 | # (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
204 | #bower_components/
205 |
206 | # RIA/Silverlight projects
207 | Generated_Code/
208 |
209 | # Backup & report files from converting an old project file
210 | # to a newer Visual Studio version. Backup files are not needed,
211 | # because we have git ;-)
212 | _UpgradeReport_Files/
213 | Backup*/
214 | UpgradeLog*.XML
215 | UpgradeLog*.htm
216 |
217 | # SQL Server files
218 | *.mdf
219 | *.ldf
220 | *.ndf
221 |
222 | # Business Intelligence projects
223 | *.rdl.data
224 | *.bim.layout
225 | *.bim_*.settings
226 |
227 | # Microsoft Fakes
228 | FakesAssemblies/
229 |
230 | # GhostDoc plugin setting file
231 | *.GhostDoc.xml
232 |
233 | # Node.js Tools for Visual Studio
234 | .ntvs_analysis.dat
235 | node_modules/
236 |
237 | # Typescript v1 declaration files
238 | typings/
239 |
240 | # Visual Studio 6 build log
241 | *.plg
242 |
243 | # Visual Studio 6 workspace options file
244 | *.opt
245 |
246 | # Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
247 | *.vbw
248 |
249 | # Visual Studio LightSwitch build output
250 | **/*.HTMLClient/GeneratedArtifacts
251 | **/*.DesktopClient/GeneratedArtifacts
252 | **/*.DesktopClient/ModelManifest.xml
253 | **/*.Server/GeneratedArtifacts
254 | **/*.Server/ModelManifest.xml
255 | _Pvt_Extensions
256 |
257 | # Paket dependency manager
258 | .paket/paket.exe
259 | paket-files/
260 |
261 | # FAKE - F# Make
262 | .fake/
263 |
264 | # JetBrains Rider
265 | .idea/
266 | *.sln.iml
267 |
268 | # CodeRush
269 | .cr/
270 |
271 | # Python Tools for Visual Studio (PTVS)
272 | __pycache__/
273 | *.pyc
274 |
275 | # Cake - Uncomment if you are using it
276 | # tools/**
277 | # !tools/packages.config
278 |
279 | # Telerik's JustMock configuration file
280 | *.jmconfig
281 |
282 | # BizTalk build output
283 | *.btp.cs
284 | *.btm.cs
285 | *.odx.cs
286 | *.xsd.cs
287 |
--------------------------------------------------------------------------------
/LICENSE.TXT:
--------------------------------------------------------------------------------
1 | ==============================================================================
2 | LLVM Release License
3 | ==============================================================================
4 | University of Illinois/NCSA
5 | Open Source License
6 |
7 | Copyright (c) 2003-2017 University of Illinois at Urbana-Champaign.
8 | All rights reserved.
9 |
10 | Developed by:
11 |
12 | LLVM Team
13 |
14 | University of Illinois at Urbana-Champaign
15 |
16 | http://llvm.org
17 |
18 | Permission is hereby granted, free of charge, to any person obtaining a copy of
19 | this software and associated documentation files (the "Software"), to deal with
20 | the Software without restriction, including without limitation the rights to
21 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
22 | of the Software, and to permit persons to whom the Software is furnished to do
23 | so, subject to the following conditions:
24 |
25 | * Redistributions of source code must retain the above copyright notice,
26 | this list of conditions and the following disclaimers.
27 |
28 | * Redistributions in binary form must reproduce the above copyright notice,
29 | this list of conditions and the following disclaimers in the
30 | documentation and/or other materials provided with the distribution.
31 |
32 | * Neither the names of the LLVM Team, University of Illinois at
33 | Urbana-Champaign, nor the names of its contributors may be used to
34 | endorse or promote products derived from this Software without specific
35 | prior written permission.
36 |
37 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
38 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
39 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
40 | CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
41 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
42 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
43 | SOFTWARE.
44 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 | # Clang Integration for Visual Studio, stand-alone
3 |
4 | Users of VS2017 (and later) should try the Visual Studio extension
5 | [LLVM Compiler Toolchain](https://marketplace.visualstudio.com/items?itemName=LLVMExtensions.llvm-toolchain).
6 | It is more configurable, contains some bug-fixes and is supported by LLVM.
7 |
8 | Users of VS2015 and earlier, or who want to compile with LLVM/Clang using the
9 | older toolsets, can try this implementation.
10 | Or try extracting the new implementation, see a
11 | [solution by CFSworks at stackoverflow](https://stackoverflow.com/a/52582414/2504346)
12 |
13 | This is an reimplementation of the legacy integration method, as used by the
14 | LLVM installer up to v6.0.1.
15 | Originally created to test an update for the LLVM/Clang integration, adding
16 | support for Visual Studio 2017.
17 |
18 | This adds LLVM toolset configurations for any installed legacy toolsets since
19 | VS2010 (including the Windows XP toolsets).
20 | Allowing building these toolset with the targeted version of LLVM/Clang.
21 |
22 | Target: Clang for Windows, stable release **v6.0.1**
23 |
24 | Expected to work with:
25 | Visual Studio versions: VS2010, VS2013, VS2015 and VS2017.
26 | Visual C++ Build Tools: 2017 and 2015.
27 |
28 |
29 |
30 | ## Instructions
31 |
32 | ### Installation
33 | 1. Extract all files in an empty directory.
34 | 2. Run `install.bat`.
35 | As Administrator when needed. The script requires write access to the
36 | MSBuild and VS2017 install directories.
37 | *Note*: Currently the install script stops on the first error.
38 |
39 | ### Removal
40 | 1. Run the supplied `uninstall.bat` (as Administrator, when needed.)
41 | 2. (For LLVM v6.01 and earlier) Restore the original configuration.
42 | `{LLVM install dir.}\tools\msbuild\install.bat`
43 |
44 |
45 |
46 | ## Changes
47 |
48 | - `install.bat` / `uninstall.bat`
49 | - Total rewrite, to support user defined install locations for VS2017
50 | Using the [Visual Studio Locator Tool](https://github.com/Microsoft/vswhere)
51 | - Accepting other platform types, when defined,
52 | based on directory structure.
53 | - Only installing toolsets when the base MSVC toolset is installed.
54 | - Apply redefined install method for older versions. *(Needs more testing.)*
55 | - Use `pushd` and `popd` to switch the working directory back when the
56 | script finishes.
57 | - On a copy error, try for the next VS installation.
58 | This allows for installs and updates without admin rights.
59 | E.g. when VS2017 is installed on a users' personal drive.
60 | - Combined the install and uninstall script.
61 | Reducing code duplication, from the shared path generation.
62 | - Improved progress reporting.
63 | - `*.props` files
64 | - Add vs2017 versions.
65 | - Fixed `LibraryPath` version number.
66 | - `*.targets` files
67 | - Add vs2017 versions.
68 | - For toolset versions `140(_xp)` and `141_(xp)`, inherit from the Microsoft
69 | supplied configuration, to stay up to date. (As the `*.props` do.)
70 | - *Note*: no changes have been made to the files for older compilers.
71 | These have been included for proper operation of the install script.
72 |
73 |
74 |
75 | ## License
76 |
77 | This project contains code from, and based on the LLVM project.
78 |
79 | LLVM is open source software. You may freely distribute it under the terms of
80 | the license agreement found in LICENSE.TXT.
81 |
82 |
83 |
84 | -----------
85 | [Top](#top)
86 |
--------------------------------------------------------------------------------
/Win32/Microsoft.Cpp.Win32.LLVM-vs2010.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m32 -fmsc-version=1600 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Win32/Microsoft.Cpp.Win32.LLVM-vs2010.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/Win32/Microsoft.Cpp.Win32.LLVM-vs2012.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m32 -fmsc-version=1700 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Win32/Microsoft.Cpp.Win32.LLVM-vs2012.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Win32/Microsoft.Cpp.Win32.LLVM-vs2012_xp.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m32 -fmsc-version=1700 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Win32/Microsoft.Cpp.Win32.LLVM-vs2012_xp.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | v4.0
5 | NoSupportCodeAnalysisXP;$(BeforeClCompileTargets)
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | CheckWindowsSDK71A;$(PrepareForBuildDependsOn)
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2013.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m32 -fmsc-version=1800 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2013.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2013_xp.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m32 -fmsc-version=1800 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2013_xp.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | v4.0
5 | NoSupportCodeAnalysisXP;$(BeforeClCompileTargets)
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | CheckWindowsSDK71A;$(PrepareForBuildDependsOn)
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2014.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m32 -fmsc-version=1900 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2014.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2014_xp.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m32 -fmsc-version=1900 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2014_xp.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | v4.0
5 | NoSupportCodeAnalysisXP;$(BeforeClCompileTargets)
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | CheckWindowsSDK71A;$(PrepareForBuildDependsOn)
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2017.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
7 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
8 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
9 |
10 |
11 |
12 |
13 |
14 | -m32 -fmsc-version=1913 %(AdditionalOptions)
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2017.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2017_xp.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
7 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
8 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
9 |
10 |
11 |
12 |
13 |
14 | -m32 -fmsc-version=1913 %(AdditionalOptions)
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Win32/toolset-vs2017_xp.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/install.bat:
--------------------------------------------------------------------------------
1 | ::===-- msbuild/install.bat - Clang Integration in MSBuild ----------------===::
2 | ::
3 | :: The LLVM Compiler Infrastructure
4 | ::
5 | :: This file is distributed under the University of Illinois Open Source
6 | :: License. See LICENSE.TXT for details.
7 | ::
8 | ::===----------------------------------------------------------------------===::
9 | ::
10 | :: This file is an executable script for use on Microsoft Windows.
11 | :: Providing the installation and removal of the configuration files,
12 | :: required to support the integration of LLVM/Clang-CL, in the directory
13 | :: structure of Microsoft Visual Studio.
14 | ::
15 | ::===----------------------------------------------------------------------===::
16 | @echo off
17 | setlocal
18 | pushd "%~dp0" & REM Set current directory to the location of this batch file.
19 | if /i [%1]==[--uninstall] ( set _Uninstall=1
20 | echo Uninstalling MSVC integration...
21 | ) else (
22 | if not [%1]==[] echo ERROR: Unknown input parameter. & exit /b 1
23 | echo Installing MSVC integration...
24 | )
25 | set /a "_SuccessCnt=0"
26 | set /a "_FailCnt=0"
27 |
28 | :: Legacy installations. Detection by explicit directory structure.
29 | if defined ProgramFiles(x86) call :fn_legacy "%ProgramFiles(x86)%"
30 | if not %ERRORLEVEL%==0 goto FINISHED
31 | call :fn_legacy "%ProgramFiles%"
32 | if not %ERRORLEVEL%==0 goto FINISHED
33 | :: VS2017 (VC++ toolset v141) and later.
34 | call :fn_vswhere
35 |
36 | :FINISHED
37 | if not %ERRORLEVEL%==0 echo ERROR: Internal script error.
38 | if not defined _Uninstall (
39 | if not %_FailCnt%==0 (
40 | echo WARNING: Copy operation failed for %_FailCnt% installations.
41 | echo: Verify write access. (Run as administrator.^)
42 | )
43 | if %_SuccessCnt%==0 ( echo WARNING: Failed to install any toolset.
44 | ) else ( echo Installed integation for %_SuccessCnt% toolsets. )
45 | goto END_ALL
46 | )
47 | set /a "_Removed=_SuccessCnt - _FailCnt"
48 | echo Removed %_Removed% of %_SuccessCnt% LLVM configurations.
49 |
50 | :END_ALL
51 | echo Done!
52 | popd & REM Reset current directory.
53 | endlocal
54 | pause
55 | exit /b
56 |
57 | ::===----------------------------------------------------------------------===::
58 | :: Function Definitions
59 | ::===----------------------------------------------------------------------===::
60 |
61 | :: Try known values for $(VCTargetsPath) to find MSVC toolsets.
62 | :fn_legacy
63 | setlocal
64 | if [%1]==[] echo ERROR: fn_legacy - no input & goto:eof
65 | set "_BaseDir=%~1"
66 | :: VS2010 (v100).
67 | call :fn_platforms "%_BaseDir%\MSBuild\Microsoft.Cpp\v4.0"
68 | :: VS2012 (v110).
69 | call :fn_platforms "%_BaseDir%\MSBuild\Microsoft.Cpp\v4.0\V110"
70 | :: VS2013 (v120).
71 | call :fn_platforms "%_BaseDir%\MSBuild\Microsoft.Cpp\v4.0\V120"
72 | :: VS2015 (v140).
73 | call :fn_platforms "%_BaseDir%\MSBuild\Microsoft.Cpp\v4.0\V140"
74 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & set "_FailCnt=%_FailCnt%"
75 | goto:eof
76 |
77 | :: Find MSVC toolsets since VS2017 with the Visual Studio Locator tool.
78 | :fn_vswhere
79 | setlocal
80 | if DEFINED ProgramFiles(x86) (
81 | set "_Vswhere=%ProgramFiles(x86)%") else (set "_Vswhere=%ProgramFiles%")
82 | set _Vswhere="%_Vswhere%\Microsoft Visual Studio\Installer\vswhere.exe"
83 | if not exist %_Vswhere% goto:eof
84 | for /f "usebackq tokens=*" %%i in (
85 | `%_Vswhere% -all -prerelease -products * -property installationPath`
86 | ) do ( REM Construct path equal to $(VCTargetsPath).
87 | echo Found VS: %%i
88 | call :fn_platforms "%%i\Common7\IDE\VC\VCTargets"
89 | )
90 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & set "_FailCnt=%_FailCnt%"
91 | goto:eof
92 |
93 | :: Find supported platforms by folder name.
94 | :fn_platforms
95 | setlocal
96 | if [%1]==[] echo ERROR: fn_platforms - no input & goto:eof
97 | set "_VCTargetsPath=%~1"
98 | if not exist "%_VCTargetsPath%\Platforms" goto:eof
99 | setlocal EnableDelayedExpansion
100 | for /f "usebackq tokens=*" %%P in (`dir "!_VCTargetsPath!\Platforms" /a:d /b`
101 | ) do (
102 | if exist ".\%%P" (
103 | if not defined _Uninstall (
104 | call :fn_toolsets "!_VCTargetsPath!\Platforms\%%P\PlatformToolsets" %%P
105 | ) else (
106 | call :fn_remove "!_VCTargetsPath!\Platforms\%%P\PlatformToolsets" %%P
107 | )
108 | if not !ERRORLEVEL!==0 set /a "_FailCnt+=1"
109 | )
110 | )
111 | endlocal & ( REM /EnableDelayedExpansion
112 | set "_SuccessCnt=%_SuccessCnt%" & set "_FailCnt=%_FailCnt%" )
113 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & set "_FailCnt=%_FailCnt%"
114 | exit /b 0 & REM Contain ERRORLEVEL.
115 |
116 | :: Install Clang integration for each supported toolset that is present.
117 | :fn_toolsets
118 | setlocal DisableDelayedExpansion
119 | if [%2]==[] echo ERROR: fn_toolsets - no input & goto:eof
120 | set "_ToolsetDir=%~1"
121 | set "_Platform=%~2"
122 | ::===---------- configurations ------------------------------------------===::
123 | :: _Name Name for the LLVM toolset.
124 | :: _Props Predefined property file.
125 | :: _Targets Predefined targets file.
126 | :: _NoRename Set to TRUE to keep the predefined file names. (v100, v110)
127 |
128 | :: Installing the v100 toolchain.
129 | setlocal
130 | set _Name=LLVM-vs2010
131 | set _Props=Microsoft.Cpp.%_Platform%.LLVM-vs2010.props
132 | set _Targets=Microsoft.Cpp.%_Platform%.LLVM-vs2010.targets
133 | set _NoRename=TRUE
134 | if exist "%_ToolsetDir%\v100" call :fn_copy
135 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & if not %ERRORLEVEL%==0 goto:eof
136 |
137 | :: Installing the v110 toolchain.
138 | setlocal
139 | set _Name=LLVM-vs2012
140 | set _Props=Microsoft.Cpp.%_Platform%.LLVM-vs2012.props
141 | set _Targets=Microsoft.Cpp.%_Platform%.LLVM-vs2012.targets
142 | set _NoRename=TRUE
143 | if exist "%_ToolsetDir%\v110" call :fn_copy
144 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & if not %ERRORLEVEL%==0 goto:eof
145 | :: Installing the v110_xp toolchain.
146 | setlocal
147 | set _Name=LLVM-vs2012_xp
148 | set _Props=Microsoft.Cpp.%_Platform%.LLVM-vs2012_xp.props
149 | set _Targets=Microsoft.Cpp.%_Platform%.LLVM-vs2012_xp.targets
150 | set _NoRename=TRUE
151 | if exist "%_ToolsetDir%\v110_xp" call :fn_copy
152 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & if not %ERRORLEVEL%==0 goto:eof
153 |
154 | :: Installing the v120 toolchain.
155 | setlocal
156 | set _Name=LLVM-vs2013
157 | set _Props=toolset-vs2013.props
158 | set _Targets=toolset-vs2013.targets
159 | if exist "%_ToolsetDir%\v120" call :fn_copy
160 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & if not %ERRORLEVEL%==0 goto:eof
161 | :: Installing the v120_xp toolchain.
162 | setlocal
163 | set _Name=LLVM-vs2013_xp
164 | set _Props=toolset-vs2013_xp.props
165 | set _Targets=toolset-vs2013_xp.targets
166 | if exist "%_ToolsetDir%\v120_xp" call :fn_copy
167 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & if not %ERRORLEVEL%==0 goto:eof
168 |
169 | :: Installing the v140 toolchain.
170 | setlocal
171 | set _Name=LLVM-vs2014
172 | set _Props=toolset-vs2014.props
173 | set _Targets=toolset-vs2014.targets
174 | if exist "%_ToolsetDir%\v140" call :fn_copy
175 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & if not %ERRORLEVEL%==0 goto:eof
176 | :: Installing the v140_xp toolchain.
177 | setlocal
178 | set _Name=LLVM-vs2014_xp
179 | set _Props=toolset-vs2014_xp.props
180 | set _Targets=toolset-vs2014_xp.targets
181 | if exist "%_ToolsetDir%\v140_xp" call :fn_copy
182 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & if not %ERRORLEVEL%==0 goto:eof
183 |
184 | :: Installing the v141 toolchain.
185 | setlocal
186 | set _Name=LLVM-vs2017
187 | set _Props=toolset-vs2017.props
188 | set _Targets=toolset-vs2017.targets
189 | if exist "%_ToolsetDir%\v141" call :fn_copy
190 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & if not %ERRORLEVEL%==0 goto:eof
191 | :: Installing the v141_xp toolchain.
192 | setlocal
193 | set _Name=LLVM-vs2017_xp
194 | set _Props=toolset-vs2017_xp.props
195 | set _Targets=toolset-vs2017_xp.targets
196 | if exist "%_ToolsetDir%\v141_xp" call :fn_copy
197 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & if not %ERRORLEVEL%==0 goto:eof
198 | ::===--------------------------------------------------------------------===::
199 | endlocal & set "_SuccessCnt=%_SuccessCnt%"
200 | goto:eof
201 |
202 | :: Perform the copy operations.
203 | :fn_copy
204 | setlocal
205 | if not defined _ToolsetDir goto:eof
206 | if not defined _Props goto:eof
207 | if not defined _Targets goto:eof
208 | if not defined _Name goto:eof
209 |
210 | echo: %_Name% (%_Platform%)
211 | set _PropsFile=".\%_Platform%\%_Props%"
212 | set _TargetsFile=".\%_Platform%\%_Targets%"
213 | set "_Dir=%_ToolsetDir%\%_Name%"
214 |
215 | if not exist "%_Dir%" mkdir "%_Dir%"
216 | if not %ERRORLEVEL%==0 goto:eof
217 | if [%_NoRename%]==[TRUE] goto doNotRename
218 | if exist %_PropsFile% copy %_PropsFile% "%_Dir%\toolset.props" > NUL
219 | if not %ERRORLEVEL%==0 goto:eof
220 | if exist %_TargetsFile% copy %_TargetsFile% "%_Dir%\toolset.targets" > NUL
221 | if not %ERRORLEVEL%==0 goto:eof
222 | goto CopyEnd
223 | :doNotRename & REM VS2010 and VS2012.
224 | if exist %_PropsFile% copy %_PropsFile% "%_Dir%" > NUL
225 | if not %ERRORLEVEL%==0 goto:eof
226 | if exist %_TargetsFile% copy %_TargetsFile% "%_Dir%" > NUL
227 | if not %ERRORLEVEL%==0 goto:eof
228 | :CopyEnd
229 | endlocal & set /a "_SuccessCnt+=1"
230 | goto:eof
231 |
232 | :: Remove toolset configurations that follow the LLVM naming format.
233 | :fn_remove
234 | setlocal DisableDelayedExpansion
235 | if [%2]==[] echo ERROR: fn_remove - no input & goto:eof
236 | set "_ToolsetDir=%~1"
237 | set "_Platform=%2"
238 | if not exist "%_ToolsetDir%\LLVM-*" goto:eof
239 | setlocal EnableDelayedExpansion
240 | for /f "usebackq tokens=*" %%D in (`dir "!_ToolsetDir!\LLVM-*" /a:d /b`) do (
241 | set /a "_SuccessCnt+=1"
242 | set _File="!_ToolsetDir!\%%D\toolset.props"
243 | if exist !_File! del !_File! > NUL
244 | set _File="!_ToolsetDir!\%%D\toolset.targets"
245 | if exist !_File! del !_File! > NUL
246 | :: VS2010 and VS2012:
247 | set _File="!_ToolsetDir!\%%D\Microsoft.Cpp.%_Platform%.LLVM-vs201*.props"
248 | if exist !_File! del !_File! > NUL
249 | set _File="!_ToolsetDir!\%%D\Microsoft.Cpp.%_Platform%.LLVM-vs201*.targets"
250 | if exist !_File! del !_File! > NUL
251 | :: Remove folder if empty, else report.
252 | rmdir "!_ToolsetDir!\%%D" || (echo !_ToolsetDir!\%%D & set /a "_FailCnt+=1")
253 | )
254 | endlocal & ( REM /EnableDelayedExpansion
255 | set "_SuccessCnt=%_SuccessCnt%" & set "_FailCnt=%_FailCnt%" )
256 | endlocal & set "_SuccessCnt=%_SuccessCnt%" & set "_FailCnt=%_FailCnt%"
257 | exit /b 0 & REM Contain ERRORLEVEL.
258 |
--------------------------------------------------------------------------------
/uninstall.bat:
--------------------------------------------------------------------------------
1 | ::===-- msbuild/uninstall.bat - Clang Integration in MSBuild --------------===::
2 | ::
3 | :: The LLVM Compiler Infrastructure
4 | ::
5 | :: This file is distributed under the University of Illinois Open Source
6 | :: License. See LICENSE.TXT for details.
7 | ::
8 | ::===----------------------------------------------------------------------===::
9 | ::
10 | :: This file is an executable script for use on Microsoft Windows.
11 | :: Calling the accompaning install.bat, to remove the LLVM/Clang-CL
12 | :: configuration files from the directory structure of Microsoft Visual Studio.
13 | ::
14 | ::===----------------------------------------------------------------------===::
15 | @echo off
16 | pushd "%~dp0" &REM Set current directory to the location of this batch file.
17 |
18 | if exist install.bat (call .\install.bat --uninstall
19 | ) else (
20 | echo ERROR: File not found:
21 | echo: %~dp0install.bat
22 | )
23 | popd
24 | exit /b
25 |
--------------------------------------------------------------------------------
/x64/Microsoft.Cpp.x64.LLVM-vs2010.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m64 -fmsc-version=1600 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/x64/Microsoft.Cpp.x64.LLVM-vs2010.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/x64/Microsoft.Cpp.x64.LLVM-vs2012.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m64 -fmsc-version=1700 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/x64/Microsoft.Cpp.x64.LLVM-vs2012.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/x64/Microsoft.Cpp.x64.LLVM-vs2012_xp.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m64 -fmsc-version=1700 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/x64/Microsoft.Cpp.x64.LLVM-vs2012_xp.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | v4.0
5 | NoSupportCodeAnalysisXP;$(BeforeClCompileTargets)
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | CheckWindowsSDK71A;$(PrepareForBuildDependsOn)
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/x64/toolset-vs2013.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m64 -fmsc-version=1800 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/x64/toolset-vs2013.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/x64/toolset-vs2013_xp.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m64 -fmsc-version=1800 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/x64/toolset-vs2013_xp.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | v4.0
5 | NoSupportCodeAnalysisXP;$(BeforeClCompileTargets)
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | CheckWindowsSDK71A;$(PrepareForBuildDependsOn)
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/x64/toolset-vs2014.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m64 -fmsc-version=1900 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/x64/toolset-vs2014.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/x64/toolset-vs2014_xp.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
7 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
8 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
9 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
10 |
11 |
12 |
13 |
14 |
15 | -m64 -fmsc-version=1900 %(AdditionalOptions)
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/x64/toolset-vs2014_xp.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | v4.0
5 | NoSupportCodeAnalysisXP;$(BeforeClCompileTargets)
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | CheckWindowsSDK71A;$(PrepareForBuildDependsOn)
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/x64/toolset-vs2017.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
7 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
8 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
9 |
10 |
11 |
12 |
13 |
14 | -m64 -fmsc-version=1913 %(AdditionalOptions)
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/x64/toolset-vs2017.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/x64/toolset-vs2017_xp.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)
6 | $(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)
7 | $(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)
8 | $(LLVMInstallDir)\lib\clang\6.0.1\lib\windows;$(LibraryPath)
9 |
10 |
11 |
12 |
13 |
14 | -m64 -fmsc-version=1913 %(AdditionalOptions)
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/x64/toolset-vs2017_xp.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------