Put targets on folders, if the IDE supports the feature.
authorOscar Fuentes <ofv@wanadoo.es>
Sun, 20 Feb 2011 22:06:10 +0000 (22:06 +0000)
committerOscar Fuentes <ofv@wanadoo.es>
Sun, 20 Feb 2011 22:06:10 +0000 (22:06 +0000)
Requires CMake 2.8.3 or newer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126092 91177308-0d34-0410-b5e6-96231b3b80d8

CMakeLists.txt
cmake/modules/AddLLVM.cmake
include/llvm/CMakeLists.txt
test/CMakeLists.txt
unittests/CMakeLists.txt
utils/FileCheck/CMakeLists.txt
utils/FileUpdate/CMakeLists.txt
utils/KillTheDoctor/CMakeLists.txt
utils/TableGen/CMakeLists.txt
utils/count/CMakeLists.txt
utils/not/CMakeLists.txt

index 0a5d5f39d85a0af3c529a221019ed491d7ebe98b..59a69b16e5a7e1c986b487d88706f87ae296ef3e 100644 (file)
@@ -12,6 +12,8 @@ set(CMAKE_MODULE_PATH
 
 set(PACKAGE_VERSION "2.9")
 
+set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+
 include(VersionFromVCS)
 
 option(LLVM_APPEND_VC_REV
index dfe67cded331a87ec3311b6116f29e17de6e5423..2a0d2a6808b46c387d9376bd40e41155563e3e61 100755 (executable)
@@ -25,6 +25,7 @@ macro(add_llvm_library name)
   if( CURRENT_LLVM_TARGET )
     add_dependencies(${name} ${CURRENT_LLVM_TARGET})
   endif()
+  set_target_properties(${name} PROPERTIES FOLDER "Libraries")
 endmacro(add_llvm_library name)
 
 
@@ -55,6 +56,8 @@ ${name} ignored.")
       LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
       ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
   endif()
+
+  set_target_properties(${name} PROPERTIES FOLDER "Loadable modules")
 endmacro(add_llvm_loadable_module name)
 
 
@@ -95,6 +98,7 @@ macro(add_llvm_tool name)
   if( LLVM_BUILD_TOOLS )
     install(TARGETS ${name} RUNTIME DESTINATION bin)
   endif()
+  set_target_properties(${name} PROPERTIES FOLDER "Tools")
 endmacro(add_llvm_tool name)
 
 
@@ -107,9 +111,16 @@ macro(add_llvm_example name)
   if( LLVM_BUILD_EXAMPLES )
     install(TARGETS ${name} RUNTIME DESTINATION examples)
   endif()
+  set_target_properties(${name} PROPERTIES FOLDER "Examples")
 endmacro(add_llvm_example name)
 
 
+macro(add_llvm_utility name)
+  add_llvm_executable(${name} ${ARGN})
+  set_target_properties(${name} PROPERTIES FOLDER "Utils")
+endmacro(add_llvm_utility name)
+
+
 macro(add_llvm_target target_name)
   if( TABLEGEN_OUTPUT )
     add_custom_target(${target_name}Table_gen
@@ -120,6 +131,7 @@ macro(add_llvm_target target_name)
   add_llvm_library(LLVM${target_name} ${ARGN} ${TABLEGEN_OUTPUT})
   if ( TABLEGEN_OUTPUT )
     add_dependencies(LLVM${target_name} ${target_name}Table_gen)
+    set_target_properties(${target_name}Table_gen PROPERTIES FOLDER "Tablegenning")
   endif (TABLEGEN_OUTPUT)
   set( CURRENT_LLVM_TARGET LLVM${target_name} )
 endmacro(add_llvm_target)
index 5e4f40881d00ed4caaff0caaa1520f2547f6f197..0c3ca1cd0c5c50ce36bf7d5a9e6438a95ce719e2 100644 (file)
@@ -4,6 +4,7 @@ tablegen(Intrinsics.gen -gen-intrinsic)
 
 add_custom_target(intrinsics_gen ALL
   DEPENDS ${llvm_builded_incs_dir}/Intrinsics.gen)
+set_target_properties(intrinsics_gen PROPERTIES FOLDER "Tablegenning")
 
 set(LLVM_COMMON_DEPENDS ${LLVM_COMMON_DEPENDS} intrinsics_gen PARENT_SCOPE)
 
@@ -16,4 +17,5 @@ if( MSVC_IDE OR XCODE )
     # We need at least one source file:
     ${LLVM_MAIN_SRC_DIR}/lib/Transforms/Hello/Hello.cpp
     ${headers})
+  set_target_properties(llvm_headers_do_not_build PROPERTIES FOLDER "Misc")
 endif()
index 302e141a3ed148b59afa6a7ad4841ca8608516f2..b696682c13fa0127350f2e57273c61e1ed41c529 100644 (file)
@@ -82,6 +82,7 @@ if(PYTHONINTERP_FOUND)
                 ${LIT_ARGS}
                 ${CMAKE_CURRENT_BINARY_DIR}
                 COMMENT "Running LLVM regression tests")
+  set_target_properties(check PROPERTIES FOLDER "Tests")
 
   add_custom_target(check.deps)
   add_dependencies(check check.deps)
@@ -91,5 +92,6 @@ if(PYTHONINTERP_FOUND)
                 llc lli llvm-ar llvm-as llvm-dis llvm-extract
                 llvm-ld llvm-link llvm-mc llvm-nm macho-dump opt
                 FileCheck count not)
