CMakeLists.txt 3.3 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. ly_add_target(
  9. NAME ${gem_name}.Static STATIC
  10. NAMESPACE Gem
  11. FILES_CMAKE
  12. startingpointinput_files.cmake
  13. startingpointinput_autogen_files.cmake
  14. INCLUDE_DIRECTORIES
  15. PRIVATE
  16. Source
  17. .
  18. PUBLIC
  19. Include
  20. BUILD_DEPENDENCIES
  21. PUBLIC
  22. AZ::AzCore
  23. AZ::AzFramework
  24. CryCommon
  25. Gem::ScriptCanvas.API
  26. Gem::ScriptCanvas.Extensions
  27. AUTOGEN_RULES
  28. *.ScriptCanvasGrammar.xml,ScriptCanvasGrammar_Header.jinja,$path/$fileprefix.generated.h
  29. *.ScriptCanvasGrammar.xml,ScriptCanvasGrammar_Source.jinja,$path/$fileprefix.generated.cpp
  30. *.ScriptCanvasNodeable.xml,ScriptCanvasNodeable_Header.jinja,$path/$fileprefix.generated.h
  31. *.ScriptCanvasNodeable.xml,ScriptCanvasNodeable_Source.jinja,$path/$fileprefix.generated.cpp
  32. )
  33. ly_add_target(
  34. NAME ${gem_name} ${PAL_TRAIT_MONOLITHIC_DRIVEN_MODULE_TYPE}
  35. NAMESPACE Gem
  36. FILES_CMAKE
  37. startingpointinput_shared_files.cmake
  38. INCLUDE_DIRECTORIES
  39. PRIVATE
  40. Source
  41. .
  42. PUBLIC
  43. Include
  44. BUILD_DEPENDENCIES
  45. PRIVATE
  46. AZ::AzFramework
  47. Gem::${gem_name}.Static
  48. )
  49. ly_add_source_properties(
  50. SOURCES Source/StartingPointInputGem.cpp
  51. PROPERTY COMPILE_DEFINITIONS
  52. VALUES
  53. ${LY_PAL_TOOLS_DEFINES}
  54. O3DE_GEM_NAME=${gem_name}
  55. O3DE_GEM_VERSION=${gem_version}
  56. )
  57. # the above module is for use in clients and servers
  58. ly_create_alias(NAME ${gem_name}.Servers NAMESPACE Gem TARGETS Gem::${gem_name})
  59. ly_create_alias(NAME ${gem_name}.Unified NAMESPACE Gem TARGETS Gem::${gem_name})
  60. ly_create_alias(NAME ${gem_name}.Clients NAMESPACE Gem TARGETS Gem::${gem_name})
  61. if(PAL_TRAIT_BUILD_HOST_TOOLS)
  62. ly_add_target(
  63. NAME ${gem_name}.Editor GEM_MODULE
  64. NAMESPACE Gem
  65. FILES_CMAKE
  66. startingpointinput_shared_files.cmake
  67. INCLUDE_DIRECTORIES
  68. PRIVATE
  69. Source
  70. .
  71. PUBLIC
  72. Include
  73. BUILD_DEPENDENCIES
  74. PRIVATE
  75. AZ::AzFramework
  76. Gem::${gem_name}.Static
  77. )
  78. # by default, activate the ab ove module in builders and tools:
  79. ly_create_alias(NAME ${gem_name}.Builders NAMESPACE Gem TARGETS Gem::${gem_name}.Editor)
  80. ly_create_alias(NAME ${gem_name}.Tools NAMESPACE Gem TARGETS Gem::${gem_name}.Editor)
  81. endif()
  82. ################################################################################
  83. # Tests
  84. ################################################################################
  85. if(PAL_TRAIT_BUILD_TESTS_SUPPORTED)
  86. ly_add_target(
  87. NAME ${gem_name}.Tests MODULE
  88. NAMESPACE Gem
  89. FILES_CMAKE
  90. startingpointinput_tests_files.cmake
  91. INCLUDE_DIRECTORIES
  92. PRIVATE
  93. Tests
  94. Source
  95. BUILD_DEPENDENCIES
  96. PRIVATE
  97. AZ::AzTest
  98. Gem::${gem_name}.Static
  99. )
  100. ly_add_googletest(
  101. NAME Gem::${gem_name}.Tests
  102. )
  103. endif()