[PATCH] D40219: [CMake] Add LLVM_ENABLE_IDE option to better process sources for IDE's

Eric Fiselier via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 11 20:00:43 PST 2018


EricWF updated this revision to Diff 129574.
EricWF marked an inline comment as done.
EricWF added a comment.

- Address inline comments.


https://reviews.llvm.org/D40219

Files:
  cmake/modules/HandleLLVMOptions.cmake
  cmake/modules/LLVMProcessSources.cmake


Index: cmake/modules/LLVMProcessSources.cmake
===================================================================
--- cmake/modules/LLVMProcessSources.cmake
+++ cmake/modules/LLVMProcessSources.cmake
@@ -52,7 +52,7 @@
   cmake_parse_arguments(ARG "" "" "ADDITIONAL_HEADERS;ADDITIONAL_HEADER_DIRS" ${ARGN})
   set(sources ${ARG_UNPARSED_ARGUMENTS})
   llvm_check_source_file_list( ${sources} )
-  if( MSVC_IDE OR XCODE )
+  if( LLVM_ENABLE_IDE )
     # This adds .td and .h files to the Visual Studio solution:
     add_td_sources(sources)
     find_all_header_files(hdrs "${ARG_ADDITIONAL_HEADER_DIRS}")
Index: cmake/modules/HandleLLVMOptions.cmake
===================================================================
--- cmake/modules/HandleLLVMOptions.cmake
+++ cmake/modules/HandleLLVMOptions.cmake
@@ -849,6 +849,13 @@
   set(LLVM_ENABLE_PLUGINS ON)
 endif()
 
+set(LLVM_ENABLE_IDE_default OFF)
+if (XCODE OR MSVC_IDE OR CMAKE_EXTRA_GENERATOR)
+  set(LLVM_ENABLE_IDE_default ON)
+endif()
+option(LLVM_ENABLE_IDE "Generate targets and process sources for use with an IDE"
+    ${LLVM_ENABLE_IDE_default})
+
 function(get_compile_definitions)
   get_directory_property(top_dir_definitions DIRECTORY ${CMAKE_SOURCE_DIR} COMPILE_DEFINITIONS)
   foreach(definition ${top_dir_definitions})


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D40219.129574.patch
Type: text/x-patch
Size: 1287 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180112/5f3995cc/attachment.bin>


More information about the llvm-commits mailing list