浏览代码

genex-LINK_LIBRARY: rename configuration variables

To be more consistent between genex and variables as well as
the forecomming LINK_GROUP genex, rename variable *_LINK_USING_<FEATURE>*
in *_LINK_LIBRARY_USING_<FEATURE>*
Marc Chevrier 3 年之前
父节点
当前提交
397ee55cd6
共有 47 个文件被更改,包括 216 次插入211 次删除
  1. 9 9
      Help/manual/cmake-generator-expressions.7.rst
  2. 4 4
      Help/manual/cmake-variables.7.rst
  3. 4 4
      Help/prop_tgt/LINK_LIBRARY_OVERRIDE.rst
  4. 4 4
      Help/prop_tgt/LINK_LIBRARY_OVERRIDE_LIBRARY.rst
  5. 3 3
      Help/release/dev/Genex-LINK_LIBRARY.rst
  6. 6 6
      Help/variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE.rst
  7. 13 0
      Help/variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst
  8. 0 13
      Help/variable/CMAKE_LANG_LINK_USING_FEATURE_SUPPORTED.rst
  9. 8 7
      Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.rst
  10. 14 13
      Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.txt
  11. 14 0
      Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst
  12. 0 14
      Help/variable/CMAKE_LINK_USING_FEATURE_SUPPORTED.rst
  13. 5 3
      Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt
  14. 1 1
      Modules/CMakeGenericSystem.cmake
  15. 8 8
      Modules/Compiler/Clang-CUDA.cmake
  16. 8 8
      Modules/Platform/Apple-Apple-Swift.cmake
  17. 8 8
      Modules/Platform/Apple-NVIDIA-CUDA.cmake
  18. 8 8
      Modules/Platform/Darwin.cmake
  19. 7 6
      Source/cmComputeLinkDepends.cxx
  20. 2 2
      Source/cmComputeLinkInformation.cxx
  21. 1 1
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature2.cmake
  22. 1 1
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3-stderr.txt
  23. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3.cmake
  24. 1 1
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4-stderr.txt
  25. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4.cmake
  26. 1 1
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5-stderr.txt
  27. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5.cmake
  28. 1 1
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6-stderr.txt
  29. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6.cmake
  30. 1 1
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7-stderr.txt
  31. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7.cmake
  32. 6 6
      Tests/RunCMake/GenEx-LINK_LIBRARY/compatible-features.cmake
  33. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/feature-not-supported.cmake
  34. 4 4
      Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features1.cmake
  35. 5 5
      Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features2.cmake
  36. 5 5
      Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features3.cmake
  37. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/library-ignored.cmake
  38. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/nested-compatible-features.cmake
  39. 4 4
      Tests/RunCMake/GenEx-LINK_LIBRARY/nested-incompatible-features.cmake
  40. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/only-targets.cmake
  41. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/override-features3.cmake
  42. 2 2
      Tests/RunCMake/GenEx-LINK_LIBRARY/override-features4.cmake
  43. 1 1
      Tests/RunCMake/GenEx-LINK_LIBRARY/target_link_options.cmake
  44. 22 22
      Tests/RunCMake/target_link_libraries-LINK_LIBRARY/LINK_LIBRARY.cmake
  45. 2 2
      Tests/RunCMake/target_link_libraries-LINK_LIBRARY/imported-target-stdout.txt
  46. 3 3
      Tests/RunCMake/target_link_libraries-LINK_LIBRARY/weak_library.cmake
  47. 10 10
      Tests/RunCMake/target_link_libraries-LINK_LIBRARY/whole_archive.cmake

+ 9 - 9
Help/manual/cmake-generator-expressions.7.rst

@@ -1125,23 +1125,23 @@ Output-Related Expressions
 
 
     add_library(lib1 STATIC ...)
     add_library(lib1 STATIC ...)
     add_library(lib2 ...)
     add_library(lib2 ...)
-    target_link_libraries(lib2 PRIVATE $<LINK_LIBRARY:whole_archive,lib1>)
+    target_link_libraries(lib2 PRIVATE "$<LINK_LIBRARY:whole_archive,lib1>")
 
 
   This specify to use the ``lib1`` target with feature ``whole_archive`` for
   This specify to use the ``lib1`` target with feature ``whole_archive`` for
   linking target ``lib2``. The feature must have be defined by
   linking target ``lib2``. The feature must have be defined by
-  :variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>` variable or, if
-  :variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>_SUPPORTED` is false,
-  by :variable:`CMAKE_LINK_USING_<FEATURE>` variable.
+  :variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>` variable or, if
+  :variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED` is false,
+  by :variable:`CMAKE_LINK_LIBRARY_USING_<FEATURE>` variable.
 
 
   .. note::
   .. note::
 
 
     The evaluation of this generator expression will use, for the following
     The evaluation of this generator expression will use, for the following
     variables, the values defined at the level of the creation of the target:
     variables, the values defined at the level of the creation of the target:
 
 
