diff --git a/CMakeLists.txt b/CMakeLists.txt index 3baebba4678..2868324bf46 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -612,12 +612,6 @@ if(WIN32) option(WITH_WINDOWS_FIND_MODULES "Use find_package to locate libraries" OFF) mark_as_advanced(WITH_WINDOWS_FIND_MODULES) - option(WINDOWS_USE_VISUAL_STUDIO_PROJECT_FOLDERS "Organize the visual studio projects according to source folder structure." ON) - mark_as_advanced(WINDOWS_USE_VISUAL_STUDIO_PROJECT_FOLDERS) - - option(WINDOWS_USE_VISUAL_STUDIO_SOURCE_FOLDERS "Organize the source files in filters matching the source folders." ON) - mark_as_advanced(WINDOWS_USE_VISUAL_STUDIO_SOURCE_FOLDERS) - option(WINDOWS_PYTHON_DEBUG "Include the files needed for debugging python scripts with visual studio 2017+." OFF) mark_as_advanced(WINDOWS_PYTHON_DEBUG) @@ -635,6 +629,18 @@ if(WIN32) endif() +if(WIN32 OR XCODE) + option(IDE_GROUP_SOURCES_IN_FOLDERS "Organize the source files in filters matching the source folders." ON) + mark_as_advanced(IDE_GROUP_SOURCES_IN_FOLDERS) + + option(IDE_GROUP_PROJECTS_IN_FOLDERS "Organize the projects according to source folder structure." ON) + mark_as_advanced(IDE_GROUP_PROJECTS_IN_FOLDERS) + + if (IDE_GROUP_PROJECTS_IN_FOLDERS) + set_property(GLOBAL PROPERTY USE_FOLDERS ON) + endif() +endif() + if(UNIX) # See WITH_WINDOWS_SCCACHE for Windows. option(WITH_COMPILER_CCACHE "Use ccache to improve rebuild times (Works with Ninja, Makefiles and Xcode)" OFF) diff --git a/build_files/cmake/macros.cmake b/build_files/cmake/macros.cmake index 8ad3f77c7d3..1471aa21505 100644 --- a/build_files/cmake/macros.cmake +++ b/build_files/cmake/macros.cmake @@ -208,7 +208,7 @@ function(blender_source_group ) # if enabled, use the sources directories as filters. - if(WINDOWS_USE_VISUAL_STUDIO_SOURCE_FOLDERS) + if(IDE_GROUP_SOURCES_IN_FOLDERS) foreach(_SRC ${sources}) # remove ../'s get_filename_component(_SRC_DIR ${_SRC} REALPATH) @@ -240,8 +240,8 @@ function(blender_source_group endforeach() endif() - # if enabled, set the FOLDER property for visual studio projects - if(WINDOWS_USE_VISUAL_STUDIO_PROJECT_FOLDERS) + # if enabled, set the FOLDER property for the projects + if(IDE_GROUP_PROJECTS_IN_FOLDERS) get_filename_component(FolderDir ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY) string(REPLACE ${CMAKE_SOURCE_DIR} "" FolderDir ${FolderDir}) set_target_properties(${name} PROPERTIES FOLDER ${FolderDir}) diff --git a/build_files/cmake/platform/platform_win32.cmake b/build_files/cmake/platform/platform_win32.cmake index 113c41c545b..3773aaaffed 100644 --- a/build_files/cmake/platform/platform_win32.cmake +++ b/build_files/cmake/platform/platform_win32.cmake @@ -57,8 +57,6 @@ if(CMAKE_C_COMPILER_ID MATCHES "Clang") endif() endif() -set_property(GLOBAL PROPERTY USE_FOLDERS ${WINDOWS_USE_VISUAL_STUDIO_PROJECT_FOLDERS}) - if(NOT WITH_PYTHON_MODULE) set_property(DIRECTORY PROPERTY VS_STARTUP_PROJECT blender) endif() diff --git a/intern/cycles/cmake/macros.cmake b/intern/cycles/cmake/macros.cmake index ff62b816e6c..47196dfd1ce 100644 --- a/intern/cycles/cmake/macros.cmake +++ b/intern/cycles/cmake/macros.cmake @@ -13,7 +13,7 @@ # limitations under the License. function(cycles_set_solution_folder target) - if(WINDOWS_USE_VISUAL_STUDIO_FOLDERS) + if(IDE_GROUP_PROJECTS_IN_FOLDERS) get_filename_component(folderdir ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY) string(REPLACE ${CMAKE_SOURCE_DIR} "" folderdir ${folderdir}) set_target_properties(${target} PROPERTIES FOLDER ${folderdir})