Home | History | Annotate | Download | only in clang-format-vs
      1 option(BUILD_CLANG_FORMAT_VS_PLUGIN "Build clang-format VS plugin" OFF)
      2 if (BUILD_CLANG_FORMAT_VS_PLUGIN)
      3   add_custom_target(clang_format_exe_for_vsix
      4       ${CMAKE_COMMAND} -E copy_if_different
      5       "${LLVM_TOOLS_BINARY_DIR}/clang-format.exe"
      6       "${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat/clang-format.exe"
      7       DEPENDS clang-format)
      8 
      9   add_custom_target(clang_format_license
     10       ${CMAKE_COMMAND} -E copy_if_different
     11       "${CLANG_SOURCE_DIR}/LICENSE.TXT"
     12       "${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat/license.txt")
     13 
     14   if (NOT CLANG_FORMAT_VS_VERSION)
     15     set(CLANG_FORMAT_VS_VERSION "${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}")
     16   endif()
     17 
     18   configure_file("source.extension.vsixmanifest.in"
     19       "${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat/source.extension.vsixmanifest")
     20 
     21   add_custom_target(clang_format_vsix ALL
     22       devenv "${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat.sln" /Build Release
     23       DEPENDS clang_format_exe_for_vsix "${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat/source.extension.vsixmanifest"
     24       COMMAND ${CMAKE_COMMAND} -E copy_if_different
     25       "${CMAKE_CURRENT_SOURCE_DIR}/ClangFormat/bin/Release/ClangFormat.vsix"
     26       "${LLVM_TOOLS_BINARY_DIR}/ClangFormat.vsix"
     27       DEPENDS clang_format_exe_for_vsix clang_format_license)
     28 endif()
     29