-    * :variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>_SUPPORTED`
-    * :variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>`
-    * :variable:`CMAKE_LINK_USING_<FEATURE>_SUPPORTED`
-    * :variable:`CMAKE_LINK_USING_<FEATURE>`
+    * :variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED`
+    * :variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>`
+    * :variable:`CMAKE_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED`
+    * :variable:`CMAKE_LINK_LIBRARY_USING_<FEATURE>`
 
 
   This expression can only be used to specify link libraries (i.e. part of
   This expression can only be used to specify link libraries (i.e. part of
   :command:`link_libraries` or :command:`target_link_libraries` commands and
   :command:`link_libraries` or :command:`target_link_libraries` commands and
@@ -1170,7 +1170,7 @@ Output-Related Expressions
     add_library(lib1 ...)
     add_library(lib1 ...)
 
 
     add_library(lib2 ...)
     add_library(lib2 ...)
-    target_link_libraries(lib2 PUBLIC $<LINK_LIBRARY:feature1,lib1>)
+    target_link_libraries(lib2 PUBLIC "$<LINK_LIBRARY:feature1,lib1>")
 
 
     add_library(lib3 ...)
     add_library(lib3 ...)
     target_link_libraries(lib3 PRIVATE lib1 lib2)
     target_link_libraries(lib3 PRIVATE lib1 lib2)

+ 4 - 4
Help/manual/cmake-variables.7.rst

@@ -437,11 +437,11 @@ Variables that Control the Build
    /variable/CMAKE_LANG_CPPCHECK
    /variable/CMAKE_LANG_CPPCHECK
    /variable/CMAKE_LANG_CPPLINT
    /variable/CMAKE_LANG_CPPLINT
    /variable/CMAKE_LANG_INCLUDE_WHAT_YOU_USE
    /variable/CMAKE_LANG_INCLUDE_WHAT_YOU_USE
+   /variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE
+   /variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE_SUPPORTED
    /variable/CMAKE_LANG_LINKER_LAUNCHER
    /variable/CMAKE_LANG_LINKER_LAUNCHER
    /variable/CMAKE_LANG_LINK_LIBRARY_FILE_FLAG
    /variable/CMAKE_LANG_LINK_LIBRARY_FILE_FLAG
    /variable/CMAKE_LANG_LINK_LIBRARY_FLAG
    /variable/CMAKE_LANG_LINK_LIBRARY_FLAG
-   /variable/CMAKE_LANG_LINK_USING_FEATURE
-   /variable/CMAKE_LANG_LINK_USING_FEATURE_SUPPORTED
    /variable/CMAKE_LANG_LINK_WHAT_YOU_USE_FLAG
    /variable/CMAKE_LANG_LINK_WHAT_YOU_USE_FLAG
    /variable/CMAKE_LANG_VISIBILITY_PRESET
    /variable/CMAKE_LANG_VISIBILITY_PRESET
    /variable/CMAKE_LIBRARY_OUTPUT_DIRECTORY
    /variable/CMAKE_LIBRARY_OUTPUT_DIRECTORY
@@ -452,8 +452,8 @@ Variables that Control the Build
    /variable/CMAKE_LINK_INTERFACE_LIBRARIES
    /variable/CMAKE_LINK_INTERFACE_LIBRARIES
    /variable/CMAKE_LINK_LIBRARY_FILE_FLAG
    /variable/CMAKE_LINK_LIBRARY_FILE_FLAG
    /variable/CMAKE_LINK_LIBRARY_FLAG
    /variable/CMAKE_LINK_LIBRARY_FLAG
-   /variable/CMAKE_LINK_USING_FEATURE
-   /variable/CMAKE_LINK_USING_FEATURE_SUPPORTED
+   /variable/CMAKE_LINK_LIBRARY_USING_FEATURE
+   /variable/CMAKE_LINK_LIBRARY_USING_FEATURE_SUPPORTED
    /variable/CMAKE_LINK_WHAT_YOU_USE
    /variable/CMAKE_LINK_WHAT_YOU_USE
    /variable/CMAKE_LINK_WHAT_YOU_USE_CHECK
    /variable/CMAKE_LINK_WHAT_YOU_USE_CHECK
    /variable/CMAKE_MACOSX_BUNDLE
    /variable/CMAKE_MACOSX_BUNDLE

+ 4 - 4
Help/prop_tgt/LINK_LIBRARY_OVERRIDE.rst

@@ -22,10 +22,10 @@ example:
 .. code-block:: cmake
 .. code-block:: cmake
 
 
   add_library(lib1 ...)
   add_library(lib1 ...)
-  target_link_libraries(lib1 PUBLIC $<LINK_LIBRARY:feature1,external>)
+  target_link_libraries(lib1 PUBLIC "$<LINK_LIBRARY:feature1,external>")
 
 
   add_library(lib2 ...)
   add_library(lib2 ...)
-  target_link_libraries(lib2 PUBLIC $<LINK_LIBRARY:feature2,lib1>)
+  target_link_libraries(lib2 PUBLIC "$<LINK_LIBRARY:feature2,lib1>")
 
 
   add_library(lib3 ...)
   add_library(lib3 ...)
   target_link_libraries(lib3 PRIVATE lib1 lib2)
   target_link_libraries(lib3 PRIVATE lib1 lib2)
@@ -50,5 +50,5 @@ See also :prop_tgt:`LINK_LIBRARY_OVERRIDE_<LIBRARY>` target property for
 a per linked target oriented approach to override features.
 a per linked target oriented approach to override features.
 
 
 For more information about features, see
 For more information about features, see
-:variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>`
-and :variable:`CMAKE_LINK_USING_<FEATURE>` variables.
+:variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>`
+and :variable:`CMAKE_LINK_LIBRARY_USING_<FEATURE>` variables.

+ 4 - 4
Help/prop_tgt/LINK_LIBRARY_OVERRIDE_LIBRARY.rst

@@ -14,10 +14,10 @@ This property takes a ``feature`` name which will be applied to the
 .. code-block:: cmake
 .. code-block:: cmake
 
 
   add_library(lib1 ...)
   add_library(lib1 ...)
-  target_link_libraries(lib1 PUBLIC $<LINK_LIBRARY:feature1,external>)
+  target_link_libraries(lib1 PUBLIC "$<LINK_LIBRARY:feature1,external>")
 
 
   add_library(lib2 ...)
   add_library(lib2 ...)
-  target_link_libraries(lib2 PUBLIC $<LINK_LIBRARY:feature2,lib1>)
+  target_link_libraries(lib2 PUBLIC "$<LINK_LIBRARY:feature2,lib1>")
 
 
   add_library(lib3 ...)
   add_library(lib3 ...)
   target_link_libraries(lib3 PRIVATE lib1 lib2)
   target_link_libraries(lib3 PRIVATE lib1 lib2)
@@ -41,5 +41,5 @@ This property takes precedence over :prop_tgt:`LINK_LIBRARY_OVERRIDE`
 target property.
 target property.
 
 
 For more information about features, see
 For more information about features, see
-:variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>`
-and :variable:`CMAKE_LINK_USING_<FEATURE>` variables.
+:variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>`
+and :variable:`CMAKE_LINK_LIBRARY_USING_<FEATURE>` variables.

+ 3 - 3
Help/release/dev/Genex-LINK_LIBRARY.rst

@@ -3,9 +3,9 @@ Genex-LINK_LIBRARY
 
 
 * The :genex:`LINK_LIBRARY` generator expression was added to manage how
 * The :genex:`LINK_LIBRARY` generator expression was added to manage how
   libraries are specified during the link step. The variables
   libraries are specified during the link step. The variables
-  :variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>` and
-  :variable:`CMAKE_LINK_USING_<FEATURE>` are used to define features usable by
-  the :genex:`LINK_LIBRARY` generator expression. Moreover, the
+  :variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>` and
+  :variable:`CMAKE_LINK_LIBRARY_USING_<FEATURE>` are used to define features
+  usable by the :genex:`LINK_LIBRARY` generator expression. Moreover, the
   :prop_tgt:`LINK_LIBRARY_OVERRIDE` and
   :prop_tgt:`LINK_LIBRARY_OVERRIDE` and
   :prop_tgt:`LINK_LIBRARY_OVERRIDE_<LIBRARY>` target properties are available
   :prop_tgt:`LINK_LIBRARY_OVERRIDE_<LIBRARY>` target properties are available
   to resolve incompatible features.
   to resolve incompatible features.

+ 6 - 6
Help/variable/CMAKE_LANG_LINK_USING_FEATURE.rst → Help/variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE.rst

@@ -1,5 +1,5 @@
-CMAKE_<LANG>_LINK_USING_<FEATURE>
----------------------------------
+CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>
+-----------------------------------------
 
 
 .. versionadded:: 3.24
 .. versionadded:: 3.24
 
 
@@ -12,11 +12,11 @@ using :genex:`LINK_LIBRARY` generator expression.
   Feature names defined in all uppercase are reserved to CMake.
   Feature names defined in all uppercase are reserved to CMake.
 
 
 See also the associated variable
 See also the associated variable
-:variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>_SUPPORTED` and
-:variable:`CMAKE_LINK_USING_<FEATURE>` variable for the definition of features
-independent from the link language.
+:variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED` and
+:variable:`CMAKE_LINK_LIBRARY_USING_<FEATURE>` variable for the definition of
+features independent from the link language.
 
 
-.. include:: CMAKE_LINK_USING_FEATURE.txt
+.. include:: CMAKE_LINK_LIBRARY_USING_FEATURE.txt
 
 
 Predefined Features
 Predefined Features
 ^^^^^^^^^^^^^^^^^^^
 ^^^^^^^^^^^^^^^^^^^

+ 13 - 0
Help/variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst

@@ -0,0 +1,13 @@
+CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED
+---------------------------------------------------
+
+.. versionadded:: 3.24
+
+Set to ``TRUE`` if the ``<FEATURE>``, as defined by variable
+:variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>`, is supported for the
+linker language ``<LANG>``.
+
+.. note::
+
+  This variable is evaluated before the more generic variable
+  :variable:`CMAKE_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED`.

+ 0 - 13
Help/variable/CMAKE_LANG_LINK_USING_FEATURE_SUPPORTED.rst

@@ -1,13 +0,0 @@
-CMAKE_<LANG>_LINK_USING_<FEATURE>_SUPPORTED
--------------------------------------------
-
-.. versionadded:: 3.24
-
-Set to ``TRUE`` if the ``<FEATURE>``, as defined by variable
-:variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>`, is supported for the linker
-language ``<LANG>``.
-
-.. note::
-
-  This variable is evaluated before the more generic variable
-  :variable:`CMAKE_LINK_USING_<FEATURE>_SUPPORTED`.

+ 8 - 7
Help/variable/CMAKE_LINK_USING_FEATURE.rst → Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.rst

@@ -1,5 +1,5 @@
-CMAKE_LINK_USING_<FEATURE>
---------------------------
+CMAKE_LINK_LIBRARY_USING_<FEATURE>
+----------------------------------
 
 
 .. versionadded:: 3.24
 .. versionadded:: 3.24
 
 
@@ -12,15 +12,16 @@ using :genex:`LINK_LIBRARY` generator expression.
   Feature names defined in all uppercase are reserved to CMake.
   Feature names defined in all uppercase are reserved to CMake.
 
 
 See also the associated variable
 See also the associated variable
-:variable:`CMAKE_LINK_USING_<FEATURE>_SUPPORTED` and
-:variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>` variable for the definition of
-features dependent from the link language.
+:variable:`CMAKE_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED` and
+:variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>` variable for the
+definition of features dependent from the link language.
 
 
 This variable will be used by :genex:`LINK_LIBRARY` generator expression if,
 This variable will be used by :genex:`LINK_LIBRARY` generator expression if,
 for the linker language, the variable
 for the linker language, the variable
-:variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>_SUPPORTED` is false or not set.
+:variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED` is false or not
+set.
 
 
-.. include:: CMAKE_LINK_USING_FEATURE.txt
+.. include:: CMAKE_LINK_LIBRARY_USING_FEATURE.txt
 
 
 Predefined Features
 Predefined Features
 ^^^^^^^^^^^^^^^^^^^
 ^^^^^^^^^^^^^^^^^^^

+ 14 - 13
Help/variable/CMAKE_LINK_USING_FEATURE.txt → Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.txt

@@ -46,27 +46,27 @@ is offered by various environments but with a specific syntax:
 
 
 .. code-block:: cmake
 .. code-block:: cmake
 
 
-  set(CMAKE_C_LINK_USING_whole_archive_SUPPORTED TRUE)
+  set(CMAKE_C_LINK_LIBRARY_USING_whole_archive_SUPPORTED TRUE)
   if(CMAKE_C_COMPILER_ID STREQUAL "AppleClang")
   if(CMAKE_C_COMPILER_ID STREQUAL "AppleClang")
-    set(CMAKE_C_LINK_USING_whole_archive "-force_load <LIB_ITEM>")
+    set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "-force_load <LIB_ITEM>")
   elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU"
   elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU"
          AND CMAKE_SYSTEM_NAME STREQUAL "Linux")
          AND CMAKE_SYSTEM_NAME STREQUAL "Linux")
-    set(CMAKE_C_LINK_USING_whole_archive "LINKER:--push-state,--whole-archive"
-                                         "<LINK_ITEM>"
-                                         "LINKER:--pop-state")
+    set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "LINKER:--push-state,--whole-archive"
+                                                 "<LINK_ITEM>"
+                                                 "LINKER:--pop-state")
   elseif(CMAKE_C_COMPILER_ID STREQUAL "MSVC")
   elseif(CMAKE_C_COMPILER_ID STREQUAL "MSVC")
-    set(CMAKE_C_LINK_USING_whole_archive "/WHOLEARCHIVE:<LIBRARY>")
+    set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "/WHOLEARCHIVE:<LIBRARY>")
   else()
   else()
     # feature not yet supported for the other environments
     # feature not yet supported for the other environments
-    set(CMAKE_C_LINK_USING_whole_archive_SUPPORTED FALSE)
+    set(CMAKE_C_LINK_LIBRARY_USING_whole_archive_SUPPORTED FALSE)
   endif()
   endif()
 
 
   add_library(lib1 STATIC ...)
   add_library(lib1 STATIC ...)
 
 
   add_library(lib2 SHARED ...)
   add_library(lib2 SHARED ...)
-  if(CMAKE_C_LINK_USING_whole_archive_SUPPORTED)
+  if(CMAKE_C_LINK_LIBRARY_USING_whole_archive_SUPPORTED)
     target_link_libraries(lib2 PRIVATE
     target_link_libraries(lib2 PRIVATE
-      $<LINK_LIBRARY:whole_archive,lib1,$<IF:$<LINK_LANG_AND_ID:C,Clang>,libexternal.a,external>>)
+      "$<LINK_LIBRARY:whole_archive,lib1,$<IF:$<LINK_LANG_AND_ID:C,Clang>,libexternal.a,external>>")
   else()
   else()
     target_link_libraries(lib2 PRIVATE lib1 external)
     target_link_libraries(lib2 PRIVATE lib1 external)
   endif()
   endif()
@@ -95,14 +95,15 @@ library specified by path and by name. This constraint by be solved by using
 .. code-block:: cmake
 .. code-block:: cmake
 
 
   if (CMAKE_C_COMPILER_ID STREQUAL "AppleClang")
   if (CMAKE_C_COMPILER_ID STREQUAL "AppleClang")
-    set(CMAKE_LINK_USING_weak_library "PATH{-weak_library <LIBRARY>}NAME{LINKER:-weak-l<LIB_ITEM>}")
-    set(CMAKE_LINK_USING_weak_library_SUPPORTED TRUE)
+    set(CMAKE_LINK_LIBRARY_USING_weak_library
+        "PATH{-weak_library <LIBRARY>}NAME{LINKER:-weak-l<LIB_ITEM>}")
+    set(CMAKE_LINK_LIBRARY_USING_weak_library_SUPPORTED TRUE)
   endif()
   endif()
 
 
   add_library(lib SHARED ...)
   add_library(lib SHARED ...)
   add_executable(main ...)
   add_executable(main ...)
-  if(CMAKE_LINK_USING_weak_library_SUPPORTED)
-    target_link_libraries(main PRIVATE $<LINK_LIBRARY:weak_library,lib,external>)
+  if(CMAKE_LINK_LIBRARY_USING_weak_library_SUPPORTED)
+    target_link_libraries(main PRIVATE "$<LINK_LIBRARY:weak_library,lib,external>")
   else()
   else()
     target_link_libraries(main PRIVATE lib external)
     target_link_libraries(main PRIVATE lib external)
   endif()
   endif()

+ 14 - 0
Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst

@@ -0,0 +1,14 @@
+CMAKE_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED
+--------------------------------------------
+
+.. versionadded:: 3.24
+
+Set to ``TRUE`` if the ``<FEATURE>``, as defined by variable
+:variable:`CMAKE_LINK_LIBRARY_USING_<FEATURE>`, is supported regardless the
+linker language.
+
+.. note::
+
+  This variable is evaluated if, and only if, the variable
+  :variable:`CMAKE_<LANG>_LINK_LIBRARY_USING_<FEATURE>_SUPPORTED` evaluates to
+  ``FALSE``.

+ 0 - 14
Help/variable/CMAKE_LINK_USING_FEATURE_SUPPORTED.rst

@@ -1,14 +0,0 @@
-CMAKE_LINK_USING_<FEATURE>_SUPPORTED
-------------------------------------
-
-.. versionadded:: 3.24
-
-Set to ``TRUE`` if the ``<FEATURE>``, as defined by variable
-:variable:`CMAKE_LINK_USING_<FEATURE>`, is supported regardless the linker
-language.
-
-.. note::
-
-  This variable is evaluated if, and only if, the variable
-  :variable:`CMAKE_<LANG>_LINK_USING_<FEATURE>_SUPPORTED` evaluates to
-  ``FALSE``.

+ 5 - 3
Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt

@@ -23,9 +23,11 @@ compatible with it.
   linker option ``-weak_framework``).
   linker option ``-weak_framework``).
 
 
 Features for framework linking have a special handling in ``CMake``: the
 Features for framework linking have a special handling in ``CMake``: the
-framework can be specified as a ``CMake`` framework target or file path. In
-the later case, if the path includes a directory part, this one will be
-specified as framework search path at link step.
+framework can be specified as a ``CMake`` framework target or file path. In the
+first case, the target must have the :prop_tgt:`FRAMEWORK` target property set
+as ``TRUE`` to enable framework handling. In the later case, if the path
+includes a directory part, this one will be specified as framework search path
+at link step.
 
 
 .. code-block:: cmake
 .. code-block:: cmake
 
 

+ 1 - 1
Modules/CMakeGenericSystem.cmake

@@ -28,7 +28,7 @@ set(CMAKE_FIND_LIBRARY_SUFFIXES ".so" ".a")
 # default option to link a library
 # default option to link a library
 # This feature is intended to be used in LINK_LIBRARY_OVERRIDE and
 # This feature is intended to be used in LINK_LIBRARY_OVERRIDE and
 # LINK_LIBRARY_OVERRIDE_<LIBRARY> target properties
 # LINK_LIBRARY_OVERRIDE_<LIBRARY> target properties
-set(CMAKE_LINK_USING_DEFAULT_SUPPORTED TRUE)
+set(CMAKE_LINK_LIBRARY_USING_DEFAULT_SUPPORTED TRUE)
 
 
 set(CMAKE_AUTOGEN_ORIGIN_DEPENDS ON)
 set(CMAKE_AUTOGEN_ORIGIN_DEPENDS ON)
 set(CMAKE_AUTOMOC_COMPILER_PREDEFINES ON)
 set(CMAKE_AUTOMOC_COMPILER_PREDEFINES ON)

+ 8 - 8
Modules/Compiler/Clang-CUDA.cmake

@@ -41,15 +41,15 @@ endif()
 
 
 if(APPLE)
 if(APPLE)
   # Defines host link features for frameworks
   # Defines host link features for frameworks
-  set(CMAKE_CUDA_LINK_USING_FRAMEWORK "LINKER:-framework,<LIBRARY>")
-  set(CMAKE_CUDA_LINK_USING_FRAMEWORK_SUPPORTED TRUE)
+  set(CMAKE_CUDA_LINK_LIBRARY_USING_FRAMEWORK "LINKER:-framework,<LIBRARY>")
+  set(CMAKE_CUDA_LINK_LIBRARY_USING_FRAMEWORK_SUPPORTED TRUE)
 
 
-  set(CMAKE_CUDA_LINK_USING_NEEDED_FRAMEWORK "LINKER:-needed_framework,<LIBRARY>")
-  set(CMAKE_CUDA_LINK_USING_NEEDED_FRAMEWORK_SUPPORTED TRUE)
+  set(CMAKE_CUDA_LINK_LIBRARY_USING_NEEDED_FRAMEWORK "LINKER:-needed_framework,<LIBRARY>")
+  set(CMAKE_CUDA_LINK_LIBRARY_USING_NEEDED_FRAMEWORK_SUPPORTED TRUE)
 
 
-  set(CMAKE_CUDA_LINK_USING_REEXPORT_FRAMEWORK "LINKER:-reexport_framework,<LIBRARY>")
-  set(CMAKE_CUDA_LINK_USING_REEXPORT_FRAMEWORK_SUPPORTED TRUE)
+  set(CMAKE_CUDA_LINK_LIBRARY_USING_REEXPORT_FRAMEWORK "LINKER:-reexport_framework,<LIBRARY>")
+  set(CMAKE_CUDA_LINK_LIBRARY_USING_REEXPORT_FRAMEWORK_SUPPORTED TRUE)
 
 
-  set(CMAKE_CUDA_LINK_USING_WEAK_FRAMEWORK "LINKER:-weak_framework,<LIBRARY>")
-  set(CMAKE_CUDA_LINK_USING_WEAK_FRAMEWORK_SUPPORTED TRUE)
+  set(CMAKE_CUDA_LINK_LIBRARY_USING_WEAK_FRAMEWORK "LINKER:-weak_framework,<LIBRARY>")
+  set(CMAKE_CUDA_LINK_LIBRARY_USING_WEAK_FRAMEWORK_SUPPORTED TRUE)
 endif()
 endif()

+ 8 - 8
Modules/Platform/Apple-Apple-Swift.cmake

@@ -2,14 +2,14 @@ set(CMAKE_Swift_SYSROOT_FLAG "-sdk")
 
 
 
 
 # Defines host link features for frameworks
 # Defines host link features for frameworks
-set(CMAKE_Swift_LINK_USING_FRAMEWORK "LINKER:-framework,<LIBRARY>")
-set(CMAKE_Swift_LINK_USING_FRAMEWORK_SUPPORTED TRUE)
+set(CMAKE_Swift_LINK_LIBRARY_USING_FRAMEWORK "LINKER:-framework,<LIBRARY>")
+set(CMAKE_Swift_LINK_LIBRARY_USING_FRAMEWORK_SUPPORTED TRUE)
 
 
-set(CMAKE_Swift_LINK_USING_NEEDED_FRAMEWORK "LINKER:-needed_framework,<LIBRARY>")
-set(CMAKE_Swift_LINK_USING_NEEDED_FRAMEWORK_SUPPORTED TRUE)
+set(CMAKE_Swift_LINK_LIBRARY_USING_NEEDED_FRAMEWORK "LINKER:-needed_framework,<LIBRARY>")
+set(CMAKE_Swift_LINK_LIBRARY_USING_NEEDED_FRAMEWORK_SUPPORTED TRUE)
 
 
-set(CMAKE_Swift_LINK_USING_REEXPORT_FRAMEWORK "LINKER:-reexport_framework,<LIBRARY>")
-set(CMAKE_Swift_LINK_USING_REEXPORT_FRAMEWORK_SUPPORTED TRUE)
+set(CMAKE_Swift_LINK_LIBRARY_USING_REEXPORT_FRAMEWORK "LINKER:-reexport_framework,<LIBRARY>")
+set(CMAKE_Swift_LINK_LIBRARY_USING_REEXPORT_FRAMEWORK_SUPPORTED TRUE)
 
 
-set(CMAKE_Swift_LINK_USING_WEAK_FRAMEWORK "LINKER:-weak_framework,<LIBRARY>")
-set(CMAKE_Swift_LINK_USING_WEAK_FRAMEWORK_SUPPORTED TRUE)
+set(CMAKE_Swift_LINK_LIBRARY_USING_WEAK_FRAMEWORK "LINKER:-weak_framework,<LIBRARY>")
+set(CMAKE_Swift_LINK_LIBRARY_USING_WEAK_FRAMEWORK_SUPPORTED TRUE)

+ 8 - 8
Modules/Platform/Apple-NVIDIA-CUDA.cmake

