diff --git a/CMakeLists.txt b/CMakeLists.txt index 6fb3e4c13c0f6c3eeef587b47004ae23412935bd..ffafb926bc9b821ddea266715d3ad8ca4f0fd664 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -30,8 +30,6 @@ project("Nebula Graph" C CXX) set(CMAKE_SKIP_RPATH TRUE) -set(CMAKE_VERBOSE_MAKEFILE TRUE) - option(SKIP_JAVA_CLIENT "Whether to skip building the java client" OFF) option(ENABLE_JEMALLOC "Whether to link jemalloc to all executables" ON) option(ENABLE_NATIVE "Whether to build native client" OFF) @@ -72,6 +70,20 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "_build") set(NEBULA_HOME ${CMAKE_CURRENT_SOURCE_DIR}) add_definitions(-DNEBULA_HOME=${NEBULA_HOME}) +find_package(Git) +if (GIT_FOUND AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/.git") + execute_process( + COMMAND + ${GIT_EXECUTABLE} -C ${CMAKE_CURRENT_SOURCE_DIR} rev-parse --short HEAD + OUTPUT_VARIABLE GIT_INFO_SHA + ) +endif() + +if (GIT_INFO_SHA) + string(REGEX REPLACE "[^0-9a-f]+" "" GIT_INFO_SHA "${GIT_INFO_SHA}") + add_definitions(-DGIT_INFO_SHA=${GIT_INFO_SHA}) +endif() + # To include customized FindXXX.cmake modules set(CMAKE_MODULE_PATH "${NEBULA_HOME}/cmake" ${CMAKE_MODULE_PATH}) diff --git a/src/console/NebulaConsole.cpp b/src/console/NebulaConsole.cpp index 1b5216edb2fb385cccb4a599e9acf911e8df0d7c..ab918bf5e69a86fe638372ccf9b79e000190f708 100644 --- a/src/console/NebulaConsole.cpp +++ b/src/console/NebulaConsole.cpp @@ -15,6 +15,7 @@ DEFINE_string(p, "", "Password used to authenticate"); int main(int argc, char *argv[]) { + google::SetVersionString(nebula::versionString()); folly::init(&argc, &argv, true); using nebula::graph::CliManager; diff --git a/src/daemons/GraphDaemon.cpp b/src/daemons/GraphDaemon.cpp index c04d0500c3a5e998cf499fc61cabd8089cdbae4e..c55081524192ac9ac5b9870c19851ebcb86a74dd 100644 --- a/src/daemons/GraphDaemon.cpp +++ b/src/daemons/GraphDaemon.cpp @@ -27,11 +27,11 @@ static void signalHandler(int sig); static Status setupSignalHandler(); static Status setupLogging(); static void printHelp(const char *prog); -static void printVersion(); DECLARE_string(flagfile); int main(int argc, char *argv[]) { + google::SetVersionString(nebula::versionString()); if (argc == 1) { printHelp(argv[0]); return EXIT_FAILURE; @@ -41,10 +41,6 @@ int main(int argc, char *argv[]) { printHelp(argv[0]); return EXIT_SUCCESS; } - if (::strcmp(argv[1], "-v") == 0) { - printVersion(); - return EXIT_SUCCESS; - } } folly::init(&argc, &argv, true); @@ -213,12 +209,5 @@ Status setupLogging() { void printHelp(const char *prog) { - fprintf(stderr, "%s -flagfile config_file\n", prog); - fprintf(stderr, "%s -h\n", prog); - fprintf(stderr, "%s -v\n", prog); -} - - -void printVersion() { - // TODO(dutor) + fprintf(stderr, "%s --flagfile <config_file>\n", prog); }