llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-mlir @llvm/pr-subscribers-mlir-core Author: Michael Kruse (Meinersbur) <details> <summary>Changes</summary> Reviewers of #<!-- -->89153 suggested to break up the patch into per-subproject patches. This is the MLIR part. See #<!-- -->89153 for the entire series and motivation. Update the folder titles for targets in the monorepository that have not seen taken care of for some time. These are the folders that targets are organized in Visual Studio and XCode (`set_property(TARGET <target> PROPERTY FOLDER "<title>")`) when using the respective CMake's IDE generator. * Ensure that every target is in a folder * Use a folder hierarchy with each LLVM subproject as a top-level folder * Use consistent folder names between subprojects * When using target-creating functions from AddLLVM.cmake, automatically deduce the folder. This reduces the number of `set_property`/`set_target_property`, but are still necessary when `add_custom_target`, `add_executable`, `add_library`, etc. are used. A LLVM_SUBPROJECT_TITLE definition is used for that in each subproject's root CMakeLists.txt. --- Full diff: https://github.com/llvm/llvm-project/pull/89749.diff 13 Files Affected: - (modified) mlir/CMakeLists.txt (+6-3) - (modified) mlir/cmake/modules/AddMLIR.cmake (+3-2) - (modified) mlir/docs/CMakeLists.txt (+1) - (modified) mlir/examples/toy/CMakeLists.txt (+1-1) - (modified) mlir/examples/transform/CMakeLists.txt (+1) - (modified) mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt (+2) - (modified) mlir/lib/TableGen/CMakeLists.txt (+1) - (modified) mlir/test/CAPI/CMakeLists.txt (+2) - (modified) mlir/test/CMakeLists.txt (+1-1) - (modified) mlir/tools/mlir-linalg-ods-gen/CMakeLists.txt (+1) - (modified) mlir/tools/mlir-pdll/CMakeLists.txt (-1) - (modified) mlir/tools/mlir-tblgen/CMakeLists.txt (-1) - (modified) mlir/unittests/CMakeLists.txt (-2) ``````````diff diff --git a/mlir/CMakeLists.txt b/mlir/CMakeLists.txt index 5c4301af040b4..0ff6658f831f5 100644 --- a/mlir/CMakeLists.txt +++ b/mlir/CMakeLists.txt @@ -1,5 +1,6 @@ # MLIR project. cmake_minimum_required(VERSION 3.20.0) +set(LLVM_SUBPROJECT_TITLE "MLIR") if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS) set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake) @@ -96,12 +97,13 @@ endif() # tablegen'd targets. # mlir-generic-headers are dialect-independent. add_custom_target(mlir-generic-headers) -set_target_properties(mlir-generic-headers PROPERTIES FOLDER "Misc") +set_target_properties(mlir-generic-headers PROPERTIES FOLDER "MLIR/Resources") # mlir-headers may be dialect-dependent. add_custom_target(mlir-headers) -set_target_properties(mlir-headers PROPERTIES FOLDER "Misc") +set_target_properties(mlir-headers PROPERTIES FOLDER "MLIR/Resources") add_dependencies(mlir-headers mlir-generic-headers) add_custom_target(mlir-doc) +set_target_properties(mlir-doc PROPERTIES FOLDER "MLIR/Docs") # Only enable execution engine if the native target is available. if(${LLVM_NATIVE_ARCH} IN_LIST LLVM_TARGETS_TO_BUILD) @@ -198,6 +200,7 @@ add_subdirectory(lib/CAPI) if (MLIR_INCLUDE_TESTS) add_definitions(-DMLIR_INCLUDE_TESTS) add_custom_target(MLIRUnitTests) + set_target_properties(MLIRUnitTests PROPERTIES FOLDER "MLIR/Tests") if (EXISTS ${LLVM_THIRD_PARTY_DIR}/unittest/googletest/include/gtest/gtest.h) add_subdirectory(unittests) else() @@ -258,7 +261,7 @@ endif() # Custom target to install all mlir libraries add_custom_target(mlir-libraries) -set_target_properties(mlir-libraries PROPERTIES FOLDER "Misc") +set_target_properties(mlir-libraries PROPERTIES FOLDER "MLIR/Install") if (NOT LLVM_ENABLE_IDE) add_llvm_install_targets(install-mlir-libraries diff --git a/mlir/cmake/modules/AddMLIR.cmake b/mlir/cmake/modules/AddMLIR.cmake index 1d2ed748bc2f1..5a9a5b799763a 100644 --- a/mlir/cmake/modules/AddMLIR.cmake +++ b/mlir/cmake/modules/AddMLIR.cmake @@ -173,6 +173,7 @@ function(add_mlir_doc doc_filename output_file output_directory command) DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${output_file}.md) add_custom_target(${output_file}DocGen DEPENDS ${GEN_DOC_FILE}) add_dependencies(mlir-doc ${output_file}DocGen) + set_target_properties(${output_file}DocGen PROPERTIES FOLDER "MLIR/Docs") endfunction() # Sets ${srcs} to contain the list of additional headers for the target. Extra @@ -252,7 +253,7 @@ function(add_mlir_example_library name) list(APPEND ARG_DEPENDS mlir-generic-headers) llvm_add_library(${name} ${LIBTYPE} ${ARG_UNPARSED_ARGUMENTS} ${srcs} DEPENDS ${ARG_DEPENDS} LINK_COMPONENTS ${ARG_LINK_COMPONENTS} LINK_LIBS ${ARG_LINK_LIBS}) - set_target_properties(${name} PROPERTIES FOLDER "Examples") + set_target_properties(${name} PROPERTIES FOLDER "MLIR/Examples") if (LLVM_BUILD_EXAMPLES AND NOT ${ARG_DISABLE_INSTALL}) add_mlir_library_install(${name}) else() @@ -329,7 +330,7 @@ function(add_mlir_library name) # Add empty "phony" target add_custom_target(${name}) endif() - set_target_properties(${name} PROPERTIES FOLDER "MLIR libraries") + set_target_properties(${name} PROPERTIES FOLDER "MLIR/Libraries") # Setup aggregate. if(ARG_ENABLE_AGGREGATION) diff --git a/mlir/docs/CMakeLists.txt b/mlir/docs/CMakeLists.txt index 36cd3f9983881..43192569847cf 100644 --- a/mlir/docs/CMakeLists.txt +++ b/mlir/docs/CMakeLists.txt @@ -78,6 +78,7 @@ if (LLVM_ENABLE_DOXYGEN) COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Generating mlir doxygen documentation." VERBATIM) + set_target_properties(doxygen-mlir PROPERTIES FOLDER "MLIR/Docs") if (LLVM_BUILD_DOCS) add_dependencies(doxygen doxygen-mlir) diff --git a/mlir/examples/toy/CMakeLists.txt b/mlir/examples/toy/CMakeLists.txt index 56002b1ad2e27..403236a552028 100644 --- a/mlir/examples/toy/CMakeLists.txt +++ b/mlir/examples/toy/CMakeLists.txt @@ -1,5 +1,5 @@ add_custom_target(Toy) -set_target_properties(Toy PROPERTIES FOLDER Examples) +set_target_properties(Toy PROPERTIES FOLDER "MLIR/Examples") macro(add_toy_chapter name) add_dependencies(Toy ${name}) diff --git a/mlir/examples/transform/CMakeLists.txt b/mlir/examples/transform/CMakeLists.txt index b688aa7461d6f..2b4208e4c0f72 100644 --- a/mlir/examples/transform/CMakeLists.txt +++ b/mlir/examples/transform/CMakeLists.txt @@ -1,4 +1,5 @@ add_custom_target(TransformExample) +set_target_properties(TransformExample PROPERTIES FOLDER "MLIR/Examples") add_subdirectory(Ch2) add_subdirectory(Ch3) diff --git a/mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt b/mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt index f5d48b2ebcefe..d10273f749a5a 100644 --- a/mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt +++ b/mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt @@ -23,6 +23,7 @@ function(add_linalg_ods_yaml_gen yaml_ast_file output_file) ${MLIR_LINALG_ODS_YAML_GEN_EXE} ${MLIR_LINALG_ODS_YAML_GEN_TARGET} ${GEN_ODS_FILE} ${GEN_CPP_FILE}) + set_target_properties(MLIR${output_file}YamlIncGen PROPERTIES FOLDER "MLIR/Tablegenning/Targets") list(APPEND LLVM_TARGET_DEPENDS ${GEN_ODS_FILE}) set(LLVM_TARGET_DEPENDS ${LLVM_TARGET_DEPENDS} PARENT_SCOPE) endfunction() @@ -40,6 +41,7 @@ add_custom_target(LinalgOdsGen DEPENDS MLIRLinalgNamedStructuredOpsYamlIncGen ) +set_target_properties(LinalgOdsGen PROPERTIES FOLDER "MLIR/Tablegenning/Targets") add_dependencies(mlir-headers LinalgOdsGen) add_mlir_dialect(LinalgOps linalg) diff --git a/mlir/lib/TableGen/CMakeLists.txt b/mlir/lib/TableGen/CMakeLists.txt index 61e14feb6dc12..c4104e644147c 100644 --- a/mlir/lib/TableGen/CMakeLists.txt +++ b/mlir/lib/TableGen/CMakeLists.txt @@ -40,6 +40,7 @@ llvm_add_library(MLIRTableGen STATIC ${MLIR_MAIN_INCLUDE_DIR}/mlir/TableGen ${MLIR_MAIN_INCLUDE_DIR}/mlir/Support ) +set_target_properties(MLIRTableGen PROPERTIES FOLDER "MLIR/Tablegenning") mlir_check_all_link_libraries(MLIRTableGen) diff --git a/mlir/test/CAPI/CMakeLists.txt b/mlir/test/CAPI/CMakeLists.txt index b9cd63ef7c673..065bf636106ba 100644 --- a/mlir/test/CAPI/CMakeLists.txt +++ b/mlir/test/CAPI/CMakeLists.txt @@ -9,6 +9,8 @@ function(_add_capi_test_executable name) add_llvm_executable(${name} PARTIAL_SOURCES_INTENDED ${ARG_UNPARSED_ARGUMENTS}) + set_target_properties(${name} PROPERTIES FOLDER "MLIR/Tests") + llvm_update_compile_flags(${name}) if(MLIR_BUILD_MLIR_C_DYLIB) target_link_libraries(${name} PRIVATE diff --git a/mlir/test/CMakeLists.txt b/mlir/test/CMakeLists.txt index 5319a9cb33e00..a1ac404d9288c 100644 --- a/mlir/test/CMakeLists.txt +++ b/mlir/test/CMakeLists.txt @@ -216,12 +216,12 @@ endif() add_custom_target(check-mlir-build-only DEPENDS ${MLIR_TEST_DEPENDS} ) +set_target_properties(check-mlir-build-only PROPERTIES FOLDER "MLIR/Tests") add_lit_testsuite(check-mlir "Running the MLIR regression tests" ${CMAKE_CURRENT_BINARY_DIR} DEPENDS ${MLIR_TEST_DEPENDS} ) -set_target_properties(check-mlir PROPERTIES FOLDER "Tests") add_lit_testsuites(MLIR ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${MLIR_TEST_DEPENDS} diff --git a/mlir/tools/mlir-linalg-ods-gen/CMakeLists.txt b/mlir/tools/mlir-linalg-ods-gen/CMakeLists.txt index 787a0bb35d7b1..ef5ce8882ec76 100644 --- a/mlir/tools/mlir-linalg-ods-gen/CMakeLists.txt +++ b/mlir/tools/mlir-linalg-ods-gen/CMakeLists.txt @@ -18,6 +18,7 @@ setup_host_tool(mlir-linalg-ods-yaml-gen MLIR_LINALG_ODS_YAML_GEN MLIR_LINALG_OD if(NOT ${MLIR_LINALG_ODS_YAML_GEN_EXE} STREQUAL "mlir-linalg-ods-yaml-gen") add_custom_target(mlir-linalg-ods-yaml-gen-host DEPENDS ${MLIR_LINALG_ODS_YAML_GEN_EXE}) + set_target_properties(mlir-linalg-ods-yaml-gen-host PROPERTIES FOLDER "MLIR/Tablegenning") if(NOT LLVM_BUILD_UTILS) set_target_properties(mlir-linalg-ods-yaml-gen PROPERTIES EXCLUDE_FROM_ALL ON) diff --git a/mlir/tools/mlir-pdll/CMakeLists.txt b/mlir/tools/mlir-pdll/CMakeLists.txt index 67b65d7ad5723..35b8870a1b1a6 100644 --- a/mlir/tools/mlir-pdll/CMakeLists.txt +++ b/mlir/tools/mlir-pdll/CMakeLists.txt @@ -21,7 +21,6 @@ add_tablegen(mlir-pdll MLIR_PDLL ${LIBS} ) -set_target_properties(mlir-pdll PROPERTIES FOLDER "Tablegenning") target_link_libraries(mlir-pdll PRIVATE ${LIBS}) mlir_check_all_link_libraries(mlir-pdll) diff --git a/mlir/tools/mlir-tblgen/CMakeLists.txt b/mlir/tools/mlir-tblgen/CMakeLists.txt index f2c5e4b3f87af..20a200bc35408 100644 --- a/mlir/tools/mlir-tblgen/CMakeLists.txt +++ b/mlir/tools/mlir-tblgen/CMakeLists.txt @@ -33,7 +33,6 @@ add_tablegen(mlir-tblgen MLIR SPIRVUtilsGen.cpp ) -set_target_properties(mlir-tblgen PROPERTIES FOLDER "Tablegenning") target_link_libraries(mlir-tblgen PRIVATE MLIRTblgenLib) diff --git a/mlir/unittests/CMakeLists.txt b/mlir/unittests/CMakeLists.txt index 6fad249a0b2fb..89332bce5fe05 100644 --- a/mlir/unittests/CMakeLists.txt +++ b/mlir/unittests/CMakeLists.txt @@ -1,5 +1,3 @@ -set_target_properties(MLIRUnitTests PROPERTIES FOLDER "MLIR Tests") - # To silence warning caused by Wundef. add_definitions(-DGTEST_NO_LLVM_SUPPORT=0) `````````` </details> https://github.com/llvm/llvm-project/pull/89749 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits