1
by Tiago Salem Herrmann
initial commit |
1 |
project(messaging-app) |
2 |
cmake_minimum_required(VERSION 2.8) |
|
3 |
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules) |
|
4 |
||
5 |
# Standard install paths
|
|
6 |
include(GNUInstallDirs) |
|
7 |
||
117.2.1
by Ugo Riboni
Add translations inside .desktop files |
8 |
find_program(INTLTOOL_MERGE intltool-merge) |
9 |
find_program(INTLTOOL_EXTRACT intltool-extract) |
|
10 |
||
1
by Tiago Salem Herrmann
initial commit |
11 |
# Check for include files
|
12 |
include(CheckIncludeFileCXX) |
|
13 |
include(CheckIncludeFile) |
|
14 |
||
15 |
include(EnableCoverageReport) |
|
16 |
#####################################################################
|
|
17 |
# Enable code coverage calculation with gcov/gcovr/lcov
|
|
18 |
# Usage:
|
|
19 |
# * Switch build type to coverage (use ccmake or cmake-gui)
|
|
20 |
# * Invoke make, make test, make coverage
|
|
21 |
# * Find html report in subdir coveragereport
|
|
22 |
# * Find xml report feasible for jenkins in coverage.xml
|
|
23 |
#####################################################################
|
|
24 |
IF(CMAKE_BUILD_TYPE MATCHES [cC][oO][vV][eE][rR][aA][gG][eE]) |
|
25 |
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftest-coverage -fprofile-arcs" ) |
|
26 |
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ftest-coverage -fprofile-arcs" ) |
|
27 |
SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -coverage" ) |
|
28 |
SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -coverage" ) |
|
29 |
ENABLE_COVERAGE_REPORT(TARGETS ${MESSAGING_APP}) |
|
30 |
ENDIF(CMAKE_BUILD_TYPE MATCHES [cC][oO][vV][eE][rR][aA][gG][eE]) |
|
191.2.2
by Renato Araujo Oliveira Filho
Avoid move the list to beginner while scrolling in the model. |
31 |
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DQT_QML_DEBUG") |
1
by Tiago Salem Herrmann
initial commit |
32 |
|
33 |
set(MESSAGING_APP_DIR ${CMAKE_INSTALL_DATADIR}/messaging-app) |
|
34 |
||
35 |
# Instruct CMake to run moc automatically when needed.
|
|
36 |
set(CMAKE_AUTOMOC ON) |
|
37 |
||
38 |
configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h @ONLY) |
|
39 |
||
40 |
find_package(Qt5Core) |
|
41 |
#find_package(Qt5Contacts)
|
|
42 |
find_package(Qt5DBus) |
|
43 |
#find_package(Qt5Gui)
|
|
44 |
#find_package(Qt5Multimedia)
|
|
45 |
find_package(Qt5Qml) |
|
46 |
find_package(Qt5Quick) |
|
47 |
find_package(Qt5Test) |
|
120.4.20
by Tiago Salem Herrmann
fix vcard delegates |
48 |
find_package(Qt5Versit) |
1
by Tiago Salem Herrmann
initial commit |
49 |
|
50 |
execute_process( |
|
51 |
COMMAND qmake -query QT_INSTALL_QML |
|
52 |
OUTPUT_VARIABLE QT_INSTALL_QML |
|
53 |
OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
54 |
)
|
|
55 |
||
56 |
find_package(PkgConfig REQUIRED) |
|
57 |
#pkg_check_modules(TP_QT5 REQUIRED TelepathyQt5)
|
|
58 |
#pkg_check_modules(TPL_QT5 REQUIRED TelepathyLoggerQt5)
|
|
59 |
#pkg_check_modules(QTGLIB REQUIRED QtGLib-2.0)
|
|
60 |
#pkg_check_modules(GLIB REQUIRED glib-2.0)
|
|
61 |
#pkg_check_modules(NOTIFY REQUIRED libnotify)
|
|
62 |
#pkg_check_modules(MESSAGING_MENU REQUIRED messaging-menu)
|
|
63 |
||
64 |
# Check if the messaging menu has the message header
|
|
65 |
#set(CMAKE_REQUIRED_INCLUDES ${MESSAGING_MENU_INCLUDE_DIRS})
|
|
66 |
#check_include_file("messaging-menu-message.h" HAVE_MESSAGING_MENU_MESSAGE)
|
|
67 |
||
68 |
if (HAVE_MESSAGING_MENU_MESSAGE) |
|
69 |
add_definitions(-DHAVE_MESSAGING_MENU_MESSAGE) |
|
70 |
endif (HAVE_MESSAGING_MENU_MESSAGE) |
|
71 |
||
72 |
add_definitions(-DQT_NO_KEYWORDS) |
|
73 |
||
74 |
include_directories( |
|
75 |
${CMAKE_CURRENT_BINARY_DIR} |
|
76 |
${CMAKE_CURRENT_SOURCE_DIR} |
|
77 |
)
|
|
78 |
||
79 |
enable_testing() |
|
80 |
||
191.3.1
by Ugo Riboni
Make sure the strings from the desktop file template are processed. Use paths relative to the po dir in the .pot file to match convention. Update the pot file. |
81 |
add_subdirectory(po) |
1
by Tiago Salem Herrmann
initial commit |
82 |
add_subdirectory(src) |
83 |
add_subdirectory(tests) |