@@ -20,14 +20,14 @@ set(CMAKE_CUDA_CREATE_SHARED_MODULE "<CMAKE_CUDA_HOST_LINK_LAUNCHER> <CMAKE_SHAR
 
 
 
 
 # Defines host link features for frameworks
 # Defines host link features for frameworks
-set(CMAKE_CUDA_LINK_USING_FRAMEWORK "LINKER:-framework,<LIBRARY>")
-set(CMAKE_CUDA_LINK_USING_FRAMEWORK_SUPPORTED TRUE)
+set(CMAKE_CUDA_LINK_LIBRARY_USING_FRAMEWORK "LINKER:-framework,<LIBRARY>")
+set(CMAKE_CUDA_LINK_LIBRARY_USING_FRAMEWORK_SUPPORTED TRUE)
 
 
-set(CMAKE_CUDA_LINK_USING_NEEDED_FRAMEWORK "LINKER:-needed_framework,<LIBRARY>")
-set(CMAKE_CUDA_LINK_USING_NEEDED_FRAMEWORK_SUPPORTED TRUE)
+set(CMAKE_CUDA_LINK_LIBRARY_USING_NEEDED_FRAMEWORK "LINKER:-needed_framework,<LIBRARY>")
+set(CMAKE_CUDA_LINK_LIBRARY_USING_NEEDED_FRAMEWORK_SUPPORTED TRUE)
 
 
-set(CMAKE_CUDA_LINK_USING_REEXPORT_FRAMEWORK "LINKER:-reexport_framework,<LIBRARY>")
-set(CMAKE_CUDA_LINK_USING_REEXPORT_FRAMEWORK_SUPPORTED TRUE)
+set(CMAKE_CUDA_LINK_LIBRARY_USING_REEXPORT_FRAMEWORK "LINKER:-reexport_framework,<LIBRARY>")
+set(CMAKE_CUDA_LINK_LIBRARY_USING_REEXPORT_FRAMEWORK_SUPPORTED TRUE)
 
 
-set(CMAKE_CUDA_LINK_USING_WEAK_FRAMEWORK "LINKER:-weak_framework,<LIBRARY>")
-set(CMAKE_CUDA_LINK_USING_WEAK_FRAMEWORK_SUPPORTED TRUE)
+set(CMAKE_CUDA_LINK_LIBRARY_USING_WEAK_FRAMEWORK "LINKER:-weak_framework,<LIBRARY>")
+set(CMAKE_CUDA_LINK_LIBRARY_USING_WEAK_FRAMEWORK_SUPPORTED TRUE)

+ 8 - 8
Modules/Platform/Darwin.cmake

@@ -108,17 +108,17 @@ foreach(lang C CXX Fortran OBJC OBJCXX)
   set(CMAKE_${lang}_FRAMEWORK_SEARCH_FLAG -F)
   set(CMAKE_${lang}_FRAMEWORK_SEARCH_FLAG -F)
 
 
   # Defines link features for frameworks
   # Defines link features for frameworks
-  set(CMAKE_${lang}_LINK_USING_FRAMEWORK "LINKER:-framework,<LIBRARY>")
-  set(CMAKE_${lang}_LINK_USING_FRAMEWORK_SUPPORTED TRUE)
+  set(CMAKE_${lang}_LINK_LIBRARY_USING_FRAMEWORK "LINKER:-framework,<LIBRARY>")
+  set(CMAKE_${lang}_LINK_LIBRARY_USING_FRAMEWORK_SUPPORTED TRUE)
 
 
-  set(CMAKE_${lang}_LINK_USING_NEEDED_FRAMEWORK "LINKER:-needed_framework,<LIBRARY>")
-  set(CMAKE_${lang}_LINK_USING_NEEDED_FRAMEWORK_SUPPORTED TRUE)
+  set(CMAKE_${lang}_LINK_LIBRARY_USING_NEEDED_FRAMEWORK "LINKER:-needed_framework,<LIBRARY>")
+  set(CMAKE_${lang}_LINK_LIBRARY_USING_NEEDED_FRAMEWORK_SUPPORTED TRUE)
 
 
-  set(CMAKE_${lang}_LINK_USING_REEXPORT_FRAMEWORK "LINKER:-reexport_framework,<LIBRARY>")
-  set(CMAKE_${lang}_LINK_USING_REEXPORT_FRAMEWORK_SUPPORTED TRUE)
+  set(CMAKE_${lang}_LINK_LIBRARY_USING_REEXPORT_FRAMEWORK "LINKER:-reexport_framework,<LIBRARY>")
+  set(CMAKE_${lang}_LINK_LIBRARY_USING_REEXPORT_FRAMEWORK_SUPPORTED TRUE)
 
 
-  set(CMAKE_${lang}_LINK_USING_WEAK_FRAMEWORK "LINKER:-weak_framework,<LIBRARY>")
-  set(CMAKE_${lang}_LINK_USING_WEAK_FRAMEWORK_SUPPORTED TRUE)
+  set(CMAKE_${lang}_LINK_LIBRARY_USING_WEAK_FRAMEWORK "LINKER:-weak_framework,<LIBRARY>")
+  set(CMAKE_${lang}_LINK_LIBRARY_USING_WEAK_FRAMEWORK_SUPPORTED TRUE)
 endforeach()
 endforeach()
 
 
 # default to searching for frameworks first
 # default to searching for frameworks first

+ 7 - 6
Source/cmComputeLinkDepends.cxx

@@ -192,13 +192,14 @@ inline std::string ExtractFeature(std::string const& item)
 bool IsFeatureSupported(cmMakefile* makefile, std::string const& linkLanguage,
 bool IsFeatureSupported(cmMakefile* makefile, std::string const& linkLanguage,
                         std::string const& feature)
                         std::string const& feature)
 {
 {
-  auto featureSupported =
-    cmStrCat("CMAKE_", linkLanguage, "_LINK_USING_", feature, "_SUPPORTED");
+  auto featureSupported = cmStrCat(
+    "CMAKE_", linkLanguage, "_LINK_LIBRARY_USING_", feature, "_SUPPORTED");
   if (makefile->GetDefinition(featureSupported).IsOn()) {
   if (makefile->GetDefinition(featureSupported).IsOn()) {
     return true;
     return true;
   }
   }
 
 
-  featureSupported = cmStrCat("CMAKE_LINK_USING_", feature, "_SUPPORTED");
+  featureSupported =
+    cmStrCat("CMAKE_LINK_LIBRARY_USING_", feature, "_SUPPORTED");
   return makefile->GetDefinition(featureSupported).IsOn();
   return makefile->GetDefinition(featureSupported).IsOn();
 }
 }
 }
 }
@@ -650,9 +651,9 @@ void cmComputeLinkDepends::AddLinkEntries(int depender_index,
                      feature,
                      feature,
                      "', which is undefined or unsupported.\nDid you miss to "
                      "', which is undefined or unsupported.\nDid you miss to "
                      "define it by setting variables \"CMAKE_",
                      "define it by setting variables \"CMAKE_",
-                     this->LinkLanguage, "_LINK_USING_", feature,
-                     "\" and \"CMAKE_", this->LinkLanguage, "_LINK_USING_",
-                     feature, "_SUPPORTED\"?"),
+                     this->LinkLanguage, "_LINK_LIBRARY_USING_", feature,
+                     "\" and \"CMAKE_", this->LinkLanguage,
+                     "_LINK_LIBRARY_USING_", feature, "_SUPPORTED\"?"),
             this->Target->GetBacktrace());
             this->Target->GetBacktrace());
         }
         }
       }
       }

+ 2 - 2
Source/cmComputeLinkInformation.cxx

@@ -674,11 +674,11 @@ bool cmComputeLinkInformation::AddLibraryFeature(std::string const& feature)
   }
   }
 
 
   auto featureName =
   auto featureName =
-    cmStrCat("CMAKE_", this->LinkLanguage, "_LINK_USING_", feature);
+    cmStrCat("CMAKE_", this->LinkLanguage, "_LINK_LIBRARY_USING_", feature);
   cmValue featureSupported =
   cmValue featureSupported =
     this->Makefile->GetDefinition(cmStrCat(featureName, "_SUPPORTED"));
     this->Makefile->GetDefinition(cmStrCat(featureName, "_SUPPORTED"));
   if (!featureSupported.IsOn()) {
   if (!featureSupported.IsOn()) {
-    featureName = cmStrCat("CMAKE_LINK_USING_", feature);
+    featureName = cmStrCat("CMAKE_LINK_LIBRARY_USING_", feature);
     featureSupported =
     featureSupported =
       this->Makefile->GetDefinition(cmStrCat(featureName, "_SUPPORTED"));
       this->Makefile->GetDefinition(cmStrCat(featureName, "_SUPPORTED"));
   }
   }

+ 1 - 1
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature2.cmake

@@ -1,6 +1,6 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat_SUPPORTED TRUE)
 
 
 add_library(dep SHARED empty.c)
 add_library(dep SHARED empty.c)
 
 

+ 1 - 1
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3-stderr.txt

@@ -1,5 +1,5 @@
 CMake Error at bad-feature3.cmake:[0-9]+ \(add_library\):
 CMake Error at bad-feature3.cmake:[0-9]+ \(add_library\):
-  Feature 'feat', specified by variable 'CMAKE_C_LINK_USING_feat', is
+  Feature 'feat', specified by variable 'CMAKE_C_LINK_LIBRARY_USING_feat', is
   malformed \("<LIBRARY>", "<LIB_ITEM>", or "<LINK_ITEM>" patterns are
   malformed \("<LIBRARY>", "<LIB_ITEM>", or "<LINK_ITEM>" patterns are
   missing\) and cannot be used to link target 'lib'.
   missing\) and cannot be used to link target 'lib'.
 Call Stack \(most recent call first\):
 Call Stack \(most recent call first\):

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3.cmake

@@ -1,7 +1,7 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat "")
+set(CMAKE_C_LINK_LIBRARY_USING_feat_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat "")
 
 
 add_library(dep SHARED empty.c)
 add_library(dep SHARED empty.c)
 
 

+ 1 - 1
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4-stderr.txt

@@ -1,5 +1,5 @@
 CMake Error at bad-feature4.cmake:[0-9]+ \(add_library\):
 CMake Error at bad-feature4.cmake:[0-9]+ \(add_library\):
-  Feature 'feat', specified by variable 'CMAKE_C_LINK_USING_feat', is
+  Feature 'feat', specified by variable 'CMAKE_C_LINK_LIBRARY_USING_feat', is
   malformed \("<LIBRARY>", "<LIB_ITEM>", or "<LINK_ITEM>" patterns are
   malformed \("<LIBRARY>", "<LIB_ITEM>", or "<LINK_ITEM>" patterns are
   missing\) and cannot be used to link target 'lib'.
   missing\) and cannot be used to link target 'lib'.
 Call Stack \(most recent call first\):
 Call Stack \(most recent call first\):

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4.cmake

@@ -1,7 +1,7 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat "-opt")
+set(CMAKE_C_LINK_LIBRARY_USING_feat_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat "-opt")
 
 
 add_library(dep SHARED empty.c)
 add_library(dep SHARED empty.c)
 
 

