Sign files after build on Windows
This commit is contained in:
parent
f834adcb30
commit
30f9ecb402
4 changed files with 28 additions and 3 deletions
|
@ -16,6 +16,8 @@ SET(PACKAGE_VERSION "${PACKAGE_MAJOR_VERSION}.${PACKAGE_MINOR_VERSION}.${PACKAGE
|
||||||
SET(PACKAGE_SUBVERSION)
|
SET(PACKAGE_SUBVERSION)
|
||||||
SET(PACKAGE_SOVERSION 2)
|
SET(PACKAGE_SOVERSION 2)
|
||||||
|
|
||||||
|
SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
|
||||||
|
|
||||||
IF (PACKAGE_SUBVERSION)
|
IF (PACKAGE_SUBVERSION)
|
||||||
SET(DISPLAYED_VERSION "${PACKAGE_VERSION}_${PACKAGE_SUBVERSION}")
|
SET(DISPLAYED_VERSION "${PACKAGE_VERSION}_${PACKAGE_SUBVERSION}")
|
||||||
ELSE (PACKAGE_SUBVERSION)
|
ELSE (PACKAGE_SUBVERSION)
|
||||||
|
@ -25,9 +27,6 @@ ENDIF(PACKAGE_SUBVERSION)
|
||||||
SET(BUILD_LIBTELLDUS-CORE TRUE CACHE BOOL "Build libtelldus-core")
|
SET(BUILD_LIBTELLDUS-CORE TRUE CACHE BOOL "Build libtelldus-core")
|
||||||
|
|
||||||
SET(USE_QT_SETTINGS_BACKEND FALSE CACHE BOOL "Use QT as settings backend instead of the native one")
|
SET(USE_QT_SETTINGS_BACKEND FALSE CACHE BOOL "Use QT as settings backend instead of the native one")
|
||||||
IF (WIN32)
|
|
||||||
SET(SIGN_FILES FALSE CACHE BOOL "Sign the generated files. This requires a certificate to be installed on the computer!")
|
|
||||||
ENDIF (WIN32)
|
|
||||||
|
|
||||||
IF (WIN32)
|
IF (WIN32)
|
||||||
SET(TDTOOL_DEFAULT FALSE)
|
SET(TDTOOL_DEFAULT FALSE)
|
||||||
|
|
|
@ -2,6 +2,8 @@ IF(COMMAND cmake_policy)
|
||||||
cmake_policy(SET CMP0003 NEW)
|
cmake_policy(SET CMP0003 NEW)
|
||||||
ENDIF(COMMAND cmake_policy)
|
ENDIF(COMMAND cmake_policy)
|
||||||
|
|
||||||
|
FIND_PACKAGE( SignTool REQUIRED )
|
||||||
|
|
||||||
######## Non configurable options ########
|
######## Non configurable options ########
|
||||||
SET( telldus-core_SRCS
|
SET( telldus-core_SRCS
|
||||||
CallbackDispatcher.cpp
|
CallbackDispatcher.cpp
|
||||||
|
@ -111,6 +113,7 @@ SET_TARGET_PROPERTIES(${telldus-core_TARGET} PROPERTIES
|
||||||
VERSION ${PACKAGE_VERSION}
|
VERSION ${PACKAGE_VERSION}
|
||||||
SOVERSION ${PACKAGE_SOVERSION}
|
SOVERSION ${PACKAGE_SOVERSION}
|
||||||
)
|
)
|
||||||
|
SIGN(${telldus-core_TARGET})
|
||||||
|
|
||||||
IF (NOT LIBRARY_DIR)
|
IF (NOT LIBRARY_DIR)
|
||||||
SET(LIBRARY_DIR "lib")
|
SET(LIBRARY_DIR "lib")
|
||||||
|
|
19
telldus-core/cmake/FindSignTool.cmake
Normal file
19
telldus-core/cmake/FindSignTool.cmake
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
|
||||||
|
IF(WIN32)
|
||||||
|
SET(SIGN_FILES FALSE CACHE BOOL "Sign the generated files. This requires a certificate to be installed on the computer!")
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
|
FUNCTION(SIGN TARGET)
|
||||||
|
IF (NOT WIN32)
|
||||||
|
RETURN()
|
||||||
|
ENDIF()
|
||||||
|
IF (NOT SIGN_FILES)
|
||||||
|
RETURN()
|
||||||
|
ENDIF()
|
||||||
|
GET_TARGET_PROPERTY(file ${TARGET} LOCATION)
|
||||||
|
GET_FILENAME_COMPONENT(filename ${file} NAME)
|
||||||
|
ADD_CUSTOM_COMMAND( TARGET ${TARGET} POST_BUILD
|
||||||
|
COMMAND signtool.exe sign /a /t http://timestamp.verisign.com/scripts/timstamp.dll ${file}
|
||||||
|
COMMENT "Signing file ${filename}"
|
||||||
|
)
|
||||||
|
ENDFUNCTION()
|
|
@ -2,6 +2,8 @@ IF(COMMAND cmake_policy)
|
||||||
CMAKE_POLICY(SET CMP0003 NEW)
|
CMAKE_POLICY(SET CMP0003 NEW)
|
||||||
ENDIF(COMMAND cmake_policy)
|
ENDIF(COMMAND cmake_policy)
|
||||||
|
|
||||||
|
FIND_PACKAGE( SignTool REQUIRED )
|
||||||
|
|
||||||
SET (telldusd_DESCRIPTION
|
SET (telldusd_DESCRIPTION
|
||||||
"background service for Telldus TellStick, must be running to control TellStick"
|
"background service for Telldus TellStick, must be running to control TellStick"
|
||||||
)
|
)
|
||||||
|
@ -178,6 +180,8 @@ SET_SOURCE_FILES_PROPERTIES(${telldus-service_RESOURCES} PROPERTIES MACOSX_PACKA
|
||||||
|
|
||||||
TARGET_LINK_LIBRARIES( ${telldus-service_TARGET} ${telldus-service_LIBRARIES} )
|
TARGET_LINK_LIBRARIES( ${telldus-service_TARGET} ${telldus-service_LIBRARIES} )
|
||||||
|
|
||||||
|
SIGN(${telldus-service_TARGET})
|
||||||
|
|
||||||
SET_TARGET_PROPERTIES(${telldus-service_TARGET} PROPERTIES
|
SET_TARGET_PROPERTIES(${telldus-service_TARGET} PROPERTIES
|
||||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
||||||
)
|
)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue