diff options
Diffstat (limited to 'host/Modules')
-rw-r--r-- | host/Modules/UHDPackage.cmake | 5 | ||||
-rw-r--r-- | host/Modules/UHDPython.cmake | 27 | ||||
-rw-r--r-- | host/Modules/UHDVersion.cmake | 26 |
3 files changed, 32 insertions, 26 deletions
diff --git a/host/Modules/UHDPackage.cmake b/host/Modules/UHDPackage.cmake index bf31df3b3..1988c7f11 100644 --- a/host/Modules/UHDPackage.cmake +++ b/host/Modules/UHDPackage.cmake @@ -140,4 +140,9 @@ SET(CPACK_DEBIAN_PACKAGE_RECOMMENDS "python, python-tk") SET(CPACK_RPM_PACKAGE_REQUIRES "boost-devel, libusb1") ######################################################################## +# Setup CPack NSIS +######################################################################## +SET(CPACK_NSIS_MODIFY_PATH ON) + +######################################################################## INCLUDE(CPack) #include after setting vars diff --git a/host/Modules/UHDPython.cmake b/host/Modules/UHDPython.cmake index 90a778609..fdcdccb4b 100644 --- a/host/Modules/UHDPython.cmake +++ b/host/Modules/UHDPython.cmake @@ -15,9 +15,14 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # +IF(NOT DEFINED INCLUDED_UHD_PYTHON_CMAKE) +SET(INCLUDED_UHD_PYTHON_CMAKE TRUE) + ######################################################################## # Setup Python ######################################################################## +MESSAGE(STATUS "") +MESSAGE(STATUS "Configuring the python interpreter...") #this allows the user to override PYTHON_EXECUTABLE IF(PYTHON_EXECUTABLE) @@ -42,6 +47,9 @@ ENDIF(PYTHON_EXECUTABLE) #make the path to the executable appear in the cmake gui SET(PYTHON_EXECUTABLE ${PYTHON_EXECUTABLE} CACHE FILEPATH "python interpreter") +MESSAGE(STATUS "Python interpreter: ${PYTHON_EXECUTABLE}") +MESSAGE(STATUS "Override with: -DPYTHON_EXECUTABLE=<path-to-python>") + IF(NOT PYTHONINTERP_FOUND) MESSAGE(FATAL_ERROR "Error: Python interpretor required by the build system.") ENDIF(NOT PYTHONINTERP_FOUND) @@ -53,17 +61,26 @@ MACRO(PYTHON_CHECK_MODULE desc mod cmd have) COMMAND ${PYTHON_EXECUTABLE} -c " ######################################### try: import ${mod} -except: exit(-1) +except: exit(1) try: assert ${cmd} -except: exit(-1) +except: exit(2) +exit(0) #########################################" RESULT_VARIABLE ${have} ) IF(${have} EQUAL 0) MESSAGE(STATUS "Python checking for ${desc} - found") SET(${have} TRUE) - ELSE(${have} EQUAL 0) - MESSAGE(STATUS "Python checking for ${desc} - not found") + ELSEIF(${have} EQUAL 1) + MESSAGE(STATUS "Python checking for ${desc} - \"import ${mod}\" failed") + SET(${have} FALSE) + ELSEIF(${have} EQUAL 2) + MESSAGE(STATUS "Python checking for ${desc} - \"assert ${cmd}\" failed") SET(${have} FALSE) - ENDIF(${have} EQUAL 0) + ELSE() + MESSAGE(STATUS "Python checking for ${desc} - unknown error") + SET(${have} FALSE) + ENDIF() ENDMACRO(PYTHON_CHECK_MODULE) + +ENDIF(NOT DEFINED INCLUDED_UHD_PYTHON_CMAKE) diff --git a/host/Modules/UHDVersion.cmake b/host/Modules/UHDVersion.cmake index eb25db488..86d3133a8 100644 --- a/host/Modules/UHDVersion.cmake +++ b/host/Modules/UHDVersion.cmake @@ -42,34 +42,18 @@ ENDIF() IF(UHD_BUILD_INFO_DISCOVERY) - #grab the git log entry for the current head - EXECUTE_PROCESS( - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - COMMAND ${GIT_EXECUTABLE} log HEAD~..HEAD --date=raw -n1 - OUTPUT_VARIABLE _git_log OUTPUT_STRIP_TRAILING_WHITESPACE - ) - - #extract the timestamp from the git log entry - EXECUTE_PROCESS( - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - COMMAND ${PYTHON_EXECUTABLE} -c "import re; print re.match('^.*Date:\\s*(\\d*).*$', ''' ${_git_log} ''', re.MULTILINE | re.DOTALL).groups()[0]" - OUTPUT_VARIABLE _git_timestamp OUTPUT_STRIP_TRAILING_WHITESPACE - ) - - #format the timestamp into YYYY-MM-DD-HH-MM-SS - EXECUTE_PROCESS( - COMMAND ${PYTHON_EXECUTABLE} -c "import time; print time.strftime('%Y%m%d%H%M%S', time.gmtime(${_git_timestamp}))" - OUTPUT_VARIABLE _git_date OUTPUT_STRIP_TRAILING_WHITESPACE - ) - #grab the git ref id for the current head EXECUTE_PROCESS( WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD OUTPUT_VARIABLE _git_rev OUTPUT_STRIP_TRAILING_WHITESPACE + RESULT_VARIABLE _git_rev_result ) - SET(UHD_BUILD_INFO ${_git_rev}) + #only set the build info on success + IF(_git_rev_result EQUAL 0) + SET(UHD_BUILD_INFO ${_git_rev}) + ENDIF() ENDIF(UHD_BUILD_INFO_DISCOVERY) ######################################################################## |