+ 1 - 1
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5-stderr.txt

@@ -1,5 +1,5 @@
 CMake Error at bad-feature5.cmake:[0-9]+ \(add_library\):
 CMake Error at bad-feature5.cmake:[0-9]+ \(add_library\):
-  Feature 'feat', specified by variable 'CMAKE_C_LINK_USING_feat', is
+  Feature 'feat', specified by variable 'CMAKE_C_LINK_LIBRARY_USING_feat', is
   malformed \(wrong number of elements\) and cannot be used to link target
   malformed \(wrong number of elements\) and cannot be used to link target
   'lib'.
   'lib'.
 Call Stack \(most recent call first\):
 Call Stack \(most recent call first\):

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5.cmake

@@ -1,7 +1,7 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat "-prefix" "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat "-prefix" "<LIBRARY>")
 
 
 add_library(dep SHARED empty.c)
 add_library(dep SHARED empty.c)
 
 

+ 1 - 1
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6-stderr.txt

@@ -1,5 +1,5 @@
 CMake Error at bad-feature6.cmake:[0-9]+ \(add_library\):
 CMake Error at bad-feature6.cmake:[0-9]+ \(add_library\):
-  Feature 'feat', specified by variable 'CMAKE_C_LINK_USING_feat', is
+  Feature 'feat', specified by variable 'CMAKE_C_LINK_LIBRARY_USING_feat', is
   malformed \("<LIBRARY>", "<LIB_ITEM>", or "<LINK_ITEM>" patterns are missing
   malformed \("<LIBRARY>", "<LIB_ITEM>", or "<LINK_ITEM>" patterns are missing
   for "PATH{}" alternative\) and cannot be used to link target 'lib'.
   for "PATH{}" alternative\) and cannot be used to link target 'lib'.
 Call Stack \(most recent call first\):
 Call Stack \(most recent call first\):

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6.cmake

@@ -1,7 +1,7 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat "PATH{}NAME{<LIBRARY>}")
+set(CMAKE_C_LINK_LIBRARY_USING_feat_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat "PATH{}NAME{<LIBRARY>}")
 
 
 add_library(dep SHARED empty.c)
 add_library(dep SHARED empty.c)
 
 

+ 1 - 1
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7-stderr.txt

@@ -1,5 +1,5 @@
 CMake Error at bad-feature7.cmake:[0-9]+ \(add_library\):
 CMake Error at bad-feature7.cmake:[0-9]+ \(add_library\):
-  Feature 'feat', specified by variable 'CMAKE_C_LINK_USING_feat', is
+  Feature 'feat', specified by variable 'CMAKE_C_LINK_LIBRARY_USING_feat', is
   malformed \("<LIBRARY>", "<LIB_ITEM>", or "<LINK_ITEM>" patterns are missing
   malformed \("<LIBRARY>", "<LIB_ITEM>", or "<LINK_ITEM>" patterns are missing
   for "NAME{}" alternative\) and cannot be used to link target 'lib'.
   for "NAME{}" alternative\) and cannot be used to link target 'lib'.
 Call Stack \(most recent call first\):
 Call Stack \(most recent call first\):

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7.cmake

@@ -1,7 +1,7 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat "NAME{}PATH{<LIBRARY>}")
+set(CMAKE_C_LINK_LIBRARY_USING_feat_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat "NAME{}PATH{<LIBRARY>}")
 
 
 add_library(dep SHARED empty.c)
 add_library(dep SHARED empty.c)
 
 

+ 6 - 6
Tests/RunCMake/GenEx-LINK_LIBRARY/compatible-features.cmake

@@ -1,10 +1,10 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat1_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat1 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat1_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat1 "<LIBRARY>")
 
 
-set(CMAKE_C_LINK_USING_feat2_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat2 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat2_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat2 "<LIBRARY>")
 
 
 add_library(dep1 SHARED empty.c)
 add_library(dep1 SHARED empty.c)
 
 
@@ -15,7 +15,7 @@ add_library(dep3 SHARED empty.c)
 target_link_libraries(dep3 PUBLIC dep2)
 target_link_libraries(dep3 PUBLIC dep2)
 
 
 add_library(lib1 SHARED empty.c)
 add_library(lib1 SHARED empty.c)
-target_link_libraries(lib1 PRIVATE $<LINK_LIBRARY:feat2,dep1,dep2>)
+target_link_libraries(lib1 PRIVATE "$<LINK_LIBRARY:feat2,dep1,dep2>")
 
 
 add_library(lib2 SHARED empty.c)
 add_library(lib2 SHARED empty.c)
-target_link_libraries(lib2 PRIVATE $<LINK_LIBRARY:DEFAULT,dep2,dep3>)
+target_link_libraries(lib2 PRIVATE "$<LINK_LIBRARY:DEFAULT,dep2,dep3>")

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/feature-not-supported.cmake

@@ -1,7 +1,7 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat_SUPPORTED FALSE)
-set(CMAKE_C_LINK_USING_feat "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat_SUPPORTED FALSE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat "<LIBRARY>")
 
 
 add_library(dep SHARED empty.c)
 add_library(dep SHARED empty.c)
 
 

+ 4 - 4
Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features1.cmake

@@ -1,10 +1,10 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat1_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat1 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat1_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat1 "<LIBRARY>")
 
 
-set(CMAKE_C_LINK_USING_feat2_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat2 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat2_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat2 "<LIBRARY>")
 
 
 add_library(dep1 SHARED empty.c)
 add_library(dep1 SHARED empty.c)
 
 

+ 5 - 5
Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features2.cmake

@@ -1,10 +1,10 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat1_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat1 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat1_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat1 "<LIBRARY>")
 
 
-set(CMAKE_C_LINK_USING_feat2_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat2 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat2_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat2 "<LIBRARY>")
 
 
 add_library(dep1 SHARED empty.c)
 add_library(dep1 SHARED empty.c)
 
 
@@ -12,4 +12,4 @@ add_library(dep2 SHARED empty.c)
 target_link_libraries(dep2 PUBLIC dep1)
 target_link_libraries(dep2 PUBLIC dep1)
 
 
 add_library(lib SHARED empty.c)
 add_library(lib SHARED empty.c)
-target_link_libraries(lib PRIVATE $<LINK_LIBRARY:feat2,dep1,dep2>)
+target_link_libraries(lib PRIVATE "$<LINK_LIBRARY:feat2,dep1,dep2>")

+ 5 - 5
Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features3.cmake

@@ -1,15 +1,15 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat1_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat1 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat1_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat1 "<LIBRARY>")
 
 
-set(CMAKE_C_LINK_USING_feat2_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat2 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat2_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat2 "<LIBRARY>")
 
 
 add_library(dep1 SHARED empty.c)
 add_library(dep1 SHARED empty.c)
 
 
 add_library(dep2 SHARED empty.c)
 add_library(dep2 SHARED empty.c)
-target_link_libraries(dep2 PUBLIC $<LINK_LIBRARY:feat1,dep1>)
+target_link_libraries(dep2 PUBLIC "$<LINK_LIBRARY:feat1,dep1>")
 
 
 add_library(lib SHARED empty.c)
 add_library(lib SHARED empty.c)
 target_link_libraries(lib PRIVATE dep1 dep2)
 target_link_libraries(lib PRIVATE dep1 dep2)

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/library-ignored.cmake

@@ -1,7 +1,7 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat "<LIBRARY>")
 
 
 add_library(dep OBJECT empty.c)
 add_library(dep OBJECT empty.c)
 
 

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/nested-compatible-features.cmake

@@ -1,7 +1,7 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat1_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat1 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat1_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat1 "<LIBRARY>")
 
 
 add_library(dep1 SHARED empty.c)
 add_library(dep1 SHARED empty.c)
 
 

+ 4 - 4
Tests/RunCMake/GenEx-LINK_LIBRARY/nested-incompatible-features.cmake

@@ -1,10 +1,10 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat1_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat1 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat1_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat1 "<LIBRARY>")
 
 
-set(CMAKE_C_LINK_USING_feat2_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat2 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat2_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat2 "<LIBRARY>")
 
 
 add_library(dep1 SHARED empty.c)
 add_library(dep1 SHARED empty.c)
 
 

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/only-targets.cmake

