Browse Source

Merge pull request #6 from aws-lumberyard-dev/netsoak_enable_gems

Convert NetSoakTest to enable_gems format
AMZN-puvvadar 4 năm trước cách đây
mục cha
commit
3f209083e3

+ 27 - 37
Gem/Code/CMakeLists.txt

@@ -36,7 +36,6 @@ ly_add_target(
 ly_add_target(
 ly_add_target(
     NAME NetSoakTest ${PAL_TRAIT_MONOLITHIC_DRIVEN_MODULE_TYPE}
     NAME NetSoakTest ${PAL_TRAIT_MONOLITHIC_DRIVEN_MODULE_TYPE}
     NAMESPACE Gem
     NAMESPACE Gem
-    OUTPUT_NAME Gem.NetSoakTest.5111dee500ed4812a7905093a73d3837.v0.1.0
     FILES_CMAKE
     FILES_CMAKE
         netsoaktest_shared_files.cmake
         netsoaktest_shared_files.cmake
     INCLUDE_DIRECTORIES
     INCLUDE_DIRECTORIES
@@ -49,48 +48,39 @@ ly_add_target(
             Gem::NetSoakTest.Static
             Gem::NetSoakTest.Static
 )
 )
 
 
+# if enabled, NetSoakTest is used by all kinds of applications
+ly_create_alias(NAME NetSoakTest.Clients  NAMESPACE Gem TARGETS Gem::NetSoakTest)
+ly_create_alias(NAME NetSoakTest.Servers  NAMESPACE Gem TARGETS Gem::NetSoakTest)
+
 ################################################################################
 ################################################################################
 # Gem dependencies
 # Gem dependencies
 ################################################################################
 ################################################################################
 
 
-if(PAL_TRAIT_BUILD_HOST_TOOLS)
-    ly_add_project_dependencies(
-        PROJECT_NAME
-            NetSoakTest
-        TARGETS
-            AssetBuilder
-            AssetProcessor
-            AssetProcessorBatch
-            Editor
-        DEPENDENCIES_FILES
-            tool_dependencies.cmake
-    )
-endif()
+# The GameLauncher uses "Clients" gem variants:
+ly_enable_gems(PROJECT_NAME NetSoakTest GEM_FILE enabled_gems.cmake
+    TARGETS NetSoakTest.GameLauncher
+    VARIANTS Clients)
 
 
+# If we build a server, then apply the gems to the server
 if(PAL_TRAIT_BUILD_SERVER_SUPPORTED)
 if(PAL_TRAIT_BUILD_SERVER_SUPPORTED)
-    ly_add_target(
-        NAME NetSoakTest.Server ${PAL_TRAIT_MONOLITHIC_DRIVEN_MODULE_TYPE}
-        NAMESPACE Gem
-        OUTPUT_NAME Gem.NetSoakTest.Server.5111dee500ed4812a7905093a73d3837.v0.1.0
-        FILES_CMAKE
-            netsoaktest_shared_files.cmake
-        INCLUDE_DIRECTORIES
-            PRIVATE
-                Source
-                .
-        BUILD_DEPENDENCIES
-            PRIVATE
-                Gem::NetSoakTest.Static
-    )
-
-    ly_add_project_dependencies(
-        PROJECT_NAME
-            NetSoakTest
-        TARGETS
-            NetSoakTest.ServerLauncher
-        DEPENDENCIES_FILES
-            runtime_dependencies.cmake
-    )
+    # if we're making a server, then add the "Server" gem variants to it:
+    ly_enable_gems(PROJECT_NAME NetSoakTest GEM_FILE enabled_gems.cmake
+        TARGETS NetSoakTest.ServerLauncher
+        VARIANTS Servers)
+    
     set_property(GLOBAL APPEND PROPERTY LY_LAUNCHER_SERVER_PROJECTS NetSoakTest)
     set_property(GLOBAL APPEND PROPERTY LY_LAUNCHER_SERVER_PROJECTS NetSoakTest)
+endif()
+
+if (PAL_TRAIT_BUILD_HOST_TOOLS)
+    # The Editor uses "Tools" gem variants:
+    ly_enable_gems(
+        PROJECT_NAME NetSoakTest GEM_FILE enabled_gems.cmake
+        TARGETS Editor
+        VARIANTS Tools)
 
 
+    # The pipeline tools use "Builders" gem variants:
+    ly_enable_gems(
+        PROJECT_NAME NetSoakTest GEM_FILE enabled_gems.cmake
+        TARGETS AssetBuilder AssetProcessor AssetProcessorBatch
+        VARIANTS Builders)
 endif()
 endif()

+ 1 - 1
Gem/Code/Source/NetSoakTestSystemComponent.cpp

@@ -96,7 +96,7 @@ namespace NetSoakTest
     AZ_CVAR(AZ::TimeMs, soak_variancems, AZ::TimeMs(0), nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "Simulated connection quality variance");
     AZ_CVAR(AZ::TimeMs, soak_variancems, AZ::TimeMs(0), nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "Simulated connection quality variance");
     AZ_CVAR(uint16_t, soak_losspercentage, 0, nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "Simulated connection quality packet drop rate");
     AZ_CVAR(uint16_t, soak_losspercentage, 0, nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "Simulated connection quality packet drop rate");
     AZ_CVAR(AZ::CVarFixedString, soak_serveraddr, AZ::CVarFixedString("127.0.0.1"), nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "The address of the server or host to connect to");
     AZ_CVAR(AZ::CVarFixedString, soak_serveraddr, AZ::CVarFixedString("127.0.0.1"), nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "The address of the server or host to connect to");
-    AZ_CVAR(uint16_t, soak_port, 30090, nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "The port that this soak test will bind to for game traffic");
+    AZ_CVAR(uint16_t, soak_port, 33450, nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "The port that this soak test will bind to for game traffic");
     AZ_CVAR(ProtocolType, soak_protocol, ProtocolType::Udp, nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "Soak test protocol");
     AZ_CVAR(ProtocolType, soak_protocol, ProtocolType::Udp, nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "Soak test protocol");
     AZ_CVAR(SoakMode, soak_mode, SoakMode::Loopback, nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "Soak test mode");
     AZ_CVAR(SoakMode, soak_mode, SoakMode::Loopback, nullptr, AZ::ConsoleFunctorFlags::DontReplicate, "Soak test mode");
 
 

+ 21 - 0
Gem/Code/enabled_gems.cmake

@@ -0,0 +1,21 @@
+#
+# Copyright (c) Contributors to the Open 3D Engine Project
+# 
+# SPDX-License-Identifier: Apache-2.0 OR MIT
+#
+#
+
+set(ENABLED_GEMS
+    Atom_AtomBridge
+    NetSoakTest
+    Multiplayer
+    LyShine
+    Maestro
+    SceneProcessing
+    ImageProcessingAtom
+    ImGui
+    DebugDraw
+    LmbrCentral
+    TextureAtlas
+    Camera
+)

+ 0 - 10
Gem/Code/netsoaktest_ios_files.cmake

@@ -1,10 +0,0 @@
-#
-# Copyright (c) Contributors to the Open 3D Engine Project
-# 
-# SPDX-License-Identifier: Apache-2.0 OR MIT
-#
-#
-
-set(FILES
-    ../Resources/IOSLauncher/Info.plist
-)

+ 0 - 12
Gem/Code/runtime_dependencies.cmake

@@ -1,12 +0,0 @@
-#
-# Copyright (c) Contributors to the Open 3D Engine Project
-# 
-# SPDX-License-Identifier: Apache-2.0 OR MIT
-#
-#
-
-set(GEM_DEPENDENCIES
-    Gem::Atom_AtomBridge
-    Gem::NetSoakTest
-    Gem::Multiplayer
-)

+ 0 - 20
Gem/Code/tool_dependencies.cmake

@@ -1,20 +0,0 @@
-#
-# Copyright (c) Contributors to the Open 3D Engine Project
-# 
-# SPDX-License-Identifier: Apache-2.0 OR MIT
-#
-#
-
-# Extracted from Editor.xml
-set(GEM_DEPENDENCIES
-    Gem::NetSoakTest
-    Gem::Multiplayer
-    Gem::Atom_AtomBridge.Editor
-    Gem::LyShine.Editor
-    Gem::Maestro.Editor
-    Gem::SceneProcessing.Editor
-    Gem::ImageProcessingAtom.Editor
-    Gem::LmbrCentral.Editor
-    Gem::TextureAtlas.Editor
-    Gem::Camera.Editor
-)

+ 2 - 2
Gem/Resources/GameSDK.ico

@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
 version https://git-lfs.github.com/spec/v1
-oid sha256:61efd8df621780af995fc1250918df5e00364ff00f849bef67702cd4b0a152e1
-size 65537
+oid sha256:d717f77fe01f45df934a61bbc215e5322447d21e16f3cebcf2a02f148178f266
+size 106449