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_SOVERSION 2)
|
||||
|
||||
SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
|
||||
|
||||
IF (PACKAGE_SUBVERSION)
|
||||
SET(DISPLAYED_VERSION "${PACKAGE_VERSION}_${PACKAGE_SUBVERSION}")
|
||||
ELSE (PACKAGE_SUBVERSION)
|
||||
|
@ -25,9 +27,6 @@ ENDIF(PACKAGE_SUBVERSION)
|
|||
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")
|
||||
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)
|
||||
SET(TDTOOL_DEFAULT FALSE)
|
||||
|
|
|
@ -2,6 +2,8 @@ IF(COMMAND cmake_policy)
|
|||
cmake_policy(SET CMP0003 NEW)
|
||||
ENDIF(COMMAND cmake_policy)
|
||||
|
||||
FIND_PACKAGE( SignTool REQUIRED )
|
||||
|
||||
######## Non configurable options ########
|
||||
SET( telldus-core_SRCS
|
||||
CallbackDispatcher.cpp
|
||||
|
@ -111,6 +113,7 @@ SET_TARGET_PROPERTIES(${telldus-core_TARGET} PROPERTIES
|
|||
VERSION ${PACKAGE_VERSION}
|
||||
SOVERSION ${PACKAGE_SOVERSION}
|
||||
)
|
||||
SIGN(${telldus-core_TARGET})
|
||||
|
||||
IF (NOT LIBRARY_DIR)
|
||||
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)
|
||||
ENDIF(COMMAND cmake_policy)
|
||||
|
||||
FIND_PACKAGE( SignTool REQUIRED )
|
||||
|
||||
SET (telldusd_DESCRIPTION
|
||||
"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} )
|
||||
|
||||
SIGN(${telldus-service_TARGET})
|
||||
|
||||
SET_TARGET_PROPERTIES(${telldus-service_TARGET} PROPERTIES
|
||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue