Browse Source

Enhance the output of --version with Git describe results. (#342)

pull/607/head
Paul Smith 6 years ago
committed by Fangrui Song
parent
commit
b6155ddf73
  1. 17
      CMakeLists.txt
  2. 3
      src/main.cc

17
CMakeLists.txt

@ -209,3 +209,20 @@ target_sources(ccls PRIVATE
src/messages/textDocument_signatureHelp.cc
src/messages/workspace.cc
)
### Obtain CCLS version information from Git
### This only happens when cmake is re-run!
if(NOT CCLS_VERSION)
execute_process(COMMAND git describe --tag --long HEAD
OUTPUT_VARIABLE CCLS_VERSION
OUTPUT_STRIP_TRAILING_WHITESPACE
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}")
if(NOT CCLS_VERSION)
set(CCLS_VERSION "<unknown>")
endif()
endif()
set_property(SOURCE src/main.cc APPEND PROPERTY
COMPILE_DEFINITIONS CCLS_VERSION=\"${CCLS_VERSION}\")

3
src/main.cc

@ -60,7 +60,8 @@ int main(int argc, char **argv) {
TraceMe();
sys::PrintStackTraceOnErrorSignal(argv[0]);
cl::SetVersionPrinter([](raw_ostream &OS) {
OS << clang::getClangToolFullVersion("ccls") << "\n";
OS << clang::getClangToolFullVersion("ccls version " CCLS_VERSION "\nclang")
<< "\n";
});
for (auto &I : TopLevelSubCommand->OptionsMap)

Loading…
Cancel
Save