diff options
author | Robert Griebl <robert.griebl@qt.io> | 2024-02-06 18:00:59 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2024-02-07 18:24:56 +0000 |
commit | 1481c336a68dce798a77f48b3bb30e4e47af3540 (patch) | |
tree | 98d4170533d1052920c8602ed24a6a60cb70d254 | |
parent | cefc8cb3e57c96c30a57cd9db1076ac2734d2450 (diff) |
cmake: fix quoting in qt6_am_add_systemui_wrapper
Change-Id: If8164dbb08bcc7cf7fe56d7e93dd37f32603a03a
Reviewed-by: Dominik Holland <dominik.holland@qt.io>
(cherry picked from commit ced5d95484e71e41b20beb96e28926f0e3fac2dc)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | examples/applicationmanager/package-installation/CMakeLists.txt | 4 | ||||
-rw-r--r-- | src/main-lib/Qt6AppManMainPrivateMacros.cmake | 16 |
2 files changed, 12 insertions, 8 deletions
diff --git a/examples/applicationmanager/package-installation/CMakeLists.txt b/examples/applicationmanager/package-installation/CMakeLists.txt index 2a1aa610..5decbb92 100644 --- a/examples/applicationmanager/package-installation/CMakeLists.txt +++ b/examples/applicationmanager/package-installation/CMakeLists.txt @@ -24,8 +24,8 @@ qt6_am_add_systemui_wrapper(package-installation CONFIG_YAML am-config.yaml EXTRA_FILES apps system-ui EXTRA_ARGS --verbose - -o 'systemProperties: { public: { serverBinary: "${QT6_INSTALL_PREFIX}/${QT6_INSTALL_BINS}/appman-package-server" }}' - -o 'systemProperties: { public: { serverBaseDir: "${CMAKE_CURRENT_BINARY_DIR}/ps-data" }}' + -o "systemProperties: { public: { serverBinary: '${QT6_INSTALL_PREFIX}/${QT6_INSTALL_BINS}/appman-package-server' }}" + -o "systemProperties: { public: { serverBaseDir: '${CMAKE_CURRENT_BINARY_DIR}/ps-data' }}" ) foreach (PKG_NAME red green) diff --git a/src/main-lib/Qt6AppManMainPrivateMacros.cmake b/src/main-lib/Qt6AppManMainPrivateMacros.cmake index c67749c2..12cd9dd1 100644 --- a/src/main-lib/Qt6AppManMainPrivateMacros.cmake +++ b/src/main-lib/Qt6AppManMainPrivateMacros.cmake @@ -66,7 +66,7 @@ function(qt6_am_add_systemui_wrapper target) if (ARG_CONFIG_YAML) foreach(F ${ARG_CONFIG_YAML}) - list(APPEND CMD_ARGS "-c ${F}") + list(APPEND CMD_ARGS -c ${F}) list(APPEND ALL_EXTRA_FILES ${F}) qt_am_internal_create_copy_command(${F}) endforeach() @@ -96,8 +96,12 @@ function(qt6_am_add_systemui_wrapper target) endforeach() endif() - string(JOIN " " CMD_ARGS_STR ${CMD_ARGS}) - string(JOIN " " CMD_EXTRA_ARGS_STR ${ARG_EXTRA_ARGS}) + list(APPEND CMD_ARGS ${ARG_EXTRA_ARGS}) + # quote all arguments with spaces + list(TRANSFORM CMD_ARGS PREPEND "\"" REGEX " ") + list(TRANSFORM CMD_ARGS APPEND "\"" REGEX " ") + # join all arguments into a single string + list(JOIN CMD_ARGS " " CMD_ARGS_STR) configure_file(${_AM_MACROS_LOCATION}/wrapper.cpp.in wrapper.cpp) @@ -117,7 +121,7 @@ function(qt6_am_add_systemui_wrapper target) SetLocal EnableDelayedExpansion (set \"PATH=${test_env_path};%PATH%\") (set \"QT_PLUGIN_PATH=${test_env_plugin_path}\") -${ARG_EXECUTABLE}.exe ${CMD_ARGS_STR} ${CMD_EXTRA_ARGS_STR} ${ARG_MAIN_QML_FILE} %* +${ARG_EXECUTABLE}.exe ${CMD_ARGS_STR} ${ARG_MAIN_QML_FILE} %* EndLocal " ) @@ -128,7 +132,7 @@ EndLocal "#!/bin/sh export PATH=\"${test_env_path}:$PATH\" export QT_PLUGIN_PATH=\"${test_env_plugin_path}\" -exec ${ARG_EXECUTABLE} ${CMD_ARGS_STR} ${CMD_EXTRA_ARGS_STR} ${ARG_MAIN_QML_FILE} \"$@\"; +exec ${ARG_EXECUTABLE} ${CMD_ARGS_STR} ${ARG_MAIN_QML_FILE} \"$@\"; " ) endif() @@ -238,7 +242,7 @@ function (qt_am_internal_add_qml_test target) --qmltestrunner-source-file "${CMAKE_CURRENT_SOURCE_DIR}/${ARG_TEST_FILE}") if (ARG_TESTDATA_DIR) - list(APPEND WRAPPER_ARGS EXTRA_ARGS -o "\"systemProperties: { public: { AM_TESTDATA_DIR: ${ARG_TESTDATA_DIR} } }\"") + list(APPEND WRAPPER_ARGS EXTRA_ARGS -o "systemProperties: { public: { AM_TESTDATA_DIR: '${ARG_TESTDATA_DIR}' } }") endif() list(APPEND WRAPPER_ARGS EXTRA_ARGS --no-cache --no-dlt-logging) |