@@ -1,7 +1,7 @@
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_feat1_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat1 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat1_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat1 "<LIBRARY>")
 
 
 set(CMAKE_LINK_LIBRARIES_ONLY_TARGETS 1)
 set(CMAKE_LINK_LIBRARIES_ONLY_TARGETS 1)
 
 

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/override-features3.cmake

@@ -1,7 +1,7 @@
 
 
 include(incompatible-features1.cmake)
 include(incompatible-features1.cmake)
 
 
-set(CMAKE_C_LINK_USING_feat3_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat3 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat3_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat3 "<LIBRARY>")
 
 
 set_property(TARGET lib PROPERTY LINK_LIBRARY_OVERRIDE "feat3,dep1")
 set_property(TARGET lib PROPERTY LINK_LIBRARY_OVERRIDE "feat3,dep1")

+ 2 - 2
Tests/RunCMake/GenEx-LINK_LIBRARY/override-features4.cmake

@@ -2,8 +2,8 @@
 include(incompatible-features1.cmake)
 include(incompatible-features1.cmake)
 
 
 
 
-set(CMAKE_C_LINK_USING_feat3_SUPPORTED TRUE)
-set(CMAKE_C_LINK_USING_feat3 "<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat3_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat3 "<LIBRARY>")
 
 
 set_property(TARGET lib PROPERTY LINK_LIBRARY_OVERRIDE "feat3,dep1")
 set_property(TARGET lib PROPERTY LINK_LIBRARY_OVERRIDE "feat3,dep1")
 set_property(TARGET lib PROPERTY LINK_LIBRARY_OVERRIDE_dep1 feat1)
 set_property(TARGET lib PROPERTY LINK_LIBRARY_OVERRIDE_dep1 feat1)

+ 1 - 1
Tests/RunCMake/GenEx-LINK_LIBRARY/target_link_options.cmake

@@ -1,4 +1,4 @@
 enable_language(C)
 enable_language(C)
 
 
 add_library(empty SHARED empty.c)
 add_library(empty SHARED empty.c)
-target_link_options(empty PRIVATE $<LINK_LIBRARY:FEAT>)
+target_link_options(empty PRIVATE "$<LINK_LIBRARY:FEAT>")

+ 22 - 22
Tests/RunCMake/target_link_libraries-LINK_LIBRARY/LINK_LIBRARY.cmake

@@ -12,28 +12,28 @@ endif()
 add_library(base1 SHARED base.c)
 add_library(base1 SHARED base.c)
 add_library(base2 SHARED base.c)
 add_library(base2 SHARED base.c)
 
 
-set(CMAKE_C_LINK_USING_feat1 "--LIBFLAG<LIBRARY>")
-set(CMAKE_C_LINK_USING_feat1_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat1 "--LIBFLAG<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat1_SUPPORTED TRUE)
 
 
-set(CMAKE_C_LINK_USING_feat1_1 "--LIBFLAG_C<LIBRARY>")
-set(CMAKE_C_LINK_USING_feat1_1_SUPPORTED FALSE)
-set(CMAKE_LINK_USING_feat1_1 "--LIBFLAG<LIBRARY>")
-set(CMAKE_LINK_USING_feat1_1_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat1_1 "--LIBFLAG_C<LIBRARY>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat1_1_SUPPORTED FALSE)
+set(CMAKE_LINK_LIBRARY_USING_feat1_1 "--LIBFLAG<LIBRARY>")
+set(CMAKE_LINK_LIBRARY_USING_feat1_1_SUPPORTED TRUE)
 
 
-set(CMAKE_C_LINK_USING_feat2 "--PREFIXGROUP" "--LIBGROUP<LIBRARY>" "--SUFFIXGROUP")
-set(CMAKE_C_LINK_USING_feat2_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat2 "--PREFIXGROUP" "--LIBGROUP<LIBRARY>" "--SUFFIXGROUP")
+set(CMAKE_C_LINK_LIBRARY_USING_feat2_SUPPORTED TRUE)
 
 
-set(CMAKE_C_LINK_USING_feat3 "--PREFIXGROUP" "<LINK_ITEM>" "--SUFFIXGROUP")
-set(CMAKE_C_LINK_USING_feat3_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat3 "--PREFIXGROUP" "<LINK_ITEM>" "--SUFFIXGROUP")
+set(CMAKE_C_LINK_LIBRARY_USING_feat3_SUPPORTED TRUE)
 
 
-set(CMAKE_C_LINK_USING_feat4 "--PREFIXGROUP" "--LIBFLAG<LIBRARY> --ITEMFLAG<LIB_ITEM>" "--SUFFIXGROUP")
-set(CMAKE_C_LINK_USING_feat4_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat4 "--PREFIXGROUP" "--LIBFLAG<LIBRARY> --ITEMFLAG<LIB_ITEM>" "--SUFFIXGROUP")
+set(CMAKE_C_LINK_LIBRARY_USING_feat4_SUPPORTED TRUE)
 
 
-set(CMAKE_C_LINK_USING_feat5 "--PREFIXGROUP" "PATH{--LIBFLAG<LIBRARY>}NAME{--ITEMFLAG<LIB_ITEM>}" "--SUFFIXGROUP")
-set(CMAKE_C_LINK_USING_feat5_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat5 "--PREFIXGROUP" "PATH{--LIBFLAG<LIBRARY>}NAME{--ITEMFLAG<LIB_ITEM>}" "--SUFFIXGROUP")
+set(CMAKE_C_LINK_LIBRARY_USING_feat5_SUPPORTED TRUE)
 
 
-set(CMAKE_C_LINK_USING_feat6 "<LINK_ITEM>")
-set(CMAKE_C_LINK_USING_feat6_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_feat6 "<LINK_ITEM>")
+set(CMAKE_C_LINK_LIBRARY_USING_feat6_SUPPORTED TRUE)
 
 
 
 
 add_library(LinkLibrary_simple1 SHARED lib.c)
 add_library(LinkLibrary_simple1 SHARED lib.c)
@@ -77,28 +77,28 @@ target_link_libraries(LinkLibrary_mix_features2 PRIVATE "$<LINK_LIBRARY:feat2,ba
 
 
 target_link_libraries(base3 INTERFACE other1)
 target_link_libraries(base3 INTERFACE other1)
 add_library(LinkLibrary_mix_features3 SHARED lib.c)
 add_library(LinkLibrary_mix_features3 SHARED lib.c)
-target_link_libraries(LinkLibrary_mix_features3 PRIVATE base2 $<LINK_LIBRARY:feat2,base1,base3> other2)
+target_link_libraries(LinkLibrary_mix_features3 PRIVATE base2 "$<LINK_LIBRARY:feat2,base1,base3>" other2)
 
 
 # testing LINK_LIBRARY_OVERRIDE property
 # testing LINK_LIBRARY_OVERRIDE property
 add_library(LinkLibrary_override_features1 SHARED lib.c)
 add_library(LinkLibrary_override_features1 SHARED lib.c)
-target_link_libraries(LinkLibrary_override_features1 PRIVATE $<LINK_LIBRARY:feat1,base1,base3>)
+target_link_libraries(LinkLibrary_override_features1 PRIVATE "$<LINK_LIBRARY:feat1,base1,base3>")
 set_property(TARGET LinkLibrary_override_features1 PROPERTY LINK_LIBRARY_OVERRIDE "feat1,base1")
 set_property(TARGET LinkLibrary_override_features1 PROPERTY LINK_LIBRARY_OVERRIDE "feat1,base1")
 
 
 add_library(LinkLibrary_override_features2 SHARED lib.c)
 add_library(LinkLibrary_override_features2 SHARED lib.c)
-target_link_libraries(LinkLibrary_override_features2 PRIVATE $<LINK_LIBRARY:feat1,base1,base3>)
+target_link_libraries(LinkLibrary_override_features2 PRIVATE "$<LINK_LIBRARY:feat1,base1,base3>")
 set_property(TARGET LinkLibrary_override_features2 PROPERTY LINK_LIBRARY_OVERRIDE "feat2,base1,other1")
 set_property(TARGET LinkLibrary_override_features2 PROPERTY LINK_LIBRARY_OVERRIDE "feat2,base1,other1")
 
 
 add_library(LinkLibrary_override_with_default SHARED lib.c)
 add_library(LinkLibrary_override_with_default SHARED lib.c)
-target_link_libraries(LinkLibrary_override_with_default PRIVATE $<LINK_LIBRARY:feat1,base1,base3>)
+target_link_libraries(LinkLibrary_override_with_default PRIVATE "$<LINK_LIBRARY:feat1,base1,base3>")
 set_property(TARGET LinkLibrary_override_with_default PROPERTY LINK_LIBRARY_OVERRIDE "$<$<LINK_LANGUAGE:C>:DEFAULT,base1,other1>")
 set_property(TARGET LinkLibrary_override_with_default PROPERTY LINK_LIBRARY_OVERRIDE "$<$<LINK_LANGUAGE:C>:DEFAULT,base1,other1>")
 
 
 # testing LINK_LIBRARY_OVERRIDE_<LIBRARY> property
 # testing LINK_LIBRARY_OVERRIDE_<LIBRARY> property
 add_library(LinkLibrary_override_features3 SHARED lib.c)
 add_library(LinkLibrary_override_features3 SHARED lib.c)
-target_link_libraries(LinkLibrary_override_features3 PRIVATE $<LINK_LIBRARY:feat1,base1,base3>)
+target_link_libraries(LinkLibrary_override_features3 PRIVATE "$<LINK_LIBRARY:feat1,base1,base3>")
 set_property(TARGET LinkLibrary_override_features3 PROPERTY LINK_LIBRARY_OVERRIDE_base1 feat1)
 set_property(TARGET LinkLibrary_override_features3 PROPERTY LINK_LIBRARY_OVERRIDE_base1 feat1)
 
 
 add_library(LinkLibrary_override_features4 SHARED lib.c)
 add_library(LinkLibrary_override_features4 SHARED lib.c)
-target_link_libraries(LinkLibrary_override_features4 PRIVATE $<LINK_LIBRARY:feat1,base1,base3>)
+target_link_libraries(LinkLibrary_override_features4 PRIVATE "$<LINK_LIBRARY:feat1,base1,base3>")
 set_property(TARGET LinkLibrary_override_features4 PROPERTY LINK_LIBRARY_OVERRIDE "feat3,base1,other1")
 set_property(TARGET LinkLibrary_override_features4 PROPERTY LINK_LIBRARY_OVERRIDE "feat3,base1,other1")
 set_property(TARGET LinkLibrary_override_features4 PROPERTY LINK_LIBRARY_OVERRIDE_base1 feat2)
 set_property(TARGET LinkLibrary_override_features4 PROPERTY LINK_LIBRARY_OVERRIDE_base1 feat2)
 set_property(TARGET LinkLibrary_override_features4 PROPERTY LINK_LIBRARY_OVERRIDE_other1 feat2)
 set_property(TARGET LinkLibrary_override_features4 PROPERTY LINK_LIBRARY_OVERRIDE_other1 feat2)

+ 2 - 2
Tests/RunCMake/target_link_libraries-LINK_LIBRARY/imported-target-stdout.txt

@@ -4,8 +4,8 @@ CMake Warning \(dev\) at imported-target.cmake:[0-9]+ \(add_library\):
   unsupported.
   unsupported.
 
 
   Did you miss to define it by setting variables
   Did you miss to define it by setting variables
-  "CMAKE_C_LINK_USING_whole_archive" and
-  "CMAKE_C_LINK_USING_whole_archive_SUPPORTED"\?
+  "CMAKE_C_LINK_LIBRARY_USING_whole_archive" and
+  "CMAKE_C_LINK_LIBRARY_USING_whole_archive_SUPPORTED"\?
 Call Stack \(most recent call first\):
 Call Stack \(most recent call first\):
   CMakeLists.txt:[0-9]+ \(include\)
   CMakeLists.txt:[0-9]+ \(include\)
 This warning is for project developers.  Use -Wno-dev to suppress it.
 This warning is for project developers.  Use -Wno-dev to suppress it.

+ 3 - 3
Tests/RunCMake/target_link_libraries-LINK_LIBRARY/weak_library.cmake

@@ -2,11 +2,11 @@
 enable_language(C)
 enable_language(C)
 
 
 if(CMAKE_C_COMPILER_ID STREQUAL "AppleClang")
 if(CMAKE_C_COMPILER_ID STREQUAL "AppleClang")
-  set(CMAKE_LINK_USING_weak_library "PATH{-weak_library <LIBRARY>}NAME{LINKER:-weak-l<LIB_ITEM>}")
-  set(CMAKE_LINK_USING_weak_library_SUPPORTED TRUE)
+  set(CMAKE_LINK_LIBRARY_USING_weak_library "PATH{-weak_library <LIBRARY>}NAME{LINKER:-weak-l<LIB_ITEM>}")
+  set(CMAKE_LINK_LIBRARY_USING_weak_library_SUPPORTED TRUE)
 else()
 else()
   # feature not yet supported for the other environments
   # feature not yet supported for the other environments
-  set(CMAKE_LINK_USING_whole_library_SUPPORTED FALSE)
+  set(CMAKE_LINK_LIBRARY_USING_whole_library_SUPPORTED FALSE)
 endif()
 endif()
 
 
 add_library(lib SHARED base.c lib.c unref.c)
 add_library(lib SHARED base.c lib.c unref.c)

+ 10 - 10
Tests/RunCMake/target_link_libraries-LINK_LIBRARY/whole_archive.cmake

@@ -1,27 +1,27 @@
 
 
 enable_language(C)
 enable_language(C)
 
 
-set(CMAKE_C_LINK_USING_whole_archive_SUPPORTED TRUE)
+set(CMAKE_C_LINK_LIBRARY_USING_whole_archive_SUPPORTED TRUE)
 if(CMAKE_C_COMPILER_ID STREQUAL "AppleClang")
 if(CMAKE_C_COMPILER_ID STREQUAL "AppleClang")
-  set(CMAKE_C_LINK_USING_whole_archive "-force_load <LIB_ITEM>")
+  set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "-force_load <LIB_ITEM>")
 elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU" AND CMAKE_SYSTEM_NAME STREQUAL "Linux")
 elseif(CMAKE_C_COMPILER_ID STREQUAL "GNU" AND CMAKE_SYSTEM_NAME STREQUAL "Linux")
   execute_process(COMMAND "${CMAKE_LINKER}" --help
   execute_process(COMMAND "${CMAKE_LINKER}" --help
                           OUTPUT_VARIABLE linker_help
                           OUTPUT_VARIABLE linker_help
                           ERROR_VARIABLE linker_help)
                           ERROR_VARIABLE linker_help)
   if(linker_help MATCHES "--push-state" AND linker_help MATCHES "--pop-state")
   if(linker_help MATCHES "--push-state" AND linker_help MATCHES "--pop-state")
-    set(CMAKE_C_LINK_USING_whole_archive "LINKER:--push-state,--whole-archive"
-                                         "<LINK_ITEM>"
-                                         "LINKER:--pop-state")
+    set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "LINKER:--push-state,--whole-archive"
+                                                 "<LINK_ITEM>"
+                                                 "LINKER:--pop-state")
   else()
   else()
-    set(CMAKE_C_LINK_USING_whole_archive "LINKER:--whole-archive"
-                                         "<LINK_ITEM>"
-                                         "LINKER:--no-whole-archive")
+    set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "LINKER:--whole-archive"
+                                                 "<LINK_ITEM>"
+                                                 "LINKER:--no-whole-archive")
   endif()
   endif()
 elseif(CMAKE_C_COMPILER_ID STREQUAL "MSVC")
 elseif(CMAKE_C_COMPILER_ID STREQUAL "MSVC")
-  set(CMAKE_C_LINK_USING_whole_archive "/WHOLEARCHIVE:<LIBRARY>")
+  set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "/WHOLEARCHIVE:<LIBRARY>")
 else()
 else()
   # feature not yet supported for the other environments
   # feature not yet supported for the other environments
-  set(CMAKE_C_LINK_USING_whole_archive_SUPPORTED FALSE)
+  set(CMAKE_C_LINK_LIBRARY_USING_whole_archive_SUPPORTED FALSE)
 endif()
 endif()
 
 
 add_library(base STATIC base.c unref.c)
 add_library(base STATIC base.c unref.c)