So far it was needed to declare a new RNA struct to `RNA_access.h` manually.
Since 9b298cf3db we generate a `RNA_prototypes.h` for RNA property
declarations. Now this also includes the RNA struct declarations, so they don't
have to be added manually anymore.
Differential Revision: https://developer.blender.org/D13862
Reviewed by: brecht, campbellbarton
170 lines
3.1 KiB
CMake
170 lines
3.1 KiB
CMake
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
# Copyright 2006 Blender Foundation. All rights reserved.
|
|
|
|
add_subdirectory(composite)
|
|
add_subdirectory(function)
|
|
add_subdirectory(geometry)
|
|
add_subdirectory(shader)
|
|
add_subdirectory(texture)
|
|
|
|
set(INC
|
|
.
|
|
composite
|
|
function
|
|
geometry
|
|
intern
|
|
shader
|
|
texture
|
|
../editors/include
|
|
../blenkernel
|
|
../blenlib
|
|
../blentranslation
|
|
../bmesh
|
|
../depsgraph
|
|
../functions
|
|
../geometry
|
|
../gpu
|
|
../imbuf
|
|
../makesdna
|
|
../makesrna
|
|
../render
|
|
../windowmanager
|
|
../../../intern/glew-mx
|
|
../../../intern/guardedalloc
|
|
|
|
# dna_type_offsets.h
|
|
${CMAKE_CURRENT_BINARY_DIR}/../makesdna/intern
|
|
# RNA_prototypes.h
|
|
${CMAKE_BINARY_DIR}/source/blender/makesrna
|
|
)
|
|
|
|
|
|
set(SRC
|
|
intern/derived_node_tree.cc
|
|
intern/geometry_nodes_eval_log.cc
|
|
intern/math_functions.cc
|
|
intern/node_common.cc
|
|
intern/node_declaration.cc
|
|
intern/node_exec.cc
|
|
intern/node_geometry_exec.cc
|
|
intern/node_multi_function.cc
|
|
intern/node_socket.cc
|
|
intern/node_socket_declarations.cc
|
|
intern/node_tree_ref.cc
|
|
intern/node_util.c
|
|
intern/socket_search_link.cc
|
|
|
|
NOD_common.h
|
|
NOD_composite.h
|
|
NOD_derived_node_tree.hh
|
|
NOD_function.h
|
|
NOD_geometry.h
|
|
NOD_geometry_exec.hh
|
|
NOD_geometry_nodes_eval_log.hh
|
|
NOD_math_functions.hh
|
|
NOD_multi_function.hh
|
|
NOD_node_declaration.hh
|
|
NOD_node_tree_ref.hh
|
|
NOD_shader.h
|
|
NOD_socket.h
|
|
NOD_socket_declarations.hh
|
|
NOD_socket_declarations_geometry.hh
|
|
NOD_socket_search_link.hh
|
|
NOD_static_types.h
|
|
NOD_texture.h
|
|
intern/node_common.h
|
|
intern/node_exec.h
|
|
intern/node_util.h
|
|
)
|
|
|
|
set(LIB
|
|
bf_bmesh
|
|
bf_functions
|
|
bf_nodes_composite
|
|
bf_nodes_function
|
|
bf_nodes_geometry
|
|
bf_nodes_shader
|
|
bf_nodes_texture
|
|
)
|
|
|
|
if(WITH_BULLET)
|
|
list(APPEND INC_SYS
|
|
${BULLET_INCLUDE_DIRS}
|
|
../../../intern/rigidbody
|
|
)
|
|
if(NOT WITH_SYSTEM_BULLET)
|
|
list(APPEND LIB
|
|
extern_bullet
|
|
)
|
|
endif()
|
|
|
|
list(APPEND LIB
|
|
${BULLET_LIBRARIES}
|
|
)
|
|
add_definitions(-DWITH_BULLET)
|
|
endif()
|
|
|
|
if(WITH_PYTHON)
|
|
list(APPEND INC
|
|
../python
|
|
)
|
|
list(APPEND INC_SYS
|
|
${PYTHON_INCLUDE_DIRS}
|
|
)
|
|
list(APPEND LIB
|
|
${PYTHON_LINKFLAGS}
|
|
${PYTHON_LIBRARIES}
|
|
)
|
|
add_definitions(-DWITH_PYTHON)
|
|
endif()
|
|
|
|
if(WITH_TBB)
|
|
list(APPEND INC_SYS
|
|
${TBB_INCLUDE_DIRS}
|
|
)
|
|
add_definitions(-DWITH_TBB)
|
|
if(WIN32)
|
|
# TBB includes Windows.h which will define min/max macros
|
|
# that will collide with the stl versions.
|
|
add_definitions(-DNOMINMAX)
|
|
endif()
|
|
endif()
|
|
|
|
if(WITH_IMAGE_OPENEXR)
|
|
add_definitions(-DWITH_OPENEXR)
|
|
endif()
|
|
|
|
if(WITH_FREESTYLE)
|
|
add_definitions(-DWITH_FREESTYLE)
|
|
endif()
|
|
|
|
if(WITH_OPENSUBDIV)
|
|
add_definitions(-DWITH_OPENSUBDIV)
|
|
endif()
|
|
|
|
if(WITH_GMP)
|
|
add_definitions(-DWITH_GMP)
|
|
|
|
list(APPEND INC_SYS
|
|
${GMP_INCLUDE_DIRS}
|
|
)
|
|
|
|
list(APPEND LIB
|
|
${GMP_LIBRARIES}
|
|
)
|
|
endif()
|
|
|
|
if(WITH_OPENVDB)
|
|
list(APPEND INC_SYS
|
|
${OPENVDB_INCLUDE_DIRS}
|
|
)
|
|
add_definitions(-DWITH_OPENVDB ${OPENVDB_DEFINITIONS})
|
|
endif()
|
|
|
|
blender_add_lib(bf_nodes "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
|
|
|
# Needed so we can use dna_type_offsets.h for defaults initialization.
|
|
add_dependencies(bf_nodes bf_dna)
|
|
# RNA_prototypes.h
|
|
add_dependencies(bf_nodes bf_rna)
|