diff options
Diffstat (limited to 'cmake/QtPublicWasmToolchainHelpers.cmake')
-rw-r--r-- | cmake/QtPublicWasmToolchainHelpers.cmake | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/cmake/QtPublicWasmToolchainHelpers.cmake b/cmake/QtPublicWasmToolchainHelpers.cmake index 798258db94..31f6b5aca5 100644 --- a/cmake/QtPublicWasmToolchainHelpers.cmake +++ b/cmake/QtPublicWasmToolchainHelpers.cmake @@ -30,7 +30,7 @@ function(__qt_internal_query_emsdk_version emroot_path is_fatal out_var) set(EXECUTE_COMMANDPATH "$ENV{EMSDK}/${emroot_path}/emcc") endif() - file(TO_NATIVE_PATH "${EXECUTE_COMMANDPATH}" EXECUTE_COMMAND) + file(TO_CMAKE_PATH "${EXECUTE_COMMANDPATH}" EXECUTE_COMMAND) execute_process(COMMAND ${EXECUTE_COMMAND} --version OUTPUT_VARIABLE emOutput OUTPUT_STRIP_TRAILING_WHITESPACE @@ -53,7 +53,7 @@ endfunction() function(__qt_internal_get_emcc_recommended_version out_var) # This version of Qt needs this version of emscripten. - set(QT_EMCC_RECOMMENDED_VERSION "3.1.25") + set(QT_EMCC_RECOMMENDED_VERSION "3.1.50") set(${out_var} "${QT_EMCC_RECOMMENDED_VERSION}" PARENT_SCOPE) endfunction() @@ -81,12 +81,16 @@ function(__qt_internal_get_qt_build_emsdk_version out_var) endif() if(EXISTS "${WASM_BUILD_DIR}/src/corelib/global/qconfig.h") file(READ "${WASM_BUILD_DIR}/src/corelib/global/qconfig.h" ver) - else() + elseif(EXISTS "${WASM_BUILD_DIR}/include/QtCore/qconfig.h") file(READ "${WASM_BUILD_DIR}/include/QtCore/qconfig.h" ver) + else() + message("qconfig.h not found, unable to determine Qt build Emscripten version") + endif() + if (ver) + string(REGEX MATCH "#define QT_EMCC_VERSION.\"[0-9]+\\.[0-9]+\\.[0-9]+\"" emOutput ${ver}) + string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" build_emcc_version "${emOutput}") + set(${out_var} "${build_emcc_version}" PARENT_SCOPE) endif() - string(REGEX MATCH "#define QT_EMCC_VERSION.\"[0-9]+\\.[0-9]+\\.[0-9]+\"" emOutput ${ver}) - string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" build_emcc_version "${emOutput}") - set(${out_var} "${build_emcc_version}" PARENT_SCOPE) endfunction() function(_qt_test_emscripten_version) |