made python optional for no real reason

This commit is contained in:
rexy712 2018-12-14 18:42:59 -08:00
parent cf45749af2
commit 80eda899e7
4 changed files with 58 additions and 12 deletions

View File

@ -11,18 +11,41 @@ include_directories("${INCLUDE_PATH}")
set(GIT_VERSION_FILE ${CMAKE_SOURCE_DIR}/include/version.h)
set(GIT_VERSION_TMP_FILE ${CMAKE_SOURCE_DIR}/include/verison.h.tmp)
add_custom_command(
#require python on windows
#i know this program can't be built on windows, but i wanted to figure out how to do this
if(WIN32)
find_package(PythonInterp 3 REQUIRED)
else()
find_package(PythonInterp 3 QUIET)
endif()
if(PYTHONINTERP_FOUND)
add_custom_command(
OUTPUT ${GIT_VERSION_TMP_FILE}
COMMAND ${CMAKE_COMMAND} -E echo "//File generated by CMake. Do not edit!" > ${GIT_VERSION_TMP_FILE}
COMMAND python ${SCRIPT_DIR}/git_branch_name.py >> ${GIT_VERSION_TMP_FILE}
COMMAND python ${SCRIPT_DIR}/git_commit_hash.py >> ${GIT_VERSION_TMP_FILE}
COMMAND python ${SCRIPT_DIR}/git_tag_name.py >> ${GIT_VERSION_TMP_FILE}
COMMAND ${PYTHON_EXECUTABLE} ${SCRIPT_DIR}/git_branch_name.py >> ${GIT_VERSION_TMP_FILE}
COMMAND ${PYTHON_EXECUTABLE} ${SCRIPT_DIR}/git_commit_hash.py >> ${GIT_VERSION_TMP_FILE}
COMMAND ${PYTHON_EXECUTABLE} ${SCRIPT_DIR}/git_tag_name.py >> ${GIT_VERSION_TMP_FILE}
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${GIT_VERSION_TMP_FILE} ${GIT_VERSION_FILE}
COMMAND ${CMAKE_COMMAND} -E remove ${GIT_VERSION_TMP_FILE}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMENT "Regenerating version.h"
VERBATIM
)
)
elseif(UNIX)
add_custom_command(
OUTPUT ${GIT_VERSION_TMP_FILE}
COMMAND ${CMAKE_COMMAND} -E echo "//File generated by CMake. Do not edit!" > ${GIT_VERSION_TMP_FILE}
COMMAND ${SCRIPT_DIR}/git_branch_name.sh >> ${GIT_VERSION_TMP_FILE}
COMMAND ${SCRIPT_DIR}/git_commit_hash.sh >> ${GIT_VERSION_TMP_FILE}
COMMAND ${SCRIPT_DIR}/git_tag_name.sh >> ${GIT_VERSION_TMP_FILE}
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${GIT_VERSION_TMP_FILE} ${GIT_VERSION_FILE}
COMMAND ${CMAKE_COMMAND} -E remove ${GIT_VERSION_TMP_FILE}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMENT "Regenerating version.h"
VERBATIM
)
endif()
#setup cmake options
option(BUILD_REXLEDCTL "Build led control program" ON)

7
scripts/git_branch_name.sh Executable file
View File

@ -0,0 +1,7 @@
#!/bin/sh
output="$(git rev-parse --abbrev-ref HEAD)"
if test -n "$output";then
echo "#define GIT_BRANCH_NAME \"$output\" //test"
fi

7
scripts/git_commit_hash.sh Executable file
View File

@ -0,0 +1,7 @@
#!/bin/sh
output="$(git describe --always --dirty --abbrev --match="NeVeRmAtCh")"
if test -n output;then
echo "#define GIT_COMMIT_HASH \"$output\""
fi

9
scripts/git_tag_name.sh Executable file
View File

@ -0,0 +1,9 @@
#!/bin/sh
output="$(git tag --points-at HEAD)"
if test -n "$output";then
if test "${output:0:1}" = "v" || test "${output:0:1}" = "V";then
echo "#define GIT_TAG_NAME \"${output:1}\""
fi
fi