Welcome to mirror list, hosted at ThFree Co, Russian Federation.

CMakeLists.txt « cycles « intern - git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 413952e8791c8e1d19912c5df5ff9db1e6d7a589 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81

SET(CYCLES_VERSION_MAJOR 0)
SET(CYCLES_VERSION_MINOR 0)
SET(CYCLES_VERSION ${CYCLES_VERSION_MAJOR}.${CYCLES_VERSION_MINOR})

# Options

OPTION(WITH_CYCLES_OSL "Build with Open Shading Language support" OFF)
OPTION(WITH_CYCLES_CUDA "Build with CUDA support" OFF)
OPTION(WITH_CYCLES_OPENCL "Build with OpenCL support (not working)" OFF)
OPTION(WITH_CYCLES_BLENDER "Build Blender Python extension" ON)
OPTION(WITH_CYCLES_PARTIO "Build with Partio point cloud support (unfinished)" OFF)
OPTION(WITH_CYCLES_NETWORK "Build with network rendering support (unfinished)" OFF)
OPTION(WITH_CYCLES_MULTI "Build with network rendering support (unfinished)" OFF)
OPTION(WITH_CYCLES_TEST "Build cycles test application" OFF)

# Flags

SET(CYCLES_CUDA_ARCH sm_10 sm_11 sm_12 sm_13 sm_20 sm_21 CACHE STRING "CUDA architectures to build for")
SET(CYCLES_CUDA_MAXREG 24 CACHE STRING "CUDA maximum number of register to use")

# Paths

IF(UNIX AND NOT APPLE)
	SET(CYCLES_OIIO "" CACHE PATH "Path to OpenImageIO installation")
	SET(CYCLES_BOOST "/usr" CACHE PATH "Path to Boost installation")
ENDIF()

SET(CYCLES_OSL "" CACHE PATH "Path to OpenShadingLanguage installation")
SET(CYCLES_CUDA "/usr/local/cuda" CACHE PATH "Path to CUDA installation")
SET(CYCLES_OPENCL "" CACHE PATH "Path to OpenCL installation")
SET(CYCLES_PARTIO "" CACHE PATH "Path to Partio installation")
SET(CYCLES_GLEW "" CACHE PATH "Path to GLEW installation")

# Install, todo: deduplicate install path code

if(MSVC_IDE)
	set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE})
elseif(APPLE)
	set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE})
else()
	set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH})
endif()

if(UNIX AND NOT APPLE)
	if(WITH_INSTALL_PORTABLE)
		set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
	else()
		set(TARGETDIR_VER ${CMAKE_INSTALL_PREFIX}/share/blender/${BLENDER_VERSION})
	endif()
elseif(WIN32)
	set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
elseif(APPLE)
	set(TARGETDIR_VER ${TARGETDIR}/blender.app/Contents/MacOS/${BLENDER_VERSION})
endif()

SET(CYCLES_INSTALL_PATH "${TARGETDIR_VER}/scripts/addons")

# External Libraries

INCLUDE(cmake/external_libs.cmake)

# Platforms

INCLUDE(cmake/platforms.cmake)

# Subdirectories

IF(WITH_CYCLES_BLENDER)
	ADD_SUBDIRECTORY(blender)
ENDIF(WITH_CYCLES_BLENDER)

ADD_SUBDIRECTORY(app)
ADD_SUBDIRECTORY(bvh)
ADD_SUBDIRECTORY(device)
ADD_SUBDIRECTORY(doc)
ADD_SUBDIRECTORY(kernel)
ADD_SUBDIRECTORY(render)
ADD_SUBDIRECTORY(subd)
ADD_SUBDIRECTORY(util)