[Lldb-commits] [clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)
https://github.com/etcwilde created https://github.com/llvm/llvm-project/pull/89266 This reverts commit 8d468c132eed7ffe34d601b224220efd51655eb3. @ayermolo reports seeing the following error when the clang-resource-headers are a library instead of a custom target: ``` CMake Error at CMakeLists.txt:86 (get_property): get_property could not find TARGET clang-resource-headers. Perhaps it has not yet been created. ``` I don't see this line in the LLVM repository, and I'm not sure how it worked as a custom target since this change doesn't affect whether or not the CMake target is generated, nor does it impact the order that targets are created in. >From 9b16756a69ddbce1e586535e931f7c2b923ff2ba Mon Sep 17 00:00:00 2001 From: Evan Wilde Date: Thu, 18 Apr 2024 09:58:52 -0700 Subject: [PATCH 1/2] Revert "NFC: Make clang resource headers an interface library (#88317)" This reverts commit 8d468c132eed7ffe34d601b224220efd51655eb3. --- clang/lib/Headers/CMakeLists.txt | 8 ++-- 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/clang/lib/Headers/CMakeLists.txt b/clang/lib/Headers/CMakeLists.txt index e6ae4e19e81db9..97104ccd8db59c 100644 --- a/clang/lib/Headers/CMakeLists.txt +++ b/clang/lib/Headers/CMakeLists.txt @@ -437,14 +437,14 @@ foreach( f ${generated_files} ) endforeach( f ) function(add_header_target target_name file_list) - add_library(${target_name} INTERFACE ${file_list}) + add_custom_target(${target_name} DEPENDS ${file_list}) set_target_properties(${target_name} PROPERTIES FOLDER "Misc" RUNTIME_OUTPUT_DIRECTORY "${output_dir}") endfunction() # The catch-all clang-resource-headers target -add_library(clang-resource-headers INTERFACE ${out_files}) +add_custom_target("clang-resource-headers" ALL DEPENDS ${out_files}) set_target_properties("clang-resource-headers" PROPERTIES FOLDER "Misc" RUNTIME_OUTPUT_DIRECTORY "${output_dir}") @@ -501,10 +501,6 @@ add_header_target("windows-resource-headers" ${windows_only_files}) add_header_target("utility-resource-headers" ${utility_files}) get_clang_resource_dir(header_install_dir SUBDIR include) -target_include_directories(clang-resource-headers INTERFACE - $ - $) -set_property(GLOBAL APPEND PROPERTY CLANG_EXPORTS clang-resource-headers) # # Install rules for the catch-all clang-resource-headers target >From 216f7532bc9160634a338f1ff09c06b911f1ff53 Mon Sep 17 00:00:00 2001 From: Evan Wilde Date: Thu, 18 Apr 2024 09:59:16 -0700 Subject: [PATCH 2/2] Revert "[lldb] Fix the standalone Xcode build after #88317" This reverts commit a855eea7fe86ef09a87f6251b3b711b821ae32bf. --- lldb/cmake/modules/LLDBFramework.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lldb/cmake/modules/LLDBFramework.cmake b/lldb/cmake/modules/LLDBFramework.cmake index f915839f6b45a5..81fc596ef4244e 100644 --- a/lldb/cmake/modules/LLDBFramework.cmake +++ b/lldb/cmake/modules/LLDBFramework.cmake @@ -119,7 +119,7 @@ add_custom_command(TARGET liblldb POST_BUILD if(NOT APPLE_EMBEDDED) if (TARGET clang-resource-headers) add_dependencies(liblldb clang-resource-headers) -set(clang_resource_headers_dir $) +set(clang_resource_headers_dir $) else() set(clang_resource_headers_dir ${LLDB_EXTERNAL_CLANG_RESOURCE_DIR}/include) if(NOT EXISTS ${clang_resource_headers_dir}) ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)
llvmbot wrote: @llvm/pr-subscribers-clang Author: Evan Wilde (etcwilde) Changes This reverts commit 8d468c132eed7ffe34d601b224220efd51655eb3. @ayermolo reports seeing the following error when the clang-resource-headers are a library instead of a custom target: ``` CMake Error at CMakeLists.txt:86 (get_property): get_property could not find TARGET clang-resource-headers. Perhaps it has not yet been created. ``` I don't see this line in the LLVM repository, and I'm not sure how it worked as a custom target since this change doesn't affect whether or not the CMake target is generated, nor does it impact the order that targets are created in. --- Full diff: https://github.com/llvm/llvm-project/pull/89266.diff 2 Files Affected: - (modified) clang/lib/Headers/CMakeLists.txt (+2-6) - (modified) lldb/cmake/modules/LLDBFramework.cmake (+1-1) ``diff diff --git a/clang/lib/Headers/CMakeLists.txt b/clang/lib/Headers/CMakeLists.txt index e6ae4e19e81db9..97104ccd8db59c 100644 --- a/clang/lib/Headers/CMakeLists.txt +++ b/clang/lib/Headers/CMakeLists.txt @@ -437,14 +437,14 @@ foreach( f ${generated_files} ) endforeach( f ) function(add_header_target target_name file_list) - add_library(${target_name} INTERFACE ${file_list}) + add_custom_target(${target_name} DEPENDS ${file_list}) set_target_properties(${target_name} PROPERTIES FOLDER "Misc" RUNTIME_OUTPUT_DIRECTORY "${output_dir}") endfunction() # The catch-all clang-resource-headers target -add_library(clang-resource-headers INTERFACE ${out_files}) +add_custom_target("clang-resource-headers" ALL DEPENDS ${out_files}) set_target_properties("clang-resource-headers" PROPERTIES FOLDER "Misc" RUNTIME_OUTPUT_DIRECTORY "${output_dir}") @@ -501,10 +501,6 @@ add_header_target("windows-resource-headers" ${windows_only_files}) add_header_target("utility-resource-headers" ${utility_files}) get_clang_resource_dir(header_install_dir SUBDIR include) -target_include_directories(clang-resource-headers INTERFACE - $ - $) -set_property(GLOBAL APPEND PROPERTY CLANG_EXPORTS clang-resource-headers) # # Install rules for the catch-all clang-resource-headers target diff --git a/lldb/cmake/modules/LLDBFramework.cmake b/lldb/cmake/modules/LLDBFramework.cmake index f915839f6b45a5..81fc596ef4244e 100644 --- a/lldb/cmake/modules/LLDBFramework.cmake +++ b/lldb/cmake/modules/LLDBFramework.cmake @@ -119,7 +119,7 @@ add_custom_command(TARGET liblldb POST_BUILD if(NOT APPLE_EMBEDDED) if (TARGET clang-resource-headers) add_dependencies(liblldb clang-resource-headers) -set(clang_resource_headers_dir $) +set(clang_resource_headers_dir $) else() set(clang_resource_headers_dir ${LLDB_EXTERNAL_CLANG_RESOURCE_DIR}/include) if(NOT EXISTS ${clang_resource_headers_dir}) `` https://github.com/llvm/llvm-project/pull/89266 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)
llvmbot wrote: @llvm/pr-subscribers-lldb @llvm/pr-subscribers-backend-x86 Author: Evan Wilde (etcwilde) Changes This reverts commit 8d468c132eed7ffe34d601b224220efd51655eb3. @ayermolo reports seeing the following error when the clang-resource-headers are a library instead of a custom target: ``` CMake Error at CMakeLists.txt:86 (get_property): get_property could not find TARGET clang-resource-headers. Perhaps it has not yet been created. ``` I don't see this line in the LLVM repository, and I'm not sure how it worked as a custom target since this change doesn't affect whether or not the CMake target is generated, nor does it impact the order that targets are created in. --- Full diff: https://github.com/llvm/llvm-project/pull/89266.diff 2 Files Affected: - (modified) clang/lib/Headers/CMakeLists.txt (+2-6) - (modified) lldb/cmake/modules/LLDBFramework.cmake (+1-1) ``diff diff --git a/clang/lib/Headers/CMakeLists.txt b/clang/lib/Headers/CMakeLists.txt index e6ae4e19e81db9..97104ccd8db59c 100644 --- a/clang/lib/Headers/CMakeLists.txt +++ b/clang/lib/Headers/CMakeLists.txt @@ -437,14 +437,14 @@ foreach( f ${generated_files} ) endforeach( f ) function(add_header_target target_name file_list) - add_library(${target_name} INTERFACE ${file_list}) + add_custom_target(${target_name} DEPENDS ${file_list}) set_target_properties(${target_name} PROPERTIES FOLDER "Misc" RUNTIME_OUTPUT_DIRECTORY "${output_dir}") endfunction() # The catch-all clang-resource-headers target -add_library(clang-resource-headers INTERFACE ${out_files}) +add_custom_target("clang-resource-headers" ALL DEPENDS ${out_files}) set_target_properties("clang-resource-headers" PROPERTIES FOLDER "Misc" RUNTIME_OUTPUT_DIRECTORY "${output_dir}") @@ -501,10 +501,6 @@ add_header_target("windows-resource-headers" ${windows_only_files}) add_header_target("utility-resource-headers" ${utility_files}) get_clang_resource_dir(header_install_dir SUBDIR include) -target_include_directories(clang-resource-headers INTERFACE - $ - $) -set_property(GLOBAL APPEND PROPERTY CLANG_EXPORTS clang-resource-headers) # # Install rules for the catch-all clang-resource-headers target diff --git a/lldb/cmake/modules/LLDBFramework.cmake b/lldb/cmake/modules/LLDBFramework.cmake index f915839f6b45a5..81fc596ef4244e 100644 --- a/lldb/cmake/modules/LLDBFramework.cmake +++ b/lldb/cmake/modules/LLDBFramework.cmake @@ -119,7 +119,7 @@ add_custom_command(TARGET liblldb POST_BUILD if(NOT APPLE_EMBEDDED) if (TARGET clang-resource-headers) add_dependencies(liblldb clang-resource-headers) -set(clang_resource_headers_dir $) +set(clang_resource_headers_dir $) else() set(clang_resource_headers_dir ${LLDB_EXTERNAL_CLANG_RESOURCE_DIR}/include) if(NOT EXISTS ${clang_resource_headers_dir}) `` https://github.com/llvm/llvm-project/pull/89266 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)
etcwilde wrote: @ayermolo, one idea might be to see if `clang-resource-headers` is in the install distribution list? I'm not seeing a matching `get_property` in a CMakeLists.txt that matches the above error exactly, so I'm not sure how to reproduce this or how you're picking up the clang-resource-headers target. https://github.com/llvm/llvm-project/pull/89266 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)
https://github.com/compnerd approved this pull request. Approving it in case it needs to be merged, but I think that we should try to determine how it is breaking. This change feels like it should be correct and is a pretty good cleanup, so I would prefer that fix forward rather than revert. https://github.com/llvm/llvm-project/pull/89266 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)
ayermolo wrote: Thanks. It's failing internally in our automatic multi stage build. Trying to dig into it as part of my oncall. :) https://github.com/llvm/llvm-project/pull/89266 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)
ayermolo wrote: Fixed our internal foobar yesterday. Can close this. https://github.com/llvm/llvm-project/pull/89266 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)
etcwilde wrote: Great, glad to hear that you figured out what was happening. I wasn't sure how the target would end up in the clang-export list and not be defined since the bit of code that adds it to the clang-export list isn't conditionalized any differently than the creation of the target itself. https://github.com/llvm/llvm-project/pull/89266 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
[Lldb-commits] [clang] [lldb] Revert "NFC: Make clang resource headers an interface library (#88317)" (PR #89266)
https://github.com/etcwilde closed https://github.com/llvm/llvm-project/pull/89266 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits