diff options
author | Ray Molenkamp <github@lazydodo.com> | 2018-02-04 02:38:27 +0300 |
---|---|---|
committer | Ray Molenkamp <github@lazydodo.com> | 2018-02-04 02:38:27 +0300 |
commit | 36c1122b96ca550a541f9cea9ed2673319c7467b (patch) | |
tree | 84ca501e92f836c81736e56ca9979b95799efd1c /intern/cycles | |
parent | a5052770b85fefe00511886429e6fc1f5056e1e8 (diff) |
msvc: Use source folder structure for project file.
This patch changes the huge list of projects in visual studio into a nice tree matching the source folder structure. see D2823 for details.
Differential Revision: http://developer.blender.org/D2823
Diffstat (limited to 'intern/cycles')
-rw-r--r-- | intern/cycles/CMakeLists.txt | 1 | ||||
-rw-r--r-- | intern/cycles/bvh/CMakeLists.txt | 2 | ||||
-rw-r--r-- | intern/cycles/cmake/macros.cmake | 12 | ||||
-rw-r--r-- | intern/cycles/device/CMakeLists.txt | 2 | ||||
-rw-r--r-- | intern/cycles/graph/CMakeLists.txt | 2 | ||||
-rw-r--r-- | intern/cycles/kernel/CMakeLists.txt | 3 | ||||
-rw-r--r-- | intern/cycles/kernel/osl/CMakeLists.txt | 2 | ||||
-rw-r--r-- | intern/cycles/kernel/shaders/CMakeLists.txt | 4 | ||||
-rw-r--r-- | intern/cycles/render/CMakeLists.txt | 2 | ||||
-rw-r--r-- | intern/cycles/subd/CMakeLists.txt | 2 | ||||
-rw-r--r-- | intern/cycles/util/CMakeLists.txt | 2 |
11 files changed, 25 insertions, 9 deletions
diff --git a/intern/cycles/CMakeLists.txt b/intern/cycles/CMakeLists.txt index 3da1170ec77..f720d389cbf 100644 --- a/intern/cycles/CMakeLists.txt +++ b/intern/cycles/CMakeLists.txt @@ -9,6 +9,7 @@ endif() # External Libraries include(cmake/external_libs.cmake) +include(cmake/macros.cmake) # Build Flags # todo: this code could be refactored a bit to avoid duplication diff --git a/intern/cycles/bvh/CMakeLists.txt b/intern/cycles/bvh/CMakeLists.txt index 6078db5a8ca..b8171e7f70d 100644 --- a/intern/cycles/bvh/CMakeLists.txt +++ b/intern/cycles/bvh/CMakeLists.txt @@ -34,4 +34,4 @@ set(SRC_HEADERS include_directories(${INC}) include_directories(SYSTEM ${INC_SYS}) -add_library(cycles_bvh ${SRC} ${SRC_HEADERS}) +cycles_add_library(cycles_bvh ${SRC} ${SRC_HEADERS}) diff --git a/intern/cycles/cmake/macros.cmake b/intern/cycles/cmake/macros.cmake new file mode 100644 index 00000000000..f3ca06ac6b8 --- /dev/null +++ b/intern/cycles/cmake/macros.cmake @@ -0,0 +1,12 @@ +function(cycles_set_solution_folder target) + if(WINDOWS_USE_VISUAL_STUDIO_FOLDERS) + get_filename_component(folderdir ${CMAKE_CURRENT_SOURCE_DIR} DIRECTORY) + string(REPLACE ${CMAKE_SOURCE_DIR} "" folderdir ${folderdir}) + set_target_properties(${target} PROPERTIES FOLDER ${folderdir}) + endif() +endfunction() + +macro(cycles_add_library target) + add_library(${target} ${ARGN}) + cycles_set_solution_folder(${target}) +endmacro() diff --git a/intern/cycles/device/CMakeLists.txt b/intern/cycles/device/CMakeLists.txt index 959c0aa97c9..75e78e038ea 100644 --- a/intern/cycles/device/CMakeLists.txt +++ b/intern/cycles/device/CMakeLists.txt @@ -77,4 +77,4 @@ endif() include_directories(${INC}) include_directories(SYSTEM ${INC_SYS}) -add_library(cycles_device ${SRC} ${SRC_OPENCL} ${SRC_HEADERS}) +cycles_add_library(cycles_device ${SRC} ${SRC_OPENCL} ${SRC_HEADERS}) diff --git a/intern/cycles/graph/CMakeLists.txt b/intern/cycles/graph/CMakeLists.txt index e70a18137bd..168ca0210e7 100644 --- a/intern/cycles/graph/CMakeLists.txt +++ b/intern/cycles/graph/CMakeLists.txt @@ -19,5 +19,5 @@ set(SRC_HEADERS include_directories(${INC}) include_directories(SYSTEM ${INC_SYS}) -add_library(cycles_graph ${SRC} ${SRC_HEADERS}) +cycles_add_library(cycles_graph ${SRC} ${SRC_HEADERS}) diff --git a/intern/cycles/kernel/CMakeLists.txt b/intern/cycles/kernel/CMakeLists.txt index 3b76b3403e7..d981b67559e 100644 --- a/intern/cycles/kernel/CMakeLists.txt +++ b/intern/cycles/kernel/CMakeLists.txt @@ -435,6 +435,7 @@ if(WITH_CYCLES_CUDA_BINARIES) endforeach() add_custom_target(cycles_kernel_cuda ALL DEPENDS ${cuda_cubins}) + cycles_set_solution_folder(cycles_kernel_cuda) endif() # OSL module @@ -477,7 +478,7 @@ if(CXX_HAS_AVX2) set_source_files_properties(kernels/cpu/filter_avx2.cpp PROPERTIES COMPILE_FLAGS "${CYCLES_AVX2_KERNEL_FLAGS}") endif() -add_library(cycles_kernel +cycles_add_library(cycles_kernel ${SRC_CPU_KERNELS} ${SRC_CUDA_KERNELS} ${SRC_OPENCL_KERNELS} diff --git a/intern/cycles/kernel/osl/CMakeLists.txt b/intern/cycles/kernel/osl/CMakeLists.txt index d2eb89e0e0a..159de63a044 100644 --- a/intern/cycles/kernel/osl/CMakeLists.txt +++ b/intern/cycles/kernel/osl/CMakeLists.txt @@ -30,5 +30,5 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${RTTI_DISABLE_FLAGS}") include_directories(${INC}) include_directories(SYSTEM ${INC_SYS}) -add_library(cycles_kernel_osl ${SRC} ${HEADER_SRC}) +cycles_add_library(cycles_kernel_osl ${SRC} ${HEADER_SRC}) diff --git a/intern/cycles/kernel/shaders/CMakeLists.txt b/intern/cycles/kernel/shaders/CMakeLists.txt index 5e8e98773d9..19b7769200e 100644 --- a/intern/cycles/kernel/shaders/CMakeLists.txt +++ b/intern/cycles/kernel/shaders/CMakeLists.txt @@ -104,6 +104,7 @@ set(SRC_OSO # TODO, add a module to compile OSL foreach(_file ${SRC_OSL}) set(_OSL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${_file}) + set_source_files_properties(${_file} PROPERTIES HEADER_FILE_ONLY TRUE) string(REPLACE ".osl" ".oso" _OSO_FILE ${_OSL_FILE}) string(REPLACE ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} _OSO_FILE ${_OSO_FILE}) add_custom_command( @@ -118,7 +119,8 @@ foreach(_file ${SRC_OSL}) unset(_OSO_FILE) endforeach() -add_custom_target(cycles_osl_shaders ALL DEPENDS ${SRC_OSO} ${SRC_OSL_HEADERS} ${OSL_COMPILER}) +add_custom_target(cycles_osl_shaders ALL DEPENDS ${SRC_OSO} ${SRC_OSL_HEADERS} ${OSL_COMPILER} SOURCES ${SRC_OSL}) +cycles_set_solution_folder(cycles_osl_shaders) # CMAKE_CURRENT_SOURCE_DIR is already included in OSO paths delayed_install("" "${SRC_OSO}" ${CYCLES_INSTALL_PATH}/shader) diff --git a/intern/cycles/render/CMakeLists.txt b/intern/cycles/render/CMakeLists.txt index 17ac66644e2..580d76e7777 100644 --- a/intern/cycles/render/CMakeLists.txt +++ b/intern/cycles/render/CMakeLists.txt @@ -71,4 +71,4 @@ include_directories(SYSTEM ${INC_SYS}) add_definitions(${GL_DEFINITIONS}) -add_library(cycles_render ${SRC} ${SRC_HEADERS}) +cycles_add_library(cycles_render ${SRC} ${SRC_HEADERS}) diff --git a/intern/cycles/subd/CMakeLists.txt b/intern/cycles/subd/CMakeLists.txt index fe0c221ab0d..7f952dd43ce 100644 --- a/intern/cycles/subd/CMakeLists.txt +++ b/intern/cycles/subd/CMakeLists.txt @@ -24,4 +24,4 @@ set(SRC_HEADERS include_directories(${INC}) include_directories(SYSTEM ${INC_SYS}) -add_library(cycles_subd ${SRC} ${SRC_HEADERS}) +cycles_add_library(cycles_subd ${SRC} ${SRC_HEADERS}) diff --git a/intern/cycles/util/CMakeLists.txt b/intern/cycles/util/CMakeLists.txt index bc9def7ca41..66c4f22a7e2 100644 --- a/intern/cycles/util/CMakeLists.txt +++ b/intern/cycles/util/CMakeLists.txt @@ -127,4 +127,4 @@ include_directories(SYSTEM ${INC_SYS}) add_definitions(${GL_DEFINITIONS}) -add_library(cycles_util ${SRC} ${SRC_HEADERS}) +cycles_add_library(cycles_util ${SRC} ${SRC_HEADERS}) |