summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar bunnei2014-04-23 19:13:00 -0700
committerGravatar bunnei2014-04-23 19:13:00 -0700
commit80a040ac772132a8d8e7385c0261f545adc88aee (patch)
tree682a57288e9f1fdde230b075e5ab354adc1b2c07
parentupdated windows scm_rev code to use new style (diff)
downloadyuzu-80a040ac772132a8d8e7385c0261f545adc88aee.tar.gz
yuzu-80a040ac772132a8d8e7385c0261f545adc88aee.tar.xz
yuzu-80a040ac772132a8d8e7385c0261f545adc88aee.zip
fixes to scm_rev generation to make it conistent with windows build
-rw-r--r--CMakeLists.txt1
-rw-r--r--externals/cmake-modules/GetGitRevisionDescription.cmake28
-rw-r--r--src/common/CMakeLists.txt6
-rw-r--r--src/common/scm_rev.cpp.in4
4 files changed, 34 insertions, 5 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 83a819a7f..08e1eb0ca 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -34,6 +34,7 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/externals/cmake-modul
34include(GetGitRevisionDescription) 34include(GetGitRevisionDescription)
35get_git_head_revision(GIT_REF_SPEC GIT_REV) 35get_git_head_revision(GIT_REF_SPEC GIT_REV)
36git_describe(GIT_DESC --always --long --dirty) 36git_describe(GIT_DESC --always --long --dirty)
37git_branch_name(GIT_BRANCH)
37 38
38# external includes 39# external includes
39include_directories(${OPENGL_INCLUDE_DIR}) 40include_directories(${OPENGL_INCLUDE_DIR})
diff --git a/externals/cmake-modules/GetGitRevisionDescription.cmake b/externals/cmake-modules/GetGitRevisionDescription.cmake
index 2b9cde061..087f5deea 100644
--- a/externals/cmake-modules/GetGitRevisionDescription.cmake
+++ b/externals/cmake-modules/GetGitRevisionDescription.cmake
@@ -80,6 +80,34 @@ function(get_git_head_revision _refspecvar _hashvar)
80 set(${_hashvar} "${HEAD_HASH}" PARENT_SCOPE) 80 set(${_hashvar} "${HEAD_HASH}" PARENT_SCOPE)
81endfunction() 81endfunction()
82 82
83function(git_branch_name _var)
84 if(NOT GIT_FOUND)
85 find_package(Git QUIET)
86 endif()
87
88 if(NOT GIT_FOUND)
89 set(${_var} "GIT-NOTFOUND" PARENT_SCOPE)
90 return()
91 endif()
92
93 execute_process(COMMAND
94 "${GIT_EXECUTABLE}"
95 rev-parse --abbrev-ref HEAD
96 WORKING_DIRECTORY
97 "${CMAKE_SOURCE_DIR}"
98 RESULT_VARIABLE
99 res
100 OUTPUT_VARIABLE
101 out
102 ERROR_QUIET
103 OUTPUT_STRIP_TRAILING_WHITESPACE)
104 if(NOT res EQUAL 0)
105 set(out "${out}-${res}-NOTFOUND")
106 endif()
107
108 set(${_var} "${out}" PARENT_SCOPE)
109endfunction()
110
83function(git_describe _var) 111function(git_describe _var)
84 if(NOT GIT_FOUND) 112 if(NOT GIT_FOUND)
85 find_package(Git QUIET) 113 find_package(Git QUIET)
diff --git a/src/common/CMakeLists.txt b/src/common/CMakeLists.txt
index 1495e433b..5eaf67365 100644
--- a/src/common/CMakeLists.txt
+++ b/src/common/CMakeLists.txt
@@ -1,4 +1,4 @@
1configure_file("${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp.in" "${CMAKE_CURRENT_BINARY_DIR}/scm_rev.cpp" @ONLY) 1configure_file("${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp.in" "${CMAKE_CURRENT_SOURCE_DIR}/scm_rev.cpp" @ONLY)
2 2
3set(SRCS break_points.cpp 3set(SRCS break_points.cpp
4 console_listener.cpp 4 console_listener.cpp
@@ -13,10 +13,10 @@ set(SRCS break_points.cpp
13 misc.cpp 13 misc.cpp
14 msg_handler.cpp 14 msg_handler.cpp
15 string_util.cpp 15 string_util.cpp
16 scm_rev.cpp
16 symbols.cpp 17 symbols.cpp
17 thread.cpp 18 thread.cpp
18 timer.cpp 19 timer.cpp
19 utf8.cpp 20 utf8.cpp)
20 ${CMAKE_CURRENT_BINARY_DIR}/scm_rev.cpp)
21 21
22add_library(common STATIC ${SRCS}) 22add_library(common STATIC ${SRCS})
diff --git a/src/common/scm_rev.cpp.in b/src/common/scm_rev.cpp.in
index 9e2bcfdd8..512c5bd4c 100644
--- a/src/common/scm_rev.cpp.in
+++ b/src/common/scm_rev.cpp.in
@@ -5,13 +5,13 @@
5#include "common/scm_rev.h" 5#include "common/scm_rev.h"
6 6
7#define GIT_REV "@GIT_REV@" 7#define GIT_REV "@GIT_REV@"
8#define GIT_REF_SPEC "@GIT_REF_SPEC@" 8#define GIT_BRANCH "@GIT_BRANCH@"
9#define GIT_DESC "@GIT_DESC@" 9#define GIT_DESC "@GIT_DESC@"
10 10
11namespace Common { 11namespace Common {
12 12
13const char g_scm_rev[] = GIT_REV; 13const char g_scm_rev[] = GIT_REV;
14const char g_scm_ref_spec[] = GIT_REF_SPEC; 14const char g_scm_ref_spec[] = GIT_BRANCH;
15const char g_scm_desc[] = GIT_DESC; 15const char g_scm_desc[] = GIT_DESC;
16 16
17} // namespace 17} // namespace