Adds a new `source/blender/asset_system` directory and moves asset related files from BKE to it. More asset related code can follow (e.g. asset indexing, ED_assetlist stuff) but needs further work to untangle it. I also kept `BKE_asset.h` and `asset.cc` as is, since they deal with asset DNA data mostly, thus make sense in BKE. Motivation: - Makes the asset system design more present (term wasn't even used in code before). - An `asset_system` directory is quite descriptive (trivial to identify core asset system features) and makes it easy to find asset code. - Asset system is mostly runtime data, with little relation to other `Main`/BKE/DNA types. - There's a lot of stuff in BKE already. It shouldn't be just a dump for all stuff that seems core enough. - Being its own directly helps us be more mindful about encapsulating the module well, and avoiding dependencies on other modules. - We can be more free with splitting files here than in BKE. - In future there might be an asset system BPY module, which would then map quite nicely to the `asset_system` directory. Checked with some other core devs, consensus seems that this makes sense.
91 lines
1.6 KiB
CMake
91 lines
1.6 KiB
CMake
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
set(INC
|
|
../include
|
|
../../asset_system
|
|
../../blenfont
|
|
../../blenkernel
|
|
../../blenlib
|
|
../../blenloader
|
|
../../blentranslation
|
|
../../compositor
|
|
../../depsgraph
|
|
../../draw
|
|
../../functions
|
|
../../gpu
|
|
../../imbuf
|
|
../../makesdna
|
|
../../makesrna
|
|
../../nodes
|
|
../../render
|
|
../../windowmanager
|
|
../../../../intern/guardedalloc
|
|
|
|
# dna_type_offsets.h
|
|
${CMAKE_CURRENT_BINARY_DIR}/../../makesdna/intern
|
|
# RNA_prototypes.h
|
|
${CMAKE_BINARY_DIR}/source/blender/makesrna
|
|
)
|
|
|
|
|
|
set(SRC
|
|
add_node_search.cc
|
|
add_menu_assets.cc
|
|
drawnode.cc
|
|
link_drag_search.cc
|
|
node_add.cc
|
|
node_context_path.cc
|
|
node_draw.cc
|
|
node_edit.cc
|
|
node_geometry_attribute_search.cc
|
|
node_gizmo.cc
|
|
node_group.cc
|
|
node_ops.cc
|
|
node_relationships.cc
|
|
node_select.cc
|
|
node_templates.cc
|
|
node_view.cc
|
|
space_node.cc
|
|
|
|
node_intern.hh
|
|
)
|
|
|
|
set(LIB
|
|
bf_blenkernel
|
|
bf_blenlib
|
|
bf_editor_screen
|
|
)
|
|
|
|
if(WITH_COMPOSITOR_CPU)
|
|
add_definitions(-DWITH_COMPOSITOR_CPU)
|
|
endif()
|
|
|
|
if(WITH_OPENIMAGEDENOISE)
|
|
add_definitions(-DWITH_OPENIMAGEDENOISE)
|
|
endif()
|
|
|
|
if(WITH_OPENSUBDIV)
|
|
add_definitions(-DWITH_OPENSUBDIV)
|
|
endif()
|
|
|
|
if(WITH_TBB)
|
|
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()
|
|
list(APPEND INC_SYS
|
|
${TBB_INCLUDE_DIRS}
|
|
)
|
|
|
|
list(APPEND LIB
|
|
${TBB_LIBRARIES}
|
|
)
|
|
endif()
|
|
|
|
blender_add_lib(bf_editor_space_node "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
|
|
|
# RNA_prototypes.h dna_type_offsets.h
|
|
add_dependencies(bf_editor_space_node bf_rna)
|