summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2022-02-17 13:48:21 (GMT)
committerKitware Robot <kwrobot@kitware.com>2022-02-17 13:48:28 (GMT)
commit48933f5160754e33db6d4de68d8a0697e9d5d6aa (patch)
tree0e003cfd66410f762756fe7d4b0488dee85f8337
parent4ee96f6e7749b909d0a2baec725cdd1826e5ba61 (diff)
parent397ee55cd62dcfcbafb4ff62b189a4192e07d1e5 (diff)
downloadCMake-48933f5160754e33db6d4de68d8a0697e9d5d6aa.zip
CMake-48933f5160754e33db6d4de68d8a0697e9d5d6aa.tar.gz
CMake-48933f5160754e33db6d4de68d8a0697e9d5d6aa.tar.bz2
Merge topic 'LINK_LIBRARY-updates'
397ee55cd6 genex-LINK_LIBRARY: rename configuration variables Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !6994
-rw-r--r--Help/manual/cmake-generator-expressions.7.rst18
-rw-r--r--Help/manual/cmake-variables.7.rst8
-rw-r--r--Help/prop_tgt/LINK_LIBRARY_OVERRIDE.rst8
-rw-r--r--Help/prop_tgt/LINK_LIBRARY_OVERRIDE_LIBRARY.rst8
-rw-r--r--Help/release/dev/Genex-LINK_LIBRARY.rst6
-rw-r--r--Help/variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE.rst (renamed from Help/variable/CMAKE_LANG_LINK_USING_FEATURE.rst)12
-rw-r--r--Help/variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst13
-rw-r--r--Help/variable/CMAKE_LANG_LINK_USING_FEATURE_SUPPORTED.rst13
-rw-r--r--Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.rst (renamed from Help/variable/CMAKE_LINK_USING_FEATURE.rst)15
-rw-r--r--Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.txt (renamed from Help/variable/CMAKE_LINK_USING_FEATURE.txt)27
-rw-r--r--Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst14
-rw-r--r--Help/variable/CMAKE_LINK_USING_FEATURE_SUPPORTED.rst14
-rw-r--r--Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt8
-rw-r--r--Modules/CMakeGenericSystem.cmake2
-rw-r--r--Modules/Compiler/Clang-CUDA.cmake16
-rw-r--r--Modules/Platform/Apple-Apple-Swift.cmake16
-rw-r--r--Modules/Platform/Apple-NVIDIA-CUDA.cmake16
-rw-r--r--Modules/Platform/Darwin.cmake16
-rw-r--r--Source/cmComputeLinkDepends.cxx13
-rw-r--r--Source/cmComputeLinkInformation.cxx4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature2.cmake2
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3-stderr.txt2
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4-stderr.txt2
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5-stderr.txt2
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6-stderr.txt2
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7-stderr.txt2
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/compatible-features.cmake12
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/feature-not-supported.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features1.cmake8
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features2.cmake10
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features3.cmake10
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/library-ignored.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/nested-compatible-features.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/nested-incompatible-features.cmake8
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/only-targets.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/override-features3.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/override-features4.cmake4
-rw-r--r--Tests/RunCMake/GenEx-LINK_LIBRARY/target_link_options.cmake2
-rw-r--r--Tests/RunCMake/target_link_libraries-LINK_LIBRARY/LINK_LIBRARY.cmake44
-rw-r--r--Tests/RunCMake/target_link_libraries-LINK_LIBRARY/imported-target-stdout.txt4
-rw-r--r--Tests/RunCMake/target_link_libraries-LINK_LIBRARY/weak_library.cmake6
-rw-r--r--Tests/RunCMake/target_link_libraries-LINK_LIBRARY/whole_archive.cmake20
47 files changed, 216 insertions, 211 deletions
diff --git a/Help/manual/cmake-generator-expressions.7.rst b/Help/manual/cmake-generator-expressions.7.rst
index 7c34671..0e9060d 100644
--- a/Help/manual/cmake-generator-expressions.7.rst
+++ b/Help/manual/cmake-generator-expressions.7.rst
@@ -1125,23 +1125,23 @@ Output-Related Expressions
add_library(lib1 STATIC ...)
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
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::
The evaluation of this generator expression will use, for the following
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
:command:`link_libraries` or :command:`target_link_libraries` commands and
@@ -1170,7 +1170,7 @@ Output-Related Expressions
add_library(lib1 ...)
add_library(lib2 ...)
- target_link_libraries(lib2 PUBLIC $<LINK_LIBRARY:feature1,lib1>)
+ target_link_libraries(lib2 PUBLIC "$<LINK_LIBRARY:feature1,lib1>")
add_library(lib3 ...)
target_link_libraries(lib3 PRIVATE lib1 lib2)
diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst
index 5db622c..b38f56c 100644
--- a/Help/manual/cmake-variables.7.rst
+++ b/Help/manual/cmake-variables.7.rst
@@ -437,11 +437,11 @@ Variables that Control the Build
/variable/CMAKE_LANG_CPPCHECK
/variable/CMAKE_LANG_CPPLINT
/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_LINK_LIBRARY_FILE_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_VISIBILITY_PRESET
/variable/CMAKE_LIBRARY_OUTPUT_DIRECTORY
@@ -452,8 +452,8 @@ Variables that Control the Build
/variable/CMAKE_LINK_INTERFACE_LIBRARIES
/variable/CMAKE_LINK_LIBRARY_FILE_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_CHECK
/variable/CMAKE_MACOSX_BUNDLE
diff --git a/Help/prop_tgt/LINK_LIBRARY_OVERRIDE.rst b/Help/prop_tgt/LINK_LIBRARY_OVERRIDE.rst
index e9c76b0..81a2a4a 100644
--- a/Help/prop_tgt/LINK_LIBRARY_OVERRIDE.rst
+++ b/Help/prop_tgt/LINK_LIBRARY_OVERRIDE.rst
@@ -22,10 +22,10 @@ example:
.. code-block:: cmake
add_library(lib1 ...)
- target_link_libraries(lib1 PUBLIC $<LINK_LIBRARY:feature1,external>)
+ target_link_libraries(lib1 PUBLIC "$<LINK_LIBRARY:feature1,external>")
add_library(lib2 ...)
- target_link_libraries(lib2 PUBLIC $<LINK_LIBRARY:feature2,lib1>)
+ target_link_libraries(lib2 PUBLIC "$<LINK_LIBRARY:feature2,lib1>")
add_library(lib3 ...)
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.
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.
diff --git a/Help/prop_tgt/LINK_LIBRARY_OVERRIDE_LIBRARY.rst b/Help/prop_tgt/LINK_LIBRARY_OVERRIDE_LIBRARY.rst
index 58141c9..112f614 100644
--- a/Help/prop_tgt/LINK_LIBRARY_OVERRIDE_LIBRARY.rst
+++ b/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
add_library(lib1 ...)
- target_link_libraries(lib1 PUBLIC $<LINK_LIBRARY:feature1,external>)
+ target_link_libraries(lib1 PUBLIC "$<LINK_LIBRARY:feature1,external>")
add_library(lib2 ...)
- target_link_libraries(lib2 PUBLIC $<LINK_LIBRARY:feature2,lib1>)
+ target_link_libraries(lib2 PUBLIC "$<LINK_LIBRARY:feature2,lib1>")
add_library(lib3 ...)
target_link_libraries(lib3 PRIVATE lib1 lib2)
@@ -41,5 +41,5 @@ This property takes precedence over :prop_tgt:`LINK_LIBRARY_OVERRIDE`
target property.
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.
diff --git a/Help/release/dev/Genex-LINK_LIBRARY.rst b/Help/release/dev/Genex-LINK_LIBRARY.rst
index 3234acb..fe44dbc 100644
--- a/Help/release/dev/Genex-LINK_LIBRARY.rst
+++ b/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
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_<LIBRARY>` target properties are available
to resolve incompatible features.
diff --git a/Help/variable/CMAKE_LANG_LINK_USING_FEATURE.rst b/Help/variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE.rst
index 9d7f87a..45b8aa8 100644
--- a/Help/variable/CMAKE_LANG_LINK_USING_FEATURE.rst
+++ b/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
@@ -12,11 +12,11 @@ using :genex:`LINK_LIBRARY` generator expression.
Feature names defined in all uppercase are reserved to CMake.
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
^^^^^^^^^^^^^^^^^^^
diff --git a/Help/variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst b/Help/variable/CMAKE_LANG_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst
new file mode 100644
index 0000000..e595bc7
--- /dev/null
+++ b/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`.
diff --git a/Help/variable/CMAKE_LANG_LINK_USING_FEATURE_SUPPORTED.rst b/Help/variable/CMAKE_LANG_LINK_USING_FEATURE_SUPPORTED.rst
deleted file mode 100644
index 5794b15..0000000
--- a/Help/variable/CMAKE_LANG_LINK_USING_FEATURE_SUPPORTED.rst
+++ /dev/null
@@ -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`.
diff --git a/Help/variable/CMAKE_LINK_USING_FEATURE.rst b/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.rst
index 0c9cadc..eae60c5 100644
--- a/Help/variable/CMAKE_LINK_USING_FEATURE.rst
+++ b/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.rst
@@ -1,5 +1,5 @@
-CMAKE_LINK_USING_<FEATURE>
---------------------------
+CMAKE_LINK_LIBRARY_USING_<FEATURE>
+----------------------------------
.. versionadded:: 3.24
@@ -12,15 +12,16 @@ using :genex:`LINK_LIBRARY` generator expression.
Feature names defined in all uppercase are reserved to CMake.
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,
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
^^^^^^^^^^^^^^^^^^^
diff --git a/Help/variable/CMAKE_LINK_USING_FEATURE.txt b/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE.txt
index 92fc92d..ad393b0 100644
--- a/Help/variable/CMAKE_LINK_USING_FEATURE.txt
+++ b/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
- 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")
- 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")
- 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")
- set(CMAKE_C_LINK_USING_whole_archive "/WHOLEARCHIVE:<LIBRARY>")
+ set(CMAKE_C_LINK_LIBRARY_USING_whole_archive "/WHOLEARCHIVE:<LIBRARY>")
else()
# 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()
add_library(lib1 STATIC ...)
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
- $<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()
target_link_libraries(lib2 PRIVATE lib1 external)
endif()
@@ -95,14 +95,15 @@ library specified by path and by name. This constraint by be solved by using
.. code-block:: cmake
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()
add_library(lib SHARED ...)
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()
target_link_libraries(main PRIVATE lib external)
endif()
diff --git a/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst b/Help/variable/CMAKE_LINK_LIBRARY_USING_FEATURE_SUPPORTED.rst
new file mode 100644
index 0000000..42b75fc
--- /dev/null
+++ b/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``.
diff --git a/Help/variable/CMAKE_LINK_USING_FEATURE_SUPPORTED.rst b/Help/variable/CMAKE_LINK_USING_FEATURE_SUPPORTED.rst
deleted file mode 100644
index 31c3108..0000000
--- a/Help/variable/CMAKE_LINK_USING_FEATURE_SUPPORTED.rst
+++ /dev/null
@@ -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``.
diff --git a/Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt b/Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt
index d4fdf76..82c406a 100644
--- a/Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt
+++ b/Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt
@@ -23,9 +23,11 @@ compatible with it.
linker option ``-weak_framework``).
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
diff --git a/Modules/CMakeGenericSystem.cmake b/Modules/CMakeGenericSystem.cmake
index 9ae68c4..6e75fac 100644
--- a/Modules/CMakeGenericSystem.cmake
+++ b/Modules/CMakeGenericSystem.cmake
@@ -28,7 +28,7 @@ set(CMAKE_FIND_LIBRARY_SUFFIXES ".so" ".a")
# default option to link a library
# This feature is intended to be used in LINK_LIBRARY_OVERRIDE and
# 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_AUTOMOC_COMPILER_PREDEFINES ON)
diff --git a/Modules/Compiler/Clang-CUDA.cmake b/Modules/Compiler/Clang-CUDA.cmake
index 44eb35f..e85ec67 100644
--- a/Modules/Compiler/Clang-CUDA.cmake
+++ b/Modules/Compiler/Clang-CUDA.cmake
@@ -41,15 +41,15 @@ endif()
if(APPLE)
# 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()
diff --git a/Modules/Platform/Apple-Apple-Swift.cmake b/Modules/Platform/Apple-Apple-Swift.cmake
index 255411e..9f604e8 100644
--- a/Modules/Platform/Apple-Apple-Swift.cmake
+++ b/Modules/Platform/Apple-Apple-Swift.cmake
@@ -2,14 +2,14 @@ set(CMAKE_Swift_SYSROOT_FLAG "-sdk")
# 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)
diff --git a/Modules/Platform/Apple-NVIDIA-CUDA.cmake b/Modules/Platform/Apple-NVIDIA-CUDA.cmake
index ba669e1..0b8bbd9 100644
--- a/Modules/Platform/Apple-NVIDIA-CUDA.cmake
+++ b/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
-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)
diff --git a/Modules/Platform/Darwin.cmake b/Modules/Platform/Darwin.cmake
index d7b615c..74411e9 100644
--- a/Modules/Platform/Darwin.cmake
+++ b/Modules/Platform/Darwin.cmake
@@ -108,17 +108,17 @@ foreach(lang C CXX Fortran OBJC OBJCXX)
set(CMAKE_${lang}_FRAMEWORK_SEARCH_FLAG -F)
# 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()
# default to searching for frameworks first
diff --git a/Source/cmComputeLinkDepends.cxx b/Source/cmComputeLinkDepends.cxx
index e6073cb..d22a4f2 100644
--- a/Source/cmComputeLinkDepends.cxx
+++ b/Source/cmComputeLinkDepends.cxx
@@ -192,13 +192,14 @@ inline std::string ExtractFeature(std::string const& item)
bool IsFeatureSupported(cmMakefile* makefile, std::string const& linkLanguage,
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()) {
return true;
}
- featureSupported = cmStrCat("CMAKE_LINK_USING_", feature, "_SUPPORTED");
+ featureSupported =
+ cmStrCat("CMAKE_LINK_LIBRARY_USING_", feature, "_SUPPORTED");
return makefile->GetDefinition(featureSupported).IsOn();
}
}
@@ -650,9 +651,9 @@ void cmComputeLinkDepends::AddLinkEntries(int depender_index,
feature,
"', which is undefined or unsupported.\nDid you miss to "
"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());
}
}
diff --git a/Source/cmComputeLinkInformation.cxx b/Source/cmComputeLinkInformation.cxx
index cf8c9a1..9df2044 100644
--- a/Source/cmComputeLinkInformation.cxx
+++ b/Source/cmComputeLinkInformation.cxx
@@ -674,11 +674,11 @@ bool cmComputeLinkInformation::AddLibraryFeature(std::string const& feature)
}
auto featureName =
- cmStrCat("CMAKE_", this->LinkLanguage, "_LINK_USING_", feature);
+ cmStrCat("CMAKE_", this->LinkLanguage, "_LINK_LIBRARY_USING_", feature);
cmValue featureSupported =
this->Makefile->GetDefinition(cmStrCat(featureName, "_SUPPORTED"));
if (!featureSupported.IsOn()) {
- featureName = cmStrCat("CMAKE_LINK_USING_", feature);
+ featureName = cmStrCat("CMAKE_LINK_LIBRARY_USING_", feature);
featureSupported =
this->Makefile->GetDefinition(cmStrCat(featureName, "_SUPPORTED"));
}
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature2.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature2.cmake
index 15b5ca0..2c9efce 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature2.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature2.cmake
@@ -1,6 +1,6 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3-stderr.txt b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3-stderr.txt
index 69963fe..48cf51e 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3-stderr.txt
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3-stderr.txt
@@ -1,5 +1,5 @@
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
missing\) and cannot be used to link target 'lib'.
Call Stack \(most recent call first\):
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3.cmake
index 7960465..dab6a64 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature3.cmake
@@ -1,7 +1,7 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4-stderr.txt b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4-stderr.txt
index 7385115..c074dd0 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4-stderr.txt
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4-stderr.txt
@@ -1,5 +1,5 @@
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
missing\) and cannot be used to link target 'lib'.
Call Stack \(most recent call first\):
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4.cmake
index b40cfaf..6942f7c 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature4.cmake
@@ -1,7 +1,7 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5-stderr.txt b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5-stderr.txt
index 9894577..6604307 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5-stderr.txt
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5-stderr.txt
@@ -1,5 +1,5 @@
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
'lib'.
Call Stack \(most recent call first\):
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5.cmake
index 8ce1ecf..d0a827a 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature5.cmake
@@ -1,7 +1,7 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6-stderr.txt b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6-stderr.txt
index d8d0e19..9de4ffa 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6-stderr.txt
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6-stderr.txt
@@ -1,5 +1,5 @@
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
for "PATH{}" alternative\) and cannot be used to link target 'lib'.
Call Stack \(most recent call first\):
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6.cmake
index 7b72ad5..04a50f8 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature6.cmake
@@ -1,7 +1,7 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7-stderr.txt b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7-stderr.txt
index 2a498cd..9ea9936 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7-stderr.txt
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7-stderr.txt
@@ -1,5 +1,5 @@
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
for "NAME{}" alternative\) and cannot be used to link target 'lib'.
Call Stack \(most recent call first\):
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7.cmake
index 173f86c..9659811 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/bad-feature7.cmake
@@ -1,7 +1,7 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/compatible-features.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/compatible-features.cmake
index 2579a5f..fb88e36 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/compatible-features.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/compatible-features.cmake
@@ -1,10 +1,10 @@
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)
@@ -15,7 +15,7 @@ add_library(dep3 SHARED empty.c)
target_link_libraries(dep3 PUBLIC dep2)
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)
-target_link_libraries(lib2 PRIVATE $<LINK_LIBRARY:DEFAULT,dep2,dep3>)
+target_link_libraries(lib2 PRIVATE "$<LINK_LIBRARY:DEFAULT,dep2,dep3>")
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/feature-not-supported.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/feature-not-supported.cmake
index 0666227..0d952c2 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/feature-not-supported.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/feature-not-supported.cmake
@@ -1,7 +1,7 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features1.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features1.cmake
index d96b214..c230c4f 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features1.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features1.cmake
@@ -1,10 +1,10 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features2.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features2.cmake
index 1845fdb..d204ebd 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features2.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features2.cmake
@@ -1,10 +1,10 @@
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)
@@ -12,4 +12,4 @@ add_library(dep2 SHARED empty.c)
target_link_libraries(dep2 PUBLIC dep1)
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>")
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features3.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features3.cmake
index 1198d91..bf79e11 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features3.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/incompatible-features3.cmake
@@ -1,15 +1,15 @@
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(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)
target_link_libraries(lib PRIVATE dep1 dep2)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/library-ignored.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/library-ignored.cmake
index e000b97..a888bb8 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/library-ignored.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/library-ignored.cmake
@@ -1,7 +1,7 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/nested-compatible-features.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/nested-compatible-features.cmake
index d3b04e8..561aa09 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/nested-compatible-features.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/nested-compatible-features.cmake
@@ -1,7 +1,7 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/nested-incompatible-features.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/nested-incompatible-features.cmake
index 8565fa9..746638e 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/nested-incompatible-features.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/nested-incompatible-features.cmake
@@ -1,10 +1,10 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/only-targets.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/only-targets.cmake
index e29ad6c..8cec0c3 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/only-targets.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/only-targets.cmake
@@ -1,7 +1,7 @@
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)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/override-features3.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/override-features3.cmake
index 7f010fd..a1437e6 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/override-features3.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/override-features3.cmake
@@ -1,7 +1,7 @@
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")
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/override-features4.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/override-features4.cmake
index 405cc8a..f34f745 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/override-features4.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/override-features4.cmake
@@ -2,8 +2,8 @@
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_dep1 feat1)
diff --git a/Tests/RunCMake/GenEx-LINK_LIBRARY/target_link_options.cmake b/Tests/RunCMake/GenEx-LINK_LIBRARY/target_link_options.cmake
index 800124c..a989a53 100644
--- a/Tests/RunCMake/GenEx-LINK_LIBRARY/target_link_options.cmake
+++ b/Tests/RunCMake/GenEx-LINK_LIBRARY/target_link_options.cmake
@@ -1,4 +1,4 @@
enable_language(C)
add_library(empty SHARED empty.c)
-target_link_options(empty PRIVATE $<LINK_LIBRARY:FEAT>)
+target_link_options(empty PRIVATE "$<LINK_LIBRARY:FEAT>")
diff --git a/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/LINK_LIBRARY.cmake b/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/LINK_LIBRARY.cmake
index ced689e..1581611 100644
--- a/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/LINK_LIBRARY.cmake
+++ b/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/LINK_LIBRARY.cmake
@@ -12,28 +12,28 @@ endif()
add_library(base1 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)
@@ -77,28 +77,28 @@ target_link_libraries(LinkLibrary_mix_features2 PRIVATE "$<LINK_LIBRARY:feat2,ba
target_link_libraries(base3 INTERFACE other1)
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
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")
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")
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>")
# testing LINK_LIBRARY_OVERRIDE_<LIBRARY> property
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)
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_base1 feat2)
set_property(TARGET LinkLibrary_override_features4 PROPERTY LINK_LIBRARY_OVERRIDE_other1 feat2)
diff --git a/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/imported-target-stdout.txt b/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/imported-target-stdout.txt
index b3a86cc..981376a 100644
--- a/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/imported-target-stdout.txt
+++ b/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.
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\):
CMakeLists.txt:[0-9]+ \(include\)
This warning is for project developers. Use -Wno-dev to suppress it.
diff --git a/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/weak_library.cmake b/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/weak_library.cmake
index 135326e..45b4f66 100644
--- a/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/weak_library.cmake
+++ b/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/weak_library.cmake
@@ -2,11 +2,11 @@
enable_language(C)
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()
# 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()
add_library(lib SHARED base.c lib.c unref.c)
diff --git a/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/whole_archive.cmake b/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/whole_archive.cmake
index 5214565..93082a4 100644
--- a/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/whole_archive.cmake
+++ b/Tests/RunCMake/target_link_libraries-LINK_LIBRARY/whole_archive.cmake
@@ -1,27 +1,27 @@
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")
- 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")
execute_process(COMMAND "${CMAKE_LINKER}" --help
OUTPUT_VARIABLE linker_help
ERROR_VARIABLE linker_help)
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()
- 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()
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()
# 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()
add_library(base STATIC base.c unref.c)