Changeset View
Changeset View
Standalone View
Standalone View
source/blender/makesdna/intern/CMakeLists.txt
| # SPDX-License-Identifier: GPL-2.0-or-later | # SPDX-License-Identifier: GPL-2.0-or-later | ||||
| # Copyright 2006 Blender Foundation. All rights reserved. | # Copyright 2006 Blender Foundation. All rights reserved. | ||||
| # message(STATUS "Configuring makesdna") | # message(STATUS "Configuring makesdna") | ||||
| add_definitions(-DWITH_DNA_GHASH) | add_definitions(-DWITH_DNA_GHASH) | ||||
| blender_include_dirs( | blender_include_dirs( | ||||
| ../../../../intern/atomic | |||||
| ../../../../intern/guardedalloc | |||||
| ../../blenlib | |||||
| ../../imbuf | ../../imbuf | ||||
| .. | .. | ||||
| ) | ) | ||||
| set(dna_header_include_file "${CMAKE_CURRENT_BINARY_DIR}/dna_includes_all.h") | set(dna_header_include_file "${CMAKE_CURRENT_BINARY_DIR}/dna_includes_all.h") | ||||
| set(dna_header_string_file "${CMAKE_CURRENT_BINARY_DIR}/dna_includes_as_strings.h") | set(dna_header_string_file "${CMAKE_CURRENT_BINARY_DIR}/dna_includes_as_strings.h") | ||||
| set(DNA_INCLUDE_TEXT "/* Do not edit manually, changes will be overwritten. */\n") | set(DNA_INCLUDE_TEXT "/* Do not edit manually, changes will be overwritten. */\n") | ||||
| Show All 27 Lines | |||||
| ) | ) | ||||
| # SRC_DNA_INC is defined in the parent dir | # SRC_DNA_INC is defined in the parent dir | ||||
| add_cc_flags_custom_test(makesdna) | add_cc_flags_custom_test(makesdna) | ||||
| add_executable(makesdna ${SRC} ${SRC_DNA_INC}) | add_executable(makesdna ${SRC} ${SRC_DNA_INC}) | ||||
| setup_platform_linker_flags(makesdna) | setup_platform_linker_flags(makesdna) | ||||
| target_link_libraries(makesdna bf_intern_atomic bf_intern_guardedalloc) | |||||
| target_include_directories(makesdna | |||||
| PRIVATE ../../blenlib | |||||
| PRIVATE ${CMAKE_CURRENT_BINARY_DIR} | |||||
| ) | |||||
| if(WIN32 AND NOT UNIX) | if(WIN32 AND NOT UNIX) | ||||
| target_link_libraries(makesdna ${PTHREADS_LIBRARIES}) | target_link_libraries(makesdna ${PTHREADS_LIBRARIES}) | ||||
| endif() | endif() | ||||
| # Output dna.c | # Output dna.c | ||||
| add_custom_command( | add_custom_command( | ||||
| OUTPUT | OUTPUT | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna.c | ${CMAKE_CURRENT_BINARY_DIR}/dna.c | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna_type_offsets.h | ${CMAKE_CURRENT_BINARY_DIR}/dna_type_offsets.h | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna_verify.c | ${CMAKE_CURRENT_BINARY_DIR}/dna_verify.c | ||||
| COMMAND | COMMAND | ||||
| "$<TARGET_FILE:makesdna>" | "$<TARGET_FILE:makesdna>" | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna.c | ${CMAKE_CURRENT_BINARY_DIR}/dna.c | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna_type_offsets.h | ${CMAKE_CURRENT_BINARY_DIR}/dna_type_offsets.h | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna_verify.c | ${CMAKE_CURRENT_BINARY_DIR}/dna_verify.c | ||||
| ${CMAKE_SOURCE_DIR}/source/blender/makesdna/ | ${CMAKE_SOURCE_DIR}/source/blender/makesdna/ | ||||
| DEPENDS makesdna | DEPENDS makesdna | ||||
| ) | ) | ||||
| # ----------------------------------------------------------------------------- | # ----------------------------------------------------------------------------- | ||||
| # Build bf_dna library | # Build bf_dna library | ||||
| set(INC | set(INC | ||||
| ${CMAKE_CURRENT_BINARY_DIR} | PRIVATE ${CMAKE_CURRENT_BINARY_DIR} | ||||
| #bf_dna only requires BLI_assert.h not enough to take on the dependency as a whole. | |||||
| PRIVATE ../../blenlib | |||||
| ) | ) | ||||
| set(INC_SYS | set(INC_SYS | ||||
| ) | ) | ||||
| set(SRC | set(SRC | ||||
| dna_defaults.c | dna_defaults.c | ||||
| dna_genfile.c | dna_genfile.c | ||||
| dna_utils.c | dna_utils.c | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna.c | ${CMAKE_CURRENT_BINARY_DIR}/dna.c | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna_verify.c | ${CMAKE_CURRENT_BINARY_DIR}/dna_verify.c | ||||
| ${SRC_DNA_INC} | ${SRC_DNA_INC} | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna_type_offsets.h | ${CMAKE_CURRENT_BINARY_DIR}/dna_type_offsets.h | ||||
| dna_rename_defs.h | dna_rename_defs.h | ||||
| dna_utils.h | dna_utils.h | ||||
| ) | ) | ||||
| set(LIB | set(LIB | ||||
| PRIVATE bf_intern_atomic | |||||
| PRIVATE bf_intern_guardedalloc | |||||
| ) | ) | ||||
| set_source_files_properties( | set_source_files_properties( | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna.c | ${CMAKE_CURRENT_BINARY_DIR}/dna.c | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna_type_offsets.h | ${CMAKE_CURRENT_BINARY_DIR}/dna_type_offsets.h | ||||
| ${CMAKE_CURRENT_BINARY_DIR}/dna_verify.c | ${CMAKE_CURRENT_BINARY_DIR}/dna_verify.c | ||||
| PROPERTIES GENERATED TRUE | PROPERTIES GENERATED TRUE | ||||
| ) | ) | ||||
| blender_add_lib(bf_dna "${SRC}" "${INC}" "${INC_SYS}" "${LIB}") | blender_add_lib(bf_dna "${SRC}" "${INC}" "${INC_SYS}" "${LIB}") | ||||
| # ----------------------------------------------------------------------------- | # ----------------------------------------------------------------------------- | ||||
| # Build bf_dna_blenlib library | # Build bf_dna_blenlib library | ||||
| set(INC | set(INC | ||||
| PUBLIC ../../blenlib | |||||
| ) | ) | ||||
| set(INC_SYS | set(INC_SYS | ||||
| ) | ) | ||||
| set(SRC | set(SRC | ||||
| ../../blenlib/intern/BLI_assert.c | ../../blenlib/intern/BLI_assert.c | ||||
| ../../blenlib/intern/BLI_ghash.c | ../../blenlib/intern/BLI_ghash.c | ||||
| ../../blenlib/intern/BLI_ghash_utils.c | ../../blenlib/intern/BLI_ghash_utils.c | ||||
| ../../blenlib/intern/BLI_linklist.c | ../../blenlib/intern/BLI_linklist.c | ||||
| ../../blenlib/intern/BLI_memarena.c | ../../blenlib/intern/BLI_memarena.c | ||||
| ../../blenlib/intern/BLI_mempool.c | ../../blenlib/intern/BLI_mempool.c | ||||
| ../../blenlib/intern/endian_switch.c | ../../blenlib/intern/endian_switch.c | ||||
| ../../blenlib/intern/hash_mm2a.c | ../../blenlib/intern/hash_mm2a.c | ||||
| ../../blenlib/intern/listbase.c | ../../blenlib/intern/listbase.c | ||||
| ${SRC_DNA_DEFAULTS_INC} | ${SRC_DNA_DEFAULTS_INC} | ||||
| ) | ) | ||||
| set(LIB | set(LIB | ||||
| PRIVATE bf_intern_atomic | |||||
| PRIVATE bf_intern_guardedalloc | |||||
| ) | ) | ||||
| blender_add_lib(bf_dna_blenlib "${SRC}" "${INC}" "${INC_SYS}" "${LIB}") | blender_add_lib(bf_dna_blenlib "${SRC}" "${INC}" "${INC_SYS}" "${LIB}") | ||||