summaryrefslogtreecommitdiffstats
path: root/tests/auto/CMakeLists.txt
blob: 2452e1a5d8888483ab9ca99f8af5050d56f675b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# special case begin
# Order by dependency [*], then alphabetic. [*] If bugs in part A of
# our source would break tests of part B, then test A before B.

# Build only corelib and gui tests when targeting uikit (iOS),
# because the script can't handle the SUBDIRS assignment well.
if (UIKIT)
    add_subdirectory(corelib)
    if (TARGET Qt::Gui)
        add_subdirectory(gui)
    endif()
    return()
endif()

add_subdirectory(testlib)
if (NOT CMAKE_CROSSCOMPILE AND QT_FEATURE_process)
     add_subdirectory(tools)
endif()
add_subdirectory(corelib)
# special case begin
if (TARGET Qt::Xml AND TARGET Qt::Sql AND TARGET Qt::Network)
    add_subdirectory(cmake)
endif()
# special case end
if (TARGET Qt::Concurrent)
     add_subdirectory(concurrent)
endif()

if (QT_FEATURE_dbus)
    set(run_dbus_tests ON)
    if(NOT CMAKE_CROSSCOMPILING AND TARGET Qt::DBus)
        execute_process(COMMAND dbus-send --session --type=signal / local.AutotestCheck.Hello
            RESULT_VARIABLE dbus_session_test
            OUTPUT_QUIET ERROR_QUIET)
        if(NOT "${dbus_session_test}" STREQUAL "0")
            set(run_dbus_tests OFF)
            if(QT_FEATURE_dbus_linked)
                message(WARNING
                    " QtDBus is enabled but session bus is not available for testing.\n"
                    " Please check the installation. Skipping QtDBus tests.")
            else()
                message(WARNING
                    " QtDBus is enabled with runtime support, but session bus is not available.\n"
                    " Skipping QtDBus tests.")
            endif()
        endif()
    endif()
    if(run_dbus_tests)
        add_subdirectory(dbus)
    endif()
endif()

if (TARGET Qt::Gui)
    add_subdirectory(gui)
endif()
if (TARGET Qt::Network)
     add_subdirectory(network)
endif()
if (TARGET Qt::OpenGL)
     add_subdirectory(opengl)
endif()
if (TARGET Qt::PrintSupport)
     add_subdirectory(printsupport)
endif()
if (TARGET Qt::Sql)
     add_subdirectory(sql)
endif()
if (TARGET Qt::Widgets)
     add_subdirectory(widgets)
endif()
if (TARGET Qt::Xml)
     add_subdirectory(xml)
endif()
# add_subdirectory(installed_cmake) ## FIXME: Does this still make sense in this form?
add_subdirectory(other)

# special case end