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.
59 lines
1.1 KiB
CMake
59 lines
1.1 KiB
CMake
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
set(INC
|
|
.
|
|
../include
|
|
../../asset_system
|
|
../../blenkernel
|
|
../../blenlib
|
|
../../blenloader
|
|
../../blentranslation
|
|
../../makesdna
|
|
../../makesrna
|
|
../../windowmanager
|
|
../../../../intern/clog
|
|
../../../../intern/guardedalloc
|
|
# RNA_prototypes.h
|
|
${CMAKE_BINARY_DIR}/source/blender/makesrna
|
|
)
|
|
|
|
set(INC_SYS
|
|
)
|
|
|
|
set(SRC
|
|
intern/asset_catalog.cc
|
|
intern/asset_filter.cc
|
|
intern/asset_handle.cc
|
|
intern/asset_indexer.cc
|
|
intern/asset_library_reference.cc
|
|
intern/asset_library_reference_enum.cc
|
|
intern/asset_list.cc
|
|
intern/asset_mark_clear.cc
|
|
intern/asset_ops.cc
|
|
intern/asset_temp_id_consumer.cc
|
|
intern/asset_type.cc
|
|
|
|
ED_asset_catalog.h
|
|
ED_asset_catalog.hh
|
|
ED_asset_filter.h
|
|
ED_asset_handle.h
|
|
ED_asset_indexer.h
|
|
ED_asset_library.h
|
|
ED_asset_list.h
|
|
ED_asset_list.hh
|
|
ED_asset_mark_clear.h
|
|
ED_asset_temp_id_consumer.h
|
|
ED_asset_type.h
|
|
intern/asset_library_reference.hh
|
|
)
|
|
|
|
set(LIB
|
|
bf_blenkernel
|
|
bf_blenloader
|
|
)
|
|
|
|
blender_add_lib(bf_editor_asset "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
|
|
|
|
# RNA_prototypes.h
|
|
add_dependencies(bf_editor_asset bf_rna)
|