瀏覽代碼

CMakeParseImplicitLinkInfo: Avoid if() auto-deref in quoted arg

When matching implicit library names, use a sentinel "x" to avoid
ever expanding the library name as a variable.  This was detected
by a CMP0054 warning.
Brad King 10 年之前
父節點
當前提交
d1cf09e3c2
共有 1 個文件被更改,包括 1 次插入1 次删除
  1. 1 1
      Modules/CMakeParseImplicitLinkInfo.cmake

+ 1 - 1
Modules/CMakeParseImplicitLinkInfo.cmake

@@ -124,7 +124,7 @@ function(CMAKE_PARSE_IMPLICIT_LINK_INFO text lib_var dir_var fwk_var log_var obj
   # We remove items that are not language-specific.
   # We remove items that are not language-specific.
   set(implicit_libs "")
   set(implicit_libs "")
   foreach(lib IN LISTS implicit_libs_tmp)
   foreach(lib IN LISTS implicit_libs_tmp)
-    if("${lib}" MATCHES "^(crt.*\\.o|gcc.*|System.*)$")
+    if("x${lib}" MATCHES "^x(crt.*\\.o|gcc.*|System.*)$")
       set(log "${log}  remove lib [${lib}]\n")
       set(log "${log}  remove lib [${lib}]\n")
     elseif(IS_ABSOLUTE "${lib}")
     elseif(IS_ABSOLUTE "${lib}")
       get_filename_component(abs "${lib}" ABSOLUTE)
       get_filename_component(abs "${lib}" ABSOLUTE)