CMakeLists.txt 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  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. ly_get_list_relative_pal_filename(pal_dir ${CMAKE_CURRENT_LIST_DIR}/Platform/${PAL_PLATFORM_NAME})
  9. ly_add_target(
  10. NAME NetSoakTest.Static STATIC
  11. NAMESPACE Gem
  12. FILES_CMAKE
  13. netsoaktest_files.cmake
  14. netsoaktest_autogen_files.cmake
  15. ${pal_dir}/netsoaktest_${PAL_PLATFORM_NAME_LOWERCASE}_files.cmake
  16. INCLUDE_DIRECTORIES
  17. PRIVATE
  18. Source
  19. AZ::AzNetworking
  20. .
  21. PUBLIC
  22. Include
  23. BUILD_DEPENDENCIES
  24. PUBLIC
  25. AZ::AzGameFramework
  26. AZ::AzNetworking
  27. AUTOGEN_RULES
  28. *.AutoPackets.xml,AutoPackets_Header.jinja,$path/$fileprefix.AutoPackets.h
  29. *.AutoPackets.xml,AutoPackets_Inline.jinja,$path/$fileprefix.AutoPackets.inl
  30. *.AutoPackets.xml,AutoPackets_Source.jinja,$path/$fileprefix.AutoPackets.cpp
  31. *.AutoPackets.xml,AutoPacketDispatcher_Header.jinja,$path/$fileprefix.AutoPacketDispatcher.h
  32. *.AutoPackets.xml,AutoPacketDispatcher_Inline.jinja,$path/$fileprefix.AutoPacketDispatcher.inl
  33. )
  34. ly_add_target(
  35. NAME NetSoakTest ${PAL_TRAIT_MONOLITHIC_DRIVEN_MODULE_TYPE}
  36. NAMESPACE Gem
  37. FILES_CMAKE
  38. netsoaktest_shared_files.cmake
  39. INCLUDE_DIRECTORIES
  40. PRIVATE
  41. Source
  42. .
  43. BUILD_DEPENDENCIES
  44. PRIVATE
  45. Gem::Atom_AtomBridge.Static
  46. Gem::NetSoakTest.Static
  47. )
  48. # if enabled, NetSoakTest is used by all kinds of applications
  49. ly_create_alias(NAME NetSoakTest.Clients NAMESPACE Gem TARGETS Gem::NetSoakTest)
  50. ly_create_alias(NAME NetSoakTest.Servers NAMESPACE Gem TARGETS Gem::NetSoakTest)
  51. ################################################################################
  52. # Gem dependencies
  53. ################################################################################
  54. # The GameLauncher uses "Clients" gem variants:
  55. ly_enable_gems(PROJECT_NAME NetSoakTest GEM_FILE enabled_gems.cmake
  56. TARGETS NetSoakTest.GameLauncher
  57. VARIANTS Clients)
  58. # If we build a server, then apply the gems to the server
  59. if(PAL_TRAIT_BUILD_SERVER_SUPPORTED)
  60. # if we're making a server, then add the "Server" gem variants to it:
  61. ly_enable_gems(PROJECT_NAME NetSoakTest GEM_FILE enabled_gems.cmake
  62. TARGETS NetSoakTest.ServerLauncher
  63. VARIANTS Servers)
  64. set_property(GLOBAL APPEND PROPERTY LY_LAUNCHER_SERVER_PROJECTS NetSoakTest)
  65. endif()
  66. if (PAL_TRAIT_BUILD_HOST_TOOLS)
  67. # The Editor uses "Tools" gem variants:
  68. ly_enable_gems(
  69. PROJECT_NAME NetSoakTest GEM_FILE enabled_gems.cmake
  70. TARGETS Editor
  71. VARIANTS Tools)
  72. # The pipeline tools use "Builders" gem variants:
  73. ly_enable_gems(
  74. PROJECT_NAME NetSoakTest GEM_FILE enabled_gems.cmake
  75. TARGETS AssetBuilder AssetProcessor AssetProcessorBatch
  76. VARIANTS Builders)
  77. endif()