diff options
author | Piotr Srebrny <piotr.srebrny@qt.io> | 2022-05-25 10:37:31 +0200 |
---|---|---|
committer | Piotr Srebrny <piotr.srebrny@qt.io> | 2022-05-25 12:08:45 +0200 |
commit | 35ebe097ff954b23eabd9845b05fbebd004bf7ff (patch) | |
tree | 9e3dc81f37332ea09f5b43ea98777dcc48bc262c | |
parent | 2c3b8a6061088e8c7f57c1cae903e16cb140ba55 (diff) |
Improve regex to account for dots and pluses in the library names
Fixes: QTBUG-102645
Change-Id: I15c4ded5a1e68cb09c4d3afdf63f9ae7955fd5c0
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
-rw-r--r-- | cmake/FindFFmpeg.cmake | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/cmake/FindFFmpeg.cmake b/cmake/FindFFmpeg.cmake index 1ee312578..5b0245219 100644 --- a/cmake/FindFFmpeg.cmake +++ b/cmake/FindFFmpeg.cmake @@ -181,20 +181,20 @@ function(__ffmpeg_internal_set_dependencies lib) if(EXISTS ${PC_FILE}) file(READ ${PC_FILE} pcfile) - string(REGEX REPLACE ".*Libs:([A-Za-z0-9_. \${}-]+).*" "\\1" out "${pcfile}") - string(REGEX MATCHALL "\\-l[a-z0-9_-]+" libs_dependency ${out}) - string(REGEX MATCHALL "[A-Za-z0-9_-]+\\.lib" libs_dependency_lib ${out}) + string(REGEX REPLACE ".*Libs:([^\n\r]+).*" "\\1" out "${pcfile}") + string(REGEX MATCHALL "\\-l[^ ]+" libs_dependency ${out}) + string(REGEX MATCHALL "[^ ]+\\.lib" libs_dependency_lib ${out}) - string(REGEX REPLACE ".*Libs.private:([A-Za-z0-9_. \${}-]+).*" "\\1" out "${pcfile}") - string(REGEX MATCHALL "\\-l[a-z0-9_-]+" libs_private_dependency ${out}) - string(REGEX MATCHALL "[A-Za-z0-9_-]+\\.lib" libs_private_dependency_lib ${out}) + string(REGEX REPLACE ".*Libs.private:([^\n\r]+).*" "\\1" out "${pcfile}") + string(REGEX MATCHALL "\\-l[^ ]+" libs_private_dependency ${out}) + string(REGEX MATCHALL "[^ ]+\\.lib" libs_private_dependency_lib ${out}) list(APPEND no_sufix ${libs_dependency} ${libs_private_dependency}) list(APPEND lib_sufix ${libs_dependency_lib} ${libs_private_dependency_lib}) foreach(d ${no_sufix}) string(REGEX REPLACE "\\-l" "" d ${d}) - if(NOT ${lib} MATCHES ${d}) + if(NOT ${lib} STREQUAL ${d}) target_link_libraries(FFmpeg::${lib} INTERFACE ${d}) endif() endforeach() |