From 933d383a24fa4a98075b98fc9fe3ed04895a5883 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BCri=20Valdmann?= Date: Tue, 17 Sep 2019 11:27:47 +0200 Subject: [PATCH] pro2cmake: Support QML IMPORTPATH with multiple elements Change-Id: I8113d7dd4e7967d020d59a5b4104e8366d55283c Reviewed-by: Alexandru Croitor Reviewed-by: Simon Hausmann --- cmake/QtBuild.cmake | 8 ++++---- util/cmake/pro2cmake.py | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/cmake/QtBuild.cmake b/cmake/QtBuild.cmake index 3076d5f3a44..d16d61c939d 100644 --- a/cmake/QtBuild.cmake +++ b/cmake/QtBuild.cmake @@ -2247,7 +2247,7 @@ endfunction() function(add_qt_test name) qt_parse_all_arguments(arg "add_qt_test" "RUN_SERIAL;EXCEPTIONS;GUI;QMLTEST" - "QML_IMPORTPATH;OUTPUT_DIRECTORY" "TESTDATA;${__default_private_args};${__default_public_args}" ${ARGN}) + "OUTPUT_DIRECTORY" "QML_IMPORTPATH;TESTDATA;${__default_private_args};${__default_public_args}" ${ARGN}) if (NOT arg_OUTPUT_DIRECTORY) set(arg_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}") @@ -2313,9 +2313,9 @@ function(add_qt_test name) ) endif() - if (arg_QML_IMPORTPATH) - set(extra_test_args "-import" "${arg_QML_IMPORTPATH}") - endif() + foreach(path IN LISTS arg_QML_IMPORTPATH) + list(APPEND extra_test_args "-import" "${path}") + endforeach() # Generate a label in the form tests/auto/foo/bar/tst_baz # and use it also for XML output diff --git a/util/cmake/pro2cmake.py b/util/cmake/pro2cmake.py index defecf128f8..ee68c1ca2ec 100755 --- a/util/cmake/pro2cmake.py +++ b/util/cmake/pro2cmake.py @@ -2125,11 +2125,11 @@ def write_test(cm_fh: typing.IO[str], scope: Scope, if 'qmltestcase' in scope.get('CONFIG'): libraries.add('Qt::QmlTest') extra.append('QMLTEST') - importpath = scope.get('IMPORTPATH') + importpath = scope.expand('IMPORTPATH') if importpath: - qml_importpath = scope.expandString(importpath) - if qml_importpath: - extra.append('QML_IMPORTPATH "{}"'.format(qml_importpath)) + extra.append('QML_IMPORTPATH') + for path in importpath: + extra.append(' "{}"'.format(path)) write_main_part(cm_fh, test_name, 'Test', 'add_qt_test', scope, indent=indent, known_libraries=libraries,