summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2014-07-21 21:48:06 +0000
committerHans Wennborg <hans@hanshq.net>2014-07-21 21:48:06 +0000
commit586448763eb9d2369c04f5cdbff0ecff9751a0f9 (patch)
treed1d1ea33edb19baf5ef282cc380851dbde24512c
parenta89ad664b1bd732581a11af290315c8d3be91d71 (diff)
downloadbcm5719-llvm-586448763eb9d2369c04f5cdbff0ecff9751a0f9.tar.gz
bcm5719-llvm-586448763eb9d2369c04f5cdbff0ecff9751a0f9.zip
clang-format vs plugin: set version number from cmake (PR20307)
Previously it was hard-coded to 1.0, which meant the installer would not install the plugin over previous versions. This commit makes us use LLVM's major.minor.patch version from cmake, or whatever CLANG_FORMAT_VS_VERSION is set to when configuring the build. It's pretty dirty to update a configuration file in the source directory from the cmake build like this. However, the plugin build is already dirty in this regard since it builds in the source dir when visual studio, and then copies out the resulting vsix. llvm-svn: 213584
-rw-r--r--clang/tools/clang-format-vs/CMakeLists.txt9
-rw-r--r--clang/tools/clang-format-vs/source.extension.vsixmanifest.in (renamed from clang/tools/clang-format-vs/ClangFormat/source.extension.vsixmanifest)6
2 files changed, 11 insertions, 4 deletions
diff --git a/clang/tools/clang-format-vs/CMakeLists.txt b/clang/tools/clang-format-vs/CMakeLists.txt
index f883a986e5f..b1101928aa5 100644
--- a/clang/tools/clang-format-vs/CMakeLists.txt
+++ b/clang/tools/clang-format-vs/CMakeLists.txt
@@ -6,9 +6,16 @@ if (BUILD_CLANG_FORMAT_VS_PLUGIN)
"${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat/clang-format.exe"
DEPENDS clang-format)
+ if (NOT CLANG_FORMAT_VS_VERSION)
+ set(CLANG_FORMAT_VS_VERSION "${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}")
+ endif()
+
+ configure_file("source.extension.vsixmanifest.in"
+ "${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat/source.extension.vsixmanifest")
+
add_custom_target(clang_format_vsix ALL
devenv "${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat.sln" /Build Release
- DEPENDS clang_format_exe_for_vsix
+ DEPENDS clang_format_exe_for_vsix "${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat/source.extension.vsixmanifest"
COMMAND ${CMAKE_COMMAND} -E copy_if_different
"${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat/bin/Release/ClangFormat.vsix"
"${LLVM_TOOLS_BINARY_DIR}/${CMAKE_CFG_INTDIR}/ClangFormat.vsix"
diff --git a/clang/tools/clang-format-vs/ClangFormat/source.extension.vsixmanifest b/clang/tools/clang-format-vs/source.extension.vsixmanifest.in
index 39d30f0f15e..ed0e72e3551 100644
--- a/clang/tools/clang-format-vs/ClangFormat/source.extension.vsixmanifest
+++ b/clang/tools/clang-format-vs/source.extension.vsixmanifest.in
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
-<Vsix Version="1.0.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2010">
+<Vsix Version="1.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2010">
<Identifier Id="20dbc914-1c7a-4992-b236-ef58b37850eb">
<Name>ClangFormat</Name>
<Author>LLVM</Author>
- <Version>1.0</Version>
- <Description xml:space="preserve">Information about my package</Description>
+ <Version>@CLANG_FORMAT_VS_VERSION@</Version>
+ <Description xml:space="preserve">A tool to format C/C++/Obj-C code.</Description>
<Locale>1033</Locale>
<InstalledByMsi>false</InstalledByMsi>
<SupportedProducts>
OpenPOWER on IntegriCloud