# # Copyright (c) Contributors to the Open 3D Engine Project. # For complete copyright and license terms please see the LICENSE at the root of this distribution. # # SPDX-License-Identifier: Apache-2.0 OR MIT # # o3de_pal_dir(pal_source_dir ${CMAKE_CURRENT_LIST_DIR}/Source/Platform/${PAL_PLATFORM_NAME} "${gem_restricted_path}" "${gem_path}" "${gem_parent_relative_path}") ly_add_target( NAME ${gem_name}.Static STATIC NAMESPACE Gem PLATFORM_INCLUDE_FILES ${pal_source_dir}/platform_${PAL_PLATFORM_NAME_LOWERCASE}.cmake FILES_CMAKE savedata_files.cmake ${pal_source_dir}/platform_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake INCLUDE_DIRECTORIES PRIVATE Source PUBLIC Include ${pal_source_dir} BUILD_DEPENDENCIES PUBLIC AZ::AzCore AZ::AzFramework ) ly_add_target( NAME ${gem_name} ${PAL_TRAIT_MONOLITHIC_DRIVEN_MODULE_TYPE} NAMESPACE Gem FILES_CMAKE savedata_shared_files.cmake INCLUDE_DIRECTORIES PRIVATE Source PUBLIC Include BUILD_DEPENDENCIES PRIVATE Gem::${gem_name}.Static ) # Inject the gem name into the Module source file ly_add_source_properties( SOURCES Source/SaveDataModule.cpp PROPERTY COMPILE_DEFINITIONS VALUES O3DE_GEM_NAME=${gem_name} O3DE_GEM_VERSION=${gem_version}) # the ${gem_name} module above is only used in Clients by default. ly_create_alias(NAME ${gem_name}.Clients NAMESPACE Gem TARGETS Gem::${gem_name}) ################################################################################ # Tests ################################################################################ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED) ly_add_target( NAME ${gem_name}.Tests ${PAL_TRAIT_TEST_TARGET_TYPE} NAMESPACE Gem FILES_CMAKE savedata_tests_files.cmake ${pal_source_dir}/platform_test_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake INCLUDE_DIRECTORIES PRIVATE Tests Source BUILD_DEPENDENCIES PRIVATE AZ::AzTest Gem::${gem_name}.Static ) ly_add_googletest( NAME Gem::${gem_name}.Tests LABELS REQUIRES_tiaf ) endif()