[llvm-branch-commits] [polly] [polly] Revise IDE folder structure (PR #89752)
Michael Kruse via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Tue Apr 23 05:40:59 PDT 2024
https://github.com/Meinersbur created https://github.com/llvm/llvm-project/pull/89752
Reviewers of #89153 suggested to break up the patch into per-subproject patches. This is the Polly 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.
>From a85a17723d76371ccc8feb245c455d6aaf2c297f Mon Sep 17 00:00:00 2001
From: Michael Kruse <llvm-project at meinersbur.de>
Date: Tue, 23 Apr 2024 13:19:16 +0200
Subject: [PATCH] [polly] Revise IDE folder structure
---
polly/CMakeLists.txt | 5 +++--
polly/cmake/polly_macros.cmake | 2 +-
polly/docs/CMakeLists.txt | 1 +
polly/lib/CMakeLists.txt | 4 +---
polly/test/CMakeLists.txt | 7 ++-----
polly/unittests/CMakeLists.txt | 2 +-
6 files changed, 9 insertions(+), 12 deletions(-)
diff --git a/polly/CMakeLists.txt b/polly/CMakeLists.txt
index 5d0f2cd7f00ece..a0d1ab49e78379 100644
--- a/polly/CMakeLists.txt
+++ b/polly/CMakeLists.txt
@@ -4,6 +4,7 @@ if (NOT DEFINED LLVM_MAIN_SRC_DIR)
cmake_minimum_required(VERSION 3.20.0)
set(POLLY_STANDALONE_BUILD TRUE)
endif()
+set(LLVM_SUBPROJECT_TITLE "Polly")
# Must go below project(..)
include(GNUInstallDirs)
@@ -157,8 +158,8 @@ foreach (file IN LISTS files)
endforeach ()
add_custom_target(polly-check-format DEPENDS ${check_format_depends})
-set_target_properties(polly-check-format PROPERTIES FOLDER "Polly")
+set_target_properties(polly-check-format PROPERTIES FOLDER "Polly/Meta")
add_custom_target(polly-update-format DEPENDS ${update_format_depends})
-set_target_properties(polly-update-format PROPERTIES FOLDER "Polly")
+set_target_properties(polly-update-format PROPERTIES FOLDER "Polly/Meta")
diff --git a/polly/cmake/polly_macros.cmake b/polly/cmake/polly_macros.cmake
index df541eeccc4cb5..b1bd1e1b03cda8 100644
--- a/polly/cmake/polly_macros.cmake
+++ b/polly/cmake/polly_macros.cmake
@@ -21,7 +21,7 @@ macro(add_polly_library name)
set(libkind)
endif()
add_library( ${name} ${libkind} ${srcs} )
- set_target_properties(${name} PROPERTIES FOLDER "Polly")
+ set_target_properties(${name} PROPERTIES FOLDER "Polly/Libraries")
if( LLVM_COMMON_DEPENDS )
add_dependencies( ${name} ${LLVM_COMMON_DEPENDS} )
diff --git a/polly/docs/CMakeLists.txt b/polly/docs/CMakeLists.txt
index a1ef5ce5277f7a..2bd16e53c542f6 100644
--- a/polly/docs/CMakeLists.txt
+++ b/polly/docs/CMakeLists.txt
@@ -77,6 +77,7 @@ if (LLVM_ENABLE_DOXYGEN)
COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Generating polly doxygen documentation." VERBATIM)
+ set_target_properties(doxygen-polly PROPERTIES FOLDER "Polly/Docs")
if (LLVM_BUILD_DOCS)
add_dependencies(doxygen doxygen-polly)
diff --git a/polly/lib/CMakeLists.txt b/polly/lib/CMakeLists.txt
index 4557878e515e66..f18cdcd09cfca7 100644
--- a/polly/lib/CMakeLists.txt
+++ b/polly/lib/CMakeLists.txt
@@ -92,8 +92,6 @@ add_llvm_pass_plugin(Polly
LINK_COMPONENTS
${POLLY_COMPONENTS}
)
-set_target_properties(obj.Polly PROPERTIES FOLDER "Polly")
-set_target_properties(Polly PROPERTIES FOLDER "Polly")
if (MSVC_IDE OR XCODE)
# Configure source groups for Polly source files. By default, in the IDE there
@@ -120,7 +118,7 @@ if (WIN32 OR CYGWIN OR NOT LLVM_ENABLE_PIC)
# Add dummy target, either because loadable modules are not supported
# as on Windows or because PIC code has been disabled
add_custom_target(LLVMPolly)
- set_target_properties(LLVMPolly PROPERTIES FOLDER "Polly")
+ set_target_properties(LLVMPolly PROPERTIES FOLDER "Polly/Meta")
else ()
add_polly_loadable_module(LLVMPolly
Plugin/Polly.cpp
diff --git a/polly/test/CMakeLists.txt b/polly/test/CMakeLists.txt
index 81cee34a780d61..338c7dbfa1158c 100644
--- a/polly/test/CMakeLists.txt
+++ b/polly/test/CMakeLists.txt
@@ -1,7 +1,7 @@
set(LLVM_SHLIBEXT "${CMAKE_SHARED_MODULE_SUFFIX}")
add_custom_target(check-polly)
-set_target_properties(check-polly PROPERTIES FOLDER "Polly")
+set_target_properties(check-polly PROPERTIES FOLDER "Polly/Tests")
if(NOT LLVM_MAIN_SRC_DIR)
find_program(LLVM_OPT NAMES opt HINTS ${LLVM_TOOLS_BINARY_DIR})
@@ -64,7 +64,6 @@ add_lit_testsuite(check-polly-tests "Running polly regression tests"
polly_unit_site_config=${CMAKE_CURRENT_BINARY_DIR}/Unit/lit.site.cfg
DEPENDS ${POLLY_TEST_DEPS}
)
-set_target_properties(check-polly-tests PROPERTIES FOLDER "Polly")
add_dependencies(check-polly check-polly-tests)
configure_lit_site_cfg(
@@ -80,7 +79,6 @@ if (POLLY_GTEST_AVAIL)
EXCLUDE_FROM_CHECK_ALL
DEPENDS PollyUnitTests
)
- set_target_properties(check-polly-unittests PROPERTIES FOLDER "Polly")
endif ()
configure_file(
@@ -94,7 +92,6 @@ if (POLLY_BUNDLED_ISL)
EXCLUDE_FROM_CHECK_ALL
DEPENDS polly-isl-test
)
- set_target_properties(check-polly-isl PROPERTIES FOLDER "Polly")
endif (POLLY_BUNDLED_ISL)
# Run polly-check-format as part of polly-check only if we are compiling with
@@ -114,5 +111,5 @@ configure_file(
# Add a legacy target spelling: polly-test
add_custom_target(polly-test)
-set_target_properties(polly-test PROPERTIES FOLDER "Polly")
+set_target_properties(polly-test PROPERTIES FOLDER "Polly/Tests")
add_dependencies(polly-test check-polly)
diff --git a/polly/unittests/CMakeLists.txt b/polly/unittests/CMakeLists.txt
index 94b75449c30227..58dd5991043e25 100644
--- a/polly/unittests/CMakeLists.txt
+++ b/polly/unittests/CMakeLists.txt
@@ -14,7 +14,7 @@ function(add_polly_unittest test_name)
target_link_libraries(${test_name} PRIVATE gtest_main gtest)
add_dependencies(PollyUnitTests ${test_name})
- set_property(TARGET ${test_name} PROPERTY FOLDER "Polly")
+ set_property(TARGET ${test_name} PROPERTY FOLDER "Polly/Tests/Unittests")
endif()
if(LLVM_LINK_LLVM_DYLIB AND LLVM_POLLY_LINK_INTO_TOOLS)
More information about the llvm-branch-commits
mailing list