o3de/o3de
cmake/Findo3de.cmake
:17
set(${path} ${CMAKE_CURRENT_FUNCTION_LIST_DIR} PARENT_SCOPE)
set(${path} ${CMAKE_CURRENT_FUNCTION_LIST_DIR} PARENT_SCOPE)
get_filename_component(SCRIPT_DIR "${CMAKE_CURRENT_FUNCTION_LIST_DIR}" ABSOLUTE)
add_custom_command(TARGET ${TARGET_NAME}
COMMAND ${CMAKE_COMMAND} -E copy_directory_if_different ${CMAKE_CURRENT_FUNCTION_LIST_DIR} $<TARGET_FILE_DIR:${TARGET_NAME}>/LivePP
WORKING_DIRECTORY ${CMAKE_CURRENT_FUNCTION_LIST_DIR}
)
add_custom_target(${target}_compute_git_info ALL
BYPRODUCTS "${file_path}"
COMMENT "Generate git revision file for ${target}"
COMMAND ${CMAKE_COMMAND} -DWORKING_DIRECTORY=${CMAKE_CURRENT_SOURCE_DIR}
-DGIT_EXECUTABLE=${GIT_EXECUTABLE}
-D_RAPIDS_GIT_PREFIX=${_RAPIDS_PREFIX}
-DTEMPLATE_FILE=${CMAKE_CURRENT_FUNCTION_LIST_DIR}/template/git_revision.hpp.in
-DFILE_TO_WRITE=${file_path} -P
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/detail/compute_git_info.cmake
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
source_group(TREE ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/../modules PREFIX Modules FILES ${ModuleFiles})
configure_file(
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/rustlang-wrapper.sh.in
${CMAKE_BINARY_DIR}/cargo_home/rustc-wrapper.sh
@ONLY
)
add_custom_command(
TARGET ${GEN} POST_BUILD
COMMAND powershell -NoProfile -ExecutionPolicy Bypass
-File "${CMAKE_CURRENT_FUNCTION_LIST_DIR}/MutexCopy.ps1"
-src "$<TARGET_FILE:Halide::Halide>"
-dstDir "$<TARGET_FILE_DIR:${GEN}>"
VERBATIM
)
add_custom_command(
OUTPUT "generated/${namespace}/${output}.cpp" "generated/${namespace}/${output}.hpp"
COMMAND ${CMAKE_COMMAND} -D script_dir="${CMAKE_CURRENT_FUNCTION_LIST_DIR}" -D list_dir="${CMAKE_CURRENT_LIST_DIR}" -D input="${input}" -D name=${name} -D namespace=${namespace} -D output="${output}" -P "${CMAKE_CURRENT_FUNCTION_LIST_DIR}/transform_file_to_string.cmake"
DEPENDS ${input} ${CMAKE_CURRENT_FUNCTION_LIST_DIR}/transform_file_to_string.cmake
)
target_sources(${TARGET_NAME}
PRIVATE
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/src/public/eastl_allocator.cpp
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/src/game/UnifiedSDK.natvis)
target_sources(${TARGET} PUBLIC
# BSP
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/family.c
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/../board.c
)
target_sources(${TARGET} PUBLIC
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/source/ff.c
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/source/ffsystem.c
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/source/ffunicode.c
)