2011-01-15 04:01:31 +00:00
|
|
|
# synergy -- mouse and keyboard sharing utility
|
|
|
|
# Copyright (C) 2009 Chris Schoeneman, Nick Bolton, Sorin Sbarnea
|
2011-01-15 02:20:14 +00:00
|
|
|
#
|
|
|
|
# This package is free software; you can redistribute it and/or
|
|
|
|
# modify it under the terms of the GNU General Public License
|
|
|
|
# found in the file COPYING that should have accompanied this file.
|
|
|
|
#
|
|
|
|
# This package is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
# GNU General Public License for more details.
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU General Public License
|
|
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
|
|
|
# List of CPack variables:
|
|
|
|
# http://www.vtk.org/Wiki/CMake:CPackConfiguration
|
|
|
|
|
|
|
|
# CPack files common to all platforms.
|
|
|
|
SET(cpack_targets synergys synergyc)
|
|
|
|
|
|
|
|
IF(WIN32)
|
|
|
|
# Windows has an extra GUI and DLL.
|
|
|
|
LIST(APPEND cpack_targets launcher synrgyhk)
|
|
|
|
ENDIF(WIN32)
|
|
|
|
|
|
|
|
INSTALL(
|
|
|
|
TARGETS ${cpack_targets}
|
|
|
|
RUNTIME DESTINATION bin)
|
|
|
|
|
|
|
|
IF(WIN32)
|
|
|
|
INSTALL(
|
|
|
|
FILES
|
|
|
|
bin/Release/qsynergy.exe
|
|
|
|
DESTINATION bin)
|
|
|
|
ELSE(WIN32)
|
|
|
|
IF(APPLE)
|
|
|
|
# TODO: how the hell do we distribute mac apps?
|
|
|
|
#INSTALL(
|
|
|
|
# MACOSX_BUNDLE
|
|
|
|
# bin/QSynergy.app
|
|
|
|
# DESTINATION bin)
|
|
|
|
ELSE(APPLE)
|
|
|
|
INSTALL(
|
|
|
|
FILES
|
|
|
|
bin/qsynergy
|
|
|
|
DESTINATION bin)
|
|
|
|
ENDIF(APPLE)
|
|
|
|
ENDIF(WIN32)
|
|
|
|
|
|
|
|
# The default CPack behaviour is not to append the system processor
|
|
|
|
# type, which is undesirable in our case, since we want to support
|
|
|
|
# both 32-bit and 64-bit processors.
|
|
|
|
SET(CPACK_SYSTEM_NAME ${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR})
|
|
|
|
|
|
|
|
# Hack: When running CMake on 64-bit Windows 7, the value of
|
|
|
|
# CMAKE_SYSTEM_PROCESSOR always seems to be x86, regardless of if the
|
|
|
|
# CMake build is 32-bit or 64-bit. As a work around, we will prefix either
|
|
|
|
# x86 or x64 (in the same style as Microsoft do with their installers).
|
2011-01-15 04:01:31 +00:00
|
|
|
# However, some confusion may be caused when the user sees that Synergy
|
2011-01-15 02:20:14 +00:00
|
|
|
# is installed in the x86 Program Files directory (even though it's a
|
|
|
|
# 64-bit build). This is caused by NSIS only supporting the 32-bit
|
|
|
|
# installs structure (also uses 32-bit registry key locations).
|
|
|
|
IF(WIN32)
|
|
|
|
IF(CMAKE_CL_64)
|
|
|
|
SET(CPACK_SYSTEM_NAME Windows-x64)
|
|
|
|
ELSE(CMAKE_CL_64)
|
|
|
|
SET(CPACK_SYSTEM_NAME Windows-x86)
|
|
|
|
ENDIF(CMAKE_CL_64)
|
|
|
|
ENDIF(WIN32)
|
|
|
|
|
|
|
|
# For source code, use .tar.gz on Unix, and .zip on Windows
|
|
|
|
IF(UNIX)
|
|
|
|
SET(CPACK_SOURCE_GENERATOR TGZ)
|
|
|
|
ELSE(UNIX)
|
|
|
|
SET(CPACK_SOURCE_GENERATOR ZIP)
|
2010-06-21 06:38:38 +00:00
|
|
|
ENDIF(UNIX)
|
|
|
|
|
|
|
|
if(APPLE)
|
|
|
|
set(CPACK_SYSTEM_NAME "MacOSX-Universal")
|
2011-01-15 02:20:14 +00:00
|
|
|
endif(APPLE)
|
|
|
|
|
2011-01-15 04:01:31 +00:00
|
|
|
SET(CPACK_PACKAGE_NAME "synergy")
|
|
|
|
SET(CPACK_PACKAGE_VENDOR "The Synergy Project")
|
|
|
|
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Installs Synergy server and client")
|
2011-01-15 02:20:14 +00:00
|
|
|
SET(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
|
|
|
|
SET(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
|
|
|
|
SET(CPACK_PACKAGE_VERSION_PATCH ${VERSION_REV})
|
|
|
|
SET(CPACK_PACKAGE_VERSION ${VERSION})
|
2011-01-15 04:01:31 +00:00
|
|
|
SET(CPACK_PACKAGE_CONTACT http://synergy-foss.org/)
|
2011-01-15 02:20:14 +00:00
|
|
|
SET(CPACK_RESOURCE_FILE_LICENSE "${cmake_dir}/License.rtf")
|
|
|
|
SET(CPACK_RESOURCE_FILE_README "${cmake_dir}/Readme.txt")
|
|
|
|
|
|
|
|
IF(WIN32)
|
|
|
|
SET(WIN32_ICON "${root_dir}/cmd/launcher/synergy.ico")
|
|
|
|
SET(CPACK_NSIS_MUI_ICON ${WIN32_ICON})
|
|
|
|
SET(CPACK_NSIS_MUI_UNIICON ${WIN32_ICON})
|
|
|
|
SET(CPACK_NSIS_INSTALLED_ICON_NAME launcher)
|
2011-01-15 04:01:31 +00:00
|
|
|
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "Synergy")
|
|
|
|
SET(CPACK_PACKAGE_EXECUTABLES qsynergy;Synergy)
|
2011-01-15 02:20:14 +00:00
|
|
|
ENDIF(WIN32)
|
|
|
|
|
|
|
|
# files to exclude from src package (regex patterns)
|
|
|
|
# to escape, use 4 backslashes (\\\\) -- yuck!
|
|
|
|
SET(CPACK_SOURCE_IGNORE_FILES
|
|
|
|
# temp output dir in root
|
|
|
|
"/bin/"
|
|
|
|
|
|
|
|
# generated config.h file
|
|
|
|
"/config\\\\.h$"
|
|
|
|
|
|
|
|
# buildbot stuff
|
|
|
|
"\\\\.buildbot\\\\-sourcedata$"
|
|
|
|
|
|
|
|
# qt temp build dir
|
|
|
|
"/gui/tmp/.*"
|
|
|
|
|
|
|
|
# qt make file
|
|
|
|
"/gui/Makefile$"
|
|
|
|
|
|
|
|
# qt generated ui headers
|
|
|
|
"/gui/ui_.*\\\\.h$"
|
|
|
|
|
|
|
|
# compiled python files
|
|
|
|
".*\\\\.pyc$"
|
|
|
|
|
|
|
|
# subversion caches (all dirs)
|
|
|
|
".*/\\\\.svn/.*"
|
|
|
|
|
|
|
|
# emacs temporary files
|
|
|
|
".*~$"
|
|
|
|
)
|
|
|
|
|
|
|
|
# Must be last (since it relies of CPACK_ vars).
|
|
|
|
INCLUDE(CPack)
|