~ci-train-bot/ubuntu-settings-components/ubuntu-settings-components-ubuntu-zesty-2202

« back to all changes in this revision

Viewing changes to CMakeLists.txt

Merging with trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
 
2
1
project(settings-components)
3
 
 
4
2
cmake_minimum_required(VERSION 2.8.9)
5
3
 
6
4
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
11
9
include(FindPkgConfig)
12
10
 
13
11
find_package(Qt5Quick REQUIRED)
14
 
set(OUR_QT_QUICK_LIB ${Qt5Quick_LIBRARIES})
15
 
 
16
 
get_target_property(QMAKE_EXECUTABLE Qt5::qmake LOCATION)
17
 
exec_program(${QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_PREFIX" OUTPUT_VARIABLE QT_INSTALL_PREFIX OUTPUT_STRIP_TRAILING_WHITESPACE)
18
 
exec_program(${QMAKE_EXECUTABLE} ARGS "-query QT_INSTALL_QML" OUTPUT_VARIABLE QT_IMPORTS_DIR OUTPUT_STRIP_TRAILING_WHITESPACE)
19
 
string(REPLACE ${QT_INSTALL_PREFIX} ${CMAKE_INSTALL_PREFIX} QT_IMPORTS_DIR ${QT_IMPORTS_DIR})
20
 
file(TO_CMAKE_PATH "${QT_IMPORTS_DIR}" QT_IMPORTS_DIR)
21
 
 
22
 
set(OUR_QT_QUICK_INCLUDE ${Qt5Quick_INCLUDE_DIRS})
23
 
LIST(APPEND QT_PKGCONFIG_DEPENDENCIES "Qt5Quick")
 
12
 
 
13
set(QT_IMPORTS_DIR ${CMAKE_INSTALL_LIBDIR}/qt5/qml)
24
14
 
25
15
find_package(Qt5Core REQUIRED)
 
16
find_package(Qt5Qml REQUIRED)
26
17
find_package(Qt5Quick REQUIRED)
 
18
find_package(Qt5Test REQUIRED)
27
19
find_package(Qt5Widgets REQUIRED)
28
20
add_definitions(-DQT_NO_KEYWORDS)
29
21
 
36
28
    add_definitions(-DQT_QML_DEBUG)
37
29
endif()
38
30
 
39
 
include(EnableCoverageReport)
40
 
#####################################################################
41
 
# Enable code coverage calculation with gcov/gcovr/lcov
42
 
# Usage:
43
 
#  * Switch build type to coverage (use ccmake or cmake-gui)
44
 
#  * Invoke make, make test, make coverage (or ninja if you use that backend)
45
 
#  * Find html report in subdir coveragereport
46
 
#  * Find xml report feasible for jenkins in coverage.xml
47
 
#####################################################################
48
 
if(cmake_build_type_lower MATCHES coverage)
49
 
  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --coverage" )
50
 
  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --coverage" )
51
 
  set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} --coverage" )
52
 
  set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} --coverage" )
53
 
  ENABLE_COVERAGE_REPORT(TARGETS ${SHELL_APP} FILTER /usr/include ${CMAKE_SOURCE_DIR}/tests/* ${CMAKE_BINARY_DIR}/*)
54
 
endif()
55
 
 
56
 
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"
57
 
               "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
58
 
               IMMEDIATE @ONLY)
59
 
add_custom_target(uninstall "${CMAKE_COMMAND}"
60
 
                  -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
61
 
 
62
 
# Doc
63
 
OPTION(GENERATE_DOC "Enable qdoc generation" OFF)
64
 
if(GENERATE_DOC)
65
 
    message(STATUS "QDoc enabled.")
66
 
    find_program(QDOC_BIN qdoc)
67
 
    if(NOT QDOC_BIN)
68
 
        message(FATAL_ERROR "qdoc command not found")
69
 
    else()
70
 
        add_subdirectory(doc)
71
 
    endif()
 
31
# Quiet logger
 
32
set(QUIET_LOGGER OFF CACHE BOOL "Disable test output on stdout.")
 
33
if(NOT QUIET_LOGGER)
 
34
    set(STDOUT_LOGGER "-o" "-,txt")
72
35
endif()
73
36
 
74
37
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")