mirror of
https://github.com/cjcliffe/CubicSDR.git
synced 2024-11-25 21:28:38 -05:00
Add OSX code signing features to CMakeLists.txt
This commit is contained in:
parent
b155338b1d
commit
dd9cd03649
@ -6,7 +6,7 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules/")
|
|||||||
|
|
||||||
SET(CUBICSDR_VERSION_MAJOR "0")
|
SET(CUBICSDR_VERSION_MAJOR "0")
|
||||||
SET(CUBICSDR_VERSION_MINOR "1")
|
SET(CUBICSDR_VERSION_MINOR "1")
|
||||||
SET(CUBICSDR_VERSION_PATCH "25")
|
SET(CUBICSDR_VERSION_PATCH "26")
|
||||||
SET(CUBICSDR_VERSION_REL "alpha")
|
SET(CUBICSDR_VERSION_REL "alpha")
|
||||||
SET(CUBICSDR_VERSION "${CUBICSDR_VERSION_MAJOR}.${CUBICSDR_VERSION_MINOR}.${CUBICSDR_VERSION_PATCH}-${CUBICSDR_VERSION_REL}")
|
SET(CUBICSDR_VERSION "${CUBICSDR_VERSION_MAJOR}.${CUBICSDR_VERSION_MINOR}.${CUBICSDR_VERSION_PATCH}-${CUBICSDR_VERSION_REL}")
|
||||||
|
|
||||||
@ -588,7 +588,11 @@ ENDIF(APPLE)
|
|||||||
|
|
||||||
IF (APPLE AND BUNDLE_APP)
|
IF (APPLE AND BUNDLE_APP)
|
||||||
PROJECT(CubicSDR)
|
PROJECT(CubicSDR)
|
||||||
|
set(CPACK_BINARY_DRAGNDROP ON)
|
||||||
|
|
||||||
SET(MACOSX_BUNDLE_BUNDLE_NAME CubicSDR)
|
SET(MACOSX_BUNDLE_BUNDLE_NAME CubicSDR)
|
||||||
|
SET(CPACK_APPLE_BUNDLE_ID "com.cubicproductions.cubicsdr")
|
||||||
|
set(CUBICSDR_CODE_SIGN OFF CACHE BOOL "Code Signing")
|
||||||
|
|
||||||
set(BUNDLE_SOAPY_MODS OFF CACHE BOOL "Bundle local SoapySDR modules")
|
set(BUNDLE_SOAPY_MODS OFF CACHE BOOL "Bundle local SoapySDR modules")
|
||||||
set(BUNDLE_MIR_SDR OFF CACHE BOOL "Bundle mir_sdr for personal use only -- do not distribute.")
|
set(BUNDLE_MIR_SDR OFF CACHE BOOL "Bundle mir_sdr for personal use only -- do not distribute.")
|
||||||
@ -621,23 +625,22 @@ IF (APPLE AND BUNDLE_APP)
|
|||||||
)
|
)
|
||||||
|
|
||||||
target_link_libraries(CubicSDR ${LIQUID_LIB} ${FFTW_LIB} ${wxWidgets_LIBRARIES} ${OPENGL_LIBRARIES} ${OTHER_LIBRARIES})
|
target_link_libraries(CubicSDR ${LIQUID_LIB} ${FFTW_LIB} ${wxWidgets_LIBRARIES} ${OPENGL_LIBRARIES} ${OTHER_LIBRARIES})
|
||||||
SET_TARGET_PROPERTIES(CubicSDR PROPERTIES MACOSX_BUNDLE TRUE)
|
|
||||||
|
|
||||||
SET_TARGET_PROPERTIES(CubicSDR PROPERTIES
|
SET_TARGET_PROPERTIES(CubicSDR PROPERTIES
|
||||||
MACOSX_BUNDLE_BUNDLE_NAME "CubicSDR"
|
MACOSX_BUNDLE TRUE
|
||||||
# MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}
|
MACOSX_BUNDLE_INFO_STRING "CubicSDR Open-Source Software-Defined Radio Application"
|
||||||
# MACOSX_BUNDLE_LONG_VERSION_STRING "${PROJECT_VERSION}"
|
MACOSX_BUNDLE_BUNDLE_NAME "CubicSDR"
|
||||||
# MACOSX_BUNDLE_SHORT_VERSION_STRING "${PROJECT_VERSION}"
|
MACOSX_BUNDLE_BUNDLE_VERSION "${CUBICSDR_VERSION_MAJOR}.${CUBICSDR_VERSION_MINOR}.${CUBICSDR_VERSION_PATCH}"
|
||||||
MACOSX_BUNDLE_GUI_IDENTIFIER "com.cubicproductions.cubicsdr"
|
MACOSX_BUNDLE_LONG_VERSION_STRING "${CUBICSDR_VERSION}.${CUBICSDR_VERSION_MINOR}"
|
||||||
MACOSX_BUNDLE_ICON_FILE CubicSDR.icns
|
MACOSX_BUNDLE_SHORT_VERSION_STRING "${CUBICSDR_VERSION_MAJOR}.${CUBICSDR_VERSION_MINOR}.${CUBICSDR_VERSION_REL}"
|
||||||
|
MACOSX_BUNDLE_GUI_IDENTIFIER "com.cubicproductions.cubicsdr"
|
||||||
|
MACOSX_BUNDLE_ICON_FILE "CubicSDR.icns"
|
||||||
|
MACOSX_BUNDLE_COPYRIGHT "Copyright 2015 Charles J. Cliffe. All Rights Reserved."
|
||||||
)
|
)
|
||||||
|
|
||||||
SET(APPS "${CMAKE_BINARY_DIR}/${EX_PLATFORM_NAME}/CubicSDR.app")
|
SET(APPS "${CMAKE_BINARY_DIR}/${EX_PLATFORM_NAME}/CubicSDR.app")
|
||||||
# SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
|
# SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
|
||||||
# SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
|
# SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
|
||||||
|
|
||||||
SET_TARGET_PROPERTIES(CubicSDR PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${PROJECT_SOURCE_DIR}/cmake/CubicSDRInfo.plist.in")
|
|
||||||
|
|
||||||
IF (BUNDLE_SOAPY_MODS)
|
IF (BUNDLE_SOAPY_MODS)
|
||||||
|
|
||||||
message(STATUS "SOAPY_ROOT: ${SOAPY_SDR_ROOT}")
|
message(STATUS "SOAPY_ROOT: ${SOAPY_SDR_ROOT}")
|
||||||
@ -648,10 +651,19 @@ IF (APPLE AND BUNDLE_APP)
|
|||||||
DESTINATION "${APPS}/Contents/MacOS/modules"
|
DESTINATION "${APPS}/Contents/MacOS/modules"
|
||||||
COMPONENT Runtime
|
COMPONENT Runtime
|
||||||
)
|
)
|
||||||
|
# IF (CUBICSDR_CODE_SIGN)
|
||||||
|
# LIST(APPEND CPACK_BUNDLE_APPLE_CODESIGN_FILES "${APPS}/Contents/MacOS/modules/${SOAPY_MOD_FILE}")
|
||||||
|
# ENDIF()
|
||||||
ENDFOREACH()
|
ENDFOREACH()
|
||||||
|
|
||||||
|
# IF (CUBICSDR_CODE_SIGN)
|
||||||
|
# message(STATUS "Will sign modules: ${CPACK_BUNDLE_APPLE_CODESIGN_FILES}")
|
||||||
|
# ENDIF()
|
||||||
|
|
||||||
ENDIF(BUNDLE_SOAPY_MODS)
|
ENDIF(BUNDLE_SOAPY_MODS)
|
||||||
|
|
||||||
|
SET_TARGET_PROPERTIES(CubicSDR PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${PROJECT_SOURCE_DIR}/cmake/CubicSDRInfo.plist.in")
|
||||||
|
|
||||||
INSTALL(CODE "
|
INSTALL(CODE "
|
||||||
SET(BU_COPY_FULL_FRAMEWORK_CONTENTS ON)
|
SET(BU_COPY_FULL_FRAMEWORK_CONTENTS ON)
|
||||||
include(BundleUtilities)
|
include(BundleUtilities)
|
||||||
@ -695,6 +707,36 @@ IF (APPLE AND BUNDLE_APP)
|
|||||||
# ENDFOREACH()
|
# ENDFOREACH()
|
||||||
# ENDIF()
|
# ENDIF()
|
||||||
|
|
||||||
|
IF (CUBICSDR_CODE_SIGN)
|
||||||
|
SET (CUBICSDR_CERT "3rd Party Mac Developer Application: [Name]" CACHE STRING "Code signing certificate name.")
|
||||||
|
MESSAGE(STATUS "Code Signing Enabled: ${CUBICSDR_CERT}")
|
||||||
|
|
||||||
|
CONFIGURE_FILE(
|
||||||
|
"${PROJECT_SOURCE_DIR}/cmake/code_sign.sh.in"
|
||||||
|
"${CMAKE_CURRENT_BINARY_DIR}/code_sign.sh"
|
||||||
|
)
|
||||||
|
CONFIGURE_FILE(
|
||||||
|
"${PROJECT_SOURCE_DIR}/cmake/dmg_sign.sh.in"
|
||||||
|
"${CMAKE_CURRENT_BINARY_DIR}/dmg_sign.sh"
|
||||||
|
)
|
||||||
|
|
||||||
|
ADD_CUSTOM_COMMAND(
|
||||||
|
TARGET CubicSDR
|
||||||
|
COMMAND chmod ARGS +x ${CMAKE_CURRENT_BINARY_DIR}/code_sign.sh ${CMAKE_CURRENT_BINARY_DIR}/dmg_sign.sh
|
||||||
|
)
|
||||||
|
ADD_CUSTOM_COMMAND(
|
||||||
|
TARGET CubicSDR
|
||||||
|
POST_BUILD
|
||||||
|
COMMAND "${CMAKE_CURRENT_BINARY_DIR}/code_sign.sh"
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E echo "Running CPack.."
|
||||||
|
COMMAND ${CMAKE_CPACK_COMMAND}
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E echo "Signing package.."
|
||||||
|
COMMAND "${CMAKE_CURRENT_BINARY_DIR}/dmg_sign.sh" WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||||
|
)
|
||||||
|
|
||||||
|
ENDIF(CUBICSDR_CODE_SIGN)
|
||||||
|
|
||||||
|
|
||||||
INSTALL(CODE "
|
INSTALL(CODE "
|
||||||
VERIFY_APP(\"${APPS}\")
|
VERIFY_APP(\"${APPS}\")
|
||||||
" COMPONENT Runtime)
|
" COMPONENT Runtime)
|
||||||
@ -703,7 +745,6 @@ IF (APPLE AND BUNDLE_APP)
|
|||||||
BUNDLE DESTINATION . COMPONENT Runtime
|
BUNDLE DESTINATION . COMPONENT Runtime
|
||||||
)
|
)
|
||||||
|
|
||||||
set(CPACK_BINARY_DRAGNDROP ON)
|
|
||||||
include(CPack)
|
include(CPack)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
IF(APPLE AND NOT BUNDLE_APP)
|
IF(APPLE AND NOT BUNDLE_APP)
|
||||||
@ -738,8 +779,6 @@ IF (WIN32 AND NOT BUILD_INSTALLER)
|
|||||||
-DRES_FOLDER="../share/cubicsdr/"
|
-DRES_FOLDER="../share/cubicsdr/"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
INSTALL(TARGETS CubicSDR DESTINATION bin)
|
INSTALL(TARGETS CubicSDR DESTINATION bin)
|
||||||
INSTALL(FILES
|
INSTALL(FILES
|
||||||
${FFTW_DLL}
|
${FFTW_DLL}
|
||||||
|
2
cmake/code_sign.sh.in
Normal file
2
cmake/code_sign.sh.in
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
/usr/bin/codesign -s "${CUBICSDR_CERT}" ${APPS}
|
2
cmake/dmg_sign.sh.in
Normal file
2
cmake/dmg_sign.sh.in
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
/usr/bin/codesign -s "${CUBICSDR_CERT}" CubicSDR-${CPACK_PACKAGE_VERSION}-Darwin.dmg
|
Loading…
Reference in New Issue
Block a user