Revert "修复若干小问题"
This commit is contained in:
@@ -45,8 +45,6 @@ android {
|
||||
|
||||
externalNativeBuild {
|
||||
cmake {
|
||||
// 设置cmake版本
|
||||
version = "3.31.6"
|
||||
path = file("src/main/cpp/CMakeLists.txt")
|
||||
}
|
||||
}
|
||||
@@ -64,4 +62,4 @@ afterEvaluate {
|
||||
tasks.withType(GolangBuildTask::class.java).forEach {
|
||||
it.inputs.dir(golangSource)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,57 +1,47 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
|
||||
# 获取git hash
|
||||
|
||||
message(STATUS "CMAKE_CURRENT_SOURCE_DIR= ${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
execute_process(
|
||||
COMMAND git submodule foreach git log -1 --format=%H
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
OUTPUT_VARIABLE COMMIT_HASH
|
||||
)
|
||||
string(REPLACE "\n" ";" COMMIT_HASH "${COMMIT_HASH}")
|
||||
list(GET COMMIT_HASH 1 COMMIT_HASH)
|
||||
string (REGEX REPLACE "[\n\t\r]" "" COMMIT_HASH ${COMMIT_HASH})
|
||||
string(SUBSTRING ${COMMIT_HASH} 0 7 COMMIT_HASH)
|
||||
message(STATUS "git hash= ${COMMIT_HASH}")
|
||||
|
||||
# 判断是否获取到了git hash值(规避如因项目目录非git repository等原因产生的获取异常而中断build)
|
||||
string(LENGTH ${COMMIT_HASH} OUTPUT_VARIABLE COMMIT_HASH_LENGTH)
|
||||
string(COMPARE LESS ${COMMIT_HASH_LENGTH} "40" OUTPUT_VARIABLE GIT_HASH_COMPARISON_RESULT)
|
||||
if(NOT ${GIT_HASH_COMPARISON_RESULT})
|
||||
string(REPLACE "\n" ";" COMMIT_HASH "${COMMIT_HASH}")
|
||||
list(GET COMMIT_HASH 1 COMMIT_HASH)
|
||||
string (REGEX REPLACE "[\n\t\r]" "" COMMIT_HASH ${COMMIT_HASH})
|
||||
#string(SUBSTRING ${COMMIT_HASH} 0 7 COMMIT_HASH)
|
||||
message(STATUS "git hash= ${COMMIT_HASH}")
|
||||
# 获取分支名称
|
||||
execute_process(
|
||||
COMMAND git submodule foreach git branch -r --contains ${COMMIT_HASH}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
OUTPUT_VARIABLE CURRENT_BRANCH
|
||||
)
|
||||
string(REPLACE "\n" ";" CURRENT_BRANCH "${CURRENT_BRANCH}")
|
||||
list(GET CURRENT_BRANCH 1 CURRENT_BRANCH)
|
||||
string (REGEX REPLACE "origin/" "" CURRENT_BRANCH ${CURRENT_BRANCH} "")
|
||||
string (REGEX REPLACE "[\n\t\r]" "" CURRENT_BRANCH ${CURRENT_BRANCH} "")
|
||||
#string(SUBSTRING ${CURRENT_BRANCH} 0 8 CURRENT_BRANCH)
|
||||
message(STATUS "git current branch = ${CURRENT_BRANCH}")
|
||||
|
||||
# 获取git分支名称
|
||||
execute_process(
|
||||
COMMAND git submodule foreach git branch -r --contains ${COMMIT_HASH}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
OUTPUT_VARIABLE CURRENT_BRANCH
|
||||
)
|
||||
# 获取生成时间
|
||||
string(TIMESTAMP COMPILE_TIME "%y%m%d")
|
||||
string (REGEX REPLACE "[\n\t\r]" "" COMPILE_TIME ${COMPILE_TIME})
|
||||
string(REGEX REPLACE "\"" "" COMPILE_TIME ${COMPILE_TIME})
|
||||
|
||||
string(REPLACE "\n" ";" CURRENT_BRANCH "${CURRENT_BRANCH}")
|
||||
list(GET CURRENT_BRANCH 1 CURRENT_BRANCH)
|
||||
string (REGEX REPLACE "origin/" "" CURRENT_BRANCH ${CURRENT_BRANCH} "")
|
||||
string (REGEX REPLACE "[\n\t\r]" "" CURRENT_BRANCH ${CURRENT_BRANCH} "")
|
||||
string(SUBSTRING ${CURRENT_BRANCH} 0 8 CURRENT_BRANCH)
|
||||
message(STATUS "git current branch = ${CURRENT_BRANCH}")
|
||||
# 生成版本信息
|
||||
set(GIT_VERSION "${CURRENT_BRANCH}_${COMMIT_HASH}_${COMPILE_TIME}")
|
||||
message(STATUS "version info = ${GIT_VERSION}")
|
||||
|
||||
# 获取生成时间
|
||||
string(TIMESTAMP COMPILE_TIME "%y%m%d")
|
||||
string (REGEX REPLACE "[\n\t\r]" "" COMPILE_TIME ${COMPILE_TIME})
|
||||
string(REGEX REPLACE "\"" "" COMPILE_TIME ${COMPILE_TIME})
|
||||
|
||||
# 生成版本信息
|
||||
set(GIT_VERSION "${CURRENT_BRANCH}_${COMMIT_HASH}_${COMPILE_TIME}")
|
||||
message(STATUS "version info = ${GIT_VERSION}")
|
||||
|
||||
# 去除空格
|
||||
string(REGEX REPLACE "[ ]+" "" GIT_VERSION "${GIT_VERSION}")
|
||||
else()
|
||||
message(AUTHOR_WARNING "Unable to get git hash, but build will continue.")
|
||||
|
||||
endif()
|
||||
# 去除空格
|
||||
string(REGEX REPLACE "[ ]+" "" GIT_VERSION "${GIT_VERSION}")
|
||||
|
||||
# 保存变量到文件
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/version.h.in ${CMAKE_CURRENT_SOURCE_DIR}/version.h @ONLY)
|
||||
|
||||
#设置项目名称与语言类别(必)
|
||||
project(clash-bridge C)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user