CMakeLists.txt 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. #
  2. # Copyright (c) Contributors to the Open 3D Engine Project.
  3. # For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. #
  5. # SPDX-License-Identifier: Apache-2.0 OR MIT
  6. #
  7. #
  8. include(AzFramework/feature_options.cmake)
  9. o3de_pal_dir(pal_dir ${CMAKE_CURRENT_LIST_DIR}/Platform/${PAL_PLATFORM_NAME} ${O3DE_ENGINE_RESTRICTED_PATH} ${LY_ROOT_FOLDER})
  10. set(common_dir ${CMAKE_CURRENT_LIST_DIR}/Platform/Common)
  11. ly_add_target(
  12. NAME AzFramework STATIC
  13. NAMESPACE AZ
  14. FILES_CMAKE
  15. AzFramework/azframework_files.cmake
  16. ${pal_dir}/platform_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake
  17. PLATFORM_INCLUDE_FILES
  18. ${pal_dir}/platform_${PAL_PLATFORM_NAME_LOWERCASE}.cmake
  19. INCLUDE_DIRECTORIES
  20. PUBLIC
  21. .
  22. ${pal_dir}
  23. PRIVATE
  24. ${common_dir}
  25. BUILD_DEPENDENCIES
  26. PRIVATE
  27. AZ::AzCore
  28. PUBLIC
  29. AZ::AzNetworking
  30. 3rdParty::zstd
  31. 3rdParty::lz4
  32. )
  33. set(LY_SEARCH_MODE_DEFINE $<$<BOOL:"${LY_ARCHIVE_FILE_SEARCH_MODE}">:LY_ARCHIVE_FILE_SEARCH_MODE=${LY_ARCHIVE_FILE_SEARCH_MODE}>)
  34. ly_add_source_properties(
  35. SOURCES
  36. AzFramework/Archive/ArchiveVars.cpp
  37. PROPERTY COMPILE_DEFINITIONS
  38. VALUES ${LY_SEARCH_MODE_DEFINE})
  39. if(PAL_TRAIT_BUILD_TESTS_SUPPORTED)
  40. o3de_pal_dir(test_pal_dir ${CMAKE_CURRENT_LIST_DIR}/Tests/Platform/${PAL_PLATFORM_NAME} ${O3DE_ENGINE_RESTRICTED_PATH} ${LY_ROOT_FOLDER})
  41. ly_add_target(
  42. NAME AzFrameworkTestShared STATIC
  43. NAMESPACE AZ
  44. FILES_CMAKE
  45. Tests/framework_shared_tests_files.cmake
  46. AzFramework/Physics/physics_mock_files.cmake
  47. Tests/terrain_mock_files.cmake
  48. INCLUDE_DIRECTORIES
  49. PUBLIC
  50. Tests
  51. BUILD_DEPENDENCIES
  52. PRIVATE
  53. AZ::AzCore
  54. AZ::AzFramework
  55. PUBLIC
  56. AZ::AzTest
  57. AZ::AzTestShared
  58. )
  59. if(PAL_TRAIT_BUILD_HOST_TOOLS)
  60. ly_add_target(
  61. NAME ProcessLaunchTest EXECUTABLE
  62. NAMESPACE AZ
  63. FILES_CMAKE
  64. Tests/process_launch_test_files.cmake
  65. INCLUDE_DIRECTORIES
  66. PRIVATE
  67. Tests
  68. BUILD_DEPENDENCIES
  69. PRIVATE
  70. AZ::AzCore
  71. AZ::AzFramework
  72. )
  73. ly_add_target(
  74. NAME AzFramework.Tests ${PAL_TRAIT_TEST_TARGET_TYPE}
  75. NAMESPACE AZ
  76. FILES_CMAKE
  77. Tests/frameworktests_files.cmake
  78. ${test_pal_dir}/platform_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake
  79. INCLUDE_DIRECTORIES
  80. PRIVATE
  81. Tests
  82. ${test_pal_dir}
  83. BUILD_DEPENDENCIES
  84. PRIVATE
  85. AZ::AzFramework
  86. AZ::AzTest
  87. AZ::AzTestShared
  88. AZ::AzFrameworkTestShared
  89. RUNTIME_DEPENDENCIES
  90. AZ::ProcessLaunchTest
  91. )
  92. ly_add_googletest(
  93. NAME AZ::AzFramework.Tests
  94. LABELS REQUIRES_tiaf;TIAF_shard_fixture
  95. )
  96. include(${test_pal_dir}/platform_specific_test_targets.cmake)
  97. endif()
  98. endif()