+  set_target_properties(check.deps PROPERTIES FOLDER "Tests")
 
 endif()
index 5f09fa2483571f55ac02768be85ee61af67aa960..da4a6524bd978b4b2090b51d99a03b9743595bd1 100644 (file)
@@ -12,9 +12,11 @@ function(add_llvm_unittest test_dirname)
   endif()
   add_llvm_executable(${test_name}Tests ${ARGN})
   add_dependencies(UnitTests ${test_name}Tests)
+  set_target_properties(${test_name}Tests PROPERTIES FOLDER "Tests")
 endfunction()
 
 add_custom_target(UnitTests)
+set_target_properties(UnitTests PROPERTIES FOLDER "Tests")
 
 include_directories(${LLVM_MAIN_SRC_DIR}/utils/unittest/googletest/include)
 add_definitions(-DGTEST_HAS_RTTI=0)
index 54db453e70e8faef04d5dfa256052a425505db69..fa56f92a8f2877cfcd32bcef531aa292ab765fe8 100644 (file)
@@ -1,4 +1,4 @@
-add_executable(FileCheck
+add_llvm_utility(FileCheck
   FileCheck.cpp
   )
 
index 5dda49e0e4c5834b956b1e4ddbcc4dc0301ee350..655aaec3bc2a1cf29eff0a1073e4c28e3104df8d 100644 (file)
@@ -1,4 +1,4 @@
-add_executable(FileUpdate
+add_llvm_utility(FileUpdate
   FileUpdate.cpp
   )
 
index 99c671e74af906714709d342549e66243afec3b7..37c2b7ceb467a082d0ca5eba0851c7102cdde352 100644 (file)
@@ -1,4 +1,4 @@
-add_executable(KillTheDoctor
+add_llvm_utility(KillTheDoctor
   KillTheDoctor.cpp
   )
 
index e24314c3e0ecad3950012f4b395d12f1603ecc4c..514b1912992a7ee004e1ea0048b28033b4598291 100644 (file)
@@ -3,7 +3,7 @@ set(LLVM_REQUIRES_RTTI 1)
 
 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_TOOLS_BINARY_DIR})
 
-add_executable(tblgen
+add_llvm_utility(tblgen
   ARMDecoderEmitter.cpp
   AsmMatcherEmitter.cpp
   AsmWriterEmitter.cpp
index e124f61d2409fa06e93ad07eb496fa445f139efa..4e0d371334e473d643d791ae839ea51a953f0c7f 100644 (file)
@@ -1,3 +1,3 @@
-add_executable(count
+add_llvm_utility(count
   count.c
   )
index 155d2e3ae7e4f8f96cd1348f5b35be81b9ce5854..f4c02290d7d1d32229c734516824094e0c714b0d 100644 (file)
@@ -1,4 +1,4 @@
-add_executable(not
+add_llvm_utility(not
   not.cpp
   )