generation of version.h with current git commit added

This commit is contained in:
moneroexamples 2016-11-23 09:28:10 +08:00
parent 996ce2c847
commit 930787d74d
4 changed files with 48 additions and 1 deletions

View File

@ -100,6 +100,39 @@ set(SOURCE_FILES
add_executable(${PROJECT_NAME}
${SOURCE_FILES})
# Get the current working branch
execute_process(
COMMAND git rev-parse --abbrev-ref HEAD
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_BRANCH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
# http://xit0.org/2013/04/cmake-use-git-branch-and-commit-details-in-project/
# Get the latest abbreviated commit hash of the working branch
execute_process(
COMMAND git log -1 --format=%h
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
# Get the date and time of last commit
execute_process(
COMMAND git log -1 --format=%cd
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_DATETIME
OUTPUT_STRIP_TRAILING_WHITESPACE
)
configure_file(
${CMAKE_SOURCE_DIR}/src/version.h.in
${CMAKE_BINARY_DIR}/gen/version.h
)
include_directories(${CMAKE_BINARY_DIR}/gen)
macro(configure_files srcDir destDir)
message(STATUS "Configuring directory ${destDir}")
make_directory(${destDir})

View File

@ -14,7 +14,7 @@ set(SOURCE_FILES
CmdLineOptions.cpp
tx_details.cpp
page.h
rpccalls.cpp rpccalls.h)
rpccalls.cpp rpccalls.h version.h.in)
# make static library called libmyxrm
# that we are going to link to

View File

@ -12,6 +12,7 @@
#include "../ext/format.h"
#include "../ext/member_checker.h"
#include "version.h"
#include "monero_headers.h"

13
src/version.h.in Normal file
View File

@ -0,0 +1,13 @@
//
// Created by mwo on 23/11/16.
//
#ifndef XMRBLOCKS_VERSION_H_IN_H
#define XMRBLOCKS_VERSION_H_IN_H
#define GIT_BRANCH "@GIT_BRANCH@"
#define GIT_COMMIT_HASH "@GIT_COMMIT_HASH@"
#define GIT_COMMIT_DATETIME "@GIT_COMMIT_DATETIME@"
#endif //XMRBLOCKS_VERSION_H_IN_H