summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlexey Edelev <alexey.edelev@qt.io>2021-07-28 13:09:02 +0200
committerAlexey Edelev <alexey.edelev@qt.io>2021-07-28 15:47:05 +0200
commit934bb86f9bb6c8f36e87097c8d74effc13e08f10 (patch)
tree449b495cb8e398b41f796b5d32a5d823ba587175 /src
parentd362c6ac38c9056eadc78b985ec13d2d1120a8bb (diff)
downloadqtactiveqt-934bb86f9bb6c8f36e87097c8d74effc13e08f10.tar.gz
Fix type library UUID regex
CMake doesn't support regex quantifiers, so need to multiply the number of hexadecimal numbers manually in UUID regex. Add missing LIBRARIES argument to qutlook example. Fixes: QTBUG-95407 Pick-to: 6.2 6.1 Change-Id: I3f3da1e29fe524ed7f03b3764de9139c4fc13a5b Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/activeqt/container/Qt6AxContainerMacros.cmake12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/activeqt/container/Qt6AxContainerMacros.cmake b/src/activeqt/container/Qt6AxContainerMacros.cmake
index 192d375..7c53c06 100644
--- a/src/activeqt/container/Qt6AxContainerMacros.cmake
+++ b/src/activeqt/container/Qt6AxContainerMacros.cmake
@@ -38,11 +38,17 @@ function(qt6_target_typelibs target)
endif()
set(out_sources "")
- set(hex "[a-fA-F0-9]")
- set(ident_ "[a-fA-F0-9_]")
+
+ # CMake doesn't support quantifiers.
+ set(hex_num "[a-fA-F0-9][a-fA-F0-9]")
+ set(hex_two "${hex_num}${hex_num}")
+ set(hex_four "${hex_two}${hex_two}")
+ set(hex_six "${hex_two}${hex_two}${hex_two}")
+
+ set(ident_ "[a-zA-Z0-9_]")
foreach(lib IN LISTS arg_LIBRARIES)
unset(libpath CACHE)
- if(lib MATCHES "^(${ident_}+):(\\{${hex}{8}-${hex}{4}-${hex}{4}-${hex}{4}-${hex}{12}\\})$")
+ if(lib MATCHES "^(${ident_}+):({${hex_four}-${hex_two}-${hex_two}-${hex_two}-${hex_six}})$")
set(libpath "${CMAKE_MATCH_2}")
set(out_basename "${CMAKE_MATCH_1}")
string(MAKE_C_IDENTIFIER "${out_basename}" out_basename_valid)