Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 1 | CMAKE_MINIMUM_REQUIRED(VERSION 2.8) |
| 2 | |
| 3 | IF(POLICY CMP0022) |
| 4 | CMAKE_POLICY(SET CMP0022 NEW) |
| 5 | ENDIF(POLICY CMP0022) |
| 6 | |
Alexandre Lision | b47b4c8 | 2015-01-20 11:29:03 -0500 | [diff] [blame] | 7 | SET(PROJ_NAME Ring) |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 8 | |
| 9 | # To build nighlies we need to update RING_VERSION with an optional command line arg |
| 10 | IF("${RING_VERSION}" STREQUAL "") |
Guillaume Roguez | 812d550 | 2016-03-16 22:46:29 -0400 | [diff] [blame] | 11 | SET(RING_VERSION "1.0.0") |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 12 | ENDIF("${RING_VERSION}" STREQUAL "") |
| 13 | |
Alexandre Lision | 3862215 | 2016-03-15 10:55:59 +0700 | [diff] [blame] | 14 | SET(RING_VERSION_NAME "Louis-Joseph Papineau") |
Alexandre Lision | bb30613 | 2015-03-27 11:30:02 -0400 | [diff] [blame] | 15 | |
Alexandre Lision | 71b4151 | 2016-05-02 13:53:44 -0400 | [diff] [blame] | 16 | MESSAGE("Building Ring version - " ${RING_VERSION_NAME} " " ${RING_VERSION}) |
Alexandre Lision | 9fe374b | 2016-01-06 10:17:31 -0500 | [diff] [blame] | 17 | SET(PROJ_COPYRIGHT " © 2015-2016 Savoir-faire Linux \n GPLv3 https://www.gnu.org/copyleft/gpl.html") |
Alexandre Lision | b47b4c8 | 2015-01-20 11:29:03 -0500 | [diff] [blame] | 18 | |
Alexandre Lision | 6517be8 | 2016-02-11 10:32:20 -0500 | [diff] [blame] | 19 | ADD_DEFINITIONS("-std=c++11 -stdlib=libc++ -fobjc-arc") |
Alexandre Lision | 5855b6a | 2015-02-03 11:31:05 -0500 | [diff] [blame] | 20 | |
Alexandre Lision | b47b4c8 | 2015-01-20 11:29:03 -0500 | [diff] [blame] | 21 | PROJECT(${PROJ_NAME}) |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 22 | |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 23 | FIND_PACKAGE(Qt5Core REQUIRED) |
Alexandre Lision | 3b0bd33 | 2015-03-15 18:43:07 -0400 | [diff] [blame] | 24 | FIND_PACKAGE(Qt5MacExtras REQUIRED) |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 25 | FIND_PACKAGE(Qt5Widgets REQUIRED) |
| 26 | FIND_PACKAGE(LibRingClient REQUIRED) |
| 27 | |
Alexandre Lision | fd0d6c8 | 2016-03-29 17:06:54 -0400 | [diff] [blame] | 28 | EXECUTE_PROCESS(COMMAND git submodule update --init |
| 29 | WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}) |
| 30 | |
| 31 | INCLUDE(ExternalProject) |
| 32 | ExternalProject_Add(libqrencode |
| 33 | GIT_SUBMODULES libqrencode |
| 34 | SOURCE_DIR ${CMAKE_SOURCE_DIR}/libqrencode |
| 35 | BINARY_DIR ${CMAKE_SOURCE_DIR}/libqrencode |
| 36 | INSTALL_DIR ${CMAKE_SOURCE_DIR}/libqrencode |
| 37 | CONFIGURE_COMMAND |
| 38 | #hack to fix incomplete config.h on first run |
| 39 | COMMAND ./autogen.sh |
| 40 | COMMAND ./autogen.sh && ./configure --prefix=${CMAKE_SOURCE_DIR}/libqrencode |
| 41 | BUILD_COMMAND make |
| 42 | INSTALL_COMMAND make install) |
| 43 | |
| 44 | INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/libqrencode/include) |
| 45 | LINK_DIRECTORIES(${CMAKE_SOURCE_DIR}/libqrencode/lib) |
| 46 | |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 47 | IF(NOT (${ENABLE_SPARKLE} MATCHES false)) |
| 48 | MESSAGE("Sparkle auto-update enabled") |
| 49 | |
| 50 | # find_library searches in /Library/Frameworks by default |
| 51 | # We add an hint to our custom location |
| 52 | |
| 53 | FIND_LIBRARY(SPARKLE_FRAMEWORK |
| 54 | NAMES Sparkle |
| 55 | HINTS ${CMAKE_CURRENT_SOURCE_DIR}/sparkle) |
| 56 | IF(EXISTS ${SPARKLE_FRAMEWORK}) |
| 57 | SET(ENABLE_SPARKLE 1 CACHE BOOLEAN "Enable Sparkle") |
| 58 | ADD_DEFINITIONS(-DENABLE_SPARKLE=1) |
| 59 | MESSAGE("Sparkle is here:" ${SPARKLE_FRAMEWORK}) |
| 60 | FIND_PATH(SPARKLE_INCLUDE_DIR Sparkle.h HINTS ${SPARKLE_FRAMEWORK}/Headers) |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 61 | # we need to copy the public key to check the updates |
| 62 | SET(PUBLIC_KEY_PATH "${CMAKE_CURRENT_SOURCE_DIR}/sparkle/dsa_pub.pem") |
| 63 | IF(EXISTS ${PUBLIC_KEY_PATH}) |
| 64 | MESSAGE(STATUS "Looking for Public Key - found") |
| 65 | SET_SOURCE_FILES_PROPERTIES(${PUBLIC_KEY_PATH} PROPERTIES MACOSX_PACKAGE_LOCATION Resources) |
| 66 | SET(PUBLIC_KEY ${PUBLIC_KEY_PATH}) |
| 67 | ELSE(EXISTS ${PUBLIC_KEY_PATH}) |
| 68 | MESSAGE(WARNING "Looking for Public Key - not found") |
| 69 | MESSAGE(WARNING "${PUBLIC_KEY_PATH} not found Sparkle Framework will NOT work and may even prevent application from launching. Please consider disabling Sparkle Framework, creating a keypair for testing purposes") |
| 70 | ENDIF(EXISTS ${PUBLIC_KEY_PATH}) |
| 71 | ELSE() |
Alexandre Lision | fba8f79 | 2016-03-08 13:45:51 -0500 | [diff] [blame] | 72 | MESSAGE(WARNING "Sparkle framework not found, disabling it... to build it see README") |
| 73 | SET(ENABLE_SPARKLE 0 CACHE BOOLEAN "Enable Sparkle") |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 74 | ENDIF(EXISTS ${SPARKLE_FRAMEWORK}) |
| 75 | ENDIF(NOT (${ENABLE_SPARKLE} MATCHES false)) |
| 76 | |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 77 | INCLUDE_DIRECTORIES(SYSTEM ${Qt5Core_INCLUDE_DIRS}) |
Alexandre Lision | 3b0bd33 | 2015-03-15 18:43:07 -0400 | [diff] [blame] | 78 | INCLUDE_DIRECTORIES(SYSTEM ${Qt5MacExtras_INCLUDE_DIRS}) |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 79 | INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) |
| 80 | INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR}) |
| 81 | INCLUDE_DIRECTORIES(${LIB_RING_CLIENT_INCLUDE_DIR}) |
| 82 | |
Alexandre Lision | 04946de | 2016-03-08 09:31:38 -0500 | [diff] [blame] | 83 | SET(CMAKE_MACOSX_RPATH ON) |
| 84 | SET(CMAKE_SKIP_BUILD_RPATH FALSE) |
| 85 | SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) |
| 86 | SET(CMAKE_INSTALL_RPATH "${CMAKE_CURRENT_SOURCE_DIR}") |
| 87 | SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) |
| 88 | |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 89 | MESSAGE("LRC is here:" ${LIB_RING_CLIENT_INCLUDE_DIR}) |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 90 | SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") |
| 91 | |
| 92 | #Files to compile |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 93 | SET(ringclient_CONTROLLERS |
Alexandre Lision | 7d2a48b | 2015-03-30 14:59:58 -0400 | [diff] [blame] | 94 | src/QNSTreeController.mm |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 95 | src/QNSTreeController.h |
Alexandre Lision | 7d2a48b | 2015-03-30 14:59:58 -0400 | [diff] [blame] | 96 | src/CurrentCallVC.mm |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 97 | src/CurrentCallVC.h |
Alexandre Lision | 7d2a48b | 2015-03-30 14:59:58 -0400 | [diff] [blame] | 98 | src/GeneralPrefsVC.mm |
| 99 | src/RingWizardWC.mm |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 100 | src/RingWizardWC.h |
| 101 | src/RingWindowController.mm |
| 102 | src/RingWindowController.h |
Alexandre Lision | bfa68f6 | 2015-09-10 08:38:42 -0400 | [diff] [blame] | 103 | src/PreferencesWC.mm |
| 104 | src/PreferencesWC.h |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 105 | src/AccGeneralVC.mm |
| 106 | src/AccGeneralVC.h |
Alexandre Lision | e4d61cb | 2016-02-10 09:26:24 -0500 | [diff] [blame] | 107 | src/AccMediaVC.mm |
| 108 | src/AccMediaVC.h |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 109 | src/AccRingVC.mm |
| 110 | src/AccRingVC.h |
| 111 | src/AccAdvancedVC.mm |
| 112 | src/AccAdvancedVC.h |
| 113 | src/AccSecurityVC.mm |
| 114 | src/AccSecurityVC.h |
Alexandre Lision | 4de68ce | 2015-04-24 18:22:49 -0400 | [diff] [blame] | 115 | src/CertificateWC.mm |
| 116 | src/CertificateWC.h |
Alexandre Lision | c1f9666 | 2016-03-23 17:24:19 -0400 | [diff] [blame] | 117 | src/PathPasswordWC.mm |
| 118 | src/PathPasswordWC.h |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 119 | src/AudioPrefsVC.mm |
| 120 | src/AudioPrefsVC.h |
| 121 | src/AccountsVC.mm |
| 122 | src/AccountsVC.h |
| 123 | src/VideoPrefsVC.mm |
| 124 | src/VideoPrefsVC.h |
| 125 | src/GeneralPrefsVC.h |
| 126 | src/HistoryVC.mm |
| 127 | src/HistoryVC.h |
Alexandre Lision | 3b0bd33 | 2015-03-15 18:43:07 -0400 | [diff] [blame] | 128 | src/PersonsVC.mm |
Alexandre Lision | 58cab67 | 2015-06-09 15:25:40 -0400 | [diff] [blame] | 129 | src/PersonsVC.h |
| 130 | src/ChatVC.mm |
Alexandre Lision | 2db8f47 | 2015-07-22 15:05:46 -0400 | [diff] [blame] | 131 | src/ChatVC.h |
| 132 | src/PersonLinkerVC.mm |
Alexandre Lision | 4dfcafc | 2015-08-20 12:43:23 -0400 | [diff] [blame] | 133 | src/PersonLinkerVC.h |
| 134 | src/SmartViewVC.mm |
Alexandre Lision | 883719f | 2015-10-22 17:37:45 -0400 | [diff] [blame] | 135 | src/SmartViewVC.h |
| 136 | src/BrokerVC.mm |
Alexandre Lision | 0f66bd3 | 2016-01-18 11:30:45 -0500 | [diff] [blame] | 137 | src/BrokerVC.h |
| 138 | src/ConversationVC.mm |
Loïc Siret | 31d5cc0 | 2016-09-08 14:38:24 -0400 | [diff] [blame] | 139 | src/ConversationVC.h |
| 140 | src/LoadingWCDelegate.h |
| 141 | src/AbstractLoadingWC.h |
| 142 | src/AbstractLoadingWC.mm |
Alexandre Lision | 45f1f54 | 2016-08-25 15:16:17 -0400 | [diff] [blame] | 143 | src/AccDevicesVC.mm |
| 144 | src/AccDevicesVC.h |
| 145 | src/ExportPasswordWC.mm |
| 146 | src/ExportPasswordWC.h |
Alexandre Lision | 624b1a8 | 2016-09-11 19:29:01 -0400 | [diff] [blame] | 147 | src/MigrateRingAccountsWC.mm |
| 148 | src/MigrateRingAccountsWC.h |
Loïc Siret | fcb4ca6 | 2016-09-21 17:12:09 -0400 | [diff] [blame^] | 149 | src/RingWizardChooseVC.h |
| 150 | src/RingWizardChooseVC.mm |
| 151 | src/RingWizardLinkAccountVC.h |
| 152 | src/RingWizardLinkAccountVC.mm |
| 153 | src/RingWizardNewAccountVC.mm |
| 154 | src/RingWizardNewAccountVC.h |
Loïc Siret | 31d5cc0 | 2016-09-08 14:38:24 -0400 | [diff] [blame] | 155 | ) |
Alexandre Lision | 74dd47f | 2015-04-14 13:47:42 -0400 | [diff] [blame] | 156 | |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 157 | SET(ringclient_BACKENDS |
Alexandre Lision | 3b0bd33 | 2015-03-15 18:43:07 -0400 | [diff] [blame] | 158 | src/backends/AddressBookBackend.mm |
Alexandre Lision | 6664343 | 2015-06-04 11:59:36 -0400 | [diff] [blame] | 159 | src/backends/AddressBookBackend.h) |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 160 | |
| 161 | SET(ringclient_VIEWS |
| 162 | src/views/CallView.mm |
| 163 | src/views/CallView.h |
Alexandre Lision | f47a256 | 2015-06-15 15:48:29 -0400 | [diff] [blame] | 164 | src/views/ITProgressIndicator.mm |
| 165 | src/views/ITProgressIndicator.h |
Alexandre Lision | 2db8f47 | 2015-07-22 15:05:46 -0400 | [diff] [blame] | 166 | src/views/RingOutlineView.mm |
Alexandre Lision | 7f8351b | 2015-08-20 11:43:37 -0400 | [diff] [blame] | 167 | src/views/RingOutlineView.h |
| 168 | src/views/RingIDField.mm |
Alexandre Lision | 4e280d6 | 2015-09-09 15:56:30 -0400 | [diff] [blame] | 169 | src/views/RingIDField.h |
| 170 | src/views/HoverTableRowView.mm |
| 171 | src/views/HoverTableRowView.h |
| 172 | src/views/NSColor+RingTheme.mm |
| 173 | src/views/NSColor+RingTheme.h |
Alexandre Lision | 261f1b9 | 2016-04-04 12:35:34 -0400 | [diff] [blame] | 174 | src/views/NSImage+Extensions.mm |
| 175 | src/views/NSImage+Extensions.h |
Alexandre Lision | 4e280d6 | 2015-09-09 15:56:30 -0400 | [diff] [blame] | 176 | src/views/ContextualTableCellView.mm |
Alexandre Lision | 6da08a8 | 2015-09-24 17:09:24 -0400 | [diff] [blame] | 177 | src/views/ContextualTableCellView.h |
| 178 | src/views/IconButton.h |
Alexandre Lision | 0f66bd3 | 2016-01-18 11:30:45 -0500 | [diff] [blame] | 179 | src/views/IconButton.mm |
| 180 | src/views/IMTableCellView.h |
| 181 | src/views/IMTableCellView.mm) |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 182 | |
| 183 | SET(ringclient_OTHERS |
| 184 | src/main.mm |
| 185 | src/AppDelegate.mm |
| 186 | src/AppDelegate.h |
Alexandre Lision | 9fe374b | 2016-01-06 10:17:31 -0500 | [diff] [blame] | 187 | src/Constants.h |
Alexandre Lision | 83180df | 2016-01-18 11:32:20 -0500 | [diff] [blame] | 188 | src/INDSequentialTextSelectionManager.mm |
| 189 | src/INDSequentialTextSelectionManager.h |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 190 | src/delegates/ImageManipulationDelegate.mm |
| 191 | src/delegates/ImageManipulationDelegate.h) |
| 192 | |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 193 | |
Alexandre Lision | f241c6a | 2015-03-24 14:53:47 -0400 | [diff] [blame] | 194 | SET(ringclient_XIBS |
| 195 | MainMenu |
| 196 | RingWindow |
| 197 | CurrentCall |
| 198 | GeneralPrefs |
| 199 | Accounts |
| 200 | AccGeneral |
Alexandre Lision | e4d61cb | 2016-02-10 09:26:24 -0500 | [diff] [blame] | 201 | AccMedia |
Alexandre Lision | f241c6a | 2015-03-24 14:53:47 -0400 | [diff] [blame] | 202 | AccRing |
| 203 | AccAdvanced |
| 204 | AccSecurity |
| 205 | AudioPrefs |
| 206 | VideoPrefs |
Alexandre Lision | bfa68f6 | 2015-09-10 08:38:42 -0400 | [diff] [blame] | 207 | PreferencesWindow |
Alexandre Lision | 4de68ce | 2015-04-24 18:22:49 -0400 | [diff] [blame] | 208 | RingWizard |
Alexandre Lision | 2db8f47 | 2015-07-22 15:05:46 -0400 | [diff] [blame] | 209 | CertificateWindow |
Alexandre Lision | c1f9666 | 2016-03-23 17:24:19 -0400 | [diff] [blame] | 210 | PathPasswordWindow |
Alexandre Lision | 45f1f54 | 2016-08-25 15:16:17 -0400 | [diff] [blame] | 211 | ExportPasswordWindow |
Alexandre Lision | 624b1a8 | 2016-09-11 19:29:01 -0400 | [diff] [blame] | 212 | MigrateRingAccountsWindow |
Alexandre Lision | 883719f | 2015-10-22 17:37:45 -0400 | [diff] [blame] | 213 | PersonLinker |
Alexandre Lision | 0f66bd3 | 2016-01-18 11:30:45 -0500 | [diff] [blame] | 214 | Broker |
Alexandre Lision | 45f1f54 | 2016-08-25 15:16:17 -0400 | [diff] [blame] | 215 | Conversation |
Loïc Siret | fcb4ca6 | 2016-09-21 17:12:09 -0400 | [diff] [blame^] | 216 | AccDevices |
| 217 | RingWizardLinkAccount |
| 218 | RingWizardNewAccount |
| 219 | RingWizardChoose) |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 220 | |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 221 | # Icons |
Alexandre Lision | 5db3e4e | 2015-03-24 17:25:55 -0400 | [diff] [blame] | 222 | # This part tells CMake where to find and install the file itself |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 223 | SET(myApp_ICON ${CMAKE_CURRENT_SOURCE_DIR}/data/appicon.icns) |
| 224 | SET_SOURCE_FILES_PROPERTIES(${myApp_ICON} PROPERTIES |
Alexandre Lision | 3278ffe | 2016-02-03 14:45:22 -0500 | [diff] [blame] | 225 | MACOSX_PACKAGE_LOCATION Resources) |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 226 | |
Alexandre Lision | 7f8351b | 2015-08-20 11:43:37 -0400 | [diff] [blame] | 227 | SET(ring_ICONS |
| 228 | ${CMAKE_CURRENT_SOURCE_DIR}/data/symbol_name.png |
Alexandre Lision | 3460703 | 2016-02-08 16:16:49 -0500 | [diff] [blame] | 229 | ${CMAKE_CURRENT_SOURCE_DIR}/data/symbol_blue.png |
Alexandre Lision | 6da08a8 | 2015-09-24 17:09:24 -0400 | [diff] [blame] | 230 | ${CMAKE_CURRENT_SOURCE_DIR}/data/background_tile.png |
Alexandre Lision | 7f8351b | 2015-08-20 11:43:37 -0400 | [diff] [blame] | 231 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_accept.png |
Alexandre Lision | 0f66bd3 | 2016-01-18 11:30:45 -0500 | [diff] [blame] | 232 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_arrow_back.png |
Alexandre Lision | 392ee72 | 2015-01-23 16:27:10 -0500 | [diff] [blame] | 233 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_call.png |
| 234 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_cancel.png |
Alexandre Lision | d18fa27 | 2015-06-15 11:18:03 -0400 | [diff] [blame] | 235 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_hangup.png |
| 236 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_hold.png |
| 237 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_holdoff.png |
| 238 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_mute_video.png |
| 239 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_mute_audio.png |
| 240 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_chat.png |
Alexandre Lision | 392ee72 | 2015-01-23 16:27:10 -0500 | [diff] [blame] | 241 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_search.png |
Alexandre Lision | f23ec5a | 2015-07-16 11:24:06 -0400 | [diff] [blame] | 242 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_quality.png |
Alexandre Lision | 266fca0 | 2015-09-28 14:47:05 -0400 | [diff] [blame] | 243 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_record.png |
Alexandre Lision | 4dfcafc | 2015-08-20 12:43:23 -0400 | [diff] [blame] | 244 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_call_received.png |
| 245 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_call_missed.png |
| 246 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_call_made.png |
Alexandre Lision | 883719f | 2015-10-22 17:37:45 -0400 | [diff] [blame] | 247 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_transfer.png |
Alexandre Lision | 89edc6a | 2015-11-09 11:30:47 -0500 | [diff] [blame] | 248 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_add_participant.png |
| 249 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_merge_calls.png |
Alexandre Lision | d5229f3 | 2015-11-16 11:17:41 -0500 | [diff] [blame] | 250 | ${CMAKE_CURRENT_SOURCE_DIR}/data/default_user_icon.png |
Alexandre Lision | 4a7b95e | 2015-02-20 10:06:43 -0500 | [diff] [blame] | 251 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ancrage.png |
Alexandre Lision | 0f66bd3 | 2016-01-18 11:30:45 -0500 | [diff] [blame] | 252 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_send.png |
Alexandre Lision | 4a7b95e | 2015-02-20 10:06:43 -0500 | [diff] [blame] | 253 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/audio.png |
Alexandre Lision | 2db8f47 | 2015-07-22 15:05:46 -0400 | [diff] [blame] | 254 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_person_add.png |
Alexandre Lision | 4dfcafc | 2015-08-20 12:43:23 -0400 | [diff] [blame] | 255 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_persons.png |
| 256 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_history.png |
Alexandre Lision | 4a7b95e | 2015-02-20 10:06:43 -0500 | [diff] [blame] | 257 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/general.png |
| 258 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/video.png |
Alexandre Lision | f46768f | 2016-04-18 09:56:26 -0400 | [diff] [blame] | 259 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_delete.png |
Alexandre Lision | fd0d6c8 | 2016-03-29 17:06:54 -0400 | [diff] [blame] | 260 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/qrcode.png |
Alexandre Lision | 392ee72 | 2015-01-23 16:27:10 -0500 | [diff] [blame] | 261 | ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_video.png) |
Alexandre Lision | 5db3e4e | 2015-03-24 17:25:55 -0400 | [diff] [blame] | 262 | |
Alexandre Lision | 392ee72 | 2015-01-23 16:27:10 -0500 | [diff] [blame] | 263 | SET_SOURCE_FILES_PROPERTIES(${ring_ICONS} PROPERTIES |
Alexandre Lision | 5855b6a | 2015-02-03 11:31:05 -0500 | [diff] [blame] | 264 | MACOSX_PACKAGE_LOCATION Resources) |
Alexandre Lision | bb30613 | 2015-03-27 11:30:02 -0400 | [diff] [blame] | 265 | SET_SOURCE_FILES_PROPERTIES(Credits.rtf PROPERTIES |
| 266 | MACOSX_PACKAGE_LOCATION Resources) |
Alexandre Lision | 392ee72 | 2015-01-23 16:27:10 -0500 | [diff] [blame] | 267 | |
Alexandre Lision | 88ee6cc | 2016-05-05 14:32:43 -0400 | [diff] [blame] | 268 | # package ringtones |
| 269 | IF(NOT IS_DIRECTORY ${RINGTONE_DIR}) |
| 270 | MESSAGE("No ringtone folder provided, use RINGTONE_DIR to specify one") |
| 271 | SET(RINGTONE_DIR ${CMAKE_INSTALL_PREFIX}/share/ring/ringtones) |
| 272 | MESSAGE("Trying ${RINGTONE_DIR}") |
| 273 | ENDIF() |
Alexandre Lision | 3278ffe | 2016-02-03 14:45:22 -0500 | [diff] [blame] | 274 | |
Alexandre Lision | 88ee6cc | 2016-05-05 14:32:43 -0400 | [diff] [blame] | 275 | IF(IS_DIRECTORY ${RINGTONE_DIR}) |
| 276 | FILE(GLOB RINGTONE_LIST ${RINGTONE_DIR}/*) |
| 277 | FOREACH(RINGTONE ${RINGTONE_LIST}) |
| 278 | MESSAGE("Adding ringtone ${RINGTONE}") |
| 279 | GET_FILENAME_COMPONENT(FILE_PATH ${RINGTONE} ABSOLUTE) |
| 280 | SET(ring_RINGTONES ${ring_RINGTONES} ${FILE_PATH}) |
| 281 | ENDFOREACH() |
| 282 | ELSE() |
| 283 | MESSAGE("${RINGTONE_DIR} does not exist or is not readable") |
| 284 | ENDIF() |
Alexandre Lision | 3278ffe | 2016-02-03 14:45:22 -0500 | [diff] [blame] | 285 | |
| 286 | SET_SOURCE_FILES_PROPERTIES(${ring_RINGTONES} |
| 287 | PROPERTIES MACOSX_PACKAGE_LOCATION Resources/ringtones) |
Alexandre Lision | 46dc0c3 | 2015-09-15 10:22:59 -0400 | [diff] [blame] | 288 | |
| 289 | # Check which translations are found for LRC |
| 290 | SET(LRC_TRANSLATIONS_PATH ${CMAKE_INSTALL_PREFIX}/share/libringclient/translations) |
| 291 | FILE(GLOB QM_LIST ${LRC_TRANSLATIONS_PATH}/*.qm) |
| 292 | |
| 293 | FOREACH(QM_FILE ${QM_LIST}) |
| 294 | # Extract country code from filename |
| 295 | GET_FILENAME_COMPONENT(FILENAME ${QM_FILE} NAME_WE) |
| 296 | STRING(REGEX REPLACE "^lrc_" "" LANG ${FILENAME}) |
| 297 | |
| 298 | SET_SOURCE_FILES_PROPERTIES(${LRC_TRANSLATIONS_PATH}/lrc_${LANG}.qm |
| 299 | PROPERTIES MACOSX_PACKAGE_LOCATION Resources/QtTranslations) |
| 300 | SET(LOCALIZED_${LANG} ${LOCALIZED_${LANG}} |
| 301 | "${LRC_TRANSLATIONS_PATH}/lrc_${LANG}.qm") |
Alexandre Lision | 922380d | 2015-09-15 10:25:17 -0400 | [diff] [blame] | 302 | ENDFOREACH() |
| 303 | |
| 304 | # Check which translations are found for the client |
| 305 | FILE(GLOB LPROJ_LIST ui/*.lproj) |
| 306 | |
| 307 | FOREACH(LPROJ ${LPROJ_LIST}) |
| 308 | # Extract country code from <lang>.lproj folder name |
| 309 | GET_FILENAME_COMPONENT(LANG ${LPROJ} NAME_WE) |
| 310 | IF(EXISTS "${LPROJ}/Localizable.strings") |
| 311 | MESSAGE("Localizable:" ${LANG}) |
| 312 | SET_SOURCE_FILES_PROPERTIES(${LPROJ}/Localizable.strings |
Alexandre Lision | 3278ffe | 2016-02-03 14:45:22 -0500 | [diff] [blame] | 313 | PROPERTIES MACOSX_PACKAGE_LOCATION Resources/${LANG}.lproj) |
Alexandre Lision | 922380d | 2015-09-15 10:25:17 -0400 | [diff] [blame] | 314 | |
| 315 | SET(LOCALIZED_${LANG} ${LOCALIZED_${LANG}} |
| 316 | ${LPROJ}/Localizable.strings) |
| 317 | ENDIF() |
| 318 | FOREACH(xib ${ringclient_XIBS}) |
| 319 | IF(EXISTS "${LPROJ}/${xib}.strings") |
| 320 | SET_SOURCE_FILES_PROPERTIES(${LPROJ}/${xib}.strings |
Alexandre Lision | 3278ffe | 2016-02-03 14:45:22 -0500 | [diff] [blame] | 321 | PROPERTIES MACOSX_PACKAGE_LOCATION Resources/${LANG}.lproj) |
Alexandre Lision | 922380d | 2015-09-15 10:25:17 -0400 | [diff] [blame] | 322 | |
Alexandre Lision | 3278ffe | 2016-02-03 14:45:22 -0500 | [diff] [blame] | 323 | SET(LOCALIZED_${LANG} ${LOCALIZED_${LANG}} |
Alexandre Lision | 922380d | 2015-09-15 10:25:17 -0400 | [diff] [blame] | 324 | ${LPROJ}/${xib}.strings) |
| 325 | ENDIF() |
| 326 | ENDFOREACH() |
Alexandre Lision | 46dc0c3 | 2015-09-15 10:22:59 -0400 | [diff] [blame] | 327 | |
| 328 | # Regroup those files under a .lproj folder |
| 329 | SOURCE_GROUP("Resources\\${LANG}.lproj" FILES |
| 330 | ${LOCALIZED_${LANG}}) |
| 331 | # Add them to the list of files to package |
| 332 | SET(LOCALIZABLE_FILES ${LOCALIZABLE_FILES} ${LOCALIZED_${LANG}}) |
| 333 | ENDFOREACH() |
| 334 | |
Alexandre Lision | 5db3e4e | 2015-03-24 17:25:55 -0400 | [diff] [blame] | 335 | # append '.xib' extension before linking xib files in executable |
| 336 | FOREACH(xib ${ringclient_XIBS}) |
Alexandre Lision | 922380d | 2015-09-15 10:25:17 -0400 | [diff] [blame] | 337 | SET(ringclient_XIBS_FOR_EXECUTABLE ${ringclient_XIBS_FOR_EXECUTABLE} ui/Base.lproj/${xib}.xib) |
Alexandre Lision | 5db3e4e | 2015-03-24 17:25:55 -0400 | [diff] [blame] | 338 | ENDFOREACH() |
| 339 | |
Alexandre Lision | 46dc0c3 | 2015-09-15 10:22:59 -0400 | [diff] [blame] | 340 | SET(TO_ADD |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 341 | ${ringclient_CONTROLLERS} |
| 342 | ${ringclient_BACKENDS} |
| 343 | ${ringclient_VIEWS} |
| 344 | ${ringclient_OTHERS} |
Alexandre Lision | 5db3e4e | 2015-03-24 17:25:55 -0400 | [diff] [blame] | 345 | ${ringclient_XIBS_FOR_EXECUTABLE} |
Alexandre Lision | 46dc0c3 | 2015-09-15 10:22:59 -0400 | [diff] [blame] | 346 | ${LOCALIZABLE_FILES} |
Alexandre Lision | 392ee72 | 2015-01-23 16:27:10 -0500 | [diff] [blame] | 347 | ${myApp_ICON} |
Alexandre Lision | bb30613 | 2015-03-27 11:30:02 -0400 | [diff] [blame] | 348 | Credits.rtf |
Alexandre Lision | 3278ffe | 2016-02-03 14:45:22 -0500 | [diff] [blame] | 349 | ${ring_ICONS} |
| 350 | ${ring_RINGTONES}) |
Alexandre Lision | 5855b6a | 2015-02-03 11:31:05 -0500 | [diff] [blame] | 351 | |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 352 | IF(ENABLE_SPARKLE) |
| 353 | SET( TO_ADD ${TO_ADD} ${PUBLIC_KEY} ${SPARKLE_FRAMEWORK}) |
| 354 | ENDIF(ENABLE_SPARKLE) |
| 355 | |
| 356 | ADD_EXECUTABLE(${PROJ_NAME} MACOSX_BUNDLE ${TO_ADD}) |
| 357 | |
Alexandre Lision | fd0d6c8 | 2016-03-29 17:06:54 -0400 | [diff] [blame] | 358 | ADD_DEPENDENCIES(${PROJ_NAME} libqrencode) |
| 359 | |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 360 | # Follow Xcode hierarchy principles |
| 361 | SOURCE_GROUP("Controllers" FILES ${ringclient_CONTROLLERS}) |
| 362 | SOURCE_GROUP("Backends" FILES ${ringclient_BACKENDS}) |
| 363 | SOURCE_GROUP("CustomViews" FILES ${ringclient_VIEWS}) |
| 364 | SOURCE_GROUP("Classes" FILES ${ringclient_OTHERS}) |
Alexandre Lision | 46dc0c3 | 2015-09-15 10:22:59 -0400 | [diff] [blame] | 365 | SOURCE_GROUP("Resources\\Interface Builder" FILES |
| 366 | ${ringclient_XIBS_FOR_EXECUTABLE}) |
Alexandre Lision | 3278ffe | 2016-02-03 14:45:22 -0500 | [diff] [blame] | 367 | SOURCE_GROUP("Resources\\ringtones" FILES ${ring_RINGTONES}) |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 368 | |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 369 | IF(ENABLE_SPARKLE) |
| 370 | SOURCE_GROUP("Frameworks" FILES ${SPARKLE_FRAMEWORK}) |
| 371 | ENDIF(ENABLE_SPARKLE) |
Alexandre Lision | 4ba1802 | 2015-04-23 12:17:40 -0400 | [diff] [blame] | 372 | |
Alexandre Lision | b47b4c8 | 2015-01-20 11:29:03 -0500 | [diff] [blame] | 373 | TARGET_LINK_LIBRARIES( ${PROJ_NAME} |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 374 | ${LIB_RING_CLIENT_LIBRARY} |
Alexandre Lision | 5855b6a | 2015-02-03 11:31:05 -0500 | [diff] [blame] | 375 | ${Qt5Core_LIBRARIES} |
Alexandre Lision | 3b0bd33 | 2015-03-15 18:43:07 -0400 | [diff] [blame] | 376 | ${Qt5MacExtras_LIBRARIES} |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 377 | ${Qt5Widgets_LIBRARIES} |
Alexandre Lision | fd0d6c8 | 2016-03-29 17:06:54 -0400 | [diff] [blame] | 378 | -lqrencode |
Alexandre Lision | 10e86dd | 2015-01-19 16:11:14 -0500 | [diff] [blame] | 379 | ) |
| 380 | |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 381 | IF(ENABLE_SPARKLE) |
| 382 | TARGET_LINK_LIBRARIES(${PROJ_NAME} ${SPARKLE_FRAMEWORK}) |
| 383 | ENDIF(ENABLE_SPARKLE) |
| 384 | |
Alexandre Lision | f241c6a | 2015-03-24 14:53:47 -0400 | [diff] [blame] | 385 | SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework AppKit") |
| 386 | SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework Cocoa") |
| 387 | SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework Quartz") |
| 388 | SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework AVFoundation") |
| 389 | SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework AddressBook") |
Alexandre Lision | b9f3f94 | 2016-07-23 14:29:33 -0400 | [diff] [blame] | 390 | SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework SystemConfiguration") |
Alexandre Lision | f241c6a | 2015-03-24 14:53:47 -0400 | [diff] [blame] | 391 | |
| 392 | # These variables are specific to our plist and are NOT standard CMake variables |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 393 | SET(MACOSX_BUNDLE_NSMAIN_NIB_FILE "MainMenu") |
| 394 | SET(MACOSX_BUNDLE_NSPRINCIPAL_CLASS "NSApplication") |
Alexandre Lision | 392ee72 | 2015-01-23 16:27:10 -0500 | [diff] [blame] | 395 | |
Alexandre Lision | b47b4c8 | 2015-01-20 11:29:03 -0500 | [diff] [blame] | 396 | SET_TARGET_PROPERTIES(${PROJ_NAME} PROPERTIES |
| 397 | MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/cmake/MacOSXBundleInfo.plist.in |
| 398 | MACOSX_BUNDLE_GUI_IDENTIFIER "cx.ring" |
Alexandre Lision | 7208b76 | 2015-08-13 12:39:49 -0400 | [diff] [blame] | 399 | MACOSX_BUNDLE_SHORT_VERSION_STRING "${RING_VERSION_NAME}" |
| 400 | MACOSX_BUNDLE_LONG_VERSION_STRING "${PROJ_NAME} ${RING_VERSION_NAME} Nightly" |
| 401 | MACOSX_BUNDLE_BUNDLE_VERSION ${RING_VERSION} |
Alexandre Lision | bb30613 | 2015-03-27 11:30:02 -0400 | [diff] [blame] | 402 | MACOSX_BUNDLE_COPYRIGHT "${PROJ_COPYRIGHT}" |
Alexandre Lision | b47b4c8 | 2015-01-20 11:29:03 -0500 | [diff] [blame] | 403 | MACOSX_BUNDLE_INFO_STRING "Nightly build of ${PROJ_NAME} ${RING_VERSION} for testing and development" |
| 404 | MACOSX_BUNDLE_BUNDLE_NAME ${PROJ_NAME} |
| 405 | MACOSX_BUNDLE_ICON_FILE "appicon.icns" |
| 406 | ) |
Alexandre Lision | f241c6a | 2015-03-24 14:53:47 -0400 | [diff] [blame] | 407 | |
| 408 | # Make sure we can find the 'ibtool' program. If we can NOT find it we |
| 409 | # skip generation of this project |
| 410 | FIND_PROGRAM(IBTOOL ibtool HINTS "/usr/bin" "${OSX_DEVELOPER_ROOT}/usr/bin") |
| 411 | IF(${IBTOOL} STREQUAL "IBTOOL-NOTFOUND") |
| 412 | MESSAGE(SEND_ERROR "ibtool can not be found and is needed to compile the .xib files. It should have been installed with |
| 413 | the Apple developer tools. The default system paths were searched in addition to ${OSX_DEVELOPER_ROOT}/usr/bin") |
| 414 | endif() |
| 415 | |
Alexandre Lision | f241c6a | 2015-03-24 14:53:47 -0400 | [diff] [blame] | 416 | # Compile the .xib files using the 'ibtool' program with the destination being the app package |
| 417 | FOREACH(xib ${ringclient_XIBS}) |
| 418 | ADD_CUSTOM_COMMAND(TARGET ${PROJ_NAME} POST_BUILD |
| 419 | COMMAND ${IBTOOL} --errors --warnings --notices --output-format human-readable-text |
Alexandre Lision | 922380d | 2015-09-15 10:25:17 -0400 | [diff] [blame] | 420 | --compile ${CMAKE_CURRENT_BINARY_DIR}/\${CONFIGURATION}/${PROJ_NAME}.app/Contents/Resources/Base.lproj/${xib}.nib |
| 421 | ${CMAKE_CURRENT_SOURCE_DIR}/ui/Base.lproj/${xib}.xib |
| 422 | COMMENT "Compiling ${CMAKE_CURRENT_SOURCE_DIR}/ui/Base.lproj/${xib}.xib") |
Alexandre Lision | f241c6a | 2015-03-24 14:53:47 -0400 | [diff] [blame] | 423 | |
| 424 | ENDFOREACH() |
Alexandre Lision | e7e01ba | 2015-03-30 13:30:51 -0400 | [diff] [blame] | 425 | |
Alexandre Lision | 3d4143a | 2015-06-10 14:27:49 -0400 | [diff] [blame] | 426 | SET(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${CMAKE_INSTALL_PREFIX}) |
Alexandre Lision | e7e01ba | 2015-03-30 13:30:51 -0400 | [diff] [blame] | 427 | |
| 428 | SET(APPS "\${CMAKE_INSTALL_PREFIX}/${PROJ_NAME}.app") |
| 429 | |
Alexandre Lision | e7e01ba | 2015-03-30 13:30:51 -0400 | [diff] [blame] | 430 | INSTALL(TARGETS ${PROJ_NAME} BUNDLE DESTINATION . COMPONENT Runtime) |
| 431 | |
Alexandre Lision | 3a70f4f | 2015-04-15 14:18:26 -0400 | [diff] [blame] | 432 | SET(QT_PLUGINS_DESTDIR ${PROJ_NAME}.app/Contents/Plugins) |
Alexandre Lision | e7e01ba | 2015-03-30 13:30:51 -0400 | [diff] [blame] | 433 | #-------------------------------------------------------------------------------- |
| 434 | # Install needed Qt plugins by copying directories from the qt installation |
Alexandre Lision | 3a70f4f | 2015-04-15 14:18:26 -0400 | [diff] [blame] | 435 | |
| 436 | |
| 437 | #MESSAGE("GUI====") |
| 438 | #foreach(plugin ${Qt5Gui_PLUGINS}) |
| 439 | # message("Plugin ${plugin} is at location ${_loc}") |
| 440 | #endforeach() |
| 441 | |
| 442 | LIST(APPEND QT_PLUGINS_IMAGEFORMAT Qt5::QTgaPlugin |
| 443 | Qt5::QGifPlugin |
| 444 | Qt5::QICNSPlugin |
| 445 | Qt5::QICOPlugin |
| 446 | Qt5::QJpegPlugin |
| 447 | Qt5::QJp2Plugin |
| 448 | Qt5::QMngPlugin |
| 449 | Qt5::QTiffPlugin |
| 450 | Qt5::QDDSPlugin) |
| 451 | |
| 452 | # we need two plugin directories platform and imageformats |
| 453 | GET_TARGET_PROPERTY(_loc Qt5::QCocoaIntegrationPlugin LOCATION) |
| 454 | INSTALL(FILES ${_loc} DESTINATION ${QT_PLUGINS_DESTDIR}/platforms COMPONENT Runtime) |
| 455 | LIST(APPEND QT_PLUGINS Qt5::QCocoaIntegrationPlugin) |
| 456 | |
| 457 | FOREACH(plugin ${QT_PLUGINS_IMAGEFORMAT}) |
Alexandre Lision | e7e01ba | 2015-03-30 13:30:51 -0400 | [diff] [blame] | 458 | GET_TARGET_PROPERTY(_loc ${plugin} LOCATION) |
Alexandre Lision | 3a70f4f | 2015-04-15 14:18:26 -0400 | [diff] [blame] | 459 | INSTALL(FILES ${_loc} DESTINATION ${QT_PLUGINS_DESTDIR}/imageformats COMPONENT Runtime) |
| 460 | LIST(APPEND QT_PLUGINS ${plugin}) |
Alexandre Lision | e7e01ba | 2015-03-30 13:30:51 -0400 | [diff] [blame] | 461 | ENDFOREACH() |
| 462 | |
| 463 | # directories to look for dependencies |
Alexandre Lision | fd0d6c8 | 2016-03-29 17:06:54 -0400 | [diff] [blame] | 464 | SET(DIRS ${CMAKE_INSTALL_PREFIX}/lib |
| 465 | ${QT_LIB_DIR} |
| 466 | ${CMAKE_CURRENT_SOURCE_DIR}/sparkle |
| 467 | ${CMAKE_CURRENT_SOURCE_DIR}/libqrencode/lib) |
Alexandre Lision | e7e01ba | 2015-03-30 13:30:51 -0400 | [diff] [blame] | 468 | |
| 469 | INSTALL(CODE " |
| 470 | file(GLOB_RECURSE QTPLUGINS |
| 471 | \"\${CMAKE_INSTALL_PREFIX}/${QT_PLUGINS_DESTDIR}/*${CMAKE_SHARED_LIBRARY_SUFFIX}\") |
| 472 | include(BundleUtilities) |
| 473 | SET(BU_CHMOD_BUNDLE_ITEMS TRUE) |
| 474 | fixup_bundle(\"${APPS}\" \"\${QTPLUGINS}\" \"${DIRS}\") |
| 475 | " COMPONENT Runtime) |
| 476 | |
| 477 | #================================ |
| 478 | # Packaging |
| 479 | #================================ |
| 480 | SET( CPACK_PACKAGE_DESCRIPTION_SUMMARY ${PROJ_NAME}) |
| 481 | SET( CPACK_PACKAGE_NAME ${PROJ_NAME} ) |
| 482 | SET( CPACK_PACKAGE_CONTACT "Alexandre Lision") |
| 483 | SET( CPACK_PACKAGE_VENDOR "Savoir-faire Linux") |
| 484 | SET( CPACK_PACKAGE_VERSION_MAJOR ${PROG_MAJOR_VERSION}) |
| 485 | SET( CPACK_PACKAGE_VERSION_MINOR ${PROG_MINOR_VERSION}) |
| 486 | SET( CPACK_PACKAGE_VERSION_PATCH ${PROG_PATCH_VERSION}) |
| 487 | SET(CPACK_BINARY_DRAGNDROP ON) |
| 488 | SET( CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}") |
| 489 | INCLUDE(CPack) |