Merge branch 'development' into cmake/warn_virtual

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

# Conflicts:
#	Code/Legacy/CryCommon/IConsole.h
#	Code/Legacy/CrySystem/LocalizedStringManager.h
#	Code/Legacy/CrySystem/XConsole.h
#	Code/Legacy/CrySystem/XConsoleVariable.h
#	Code/Legacy/CrySystem/XML/XmlUtils.cpp
#	cmake/Platform/Common/Clang/Configurations_clang.cmake
This commit is contained in:
Esteban Papp
2021-09-07 18:42:40 -07:00
228 changed files with 1196 additions and 16357 deletions
+2 -4
View File
@@ -123,10 +123,8 @@ function(ly_add_external_target)
else()
# only install external 3rdParty that are within the source tree
cmake_path(RELATIVE_PATH ly_add_external_target_3RDPARTY_ROOT_DIRECTORY
BASE_DIRECTORY ${LY_ROOT_FOLDER}
OUTPUT_VARIABLE relative_path)
if(relative_path AND NOT relative_path MATCHES "^../")
cmake_path(IS_PREFIX LY_ROOT_FOLDER ${ly_add_external_target_3RDPARTY_ROOT_DIRECTORY} NORMALIZE is_in_source_tree)
if(is_in_source_tree)
ly_install_external_target(${ly_add_external_target_3RDPARTY_ROOT_DIRECTORY})
endif()
set(BASE_PATH "${ly_add_external_target_3RDPARTY_ROOT_DIRECTORY}")
+8 -5
View File
@@ -18,7 +18,7 @@ set(LY_GOOGLETEST_EXTRA_PARAMS CACHE STRING "Allows injection of additional opti
find_package(Python REQUIRED MODULE)
ly_set(LY_PYTEST_EXECUTABLE ${LY_PYTHON_CMD} -B -m pytest -v --tb=short --show-capture=log -c ${LY_ROOT_FOLDER}/ctest_pytest.ini --build-directory "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/$<CONFIG>")
ly_set(LY_TEST_GLOBAL_KNOWN_SUITE_NAMES "smoke" "main" "periodic" "benchmark" "sandbox")
ly_set(LY_TEST_GLOBAL_KNOWN_SUITE_NAMES "smoke" "main" "periodic" "benchmark" "sandbox" "awsi")
ly_set(LY_TEST_GLOBAL_KNOWN_REQUIREMENTS "gpu")
# Set default test aborts to 25 minutes, avoids hitting the CI pipeline inactivity timeout usually set to 30 minutes
@@ -71,11 +71,14 @@ endfunction()
# \arg:PARENT_NAME(optional) - Name of the parent test run target (if this is a subsequent call to specify a suite)
# \arg:TEST_REQUIRES(optional) - List of system resources that are required to run this test.
# Only available option is "gpu"
# \arg:TEST_SUITE(optional) - "smoke" or "periodic" or "sandbox" - prevents the test from running normally
# \arg:TEST_SUITE(optional) - "smoke" or "periodic" or "benchmark" or "sandbox" or "awsi" - prevents the test from running normally
# and instead places it a special suite of tests that only run when requested.
# Otherwise, do not specify a TEST_SUITE value and the default ("main") will apply.
# "smoke" is tiny, quick tests of fundamental operation (tests with no suite marker will also execute here in CI)
# "periodic" is low-priority verification, which should not block code submission
# "benchmark" is currently reserved for Google Benchmarks
# "sandbox" should be only be used for the workflow of flaky tests
# "awsi" Time consuming AWS integration end-to-end tests
# \arg:TIMEOUT (optional) The timeout in seconds for the module. Defaults to LY_TEST_DEFAULT_TIMEOUT.
# \arg:TEST_COMMAND - Command which runs the tests. It is a required argument
# \arg:NON_IDE_PARAMS - extra params that will be run in ctest, but will not be used in the IDE.
@@ -279,7 +282,7 @@ endfunction()
# \arg:RUNTIME_DEPENDENCIES (optional) - List of additional runtime dependencies required by this test.
# \arg:COMPONENT (optional) - Scope of the feature area that the test belongs to (eg. physics, graphics, etc.).
# \arg:EXCLUDE_TEST_RUN_TARGET_FROM_IDE(bool) - If set the test run target will be not be shown in the IDE
# \arg:TEST_SUITE(optional) - "smoke" or "periodic" or "sandbox" - prevents the test from running normally
# \arg:TEST_SUITE(optional) - "smoke" or "periodic" or "sandbox" or "awsi" - prevents the test from running normally
# and instead places it a special suite of tests that only run when requested.
# \arg:TIMEOUT (optional) The timeout in seconds for the module. If not set defaults to LY_TEST_DEFAULT_TIMEOUT
#
@@ -331,7 +334,7 @@ endfunction()
# \arg:TARGET Name of the target module that is being run for tests. If not provided, will default to 'NAME'
# \arg:TEST_REQUIRES(optional) List of system resources that are required to run this test.
# Only available option is "gpu"
# \arg:TEST_SUITE(optional) - "smoke" or "periodic" or "sandbox" - prevents the test from running normally
# \arg:TEST_SUITE(optional) - "smoke" or "periodic" or "sandbox" or "awsi" - prevents the test from running normally
# and instead places it a special suite of tests that only run when requested.
# \arg:TEST_COMMAND(optional) - Command which runs the tests.
# If not supplied, a default of "AzTestRunner $<TARGET_FILE:${NAME}> AzRunUnitTests" will be used
@@ -372,7 +375,7 @@ function(ly_add_googletest)
# will actually run everything in main OR everything tagged as requiring a GPU
# instead of only tests tagged with BOTH main and gpu...
# so we have to do it this way (negating all others)
set(non_ide_params "--gtest_filter=-*SUITE_smoke*:*SUITE_periodic*:*SUITE_benchmark*:*SUITE_sandbox*")
set(non_ide_params "--gtest_filter=-*SUITE_smoke*:*SUITE_periodic*:*SUITE_benchmark*:*SUITE_sandbox*:*SUITE_awsi*")
endif()
if(NOT ly_add_googletest_TEST_COMMAND)
@@ -19,7 +19,6 @@ ly_append_configurations_options(
# Disabled warnings (please do not disable any others without first consulting ly-warnings)
-Wrange-loop-analysis
-Wno-unknown-warning-option # used as a way to mark warnings that are MSVC only
-Wno-format-security
-Wno-parentheses
-Wno-reorder
-Wno-switch
@@ -45,13 +45,15 @@ ly_append_configurations_options(
/we4265 # 'class': class has virtual functions, but destructor is not virtual
/we4266 # 'function': no override available for virtual member function from base 'type'; function is hidden
/we4296 # 'operator': expression is always false
/we5233 # explicit lambda capture 'identifier' is not used
/we4426 # optimization flags changed after including header, may be due to #pragma optimize()
/we4437 # dynamic_cast from virtual base 'class1' to 'class2' could fail in some contexts
#/we4619 # #pragma warning: there is no warning number 'number'. Unfortunately some versions of MSVC 16.X dont filter this warning coming from external headers and Qt has a bad warning in QtCore/qvector.h(340,12)
/we4774 # 'string' : format string expected in argument number is not a string literal
/we4777 # 'function' : format string 'string' requires an argument of type 'type1', but variadic argument number has type 'type2
/we5031 # #pragma warning(pop): likely mismatch, popping warning state pushed in different file
/we5032 # detected #pragma warning(push) with no corresponding #pragma warning(pop)
/we5233 # explicit lambda capture 'identifier' is not used
/Zc:forScope # Force Conformance in for Loop Scope
/diagnostics:caret # Compiler diagnostic options: includes the column where the issue was found and places a caret (^) under the location in the line of code where the issue was detected.