# Build Tools Setup # Configures asset_packer, seq_compiler, and tracker_compiler # Asset packer tool if(DEFINED ASSET_PACKER_PATH) set(ASSET_PACKER_CMD ${ASSET_PACKER_PATH}) set(ASSET_PACKER_DEPENDS ${ASSET_PACKER_PATH}) else() add_executable(asset_packer tools/asset_packer.cc) target_link_libraries(asset_packer PRIVATE procedural) target_include_directories(asset_packer PRIVATE third_party) set(ASSET_PACKER_CMD $) set(ASSET_PACKER_DEPENDS asset_packer) endif() # Sequence compiler tool if(DEFINED SEQ_COMPILER_PATH) set(SEQ_COMPILER_CMD ${SEQ_COMPILER_PATH}) set(SEQ_COMPILER_DEPENDS ${SEQ_COMPILER_PATH}) else() add_executable(seq_compiler tools/seq_compiler.cc) set(SEQ_COMPILER_CMD $) set(SEQ_COMPILER_DEPENDS seq_compiler) endif() # Tracker compiler tool if(DEFINED TRACKER_COMPILER_PATH) set(TRACKER_COMPILER_CMD ${TRACKER_COMPILER_PATH}) set(TRACKER_COMPILER_DEPENDS ${TRACKER_COMPILER_PATH}) else() add_executable(tracker_compiler tools/tracker_compiler.cc) set(TRACKER_COMPILER_CMD $) set(TRACKER_COMPILER_DEPENDS tracker_compiler) endif() # Always build a host-native tracker_compiler for code generation purposes add_executable(tracker_compiler_host tools/tracker_compiler.cc) set_target_properties(tracker_compiler_host PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/tools_host") # Determine which tracker compiler to use for code generation if(DEMO_CROSS_COMPILE_WIN32) set(TRACKER_COMPILER_FINAL_CMD "${CMAKE_SOURCE_DIR}/build_native/tools_host/tracker_compiler_host") set(TRACKER_COMPILER_FINAL_DEPENDS tracker_compiler_host) else() set(TRACKER_COMPILER_FINAL_CMD ${TRACKER_COMPILER_CMD}) set(TRACKER_COMPILER_FINAL_DEPENDS ${TRACKER_COMPILER_DEPENDS}) endif()