From 0e204163a6ac69b599c391ee92a1be8cc9bfa854 Mon Sep 17 00:00:00 2001 From: AMZN-Olex <5432499+AMZN-Olex@users.noreply.github.com> Date: Mon, 14 Feb 2022 09:59:20 -0600 Subject: [PATCH 1/4] Adds support for additional VS debugger args Signed-off-by: AMZN-Olex <5432499+AMZN-Olex@users.noreply.github.com> --- Code/LauncherUnified/launcher_generator.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Code/LauncherUnified/launcher_generator.cmake b/Code/LauncherUnified/launcher_generator.cmake index 70bcf776af..fe0f5e1f85 100644 --- a/Code/LauncherUnified/launcher_generator.cmake +++ b/Code/LauncherUnified/launcher_generator.cmake @@ -124,7 +124,9 @@ foreach(project_name project_path IN ZIP_LISTS LY_PROJECTS_TARGET_NAME LY_PROJEC # After ensuring that we correctly support DPI scaling, this should be switched to "PerMonitor" set_property(TARGET ${project_name}.GameLauncher APPEND PROPERTY VS_DPI_AWARE "OFF") if(LY_DEFAULT_PROJECT_PATH) - set_property(TARGET ${project_name}.GameLauncher APPEND PROPERTY VS_DEBUGGER_COMMAND_ARGUMENTS "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\"") + get_property(project_game_launcher_additional_args GLOBAL PROPERTY ${project_name}_GAMELAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) + set_property(TARGET ${project_name}.GameLauncher APPEND PROPERTY VS_DEBUGGER_COMMAND_ARGUMENTS + "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\" ${project_game_launcher_additional_args}") endif() # Associate the Clients Gem Variant with each projects GameLauncher @@ -173,7 +175,9 @@ foreach(project_name project_path IN ZIP_LISTS LY_PROJECTS_TARGET_NAME LY_PROJEC ) if(LY_DEFAULT_PROJECT_PATH) - set_property(TARGET ${project_name}.ServerLauncher APPEND PROPERTY VS_DEBUGGER_COMMAND_ARGUMENTS "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\"") + get_property(project_server_launcher_additional_args GLOBAL PROPERTY ${project_name}_SERVERLAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) + set_property(TARGET ${project_name}.ServerLauncher APPEND PROPERTY VS_DEBUGGER_COMMAND_ARGUMENTS + "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\" ${project_server_launcher_additional_args}") endif() # Associate the Servers Gem Variant with each projects ServerLauncher From 78ed8baf36fcc05e9d3c3f1a01a9042bdf0b5b14 Mon Sep 17 00:00:00 2001 From: AMZN-Olex <5432499+AMZN-Olex@users.noreply.github.com> Date: Mon, 14 Feb 2022 10:27:45 -0600 Subject: [PATCH 2/4] Refactored from global to target property Signed-off-by: AMZN-Olex <5432499+AMZN-Olex@users.noreply.github.com> --- Code/LauncherUnified/launcher_generator.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Code/LauncherUnified/launcher_generator.cmake b/Code/LauncherUnified/launcher_generator.cmake index fe0f5e1f85..b35493e55f 100644 --- a/Code/LauncherUnified/launcher_generator.cmake +++ b/Code/LauncherUnified/launcher_generator.cmake @@ -124,7 +124,7 @@ foreach(project_name project_path IN ZIP_LISTS LY_PROJECTS_TARGET_NAME LY_PROJEC # After ensuring that we correctly support DPI scaling, this should be switched to "PerMonitor" set_property(TARGET ${project_name}.GameLauncher APPEND PROPERTY VS_DPI_AWARE "OFF") if(LY_DEFAULT_PROJECT_PATH) - get_property(project_game_launcher_additional_args GLOBAL PROPERTY ${project_name}_GAMELAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) + get_target_property(project_game_launcher_additional_args ${project_name} GAMELAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) set_property(TARGET ${project_name}.GameLauncher APPEND PROPERTY VS_DEBUGGER_COMMAND_ARGUMENTS "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\" ${project_game_launcher_additional_args}") endif() @@ -175,7 +175,7 @@ foreach(project_name project_path IN ZIP_LISTS LY_PROJECTS_TARGET_NAME LY_PROJEC ) if(LY_DEFAULT_PROJECT_PATH) - get_property(project_server_launcher_additional_args GLOBAL PROPERTY ${project_name}_SERVERLAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) + get_target_property(project_server_launcher_additional_args ${project_name} SERVERLAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) set_property(TARGET ${project_name}.ServerLauncher APPEND PROPERTY VS_DEBUGGER_COMMAND_ARGUMENTS "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\" ${project_server_launcher_additional_args}") endif() From db999dda6f3c8480180d1c368ce1aa9547fc32b8 Mon Sep 17 00:00:00 2001 From: AMZN-Olex <5432499+AMZN-Olex@users.noreply.github.com> Date: Mon, 14 Feb 2022 11:01:09 -0600 Subject: [PATCH 3/4] Additional checks for presence of vs debugger command argumnets property Signed-off-by: AMZN-Olex <5432499+AMZN-Olex@users.noreply.github.com> --- Code/LauncherUnified/launcher_generator.cmake | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/Code/LauncherUnified/launcher_generator.cmake b/Code/LauncherUnified/launcher_generator.cmake index b35493e55f..9078f9a3c5 100644 --- a/Code/LauncherUnified/launcher_generator.cmake +++ b/Code/LauncherUnified/launcher_generator.cmake @@ -124,9 +124,17 @@ foreach(project_name project_path IN ZIP_LISTS LY_PROJECTS_TARGET_NAME LY_PROJEC # After ensuring that we correctly support DPI scaling, this should be switched to "PerMonitor" set_property(TARGET ${project_name}.GameLauncher APPEND PROPERTY VS_DPI_AWARE "OFF") if(LY_DEFAULT_PROJECT_PATH) + if (TARGET ${project_name}) + get_target_property(project_game_launcher_additional_args ${project_name} GAMELAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) + if (project_game_launcher_additional_args) + # Avoid pushing param-NOTFOUND into the argument in case this property wasn't found + set(additional_game_vs_debugger_args "${project_game_launcher_additional_args}") + endif() + endif() + get_target_property(project_game_launcher_additional_args ${project_name} GAMELAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) set_property(TARGET ${project_name}.GameLauncher APPEND PROPERTY VS_DEBUGGER_COMMAND_ARGUMENTS - "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\" ${project_game_launcher_additional_args}") + "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\" ${additional_game_vs_debugger_args}") endif() # Associate the Clients Gem Variant with each projects GameLauncher @@ -175,9 +183,16 @@ foreach(project_name project_path IN ZIP_LISTS LY_PROJECTS_TARGET_NAME LY_PROJEC ) if(LY_DEFAULT_PROJECT_PATH) - get_target_property(project_server_launcher_additional_args ${project_name} SERVERLAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) + if (TARGET ${project_name}) + get_target_property(project_server_launcher_additional_args ${project_name} SERVERLAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) + if (project_server_launcher_additional_args) + # Avoid pushing param-NOTFOUND into the argument in case this property wasn't found + set(additional_server_vs_debugger_args "${project_server_launcher_additional_args}") + endif() + endif() + set_property(TARGET ${project_name}.ServerLauncher APPEND PROPERTY VS_DEBUGGER_COMMAND_ARGUMENTS - "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\" ${project_server_launcher_additional_args}") + "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\" ${additional_server_vs_debugger_args}") endif() # Associate the Servers Gem Variant with each projects ServerLauncher From f5dff748d98fdaf67e7ab4605be2f3ff55b0ba25 Mon Sep 17 00:00:00 2001 From: AMZN-Olex <5432499+AMZN-Olex@users.noreply.github.com> Date: Mon, 14 Feb 2022 15:47:56 -0600 Subject: [PATCH 4/4] Cleanup Signed-off-by: AMZN-Olex <5432499+AMZN-Olex@users.noreply.github.com> --- Code/LauncherUnified/launcher_generator.cmake | 1 - 1 file changed, 1 deletion(-) diff --git a/Code/LauncherUnified/launcher_generator.cmake b/Code/LauncherUnified/launcher_generator.cmake index 9078f9a3c5..c1cc7e81a1 100644 --- a/Code/LauncherUnified/launcher_generator.cmake +++ b/Code/LauncherUnified/launcher_generator.cmake @@ -132,7 +132,6 @@ foreach(project_name project_path IN ZIP_LISTS LY_PROJECTS_TARGET_NAME LY_PROJEC endif() endif() - get_target_property(project_game_launcher_additional_args ${project_name} GAMELAUNCHER_ADDITIONAL_VS_DEBUGGER_COMMAND_ARGUMENTS) set_property(TARGET ${project_name}.GameLauncher APPEND PROPERTY VS_DEBUGGER_COMMAND_ARGUMENTS "--project-path=\"${LY_DEFAULT_PROJECT_PATH}\" ${additional_game_vs_debugger_args}") endif()