From e4dcb70b9549b53821c10bd2c6ce85471064ce4f Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Tue, 14 Jan 2014 09:07:12 +0100 Subject: [PATCH] Add generation of linphone_gitversion.h when using cmake. --- CMakeLists.txt | 1 + coreapi/CMakeLists.txt | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7af5d50ac..bc8718c0d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,6 +29,7 @@ endif() include_directories( include/ coreapi/ + ${CMAKE_CURRENT_BINARY_DIR}/coreapi/ ${CMAKE_CURRENT_SOURCE_DIR}/../cmake/libxml2/ ) diff --git a/coreapi/CMakeLists.txt b/coreapi/CMakeLists.txt index 74e80dfc0..ab83c3ce7 100644 --- a/coreapi/CMakeLists.txt +++ b/coreapi/CMakeLists.txt @@ -1,3 +1,38 @@ +find_program(GIT git) + +set(GIT_VERSION "unknown") +if(GIT) + execute_process( + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND ${GIT} describe --always + OUTPUT_VARIABLE GIT_DESCRIBE + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + execute_process( + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND ${GIT} describe --abbrev=0 + OUTPUT_VARIABLE GIT_TAG + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + execute_process( + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + COMMAND ${GIT} rev-parse HEAD + OUTPUT_VARIABLE GIT_REVISION + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + if(GIT_DESCRIBE) + set(GIT_VERSION ${GIT_DESCRIBE}) + else(GIT_DESCRIBE) + if(GIT_REVISION) + set(GIT_VERSION ${GIT_REVISION}) + endif(GIT_REVISION) + endif(GIT_DESCRIBE) +endif(GIT) +execute_process( + COMMAND ${CMAKE_COMMAND} -E echo "#define LIBLINPHONE_GIT_VERSION \"${GIT_VERSION}\"" + OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/liblinphone_gitversion.h +) + set(SOURCE_FILES address.c authentication.c @@ -66,6 +101,7 @@ add_definitions( if(WIN32) add_definitions( -DWINDOW_NATIVE + /FIliblinphone_gitversion.h ) set(LIBS ws2_32)