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

bpy_module.cmake « config « cmake « build_files - git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 7bd5c3fc1a1c971e03286bc76830e09227a67876 (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
82
83
84
85
86
87
88
# SPDX-License-Identifier: GPL-2.0-or-later

# defaults for building blender as a python module 'bpy'
#
# Example usage:
#   cmake -C../blender/build_files/cmake/config/bpy_module.cmake  ../blender
#

set(WITH_PYTHON_MODULE       ON  CACHE BOOL "" FORCE)


# -----------------------------------------------------------------------------
# Installation Configuration.
#
# NOTE: `WITH_INSTALL_PORTABLE` always defaults to ON when building as a Python module and
# isn't set here as it makes changing the setting impractical.
# Python-developers could prefer either ON/OFF depending on their usage:
#
# - When using the system's Python, disabling will install into their `site-packages`,
#   allowing them to run Python from any directory and `import bpy`.
# - When using Blender's bundled Python in `./../lib/` it will install there
#   which isn't especially useful as it requires running Python from this directory too.
#
# So default `WITH_INSTALL_PORTABLE` to ON, and developers who don't use Python from `./../lib/`
# can disable it if they wish to install into their systems Python.

# There is no point in copying python into Python.
set(WITH_PYTHON_INSTALL      OFF CACHE BOOL "" FORCE)

# Depends on Python install, do this to quiet warning.
set(WITH_DRACO               OFF CACHE BOOL "" FORCE)

if(WIN32)
  set(WITH_WINDOWS_BUNDLE_CRT  OFF CACHE BOOL "" FORCE)
endif()


# -----------------------------------------------------------------------------
# Library Compatibility.

# JEMALLOC does not work with `dlopen()` of Python modules:
# https://github.com/jemalloc/jemalloc/issues/1237
set(WITH_MEM_JEMALLOC        OFF CACHE BOOL "" FORCE)


# -----------------------------------------------------------------------------
# Application Support.

# Not useful to include with the Python module.
# Although a way to extract this from Python could be handle,
# this would be better exposed directly via the Python API.
set(WITH_BLENDER_THUMBNAILER OFF CACHE BOOL "" FORCE)


# -----------------------------------------------------------------------------
# Audio Support.

# Disable audio, its possible some developers may want this but for now disable
# so the Python module doesn't hold the audio device and loads quickly.
set(WITH_AUDASPACE           OFF CACHE BOOL "" FORCE)
set(WITH_JACK                OFF CACHE BOOL "" FORCE)
set(WITH_OPENAL              OFF CACHE BOOL "" FORCE)
set(WITH_SDL                 OFF CACHE BOOL "" FORCE)
if(UNIX AND NOT APPLE)
  set(WITH_PULSEAUDIO          OFF CACHE BOOL "" FORCE)
endif()
if(WIN32)
  set(WITH_WASAPI              OFF CACHE BOOL "" FORCE)
endif()
if(APPLE)
  set(WITH_COREAUDIO           OFF CACHE BOOL "" FORCE)
endif()


# -----------------------------------------------------------------------------
# Input Device Support.

# Other features which are not especially useful as a python module.
set(WITH_INPUT_NDOF          OFF CACHE BOOL "" FORCE)
if(WIN32 OR APPLE)
  set(WITH_INPUT_IME           OFF CACHE BOOL "" FORCE)
endif()


# -----------------------------------------------------------------------------
# Language Support.

set(WITH_INTERNATIONAL       OFF CACHE BOOL "" FORCE)