diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2019-06-14 12:59:07 +0200 |
---|---|---|
committer | Alexandru Croitor <alexandru.croitor@qt.io> | 2019-06-14 16:31:09 +0200 |
commit | fe3bd212fc85b6c3a64bb8bd5beca4ff4d3493a1 (patch) | |
tree | b96dd84abfb6ac25b26539999bf2d7d427f347dd /src/corelib/Qt5CTestMacros.cmake | |
parent | 72066a3a585b4f4fed499c64464ca5ad2ba9f71d (diff) | |
parent | ae97d11589dd03edeea0475163e6110869143b35 (diff) |
Merge remote-tracking branch 'origin/wip/qt6' into wip/cmake
This changes many different CMake places to mention Qt6 instead of
Qt5.
Note that some old qt5 cmake config files in corelib are probably not
needed anymore, but I still renamed and kept them for now.
Change-Id: Ie69e81540386a5af153f76c0242e18d48211bec4
Diffstat (limited to 'src/corelib/Qt5CTestMacros.cmake')
-rw-r--r-- | src/corelib/Qt5CTestMacros.cmake | 243 |
1 files changed, 0 insertions, 243 deletions
diff --git a/src/corelib/Qt5CTestMacros.cmake b/src/corelib/Qt5CTestMacros.cmake deleted file mode 100644 index 962d49d6b2..0000000000 --- a/src/corelib/Qt5CTestMacros.cmake +++ /dev/null @@ -1,243 +0,0 @@ -# -# W A R N I N G -# ------------- -# -# This file is not part of the Qt API. It exists purely as an -# implementation detail. This file, and its contents may change from version to -# version without notice, or even be removed. -# -# We mean it. - -message("CMAKE_VERSION: ${CMAKE_VERSION}") -message("CMAKE_PREFIX_PATH: ${CMAKE_PREFIX_PATH}") -message("CMAKE_MODULES_UNDER_TEST: ${CMAKE_MODULES_UNDER_TEST}") -foreach(_mod ${CMAKE_MODULES_UNDER_TEST}) - message("CMAKE_${_mod}_MODULE_MAJOR_VERSION: ${CMAKE_${_mod}_MODULE_MAJOR_VERSION}") - message("CMAKE_${_mod}_MODULE_MINOR_VERSION: ${CMAKE_${_mod}_MODULE_MINOR_VERSION}") - message("CMAKE_${_mod}_MODULE_PATCH_VERSION: ${CMAKE_${_mod}_MODULE_PATCH_VERSION}") -endforeach() - -set(BUILD_OPTIONS_LIST) - -if (CMAKE_C_COMPILER) - list(APPEND BUILD_OPTIONS_LIST "-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}") -endif() - -if (CMAKE_CXX_COMPILER) - list(APPEND BUILD_OPTIONS_LIST "-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}") -endif() - -if (CMAKE_BUILD_TYPE) - list(APPEND BUILD_OPTIONS_LIST "-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}") -endif() - -if (CMAKE_TOOLCHAIN_FILE) - list(APPEND BUILD_OPTIONS_LIST "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}") -endif() - -if (CMAKE_VERBOSE_MAKEFILE) - list(APPEND BUILD_OPTIONS_LIST "-DCMAKE_VERBOSE_MAKEFILE=1") -endif() - -if (NO_GUI) - list(APPEND BUILD_OPTIONS_LIST "-DNO_GUI=True") -endif() -if (NO_WIDGETS) - list(APPEND BUILD_OPTIONS_LIST "-DNO_WIDGETS=True") -endif() -if (NO_DBUS) - list(APPEND BUILD_OPTIONS_LIST "-DNO_DBUS=True") -endif() - -# Qt requires C++11 features in header files, which means -# the buildsystem needs to add a -std flag for certain compilers -# CMake adds the flag automatically in most cases, but notably not -# on Windows prior to CMake 3.3 -if (CMAKE_VERSION VERSION_LESS 3.3) - if (CMAKE_CXX_COMPILER_ID STREQUAL AppleClang - OR (APPLE AND CMAKE_CXX_COMPILER_ID STREQUAL Clang)) - list(APPEND BUILD_OPTIONS_LIST "-DCMAKE_CXX_FLAGS=-std=gnu++0x -stdlib=libc++") - elseif (CMAKE_CXX_COMPILER_ID STREQUAL GNU - OR CMAKE_CXX_COMPILER_ID STREQUAL Clang) - list(APPEND BUILD_OPTIONS_LIST "-DCMAKE_CXX_FLAGS=-std=gnu++0x") - endif() -endif() - -foreach(module ${CMAKE_MODULES_UNDER_TEST}) - list(APPEND BUILD_OPTIONS_LIST - "-DCMAKE_${module}_MODULE_MAJOR_VERSION=${CMAKE_${module}_MODULE_MAJOR_VERSION}" - "-DCMAKE_${module}_MODULE_MINOR_VERSION=${CMAKE_${module}_MODULE_MINOR_VERSION}" - "-DCMAKE_${module}_MODULE_PATCH_VERSION=${CMAKE_${module}_MODULE_PATCH_VERSION}" - ) -endforeach() - -macro(expect_pass _dir) - cmake_parse_arguments(_ARGS "" "BINARY" "" ${ARGN}) - string(REPLACE "(" "_" testname "${_dir}") - string(REPLACE ")" "_" testname "${testname}") - add_test(${testname} ${CMAKE_CTEST_COMMAND} - --build-and-test - "${CMAKE_CURRENT_SOURCE_DIR}/${_dir}" - "${CMAKE_CURRENT_BINARY_DIR}/${_dir}" - --build-config "${CMAKE_BUILD_TYPE}" - --build-generator ${CMAKE_GENERATOR} - --build-makeprogram ${CMAKE_MAKE_PROGRAM} - --build-project ${_dir} - --build-options "-DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}" ${BUILD_OPTIONS_LIST} - --test-command ${_ARGS_BINARY} - ) -endmacro() - -macro(expect_fail _dir) - string(REPLACE "(" "_" testname "${_dir}") - string(REPLACE ")" "_" testname "${testname}") - file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/failbuild/${_dir}") - file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/${_dir}" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}/failbuild/${_dir}") - - file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/failbuild/${_dir}/${_dir}/FindPackageHints.cmake" "set(Qt5Tests_PREFIX_PATH \"${CMAKE_PREFIX_PATH}\")") - - file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/failbuild/${_dir}/CMakeLists.txt" - " - cmake_minimum_required(VERSION 2.8) - project(${_dir}) - - try_compile(Result \${CMAKE_CURRENT_BINARY_DIR}/${_dir} - \${CMAKE_CURRENT_SOURCE_DIR}/${_dir} - ${_dir} - OUTPUT_VARIABLE Out - ) - message(\"\${Out}\") - if (Result) - message(SEND_ERROR \"Succeeded build which should fail\") - endif() - " - ) - add_test(${testname} ${CMAKE_CTEST_COMMAND} - --build-and-test - "${CMAKE_CURRENT_BINARY_DIR}/failbuild/${_dir}" - "${CMAKE_CURRENT_BINARY_DIR}/failbuild/${_dir}/build" - --build-config "${CMAKE_BUILD_TYPE}" - --build-generator ${CMAKE_GENERATOR} - --build-makeprogram ${CMAKE_MAKE_PROGRAM} - --build-project ${_dir} - --build-options "-DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}" ${BUILD_OPTIONS_LIST} - ) -endmacro() - -function(test_module_includes) - - set(all_args ${ARGN}) - set(packages_string "") - set(libraries_string "") - - foreach(_package ${Qt5_MODULE_TEST_DEPENDS}) - set(packages_string - " - ${packages_string} - find_package(Qt5${_package} 5.0.0 REQUIRED) - " - ) - endforeach() - - while(all_args) - list(GET all_args 0 qtmodule) - list(REMOVE_AT all_args 0 1) - - set(CMAKE_MODULE_VERSION ${CMAKE_${qtmodule}_MODULE_MAJOR_VERSION}.${CMAKE_${qtmodule}_MODULE_MINOR_VERSION}.${CMAKE_${qtmodule}_MODULE_PATCH_VERSION} ) - - set(packages_string - "${packages_string} - find_package(Qt5${qtmodule} 5.0.0 REQUIRED) - include_directories(\${Qt5${qtmodule}_INCLUDE_DIRS}) - add_definitions(\${Qt5${qtmodule}_DEFINITIONS})\n") - - list(FIND CMAKE_MODULES_UNDER_TEST ${qtmodule} _findIndex) - if (NOT _findIndex STREQUAL -1) - set(packages_string - "${packages_string} - if(NOT \"\${Qt5${qtmodule}_VERSION}\" VERSION_EQUAL ${CMAKE_MODULE_VERSION}) - message(SEND_ERROR \"Qt5${qtmodule}_VERSION variable was not ${CMAKE_MODULE_VERSION}. Got \${Qt5${qtmodule}_VERSION} instead.\") - endif() - if(NOT \"\${Qt5${qtmodule}_VERSION_MAJOR}\" VERSION_EQUAL ${CMAKE_${qtmodule}_MODULE_MAJOR_VERSION}) - message(SEND_ERROR \"Qt5${qtmodule}_VERSION_MAJOR variable was not ${CMAKE_${qtmodule}_MODULE_MAJOR_VERSION}. Got \${Qt5${qtmodule}_VERSION_MAJOR} instead.\") - endif() - if(NOT \"\${Qt5${qtmodule}_VERSION_MINOR}\" VERSION_EQUAL ${CMAKE_${qtmodule}_MODULE_MINOR_VERSION}) - message(SEND_ERROR \"Qt5${qtmodule}_VERSION_MINOR variable was not ${CMAKE_${qtmodule}_MODULE_MINOR_VERSION}. Got \${Qt5${qtmodule}_VERSION_MINOR} instead.\") - endif() - if(NOT \"\${Qt5${qtmodule}_VERSION_PATCH}\" VERSION_EQUAL ${CMAKE_${qtmodule}_MODULE_PATCH_VERSION}) - message(SEND_ERROR \"Qt5${qtmodule}_VERSION_PATCH variable was not ${CMAKE_${qtmodule}_MODULE_PATCH_VERSION}. Got \${Qt5${qtmodule}_VERSION_PATCH} instead.\") - endif() - if(NOT \"\${Qt5${qtmodule}_VERSION_STRING}\" VERSION_EQUAL ${CMAKE_MODULE_VERSION}) - message(SEND_ERROR \"Qt5${qtmodule}_VERSION_STRING variable was not ${CMAKE_MODULE_VERSION}. Got \${Qt5${qtmodule}_VERSION_STRING} instead.\") - endif()\n" - ) - endif() - set(libraries_string "${libraries_string} Qt5::${qtmodule}") - endwhile() - - file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/module_includes/CMakeLists.txt" - " - cmake_minimum_required(VERSION 2.8) - project(module_includes) - - ${packages_string} - - set(CMAKE_CXX_FLAGS \"\${CMAKE_CXX_FLAGS} \${Qt5Core_EXECUTABLE_COMPILE_FLAGS}\") - if (CMAKE_VERSION VERSION_LESS 3.3) - if (CMAKE_CXX_COMPILER_ID STREQUAL AppleClang - OR (APPLE AND CMAKE_CXX_COMPILER_ID STREQUAL Clang)) - set(CMAKE_CXX_FLAGS \"\${CMAKE_CXX_FLAGS} -std=gnu++0x -stdlib=libc++\") - elseif (CMAKE_CXX_COMPILER_ID STREQUAL GNU - OR CMAKE_CXX_COMPILER_ID STREQUAL Clang) - set(CMAKE_CXX_FLAGS \"\${CMAKE_CXX_FLAGS} -std=gnu++0x\") - endif() - endif() - - add_executable(module_includes_exe \"\${CMAKE_CURRENT_SOURCE_DIR}/main.cpp\") - target_link_libraries(module_includes_exe ${libraries_string})\n" - ) - - set(all_args ${ARGN}) - set(includes_string "") - set(instances_string "") - while(all_args) - list(GET all_args 0 qtmodule) - list(GET all_args 1 qtclass) - if (${qtclass}_NAMESPACE) - set(qtinstancetype ${${qtclass}_NAMESPACE}::${qtclass}) - else() - set(qtinstancetype ${qtclass}) - endif() - list(REMOVE_AT all_args 0 1) - set(includes_string - "${includes_string} - #include <${qtclass}> - #include <Qt${qtmodule}/${qtclass}> - #include <Qt${qtmodule}> - #include <Qt${qtmodule}/Qt${qtmodule}>" - ) - set(instances_string - "${instances_string} - ${qtinstancetype} local${qtclass}; - ") - endwhile() - - file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/module_includes/main.cpp" - " - - ${includes_string} - - int main(int, char **) { ${instances_string} return 0; }\n" - ) - - add_test(module_includes ${CMAKE_CTEST_COMMAND} - --build-and-test - "${CMAKE_CURRENT_BINARY_DIR}/module_includes/" - "${CMAKE_CURRENT_BINARY_DIR}/module_includes/build" - --build-config "${CMAKE_BUILD_TYPE}" - --build-generator ${CMAKE_GENERATOR} - --build-makeprogram ${CMAKE_MAKE_PROGRAM} - --build-project module_includes - --build-options "-DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}" ${BUILD_OPTIONS_LIST} - ) -endfunction() |