forked from FreeRDP/FreeRDP
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
cmake: fix package generation on Mac OS X
- Loading branch information
1 parent
2c8bef2
commit 660e904
Showing
4 changed files
with
110 additions
and
90 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
|
||
# Generate .txt license file for CPack (PackageMaker requires a file extension) | ||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/LICENSE ${CMAKE_CURRENT_BINARY_DIR}/LICENSE.txt @ONLY) | ||
|
||
SET(CPACK_BINARY_ZIP "ON") | ||
|
||
# Workaround to remove c++ compiler macros and defines for Eclipse. | ||
# If c++ macros/defines are set __cplusplus is also set which causes | ||
# problems when compiling freerdp/jni. To prevent this problem we set the macros to "". | ||
|
||
if (ANDROID AND CMAKE_EXTRA_GENERATOR STREQUAL "Eclipse CDT4") | ||
set(CMAKE_EXTRA_GENERATOR_CXX_SYSTEM_DEFINED_MACROS "") | ||
message(STATUS "Disabled CXX system defines for eclipse (workaround).") | ||
endif() | ||
|
||
set(CPACK_SOURCE_IGNORE_FILES "/\\\\.git/;/\\\\.gitignore;/CMakeCache.txt") | ||
|
||
if(NOT WIN32) | ||
if(APPLE AND (NOT IOS)) | ||
|
||
if(WITH_SERVER) | ||
set(CPACK_PACKAGE_EXECUTABLES ${CPACK_PACKAGE_EXECUTABLES} "mfreerdp-server") | ||
endif() | ||
endif() | ||
|
||
if(WITH_X11) | ||
set(CPACK_PACKAGE_EXECUTABLES "xfreerdp") | ||
|
||
if(WITH_SERVER) | ||
set(CPACK_PACKAGE_EXECUTABLES ${CPACK_PACKAGE_EXECUTABLES} "xfreerdp-server") | ||
endif() | ||
endif() | ||
endif() | ||
|
||
set(CPACK_SYSTEM_NAME "${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}") | ||
set(CPACK_TOPLEVEL_TAG "${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}") | ||
|
||
string(TOLOWER ${CMAKE_PROJECT_NAME} CMAKE_PROJECT_NAME_lower) | ||
set(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME_lower}-${FREERDP_VERSION_FULL}-${CPACK_SYSTEM_NAME}") | ||
set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME_lower}-${FREERDP_VERSION_FULL}-${CPACK_SYSTEM_NAME}") | ||
|
||
set(CPACK_PACKAGE_NAME "FreeRDP") | ||
set(CPACK_PACKAGE_VENDOR "FreeRDP") | ||
set(CPACK_PACKAGE_VERSION ${FREERDP_VERSION_FULL}) | ||
set(CPACK_PACKAGE_VERSION_MAJOR ${FREERDP_VERSION_MAJOR}) | ||
set(CPACK_PACKAGE_VERSION_MINOR ${FREERDP_VERSION_MINOR}) | ||
set(CPACK_PACKAGE_VERSION_PATCH ${FREERDP_VERSION_REVISION}) | ||
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "FreeRDP: A Remote Desktop Protocol Implementation") | ||
|
||
set(CPACK_PACKAGE_CONTACT "Marc-Andre Moreau") | ||
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "[email protected]") | ||
set(CPACK_DEBIAN_ARCHITECTURE ${CMAKE_SYSTEM_PROCESSOR}) | ||
|
||
set(CPACK_PACKAGE_INSTALL_DIRECTORY "FreeRDP") | ||
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_BINARY_DIR}/LICENSE.txt") | ||
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_BINARY_DIR}/LICENSE.txt") | ||
|
||
set(CPACK_NSIS_MODIFY_PATH ON) | ||
set(CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/resources\\\\FreeRDP_Install.bmp") | ||
set(CPACK_NSIS_MUI_ICON "${CMAKE_SOURCE_DIR}/resources\\\\FreeRDP_Icon_96px.ico") | ||
set(CPACK_NSIS_MUI_UNICON "${CMAKE_SOURCE_DIR}/resource\\\\FreeRDP_Icon_96px.ico") | ||
|
||
set(CPACK_COMPONENTS_ALL client server libraries headers) | ||
|
||
if(MSVC) | ||
if(MSVC_RUNTIME STREQUAL "dynamic") | ||
set(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP TRUE) | ||
include(InstallRequiredSystemLibraries) | ||
|
||
install(PROGRAMS ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS} | ||
DESTINATION ${CMAKE_INSTALL_BINDIR} | ||
COMPONENT libraries) | ||
endif() | ||
endif() | ||
|
||
set(CPACK_COMPONENT_CLIENT_DISPLAY_NAME "Client") | ||
set(CPACK_COMPONENT_CLIENT_GROUP "Applications") | ||
|
||
set(CPACK_COMPONENT_SERVER_DISPLAY_NAME "Server") | ||
set(CPACK_COMPONENT_SERVER_GROUP "Applications") | ||
|
||
set(CPACK_COMPONENT_LIBRARIES_DISPLAY_NAME "Libraries") | ||
set(CPACK_COMPONENT_LIBRARIES_GROUP "Runtime") | ||
|
||
set(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "Headers") | ||
set(CPACK_COMPONENT_HEADERS_GROUP "Development") | ||
|
||
set(CPACK_COMPONENT_GROUP_RUNTIME_DESCRIPTION "Runtime") | ||
set(CPACK_COMPONENT_GROUP_APPLICATIONS_DESCRIPTION "Applications") | ||
set(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION "Development") | ||
|
||
configure_file("${CMAKE_SOURCE_DIR}/CMakeCPackOptions.cmake.in" | ||
"${CMAKE_BINARY_DIR}/CMakeCPackOptions.cmake" @ONLY) | ||
set(CPACK_PROJECT_CONFIG_FILE "${CMAKE_BINARY_DIR}/CMakeCPackOptions.cmake") | ||
|
||
include(CPack) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
# This file is configured at cmake time, and loaded at cpack time. | ||
# To pass variables to cpack from cmake, they must be configured in this file. | ||
|
||
if("${CPACK_GENERATOR}" STREQUAL "PackageMaker") | ||
if(CMAKE_PACKAGE_QTGUI) | ||
set(CPACK_PACKAGE_DEFAULT_LOCATION "/Applications") | ||
else() | ||
set(CPACK_PACKAGE_DEFAULT_LOCATION "/usr") | ||
endif() | ||
endif() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -496,93 +496,4 @@ if(WITH_SERVER) | |
endif() | ||
|
||
# Packaging | ||
|
||
SET(CPACK_BINARY_ZIP "ON") | ||
|
||
set(CPACK_SOURCE_IGNORE_FILES "/\\\\.git/;/\\\\.gitignore;/CMakeCache.txt") | ||
|
||
if(NOT WIN32) | ||
if(APPLE AND (NOT IOS)) | ||
|
||
if(WITH_SERVER) | ||
set(CPACK_PACKAGE_EXECUTABLES ${CPACK_PACKAGE_EXECUTABLES} "mfreerdp-server") | ||
endif() | ||
endif() | ||
|
||
if(WITH_X11) | ||
set(CPACK_PACKAGE_EXECUTABLES "xfreerdp") | ||
|
||
if(WITH_SERVER) | ||
set(CPACK_PACKAGE_EXECUTABLES ${CPACK_PACKAGE_EXECUTABLES} "xfreerdp-server") | ||
endif() | ||
endif() | ||
endif() | ||
|
||
set(CPACK_SYSTEM_NAME "${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}") | ||
set(CPACK_TOPLEVEL_TAG "${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}") | ||
|
||
string(TOLOWER ${CMAKE_PROJECT_NAME} CMAKE_PROJECT_NAME_lower) | ||
set(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME_lower}-${FREERDP_VERSION_FULL}-${CPACK_SYSTEM_NAME}") | ||
set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME_lower}-${FREERDP_VERSION_FULL}-${CPACK_SYSTEM_NAME}") | ||
|
||
set(CPACK_PACKAGE_NAME "FreeRDP") | ||
set(CPACK_PACKAGE_VENDOR "FreeRDP") | ||
set(CPACK_PACKAGE_VERSION ${FREERDP_VERSION_FULL}) | ||
set(CPACK_PACKAGE_VERSION_MAJOR ${FREERDP_VERSION_MAJOR}) | ||
set(CPACK_PACKAGE_VERSION_MINOR ${FREERDP_VERSION_MINOR}) | ||
set(CPACK_PACKAGE_VERSION_PATCH ${FREERDP_VERSION_REVISION}) | ||
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "FreeRDP: A Remote Desktop Protocol Implementation") | ||
|
||
set(CPACK_PACKAGE_CONTACT "Marc-Andre Moreau") | ||
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "[email protected]") | ||
set(CPACK_DEBIAN_ARCHITECTURE ${CMAKE_SYSTEM_PROCESSOR}) | ||
|
||
set(CPACK_PACKAGE_INSTALL_DIRECTORY "FreeRDP") | ||
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/LICENSE") | ||
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE") | ||
|
||
set(CPACK_NSIS_MODIFY_PATH ON) | ||
set(CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/resources\\\\FreeRDP_Install.bmp") | ||
set(CPACK_NSIS_MUI_ICON "${CMAKE_SOURCE_DIR}/resources\\\\FreeRDP_Icon_96px.ico") | ||
set(CPACK_NSIS_MUI_UNICON "${CMAKE_SOURCE_DIR}/resource\\\\FreeRDP_Icon_96px.ico") | ||
|
||
set(CPACK_COMPONENTS_ALL client server libraries headers) | ||
|
||
if(MSVC) | ||
if(MSVC_RUNTIME STREQUAL "dynamic") | ||
set(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP TRUE) | ||
include(InstallRequiredSystemLibraries) | ||
|
||
install(PROGRAMS ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS} | ||
DESTINATION ${CMAKE_INSTALL_BINDIR} | ||
COMPONENT libraries) | ||
endif() | ||
endif() | ||
|
||
set(CPACK_COMPONENT_CLIENT_DISPLAY_NAME "Client") | ||
set(CPACK_COMPONENT_CLIENT_GROUP "Applications") | ||
|
||
set(CPACK_COMPONENT_SERVER_DISPLAY_NAME "Server") | ||
set(CPACK_COMPONENT_SERVER_GROUP "Applications") | ||
|
||
set(CPACK_COMPONENT_LIBRARIES_DISPLAY_NAME "Libraries") | ||
set(CPACK_COMPONENT_LIBRARIES_GROUP "Runtime") | ||
|
||
set(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "Headers") | ||
set(CPACK_COMPONENT_HEADERS_GROUP "Development") | ||
|
||
set(CPACK_COMPONENT_GROUP_RUNTIME_DESCRIPTION "Runtime") | ||
set(CPACK_COMPONENT_GROUP_APPLICATIONS_DESCRIPTION "Applications") | ||
set(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION "Development") | ||
|
||
# Workaround to remove c++ compiler macros and defines for Eclipse. | ||
# If c++ macros/defines are set __cplusplus is also set which causes | ||
# problems when compiling freerdp/jni. To prevent this problem | ||
# we set the macros to "". | ||
if (ANDROID AND CMAKE_EXTRA_GENERATOR STREQUAL "Eclipse CDT4") | ||
set(CMAKE_EXTRA_GENERATOR_CXX_SYSTEM_DEFINED_MACROS "") | ||
message(STATUS "Disabled CXX system defines for eclipse (workaround).") | ||
endif() | ||
|
||
include(CPack) | ||
|
||
include(CMakeCPack.cmake) |