https://github.com/Meinersbur updated https://github.com/llvm/llvm-project/pull/89749
>From 82bac5ccd7d6d2b4e146ed4e383a8484e735606e Mon Sep 17 00:00:00 2001 From: Michael Kruse <llvm-proj...@meinersbur.de> Date: Tue, 23 Apr 2024 13:08:54 +0200 Subject: [PATCH 1/3] [mlir] Revise IDE folder structure --- mlir/CMakeLists.txt | 9 ++++++--- mlir/cmake/modules/AddMLIR.cmake | 5 +++-- mlir/docs/CMakeLists.txt | 1 + mlir/examples/toy/CMakeLists.txt | 2 +- mlir/examples/transform/CMakeLists.txt | 1 + mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt | 2 ++ mlir/lib/TableGen/CMakeLists.txt | 1 + mlir/test/CAPI/CMakeLists.txt | 2 ++ mlir/test/CMakeLists.txt | 2 +- mlir/tools/mlir-linalg-ods-gen/CMakeLists.txt | 1 + mlir/tools/mlir-pdll/CMakeLists.txt | 1 - mlir/tools/mlir-tblgen/CMakeLists.txt | 1 - mlir/unittests/CMakeLists.txt | 2 -- 13 files changed, 19 insertions(+), 11 deletions(-) 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) >From a2cb2bc38539e416eea81461b57e5916240f6d67 Mon Sep 17 00:00:00 2001 From: Michael Kruse <llvm-proj...@meinersbur.de> Date: Tue, 21 May 2024 22:13:08 +0200 Subject: [PATCH 2/3] Finetune mlir folders --- mlir/CMakeLists.txt | 2 +- mlir/cmake/modules/AddMLIR.cmake | 2 +- mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt | 4 ++-- mlir/tools/mlir-src-sharder/CMakeLists.txt | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/mlir/CMakeLists.txt b/mlir/CMakeLists.txt index 374bb82169025..82419b520e69c 100644 --- a/mlir/CMakeLists.txt +++ b/mlir/CMakeLists.txt @@ -264,7 +264,7 @@ endif() # Custom target to install all mlir libraries add_custom_target(mlir-libraries) -set_target_properties(mlir-libraries PROPERTIES FOLDER "MLIR/Install") +set_target_properties(mlir-libraries PROPERTIES FOLDER "MLIR/Meta") 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 6f6bfeb5ed3f6..a685277209598 100644 --- a/mlir/cmake/modules/AddMLIR.cmake +++ b/mlir/cmake/modules/AddMLIR.cmake @@ -210,8 +210,8 @@ function(add_mlir_doc doc_filename output_file output_directory command) ${GEN_DOC_FILE} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${output_file}.md) add_custom_target(${output_file}DocGen DEPENDS ${GEN_DOC_FILE}) + set_target_properties(${output_file}DocGen PROPERTIES FOLDER "MLIR/Tablegenning/Docs") 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 diff --git a/mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt b/mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt index d10273f749a5a..289c0e4bbdaf6 100644 --- a/mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt +++ b/mlir/include/mlir/Dialect/Linalg/IR/CMakeLists.txt @@ -23,7 +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") + set_target_properties(MLIR${output_file}YamlIncGen PROPERTIES FOLDER "MLIR/Tablegenning") list(APPEND LLVM_TARGET_DEPENDS ${GEN_ODS_FILE}) set(LLVM_TARGET_DEPENDS ${LLVM_TARGET_DEPENDS} PARENT_SCOPE) endfunction() @@ -41,7 +41,7 @@ add_custom_target(LinalgOdsGen DEPENDS MLIRLinalgNamedStructuredOpsYamlIncGen ) -set_target_properties(LinalgOdsGen PROPERTIES FOLDER "MLIR/Tablegenning/Targets") +set_target_properties(LinalgOdsGen PROPERTIES FOLDER "MLIR/Tablegenning") add_dependencies(mlir-headers LinalgOdsGen) add_mlir_dialect(LinalgOps linalg) diff --git a/mlir/tools/mlir-src-sharder/CMakeLists.txt b/mlir/tools/mlir-src-sharder/CMakeLists.txt index 4ef870b61124a..6f98bd15fc18c 100644 --- a/mlir/tools/mlir-src-sharder/CMakeLists.txt +++ b/mlir/tools/mlir-src-sharder/CMakeLists.txt @@ -8,7 +8,7 @@ add_tablegen(mlir-src-sharder MLIR_SRC_SHARDER ${LIBS} ) -set_target_properties(mlir-src-sharder PROPERTIES FOLDER "Tablegenning") +set_target_properties(mlir-src-sharder PROPERTIES FOLDER "MLIR/Tablegenning") target_link_libraries(mlir-src-sharder PRIVATE ${LIBS}) mlir_check_all_link_libraries(mlir-src-sharder) >From e4e2d470a8edc7c7599fecf0fda3fa5896aa0f29 Mon Sep 17 00:00:00 2001 From: Michael Kruse <llvm-proj...@meinersbur.de> Date: Wed, 22 May 2024 12:05:58 +0200 Subject: [PATCH 3/3] Use 'Metatargets' to avoid company name Requested in a sibling review --- mlir/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mlir/CMakeLists.txt b/mlir/CMakeLists.txt index 82419b520e69c..ad86cb4740b1d 100644 --- a/mlir/CMakeLists.txt +++ b/mlir/CMakeLists.txt @@ -264,7 +264,7 @@ endif() # Custom target to install all mlir libraries add_custom_target(mlir-libraries) -set_target_properties(mlir-libraries PROPERTIES FOLDER "MLIR/Meta") +set_target_properties(mlir-libraries PROPERTIES FOLDER "MLIR/Metatargets") if (NOT LLVM_ENABLE_IDE) add_llvm_install_targets(install-mlir-libraries _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits