8e07d5095b
Since we still don't support dynamic linking in wasm, we can't use it for tests, which forces us to use static linking, which is very slow (up to 30 seconds in some cases). The idea is to at least have one test run for wasm before expanding it later. Note that even with this change, QT_BUILD_MINIMAL_STATIC_TESTS=ON needs to be defined to skip the baseline test directory. Change-Id: I39aea22087211fb39f03dfb0b39c55f63a26d2a7 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
101 lines
2.9 KiB
CMake
101 lines
2.9 KiB
CMake
# 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.
|
|
|
|
if(UIKIT)
|
|
# For now, only build CMake auto tests when QT_BUILD_MINIMAL_STATIC_TEST
|
|
# is a requested (which is basically what CI will build).
|
|
# The reason is that qt_internal_add_test doesn't use qt_add_executable
|
|
# at the moment, which means none of the required iOS specific finalizers
|
|
# are run.
|
|
if(QT_BUILD_MINIMAL_STATIC_TESTS)
|
|
add_subdirectory(cmake)
|
|
return()
|
|
endif()
|
|
|
|
# Build only corelib and gui tests when targeting uikit (iOS),
|
|
# because the script can't handle the SUBDIRS assignment well.
|
|
add_subdirectory(corelib)
|
|
if (TARGET Qt::Gui)
|
|
add_subdirectory(gui)
|
|
endif()
|
|
return()
|
|
endif()
|
|
|
|
# Only configure a single auto test for wasm for now
|
|
# Since the linking step at this point is prohibitively long (static linking)
|
|
if(WASM)
|
|
add_subdirectory(corelib/text/qchar)
|
|
return()
|
|
endif()
|
|
|
|
add_subdirectory(testlib)
|
|
if(NOT CMAKE_CROSSCOMPILING 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
|
|
|
|
# Limit set of tests to run for static Qt builds.
|
|
if(QT_BUILD_MINIMAL_STATIC_TESTS)
|
|
return()
|
|
endif()
|
|
|
|
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
|