From b209c41dfa9bf281612d3f4eeff7e4fd5b3e134e Mon Sep 17 00:00:00 2001 From: Taylor Sasser Date: Tue, 14 Oct 2025 12:42:33 -0400 Subject: [PATCH] export(TARGETS): Restore EXPORT_LINK_INTERFACE_LIBRARIES Refactoring in commit 998495cb49 (cmExportCommand: Port to cmSubcommandTable, 2025-07-15) accidentally removed support for the `EXPORT_LINK_INTERFACE_LIBRARIES` argument. Restore it with a test. Fixes: #27302 --- Source/cmExportCommand.cxx | 3 ++- Tests/RunCMake/export/ExportLinkInterfaces.cmake | 6 ++++++ Tests/RunCMake/export/RunCMakeTest.cmake | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 Tests/RunCMake/export/ExportLinkInterfaces.cmake diff --git a/Source/cmExportCommand.cxx b/Source/cmExportCommand.cxx index fdd6418ca1..6a7a67f879 100644 --- a/Source/cmExportCommand.cxx +++ b/Source/cmExportCommand.cxx @@ -72,7 +72,8 @@ static bool HandleTargetsMode(std::vector const& args, .Bind("CXX_MODULES_DIRECTORY"_s, &Arguments::CxxModulesDirectory) .Bind("TARGETS"_s, &Arguments::Targets) .Bind("APPEND"_s, &Arguments::Append) - .Bind("ANDROID_MK"_s, &Arguments::AndroidMKFile); + .Bind("ANDROID_MK"_s, &Arguments::AndroidMKFile) + .Bind("EXPORT_LINK_INTERFACE_LIBRARIES"_s, &Arguments::ExportOld); std::vector unknownArgs; Arguments arguments = parser.Parse(args, &unknownArgs); diff --git a/Tests/RunCMake/export/ExportLinkInterfaces.cmake b/Tests/RunCMake/export/ExportLinkInterfaces.cmake new file mode 100644 index 0000000000..876d7d6cc4 --- /dev/null +++ b/Tests/RunCMake/export/ExportLinkInterfaces.cmake @@ -0,0 +1,6 @@ +enable_language(CXX) +add_library(foo empty.cpp) + +export(TARGETS foo + EXPORT_LINK_INTERFACE_LIBRARIES +) diff --git a/Tests/RunCMake/export/RunCMakeTest.cmake b/Tests/RunCMake/export/RunCMakeTest.cmake index a638f92358..62c9a13a69 100644 --- a/Tests/RunCMake/export/RunCMakeTest.cmake +++ b/Tests/RunCMake/export/RunCMakeTest.cmake @@ -13,6 +13,7 @@ run_cmake(ForbiddenToExportInterfaceProperties) run_cmake(ForbiddenToExportImportedProperties) run_cmake(ForbiddenToExportPropertyWithGenExp) run_cmake(ExportPropertiesUndefined) +run_cmake(ExportLinkInterfaces) run_cmake(DependOnNotExport) run_cmake(DependOnDoubleExport) run_cmake(DependOnDifferentSetExport)