You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
2.4 KiB
CMake
65 lines
2.4 KiB
CMake
#
|
|
# Copyright (c) Contributors to the Open 3D Engine Project.
|
|
# For complete copyright and license terms please see the LICENSE at the root of this distribution.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
|
#
|
|
#
|
|
|
|
# All platforms and configurations end up including this file
|
|
# Here we clean up the variables and add common compilation flags to all platforms. Each platform then will add their
|
|
# own definitions. Common configurations can be shared by moving those configurations to the "Common" folder and making
|
|
# each platform include them
|
|
|
|
# Clear all
|
|
ly_set(CMAKE_C_FLAGS "")
|
|
ly_set(CMAKE_CXX_FLAGS "")
|
|
ly_set(LINK_OPTIONS "")
|
|
foreach(conf ${CMAKE_CONFIGURATION_TYPES})
|
|
string(TOUPPER ${conf} UCONF)
|
|
ly_set(CMAKE_C_FLAGS_${UCONF} "")
|
|
ly_set(CMAKE_CXX_FLAGS_${UCONF} "")
|
|
ly_set(LINK_OPTIONS_${UCONF} "")
|
|
ly_set(LY_BUILD_CONFIGURATION_TYPE_${UCONF} ${conf})
|
|
endforeach()
|
|
|
|
# Common configurations
|
|
ly_append_configurations_options(
|
|
DEFINES
|
|
# Since we disable exceptions, we need to define _HAS_EXCEPTIONS=0 so the STD does not add exception handling
|
|
_HAS_EXCEPTIONS=0
|
|
DEFINES_DEBUG
|
|
_DEBUG # TODO: this should be able to removed since it gets added automatically by some compilation flags
|
|
AZ_DEBUG_BUILD=1
|
|
AZ_ENABLE_TRACING
|
|
AZ_ENABLE_DEBUG_TOOLS
|
|
AZ_BUILD_CONFIGURATION_TYPE="${LY_BUILD_CONFIGURATION_TYPE_DEBUG}"
|
|
DEFINES_PROFILE
|
|
_PROFILE
|
|
PROFILE
|
|
NDEBUG
|
|
AZ_ENABLE_TRACING
|
|
AZ_ENABLE_DEBUG_TOOLS
|
|
AZ_BUILD_CONFIGURATION_TYPE="${LY_BUILD_CONFIGURATION_TYPE_PROFILE}"
|
|
DEFINES_RELEASE
|
|
_RELEASE
|
|
RELEASE
|
|
NDEBUG
|
|
AZ_BUILD_CONFIGURATION_TYPE="${LY_BUILD_CONFIGURATION_TYPE_RELEASE}"
|
|
)
|
|
|
|
# Ninja: parallel compile and link pool settings
|
|
if(CMAKE_GENERATOR MATCHES "Ninja")
|
|
set(LY_PARALLEL_COMPILE_JOBS "" CACHE STRING "Number of compile jobs to use (Defaults to not set)")
|
|
set(LY_PARALLEL_LINK_JOBS "" CACHE STRING "Number of link jobs to use (Defaults to not set)")
|
|
|
|
if(LY_PARALLEL_COMPILE_JOBS)
|
|
set_property(GLOBAL APPEND PROPERTY JOB_POOLS compile_job_pool=${LY_PARALLEL_COMPILE_JOBS})
|
|
ly_set(CMAKE_JOB_POOL_COMPILE compile_job_pool)
|
|
endif()
|
|
if(LY_PARALLEL_LINK_JOBS)
|
|
set_property(GLOBAL APPEND PROPERTY JOB_POOLS link_job_pool=${LY_PARALLEL_LINK_JOBS})
|
|
ly_set(CMAKE_JOB_POOL_LINK link_job_pool)
|
|
endif()
|
|
endif()
|