Merged main in
This commit is contained in:
@@ -116,10 +116,6 @@ function(ly_add_external_target)
|
||||
# Setting BASE_PATH variable in the parent scope to allow for the Find<3rdParty>.cmake scripts to use them
|
||||
set(BASE_PATH ${BASE_PATH} PARENT_SCOPE)
|
||||
|
||||
if(NOT EXISTS ${BASE_PATH})
|
||||
message(FATAL_ERROR "Cannot find 3rdParty library ${ly_add_external_target_NAME} on path ${BASE_PATH}")
|
||||
endif()
|
||||
|
||||
add_library(3rdParty::${NAME_WITH_NAMESPACE} INTERFACE IMPORTED GLOBAL)
|
||||
|
||||
if(ly_add_external_target_INCLUDE_DIRECTORIES)
|
||||
|
||||
-20
@@ -1,20 +0,0 @@
|
||||
#
|
||||
# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
# its licensors.
|
||||
#
|
||||
# For complete copyright and license terms please see the LICENSE at the root of this
|
||||
# distribution (the "License"). All use of this software is governed by the License,
|
||||
# or, if provided, by the license below or the license accompanying this file. Do not
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
ly_add_external_target(
|
||||
NAME AWSGameLiftServerSDK
|
||||
VERSION 3.4.0
|
||||
3RDPARTY_DIRECTORY AWS/GameLift
|
||||
INCLUDE_DIRECTORIES include
|
||||
COMPILE_DEFINITIONS
|
||||
AWS_CUSTOM_MEMORY_MANAGEMENT
|
||||
PLATFORM_SUPPORTS_AWS_NATIVE_SDK
|
||||
GAMELIFT_USE_STD
|
||||
)
|
||||
+7
-4
@@ -9,8 +9,11 @@
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
find_package(OpenGL)
|
||||
|
||||
ly_add_external_target(
|
||||
NAME civetweb
|
||||
VERSION civetweb-20160922-az.2
|
||||
INCLUDE_DIRECTORIES include
|
||||
)
|
||||
NAME OpenGLInterface
|
||||
VERSION ""
|
||||
BUILD_DEPENDENCIES
|
||||
OpenGL::GL
|
||||
)
|
||||
@@ -1,10 +0,0 @@
|
||||
#
|
||||
# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
# its licensors.
|
||||
#
|
||||
# For complete copyright and license terms please see the LICENSE at the root of this
|
||||
# distribution (the "License"). All use of this software is governed by the License,
|
||||
# or, if provided, by the license below or the license accompanying this file. Do not
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
@@ -11,7 +11,6 @@
|
||||
|
||||
set(FILES
|
||||
BuiltInPackages_android.cmake
|
||||
civetweb_android.cmake
|
||||
VkValidation_android.cmake
|
||||
Wwise_android.cmake
|
||||
)
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
#
|
||||
# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
# its licensors.
|
||||
#
|
||||
# For complete copyright and license terms please see the LICENSE at the root of this
|
||||
# distribution (the "License"). All use of this software is governed by the License,
|
||||
# or, if provided, by the license below or the license accompanying this file. Do not
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
# TODO AWSGameLiftServerSDK Linux shared libs are not compiled.
|
||||
set(AWSGAMELIFTSERVERSDK_LIB_PATH ${BASE_PATH}/lib/linux/libstdcxx/intel64/clang-6.0.0/$<IF:$<CONFIG:Debug>,Debug,Release>)
|
||||
|
||||
set(AWSGAMELIFTSERVERSDK_LIBS ${AWSGAMELIFTSERVERSDK_LIB_PATH}/libaws-cpp-sdk-gamelift-server.a
|
||||
${AWSGAMELIFTSERVERSDK_LIB_PATH}/libsioclient.a
|
||||
${AWSGAMELIFTSERVERSDK_LIB_PATH}/libboost_date_time.a
|
||||
${AWSGAMELIFTSERVERSDK_LIB_PATH}/libboost_random.a
|
||||
${AWSGAMELIFTSERVERSDK_LIB_PATH}/libboost_system.a
|
||||
${AWSGAMELIFTSERVERSDK_LIB_PATH}/libprotobuf.a
|
||||
)
|
||||
@@ -15,7 +15,7 @@ ly_associate_package(PACKAGE_NAME Lua-5.3.5-rev3-multiplatform TARG
|
||||
ly_associate_package(PACKAGE_NAME ilmbase-2.3.0-rev4-multiplatform TARGETS ilmbase PACKAGE_HASH 97547fdf1fbc4d81b8ccf382261f8c25514ed3b3c4f8fd493f0a4fa873bba348)
|
||||
ly_associate_package(PACKAGE_NAME hdf5-1.0.11-rev2-multiplatform TARGETS hdf5 PACKAGE_HASH 11d5e04df8a93f8c52a5684a4cacbf0d9003056360983ce34f8d7b601082c6bd)
|
||||
ly_associate_package(PACKAGE_NAME alembic-1.7.11-rev3-multiplatform TARGETS alembic PACKAGE_HASH ba7a7d4943dd752f5a662374f6c48b93493df1d8e2c5f6a8d101f3b50700dd25)
|
||||
ly_associate_package(PACKAGE_NAME assimp-5.0.1-rev6-multiplatform TARGETS assimplib PACKAGE_HASH 47f1a6d05d101def036c030484c4a6e19d745aacd57037174715c7afe2b19b4c)
|
||||
ly_associate_package(PACKAGE_NAME assimp-5.0.1-rev7-multiplatform TARGETS assimplib PACKAGE_HASH def855c89d8210db3040f1cb6ec837141ab9b8e74c158eae7c03d50160fcf30b)
|
||||
ly_associate_package(PACKAGE_NAME squish-ccr-20150601-rev3-multiplatform TARGETS squish-ccr PACKAGE_HASH c878c6c0c705e78403c397d03f5aa7bc87e5978298710e14d09c9daf951a83b3)
|
||||
ly_associate_package(PACKAGE_NAME ASTCEncoder-2017_11_14-rev2-multiplatform TARGETS ASTCEncoder PACKAGE_HASH c240ffc12083ee39a5ce9dc241de44d116e513e1e3e4cc1d05305e7aa3bdc326)
|
||||
ly_associate_package(PACKAGE_NAME md5-2.0-multiplatform TARGETS md5 PACKAGE_HASH 29e52ad22c78051551f78a40c2709594f0378762ae03b417adca3f4b700affdf)
|
||||
@@ -31,10 +31,9 @@ ly_associate_package(PACKAGE_NAME glad-2.0.0-beta-rev2-multiplatform TARG
|
||||
ly_associate_package(PACKAGE_NAME lux_core-2.2-rev5-multiplatform TARGETS lux_core PACKAGE_HASH c8c13cf7bc351643e1abd294d0841b24dee60e51647dff13db7aec396ad1e0b5)
|
||||
ly_associate_package(PACKAGE_NAME xxhash-0.7.4-rev1-multiplatform TARGETS xxhash PACKAGE_HASH e81f3e6c4065975833996dd1fcffe46c3cf0f9e3a4207ec5f4a1b564ba75861e)
|
||||
ly_associate_package(PACKAGE_NAME PVRTexTool-4.24.0-rev4-multiplatform TARGETS PVRTexTool PACKAGE_HASH d0d6da61c7557de0d2c71fc35ba56c3be49555b703f0e853d4c58225537acf1e)
|
||||
ly_associate_package(PACKAGE_NAME poly2tri-0.3.3-rev2-multiplatform TARGETS poly2tri PACKAGE_HASH 04092d06716f59b936b61906eaf3647db23b685d81d8b66131eb53e0aeaa1a38)
|
||||
ly_associate_package(PACKAGE_NAME v-hacd-2.0-rev1-multiplatform TARGETS v-hacd PACKAGE_HASH 5c71aef19cc9787d018d64eec076e9f51ea5a3e0dc6b6e22e57c898f6cc4afe3)
|
||||
|
||||
# platform-specific:
|
||||
ly_associate_package(PACKAGE_NAME AWSGameLiftServerSDK-3.4.1-rev1-linux TARGETS AWSGameLiftServerSDK PACKAGE_HASH a8149a95bd100384af6ade97e2b21a56173740d921e6c3da8188cd51554d39af)
|
||||
ly_associate_package(PACKAGE_NAME freetype-2.10.4.14-linux TARGETS freetype PACKAGE_HASH 9ad246873067717962c6b780d28a5ce3cef3321b73c9aea746a039c798f52e93)
|
||||
ly_associate_package(PACKAGE_NAME tiff-4.2.0.15-linux TARGETS tiff PACKAGE_HASH ae92b4d3b189c42ef644abc5cac865d1fb2eb7cb5622ec17e35642b00d1a0a76)
|
||||
ly_associate_package(PACKAGE_NAME AWSNativeSDK-1.7.167-rev3-linux TARGETS AWSNativeSDK PACKAGE_HASH e69c55682638dc1e7fa571a61a82c8a69d395c74a008543a5188f4bd2b6b10c4)
|
||||
|
||||
-43
@@ -1,43 +0,0 @@
|
||||
#
|
||||
# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
# its licensors.
|
||||
#
|
||||
# For complete copyright and license terms please see the LICENSE at the root of this
|
||||
# distribution (the "License"). All use of this software is governed by the License,
|
||||
# or, if provided, by the license below or the license accompanying this file. Do not
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
set(CLANG_PLATFORM_LIB_PATH ${BASE_PATH}/linux_x64/release/lib)
|
||||
|
||||
set(CLANG_INCLUDE_DIRECTORIES
|
||||
llvm/include
|
||||
linux_x64/release/include
|
||||
)
|
||||
|
||||
set(CLANG_LIBS
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangFrontend.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangSerialization.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangDriver.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangTooling.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangParse.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangSema.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangAnalysis.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangRewriteFrontend.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangRewrite.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangEdit.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangAST.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangLex.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangBasic.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMCore.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMBinaryFormat.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMDebugInfoDWARF.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMMC.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMOption.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMBitReader.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMMCParser.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMProfileData.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMTarget.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMSupport.a
|
||||
)
|
||||
@@ -10,10 +10,7 @@
|
||||
#
|
||||
|
||||
set(FILES
|
||||
AWSGameLiftServerSDK_linux.cmake
|
||||
BuiltInPackages_linux.cmake
|
||||
civetweb_linux.cmake
|
||||
Clang_linux.cmake
|
||||
dyad_linux.cmake
|
||||
FbxSdk_linux.cmake
|
||||
OpenSSL_linux.cmake
|
||||
|
||||
+1
-3
@@ -15,7 +15,7 @@ ly_associate_package(PACKAGE_NAME Lua-5.3.5-rev3-multiplatform
|
||||
ly_associate_package(PACKAGE_NAME ilmbase-2.3.0-rev4-multiplatform TARGETS ilmbase PACKAGE_HASH 97547fdf1fbc4d81b8ccf382261f8c25514ed3b3c4f8fd493f0a4fa873bba348)
|
||||
ly_associate_package(PACKAGE_NAME hdf5-1.0.11-rev2-multiplatform TARGETS hdf5 PACKAGE_HASH 11d5e04df8a93f8c52a5684a4cacbf0d9003056360983ce34f8d7b601082c6bd)
|
||||
ly_associate_package(PACKAGE_NAME alembic-1.7.11-rev3-multiplatform TARGETS alembic PACKAGE_HASH ba7a7d4943dd752f5a662374f6c48b93493df1d8e2c5f6a8d101f3b50700dd25)
|
||||
ly_associate_package(PACKAGE_NAME assimp-5.0.1-rev6-multiplatform TARGETS assimplib PACKAGE_HASH 47f1a6d05d101def036c030484c4a6e19d745aacd57037174715c7afe2b19b4c)
|
||||
ly_associate_package(PACKAGE_NAME assimp-5.0.1-rev7-multiplatform TARGETS assimplib PACKAGE_HASH def855c89d8210db3040f1cb6ec837141ab9b8e74c158eae7c03d50160fcf30b)
|
||||
ly_associate_package(PACKAGE_NAME squish-ccr-20150601-rev3-multiplatform TARGETS squish-ccr PACKAGE_HASH c878c6c0c705e78403c397d03f5aa7bc87e5978298710e14d09c9daf951a83b3)
|
||||
ly_associate_package(PACKAGE_NAME ASTCEncoder-2017_11_14-rev2-multiplatform TARGETS ASTCEncoder PACKAGE_HASH c240ffc12083ee39a5ce9dc241de44d116e513e1e3e4cc1d05305e7aa3bdc326)
|
||||
ly_associate_package(PACKAGE_NAME md5-2.0-multiplatform TARGETS md5 PACKAGE_HASH 29e52ad22c78051551f78a40c2709594f0378762ae03b417adca3f4b700affdf)
|
||||
@@ -36,8 +36,6 @@ ly_associate_package(PACKAGE_NAME glad-2.0.0-beta-rev2-multiplatform
|
||||
ly_associate_package(PACKAGE_NAME lux_core-2.2-rev5-multiplatform TARGETS lux_core PACKAGE_HASH c8c13cf7bc351643e1abd294d0841b24dee60e51647dff13db7aec396ad1e0b5)
|
||||
ly_associate_package(PACKAGE_NAME xxhash-0.7.4-rev1-multiplatform TARGETS xxhash PACKAGE_HASH e81f3e6c4065975833996dd1fcffe46c3cf0f9e3a4207ec5f4a1b564ba75861e)
|
||||
ly_associate_package(PACKAGE_NAME PVRTexTool-4.24.0-rev4-multiplatform TARGETS PVRTexTool PACKAGE_HASH d0d6da61c7557de0d2c71fc35ba56c3be49555b703f0e853d4c58225537acf1e)
|
||||
ly_associate_package(PACKAGE_NAME poly2tri-0.3.3-rev2-multiplatform TARGETS poly2tri PACKAGE_HASH 04092d06716f59b936b61906eaf3647db23b685d81d8b66131eb53e0aeaa1a38)
|
||||
ly_associate_package(PACKAGE_NAME v-hacd-2.0-rev1-multiplatform TARGETS v-hacd PACKAGE_HASH 5c71aef19cc9787d018d64eec076e9f51ea5a3e0dc6b6e22e57c898f6cc4afe3)
|
||||
|
||||
# platform-specific:
|
||||
ly_associate_package(PACKAGE_NAME freetype-2.10.4.14-mac-ios TARGETS freetype PACKAGE_HASH 67b4f57aed92082d3fd7c16aa244a7d908d90122c296b0a63f73e0a0b8761977)
|
||||
|
||||
-49
@@ -1,49 +0,0 @@
|
||||
#
|
||||
# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
# its licensors.
|
||||
#
|
||||
# For complete copyright and license terms please see the LICENSE at the root of this
|
||||
# distribution (the "License"). All use of this software is governed by the License,
|
||||
# or, if provided, by the license below or the license accompanying this file. Do not
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
set(CLANG_PLATFORM_LIB_PATH ${BASE_PATH}/xcode/$<IF:$<CONFIG:Debug>,debug,release>/lib)
|
||||
|
||||
set(CLANG_INCLUDE_DIRECTORIES
|
||||
llvm/include
|
||||
xcode/$<IF:$<CONFIG:Debug>,debug,release>/include
|
||||
)
|
||||
|
||||
set(CLANG_LIBS
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangFrontend.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangSerialization.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangDriver.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangTooling.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangParse.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangSema.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangAnalysis.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangRewriteFrontend.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangRewrite.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangEdit.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangAST.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangASTMatchers.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangLex.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libclangBasic.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMCore.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMBinaryFormat.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMDebugInfoDWARF.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMMC.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMOption.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMBitReader.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMMCParser.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMProfileData.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMTarget.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMSupport.a
|
||||
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMDemangle.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMSupport.a
|
||||
${CLANG_PLATFORM_LIB_PATH}/libLLVMCore.a
|
||||
|
||||
)
|
||||
+2
-2
@@ -9,5 +9,5 @@
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
set(CIVETWEB_LIBS ${BASE_PATH}/lib/Windows/$<IF:$<CONFIG:Debug>,debug,release>/civetweb.lib)
|
||||
|
||||
# MacOS 10.14 deprecates OpenGL. This silences the warnings for now.
|
||||
set(OPENGLINTERFACE_COMPILE_DEFINITIONS GL_SILENCE_DEPRECATION)
|
||||
-10
@@ -1,10 +0,0 @@
|
||||
#
|
||||
# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
# its licensors.
|
||||
#
|
||||
# For complete copyright and license terms please see the LICENSE at the root of this
|
||||
# distribution (the "License"). All use of this software is governed by the License,
|
||||
# or, if provided, by the license below or the license accompanying this file. Do not
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
+1
-2
@@ -11,9 +11,8 @@
|
||||
|
||||
set(FILES
|
||||
BuiltInPackages_mac.cmake
|
||||
civetweb_mac.cmake
|
||||
Clang_mac.cmake
|
||||
FbxSdk_mac.cmake
|
||||
OpenGLInterface_mac.cmake
|
||||
OpenSSL_mac.cmake
|
||||
Wwise_mac.cmake
|
||||
)
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
#
|
||||
# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
# its licensors.
|
||||
#
|
||||
# For complete copyright and license terms please see the LICENSE at the root of this
|
||||
# distribution (the "License"). All use of this software is governed by the License,
|
||||
# or, if provided, by the license below or the license accompanying this file. Do not
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
if (LY_MONOLITHIC_GAME)
|
||||
# Import Libs
|
||||
set(AWSGAMELIFTSERVERSDK_LIB_PATH ${BASE_PATH}/lib/windows/intel64/vs2017/$<IF:$<CONFIG:Debug>,Debug,Release>)
|
||||
else()
|
||||
# Static Libs
|
||||
set(AWSGAMELIFTSERVERSDK_LIB_PATH ${BASE_PATH}/bin/windows/intel64/vs2017/$<IF:$<CONFIG:Debug>,Debug,Release>)
|
||||
endif()
|
||||
|
||||
set(AWSGAMELIFTSERVERSDK_LIBS
|
||||
${AWSGAMELIFTSERVERSDK_LIB_PATH}/sioclient.lib
|
||||
${AWSGAMELIFTSERVERSDK_LIB_PATH}/libboost_date_time.lib
|
||||
${AWSGAMELIFTSERVERSDK_LIB_PATH}/libboost_random.lib
|
||||
${AWSGAMELIFTSERVERSDK_LIB_PATH}/libboost_system.lib
|
||||
${AWSGAMELIFTSERVERSDK_LIB_PATH}/libprotobuf$<$<CONFIG:Debug>:d>.lib
|
||||
)
|
||||
|
||||
set(AWSGAMELIFTSERVERSDK_COMPILE_DEFINITIONS
|
||||
USE_IMPORT_EXPORT
|
||||
AWS_CUSTOM_MEMORY_MANAGEMENT
|
||||
PLATFORM_SUPPORTS_AWS_NATIVE_SDK
|
||||
GAMELIFT_USE_STD
|
||||
)
|
||||
|
||||
if (NOT LY_MONOLITHIC_GAME)
|
||||
|
||||
# Add 'USE_IMPORT_EXPORT' for external linkage
|
||||
LIST(APPEND AWSGAMELIFTSERVERSDK_COMPILE_DEFINITIONS USE_IMPORT_EXPORT)
|
||||
|
||||
# Import Lib
|
||||
LIST(APPEND AWSGAMELIFTSERVERSDK_LIBS ${AWSGAMELIFTSERVERSDK_LIB_PATH}/aws-cpp-sdk-gamelift-server.lib)
|
||||
|
||||
# Shared libs
|
||||
set(AWSGAMELIFTSERVERSDK_SHARED_LIB_PATH ${BASE_PATH}/bin/windows/intel64/vs2017/$<IF:$<CONFIG:Debug>,Debug,Release>)
|
||||
set(AWSGAMELIFTSERVERSDK_RUNTIME_DEPENDENCIES ${AWSGAMELIFTSERVERSDK_SHARED_LIB_PATH}/aws-cpp-sdk-gamelift-server.dll)
|
||||
|
||||
endif()
|
||||
@@ -15,7 +15,7 @@ ly_associate_package(PACKAGE_NAME Lua-5.3.5-rev3-multiplatform
|
||||
ly_associate_package(PACKAGE_NAME ilmbase-2.3.0-rev4-multiplatform TARGETS ilmbase PACKAGE_HASH 97547fdf1fbc4d81b8ccf382261f8c25514ed3b3c4f8fd493f0a4fa873bba348)
|
||||
ly_associate_package(PACKAGE_NAME hdf5-1.0.11-rev2-multiplatform TARGETS hdf5 PACKAGE_HASH 11d5e04df8a93f8c52a5684a4cacbf0d9003056360983ce34f8d7b601082c6bd)
|
||||
ly_associate_package(PACKAGE_NAME alembic-1.7.11-rev3-multiplatform TARGETS alembic PACKAGE_HASH ba7a7d4943dd752f5a662374f6c48b93493df1d8e2c5f6a8d101f3b50700dd25)
|
||||
ly_associate_package(PACKAGE_NAME assimp-5.0.1-rev6-multiplatform TARGETS assimplib PACKAGE_HASH 47f1a6d05d101def036c030484c4a6e19d745aacd57037174715c7afe2b19b4c)
|
||||
ly_associate_package(PACKAGE_NAME assimp-5.0.1-rev7-multiplatform TARGETS assimplib PACKAGE_HASH def855c89d8210db3040f1cb6ec837141ab9b8e74c158eae7c03d50160fcf30b)
|
||||
ly_associate_package(PACKAGE_NAME squish-ccr-20150601-rev3-multiplatform TARGETS squish-ccr PACKAGE_HASH c878c6c0c705e78403c397d03f5aa7bc87e5978298710e14d09c9daf951a83b3)
|
||||
ly_associate_package(PACKAGE_NAME ASTCEncoder-2017_11_14-rev2-multiplatform TARGETS ASTCEncoder PACKAGE_HASH c240ffc12083ee39a5ce9dc241de44d116e513e1e3e4cc1d05305e7aa3bdc326)
|
||||
ly_associate_package(PACKAGE_NAME md5-2.0-multiplatform TARGETS md5 PACKAGE_HASH 29e52ad22c78051551f78a40c2709594f0378762ae03b417adca3f4b700affdf)
|
||||
@@ -37,11 +37,9 @@ ly_associate_package(PACKAGE_NAME lux_core-2.2-rev5-multiplatform
|
||||
ly_associate_package(PACKAGE_NAME xxhash-0.7.4-rev1-multiplatform TARGETS xxhash PACKAGE_HASH e81f3e6c4065975833996dd1fcffe46c3cf0f9e3a4207ec5f4a1b564ba75861e)
|
||||
ly_associate_package(PACKAGE_NAME Blast-1.1.7-rev1-multiplatform TARGETS Blast PACKAGE_HASH 36b8f393bcd25d0f85cfc7a831ebbdac881e6054c4f0735649966aa6aa86e6f0)
|
||||
ly_associate_package(PACKAGE_NAME PVRTexTool-4.24.0-rev4-multiplatform TARGETS PVRTexTool PACKAGE_HASH d0d6da61c7557de0d2c71fc35ba56c3be49555b703f0e853d4c58225537acf1e)
|
||||
ly_associate_package(PACKAGE_NAME NvCloth-1.1.6-rev1-multiplatform TARGETS NvCloth PACKAGE_HASH 05fc62634ca28644e7659a89e97f4520d791e6ddf4b66f010ac669e4e2ed4454)
|
||||
ly_associate_package(PACKAGE_NAME poly2tri-0.3.3-rev2-multiplatform TARGETS poly2tri PACKAGE_HASH 04092d06716f59b936b61906eaf3647db23b685d81d8b66131eb53e0aeaa1a38)
|
||||
ly_associate_package(PACKAGE_NAME v-hacd-2.0-rev1-multiplatform TARGETS v-hacd PACKAGE_HASH 5c71aef19cc9787d018d64eec076e9f51ea5a3e0dc6b6e22e57c898f6cc4afe3)
|
||||
|
||||
# platform-specific:
|
||||
ly_associate_package(PACKAGE_NAME AWSGameLiftServerSDK-3.4.1-rev1-windows TARGETS AWSGameLiftServerSDK PACKAGE_HASH a0586b006e4def65cc25f388de17dc475e417dc1e6f9d96749777c88aa8271b0)
|
||||
ly_associate_package(PACKAGE_NAME freetype-2.10.4.14-windows TARGETS freetype PACKAGE_HASH 88dedc86ccb8c92f14c2c033e51ee7d828fa08eafd6475c6aa963938a99f4bf3)
|
||||
ly_associate_package(PACKAGE_NAME tiff-4.2.0.14-windows TARGETS tiff PACKAGE_HASH ab60d1398e4e1e375ec0f1a00cdb1d812a07c0096d827db575ce52dd6d714207)
|
||||
ly_associate_package(PACKAGE_NAME AWSNativeSDK-1.7.167-rev3-windows TARGETS AWSNativeSDK PACKAGE_HASH 929873d4252c464620a9d288e41bd5d47c0bd22750aeb3a1caa68a3da8247c48)
|
||||
@@ -52,7 +50,8 @@ ly_associate_package(PACKAGE_NAME googletest-1.8.1-rev4-windows TARGETS goo
|
||||
ly_associate_package(PACKAGE_NAME googlebenchmark-1.5.0-rev2-windows TARGETS GoogleBenchmark PACKAGE_HASH 0c94ca69ae8e7e4aab8e90032b5c82c5964410429f3dd9dbb1f9bf4fe032b1d4)
|
||||
ly_associate_package(PACKAGE_NAME d3dx12-headers-rev1-windows TARGETS d3dx12 PACKAGE_HASH 088c637159fba4a3e4c0cf08fb4921906fd4cca498939bd239db7c54b5b2f804)
|
||||
ly_associate_package(PACKAGE_NAME pyside2-qt-5.15.1-rev2-windows TARGETS pyside2 PACKAGE_HASH c90f3efcc7c10e79b22a33467855ad861f9dbd2e909df27a5cba9db9fa3edd0f)
|
||||
ly_associate_package(PACKAGE_NAME openimageio-2.1.16.0-rev1-windows TARGETS OpenImageIO PACKAGE_HASH b9f6d6df180ad240b9f17a68c1862c7d8f38234de0e692e83116254b0ee467e5)
|
||||
ly_associate_package(PACKAGE_NAME openimageio-2.1.16.0-rev2-windows TARGETS OpenImageIO PACKAGE_HASH 85a2a6cf35cbc4c967c56ca8074babf0955c5b490c90c6e6fd23c78db99fc282)
|
||||
ly_associate_package(PACKAGE_NAME qt-5.15.2-windows TARGETS Qt PACKAGE_HASH edaf954c647c99727bfd313dab2959803d2df0873914bb96368c3d8286eed6d9)
|
||||
ly_associate_package(PACKAGE_NAME libsamplerate-0.2.1-rev2-windows TARGETS libsamplerate PACKAGE_HASH dcf3c11a96f212a52e2c9241abde5c364ee90b0f32fe6eeb6dcdca01d491829f)
|
||||
ly_associate_package(PACKAGE_NAME OpenMesh-8.1-rev1-windows TARGETS OpenMesh PACKAGE_HASH 1c1df639358526c368e790dfce40c45cbdfcfb1c9a041b9d7054a8949d88ee77)
|
||||
ly_associate_package(PACKAGE_NAME OpenMesh-8.1-rev1-windows TARGETS OpenMesh PACKAGE_HASH 1c1df639358526c368e790dfce40c45cbdfcfb1c9a041b9d7054a8949d88ee77)
|
||||
ly_associate_package(PACKAGE_NAME civetweb-1.8-rev1-windows TARGETS civetweb PACKAGE_HASH 36d0e58a59bcdb4dd70493fb1b177aa0354c945b06c30416348fd326cf323dd4)
|
||||
@@ -1,44 +0,0 @@
|
||||
#
|
||||
# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
# its licensors.
|
||||
#
|
||||
# For complete copyright and license terms please see the LICENSE at the root of this
|
||||
# distribution (the "License"). All use of this software is governed by the License,
|
||||
# or, if provided, by the license below or the license accompanying this file. Do not
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
set(CLANG_PLATFORM_LIB_PATH ${BASE_PATH}/vs2015/$<IF:$<CONFIG:Debug>,debug,release>/lib)
|
||||
|
||||
set(CLANG_INCLUDE_DIRECTORIES
|
||||
llvm/include
|
||||
vs2015/$<IF:$<CONFIG:Debug>,debug,release>/include
|
||||
)
|
||||
|
||||
set(CLANG_LIBS
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangFrontend.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangSerialization.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangDriver.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangTooling.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangParse.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangSema.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangAnalysis.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangRewriteFrontend.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangRewrite.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangEdit.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangAST.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangLex.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/clangBasic.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/LLVMBinaryFormat.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/LLVMDebugInfoDWARF.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/LLVMMC.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/LLVMOption.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/LLVMBitReader.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/LLVMMCParser.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/LLVMProfileData.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/LLVMTarget.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/LLVMCore.lib
|
||||
${CLANG_PLATFORM_LIB_PATH}/LLVMSupport.lib
|
||||
Version.lib
|
||||
)
|
||||
@@ -10,9 +10,7 @@
|
||||
#
|
||||
|
||||
set(FILES
|
||||
AWSGameLiftServerSDK_windows.cmake
|
||||
BuiltInPackages_windows.cmake
|
||||
Clang_windows.cmake
|
||||
Crashpad_windows.cmake
|
||||
dyad_windows.cmake
|
||||
FbxSdk_windows.cmake
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ ly_associate_package(PACKAGE_NAME lux_core-2.2-rev5-multiplatform TARGETS lux
|
||||
ly_associate_package(PACKAGE_NAME freetype-2.10.4.14-mac-ios TARGETS freetype PACKAGE_HASH 67b4f57aed92082d3fd7c16aa244a7d908d90122c296b0a63f73e0a0b8761977)
|
||||
ly_associate_package(PACKAGE_NAME tiff-4.2.0.15-mac-ios TARGETS tiff PACKAGE_HASH a23ae1f8991a29f8e5df09d6d5b00d7768a740f90752cef465558c1768343709)
|
||||
ly_associate_package(PACKAGE_NAME AWSNativeSDK-1.7.167-rev3-ios TARGETS AWSNativeSDK PACKAGE_HASH 1246219a213ccfff76b526011febf521586d44dbc1753e474f8fb5fd861654a4)
|
||||
ly_associate_package(PACKAGE_NAME PhysX-4.1.0.25992954-rev1-ios TARGETS PhysX PACKAGE_HASH a2a48a09128337c72b9c2c1b8f43187c6c914e8509c9c6cd91810108748d7e09)
|
||||
ly_associate_package(PACKAGE_NAME PhysX-4.1.0.25992954-rev2-ios TARGETS PhysX PACKAGE_HASH 27e68bd90915dbd0bd5f26cae714e9a137f6b1aa8a8e0bf354a4a9176aa553d5)
|
||||
ly_associate_package(PACKAGE_NAME mikkelsen-1.0.0.4-ios TARGETS mikkelsen PACKAGE_HASH 976aaa3ccd8582346132a10af253822ccc5d5bcc9ea5ba44d27848f65ee88a8a)
|
||||
ly_associate_package(PACKAGE_NAME googletest-1.8.1-rev4-ios TARGETS googletest PACKAGE_HASH 2f121ad9784c0ab73dfaa58e1fee05440a82a07cc556bec162eeb407688111a7)
|
||||
ly_associate_package(PACKAGE_NAME googlebenchmark-1.5.0-rev2-ios TARGETS GoogleBenchmark PACKAGE_HASH c2ffaed2b658892b1bcf81dee4b44cd1cb09fc78d55584ef5cb8ab87f2d8d1ae)
|
||||
|
||||
Vendored
+1
-2
@@ -11,12 +11,11 @@
|
||||
|
||||
set(FILES
|
||||
BuiltInPackages.cmake
|
||||
FindAWSGameLiftServerSDK.cmake
|
||||
Findcivetweb.cmake
|
||||
FindClang.cmake
|
||||
Finddyad.cmake
|
||||
FindFbxSdk.cmake
|
||||
Findlibav.cmake
|
||||
FindOpenGLInterface.cmake
|
||||
FindOpenSSL.cmake
|
||||
FindRadTelemetry.cmake
|
||||
FindVkValidation.cmake
|
||||
|
||||
@@ -621,7 +621,6 @@ endfunction()
|
||||
# - this waill cause it to automatically download and activate this package if it finds a target that
|
||||
# depends on '3rdParty::zlib' in its runtime or its build time dependency list.
|
||||
# - note that '3rdParty' is implied, do not specify it in the TARGETS list.
|
||||
|
||||
function(ly_associate_package)
|
||||
set(_oneValueArgs PACKAGE_NAME PACKAGE_HASH)
|
||||
set(_multiValueArgs TARGETS)
|
||||
@@ -643,6 +642,9 @@ function(ly_associate_package)
|
||||
set_property(GLOBAL PROPERTY LY_PACKAGE_ASSOCIATION_${find_package_name} ${ly_associate_package_PACKAGE_NAME})
|
||||
set_property(GLOBAL PROPERTY LY_PACKAGE_HASH_${ly_associate_package_PACKAGE_NAME} ${ly_associate_package_PACKAGE_HASH})
|
||||
endforeach()
|
||||
|
||||
set_property(GLOBAL APPEND PROPERTY LY_PACKAGE_NAMES ${ly_associate_package_PACKAGE_NAME})
|
||||
set_property(GLOBAL PROPERTY LY_PACKAGE_TARGETS_${ly_associate_package_PACKAGE_NAME} ${ly_associate_package_TARGETS})
|
||||
endfunction()
|
||||
|
||||
#! Given a package find_package name (eg, 'zlib' not the actual package name)
|
||||
|
||||
+15
-26
@@ -14,32 +14,21 @@
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
ly_add_target(
|
||||
|
||||
NAME @NAME_PLACEHOLDER@ UNKNOWN IMPORTED
|
||||
|
||||
@NAMESPACE_PLACEHOLDER@
|
||||
|
||||
@INCLUDE_DIRECTORIES_PLACEHOLDER@
|
||||
|
||||
@BUILD_DEPENDENCIES_PLACEHOLDER@
|
||||
|
||||
@RUNTIME_DEPENDENCIES_PLACEHOLDER@
|
||||
|
||||
NAME @NAME_PLACEHOLDER@ UNKNOWN IMPORTED
|
||||
@NAMESPACE_PLACEHOLDER@
|
||||
COMPILE_DEFINITIONS
|
||||
INTERFACE
|
||||
@COMPILE_DEFINITIONS_PLACEHOLDER@
|
||||
INCLUDE_DIRECTORIES
|
||||
INTERFACE
|
||||
@INCLUDE_DIRECTORIES_PLACEHOLDER@
|
||||
BUILD_DEPENDENCIES
|
||||
INTERFACE
|
||||
@BUILD_DEPENDENCIES_PLACEHOLDER@
|
||||
RUNTIME_DEPENDENCIES
|
||||
@RUNTIME_DEPENDENCIES_PLACEHOLDER@
|
||||
)
|
||||
|
||||
# The below if was generated from if (NOT HEADER_ONLY_PLACEHOLDER)
|
||||
# HEADER_ONLY_PLACEHOLDER evaluates to TRUE or FALSE
|
||||
if (NOT @HEADER_ONLY_PLACEHOLDER@)
|
||||
# Load information for each installed configuration.
|
||||
foreach(config @ALL_CONFIGS@)
|
||||
set(@NAME_PLACEHOLDER@_${config}_FOUND FALSE)
|
||||
include("${LY_ROOT_FOLDER}/cmake_autogen/@NAME_PLACEHOLDER@/@NAME_PLACEHOLDER@_${config}.cmake")
|
||||
endforeach()
|
||||
|
||||
find_package_handle_standard_args(@NAME_PLACEHOLDER@
|
||||
"Could not find package @NAME_PLACEHOLDER@"
|
||||
@TARGET_CONFIG_FOUND_VARS_PLACEHOLDER@)
|
||||
else()
|
||||
set(@NAME_PLACEHOLDER@_FOUND TRUE)
|
||||
endif()
|
||||
foreach(config @CMAKE_CONFIGURATION_TYPES@)
|
||||
include("${LY_ROOT_FOLDER}/cmake_autogen/@NAME_PLACEHOLDER@/@NAME_PLACEHOLDER@_${config}.cmake" OPTIONAL)
|
||||
endforeach()
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
#
|
||||
# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
# its licensors.
|
||||
#
|
||||
# For complete copyright and license terms please see the LICENSE at the root of this
|
||||
# distribution (the "License"). All use of this software is governed by the License,
|
||||
# or, if provided, by the license below or the license accompanying this file. Do not
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
# Generated by O3DE
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
ly_add_target(
|
||||
|
||||
NAME @NAME_PLACEHOLDER@ UNKNOWN IMPORTED
|
||||
|
||||
@NAMESPACE_PLACEHOLDER@
|
||||
|
||||
@INCLUDE_DIRECTORIES_PLACEHOLDER@
|
||||
|
||||
@BUILD_DEPENDENCIES_PLACEHOLDER@
|
||||
|
||||
@RUNTIME_DEPENDENCIES_PLACEHOLDER@
|
||||
|
||||
@COMPILE_DEFINITIONS_PLACEHOLDER@
|
||||
)
|
||||
|
||||
# The below if was generated from if (NOT HEADER_ONLY_PLACEHOLDER)
|
||||
# HEADER_ONLY_PLACEHOLDER evaluates to TRUE or FALSE
|
||||
if (NOT @HEADER_ONLY_PLACEHOLDER@)
|
||||
# Load information for each installed configuration.
|
||||
foreach(config @ALL_CONFIGS@)
|
||||
set(@NAME_PLACEHOLDER@_${config}_FOUND FALSE)
|
||||
include("${LY_ROOT_FOLDER}/cmake_autogen/@NAME_PLACEHOLDER@/@NAME_PLACEHOLDER@_${config}.cmake")
|
||||
endforeach()
|
||||
|
||||
find_package_handle_standard_args(@NAME_PLACEHOLDER@
|
||||
"Could not find package @NAME_PLACEHOLDER@"
|
||||
@TARGET_CONFIG_FOUND_VARS_PLACEHOLDER@)
|
||||
else()
|
||||
set(@NAME_PLACEHOLDER@_FOUND TRUE)
|
||||
endif()
|
||||
@@ -15,7 +15,7 @@ include(FindPackageHandleStandardArgs)
|
||||
|
||||
# This will be called from within the installed engine's CMakeLists.txt
|
||||
macro(ly_find_o3de_packages)
|
||||
@FIND_PACKAGES_PLACEHOLDER@
|
||||
@FIND_PACKAGES_PLACEHOLDER@
|
||||
find_package(LauncherGenerator)
|
||||
endmacro()
|
||||
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
#
|
||||
# All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
|
||||
# its licensors.
|
||||
#
|
||||
# For complete copyright and license terms please see the LICENSE at the root of this
|
||||
# distribution (the "License"). All use of this software is governed by the License,
|
||||
# or, if provided, by the license below or the license accompanying this file. Do not
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
# Generated by O3DE
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
# This will be called from within the installed engine's CMakeLists.txt
|
||||
macro(ly_find_o3de_packages)
|
||||
@FIND_PACKAGES_PLACEHOLDER@
|
||||
find_package(LauncherGenerator)
|
||||
endmacro()
|
||||
|
||||
|
||||
function(o3de_current_file_path path)
|
||||
set(${path} ${CMAKE_CURRENT_FUNCTION_LIST_DIR} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
|
||||
# We are using the engine's CMakeLists.txt to handle initialization/importing targets
|
||||
# Since this is external to the project's source, we need to specify an output directory
|
||||
# even though we don't build
|
||||
macro(o3de_initialize)
|
||||
set(LY_PROJECTS ${CMAKE_SOURCE_DIR})
|
||||
o3de_current_file_path(current_path)
|
||||
add_subdirectory(${current_path}/.. o3de)
|
||||
endmacro()
|
||||
@@ -17,12 +17,6 @@ include(cmake/LySet.cmake)
|
||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||
ly_set(CMAKE_WARN_DEPRECATED ON)
|
||||
|
||||
# Set output directories
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib CACHE PATH "Build directory for static libraries and import libraries")
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin CACHE PATH "Build directory for shared libraries")
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin CACHE PATH "Build directory for executables")
|
||||
set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/install CACHE PATH "Installation prefix")
|
||||
|
||||
set(LY_EXTERNAL_SUBDIRS "" CACHE STRING "Additional list of subdirectory to recurse into via the cmake `add_subdirectory()` command. \
|
||||
The subdirectories are included after the restricted platform folders have been visited by a call to `add_subdirectory(restricted/\${restricted_platform})`")
|
||||
|
||||
@@ -8,3 +8,9 @@
|
||||
# remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
# Set output directories
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib CACHE PATH "Build directory for static libraries and import libraries")
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin CACHE PATH "Build directory for shared libraries")
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin CACHE PATH "Build directory for executables")
|
||||
set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/install CACHE PATH "Installation prefix")
|
||||
@@ -85,3 +85,9 @@ ly_include_cmake_file_list(${pal_dir}/platform_${PAL_PLATFORM_NAME_LOWERCASE}_fi
|
||||
|
||||
include(${pal_dir}/PAL_${PAL_PLATFORM_NAME_LOWERCASE}.cmake)
|
||||
include(${pal_dir}/Toolchain_${PAL_PLATFORM_NAME_LOWERCASE}.cmake OPTIONAL)
|
||||
|
||||
set(LY_DISABLE_TEST_MODULES FALSE CACHE BOOL "Option to forcibly disable the inclusion of test targets in the build")
|
||||
|
||||
if(LY_DISABLE_TEST_MODULES)
|
||||
ly_set(PAL_TRAIT_BUILD_TESTS_SUPPORTED FALSE)
|
||||
endif()
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
#
|
||||
|
||||
set(CMAKE_INSTALL_MESSAGE NEVER) # Simplify messages to reduce output noise
|
||||
|
||||
#! ly_install_target: registers the target to be installed by cmake install.
|
||||
#
|
||||
@@ -35,27 +36,16 @@ function(ly_install_target ly_install_target_NAME)
|
||||
|
||||
install(
|
||||
TARGETS ${ly_install_target_NAME}
|
||||
EXPORT ${ly_install_target_NAME}Targets
|
||||
LIBRARY DESTINATION lib/$<CONFIG>
|
||||
ARCHIVE DESTINATION lib/$<CONFIG>
|
||||
RUNTIME DESTINATION bin/$<CONFIG>
|
||||
PUBLIC_HEADER DESTINATION ${include_location}
|
||||
)
|
||||
|
||||
install(EXPORT ${ly_install_target_NAME}Targets
|
||||
|
||||
ly_generate_target_config_file(${ly_install_target_NAME})
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${ly_install_target_NAME}_$<CONFIG>.cmake"
|
||||
DESTINATION cmake_autogen/${ly_install_target_NAME}
|
||||
)
|
||||
|
||||
# Header only targets(i.e., INTERFACE) don't have outputs
|
||||
get_target_property(target_type ${ly_install_target_NAME} TYPE)
|
||||
if(NOT ${target_type} STREQUAL "INTERFACE_LIBRARY")
|
||||
ly_generate_target_config_file(${ly_install_target_NAME})
|
||||
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${ly_install_target_NAME}_$<CONFIG>.cmake"
|
||||
DESTINATION cmake_autogen/${ly_install_target_NAME}
|
||||
)
|
||||
endif()
|
||||
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/Find${ly_install_target_NAME}.cmake"
|
||||
DESTINATION cmake
|
||||
)
|
||||
@@ -66,8 +56,8 @@ endfunction()
|
||||
#! ly_generate_target_find_file: generates the Find${target}.cmake file which is used when importing installed packages.
|
||||
#
|
||||
# \arg:NAME name of the target
|
||||
# \arg:INCLUDE_DIRECTORIES paths to the include directories
|
||||
# \arg:NAMESPACE namespace declaration for this target. It will be used for IDE and dependencies
|
||||
# \arg:INCLUDE_DIRECTORIES paths to the include directories
|
||||
# \arg:BUILD_DEPENDENCIES list of interfaces this target depends on (could be a compilation dependency
|
||||
# if the dependency is only exposing an include path, or could be a linking
|
||||
# dependency is exposing a lib)
|
||||
@@ -77,64 +67,38 @@ function(ly_generate_target_find_file)
|
||||
|
||||
set(options)
|
||||
set(oneValueArgs NAME NAMESPACE)
|
||||
set(multiValueArgs COMPILE_DEFINITIONS BUILD_DEPENDENCIES RUNTIME_DEPENDENCIES INCLUDE_DIRECTORIES)
|
||||
set(multiValueArgs INCLUDE_DIRECTORIES COMPILE_DEFINITIONS BUILD_DEPENDENCIES RUNTIME_DEPENDENCIES)
|
||||
cmake_parse_arguments(ly_generate_target_find_file "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
# These targets will be imported. So we strip PRIVATE properties.
|
||||
# We can only set INTERFACE properties on imported targets
|
||||
unset(build_dependencies_interface_props)
|
||||
unset(compile_definitions_interface_props)
|
||||
unset(include_directories_interface_props)
|
||||
unset(installed_include_directories_interface_props)
|
||||
ly_strip_non_interface_properties(build_dependencies_interface_props ${ly_generate_target_find_file_BUILD_DEPENDENCIES})
|
||||
ly_strip_non_interface_properties(compile_definitions_interface_props ${ly_generate_target_find_file_COMPILE_DEFINITIONS})
|
||||
ly_strip_non_interface_properties(include_directories_interface_props ${ly_generate_target_find_file_INCLUDE_DIRECTORIES})
|
||||
|
||||
set(NAME_PLACEHOLDER ${ly_generate_target_find_file_NAME})
|
||||
unset(NAMESPACE_PLACEHOLDER)
|
||||
unset(COMPILE_DEFINITIONS_PLACEHOLDER)
|
||||
unset(include_directories_interface_props)
|
||||
unset(INCLUDE_DIRECTORIES_PLACEHOLDER)
|
||||
set(RUNTIME_DEPENDENCIES_PLACEHOLDER ${ly_generate_target_find_file_RUNTIME_DEPENDENCIES})
|
||||
|
||||
# These targets will be imported. We will expose PUBLIC and INTERFACE properties as INTERFACE properties since
|
||||
# only INTERFACE properties can be exposed on imported targets
|
||||
ly_strip_private_properties(COMPILE_DEFINITIONS_PLACEHOLDER ${ly_generate_target_find_file_COMPILE_DEFINITIONS})
|
||||
ly_strip_private_properties(include_directories_interface_props ${ly_generate_target_find_file_INCLUDE_DIRECTORIES})
|
||||
ly_strip_private_properties(BUILD_DEPENDENCIES_PLACEHOLDER ${ly_generate_target_find_file_BUILD_DEPENDENCIES})
|
||||
|
||||
if(ly_generate_target_find_file_NAMESPACE)
|
||||
set(NAMESPACE_PLACEHOLDER "NAMESPACE ${ly_generate_target_find_file_NAMESPACE}")
|
||||
endif()
|
||||
|
||||
string(REPLACE ";" "\n" COMPILE_DEFINITIONS_PLACEHOLDER "${COMPILE_DEFINITIONS_PLACEHOLDER}")
|
||||
|
||||
# Includes need additional processing to add the install root
|
||||
foreach(include ${include_directories_interface_props})
|
||||
set(installed_include_prefix "\${LY_ROOT_FOLDER}/include/")
|
||||
file(RELATIVE_PATH relative_path ${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/${include})
|
||||
string(APPEND installed_include_prefix ${relative_path})
|
||||
list(APPEND installed_include_directories_interface_props ${installed_include_prefix})
|
||||
list(APPEND INCLUDE_DIRECTORIES_PLACEHOLDER "include/${relative_path}")
|
||||
endforeach()
|
||||
string(REPLACE ";" "\n" INCLUDE_DIRECTORIES_PLACEHOLDER "${INCLUDE_DIRECTORIES_PLACEHOLDER}")
|
||||
|
||||
if(ly_generate_target_find_file_NAMESPACE)
|
||||
set(NAMESPACE_PLACEHOLDER "NAMESPACE ${ly_generate_target_find_file_NAMESPACE}")
|
||||
endif()
|
||||
if(installed_include_directories_interface_props)
|
||||
string(REPLACE ";" "\n" include_dirs "${installed_include_directories_interface_props}")
|
||||
set(INCLUDE_DIRECTORIES_PLACEHOLDER "INCLUDE_DIRECTORIES\nINTERFACE\n${include_dirs}")
|
||||
endif()
|
||||
if(build_dependencies_interface_props)
|
||||
string(REPLACE ";" "\n" build_deps "${build_dependencies_interface_props}")
|
||||
set(BUILD_DEPENDENCIES_PLACEHOLDER "BUILD_DEPENDENCIES\nINTERFACE\n${build_deps}")
|
||||
endif()
|
||||
if(ly_generate_target_find_file_RUNTIME_DEPENDENCIES)
|
||||
string(REPLACE ";" "\n" runtime_deps "${ly_generate_target_find_file_RUNTIME_DEPENDENCIES}")
|
||||
set(RUNTIME_DEPENDENCIES_PLACEHOLDER "RUNTIME_DEPENDENCIES\n${runtime_deps}")
|
||||
endif()
|
||||
if(compile_definitions_interface_props)
|
||||
string(REPLACE ";" "\n" compile_defs "${compile_definitions_interface_props}")
|
||||
set(COMPILE_DEFINITIONS_PLACEHOLDER "COMPILE_DEFINITIONS\nINTERFACE\n${compile_defs}")
|
||||
endif()
|
||||
|
||||
string(REPLACE ";" " " ALL_CONFIGS "${CMAKE_CONFIGURATION_TYPES}")
|
||||
|
||||
set(target_config_found_vars "")
|
||||
foreach(config ${CMAKE_CONFIGURATION_TYPES})
|
||||
string(APPEND target_config_found_vars "\n${ly_generate_target_find_file_NAME}_${config}_FOUND")
|
||||
endforeach()
|
||||
set(TARGET_CONFIG_FOUND_VARS_PLACEHOLDER "${target_config_found_vars}")
|
||||
|
||||
# Interface libs aren't built so they don't generate a library. These are our HEADER_ONLY targets.
|
||||
get_target_property(target_type ${ly_generate_target_find_file_NAME} TYPE)
|
||||
if(NOT ${target_type} STREQUAL "INTERFACE_LIBRARY")
|
||||
set(HEADER_ONLY_PLACEHOLDER FALSE)
|
||||
else()
|
||||
set(HEADER_ONLY_PLACEHOLDER TRUE)
|
||||
endif()
|
||||
string(REPLACE ";" "\n" BUILD_DEPENDENCIES_PLACEHOLDER "${BUILD_DEPENDENCIES_PLACEHOLDER}")
|
||||
string(REPLACE ";" "\n" RUNTIME_DEPENDENCIES_PLACEHOLDER "${RUNTIME_DEPENDENCIES_PLACEHOLDER}")
|
||||
|
||||
configure_file(${LY_ROOT_FOLDER}/cmake/FindTarget.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/Find${ly_generate_target_find_file_NAME}.cmake @ONLY)
|
||||
|
||||
@@ -148,37 +112,47 @@ endfunction()
|
||||
# \arg:NAME name of the target
|
||||
function(ly_generate_target_config_file NAME)
|
||||
|
||||
# SHARED_LIBRARY is omitted from this list because we link to the implib on Windows
|
||||
set(BINARY_DIR_OUTPUTS EXECUTABLE APPLICATION)
|
||||
set(target_file_contents "")
|
||||
if(${target_type} IN_LIST BINARY_DIR_OUTPUTS)
|
||||
set(out_file_generator TARGET_FILE_NAME)
|
||||
set(out_dir bin)
|
||||
else()
|
||||
set(out_file_generator TARGET_LINKER_FILE_NAME)
|
||||
set(out_dir lib)
|
||||
endif()
|
||||
get_target_property(target_type ${NAME} TYPE)
|
||||
|
||||
unset(target_file_contents)
|
||||
if(NOT target_type STREQUAL INTERFACE_LIBRARY)
|
||||
|
||||
string(APPEND target_file_contents "
|
||||
# Generated by O3DE
|
||||
set(BINARY_DIR_OUTPUTS EXECUTABLE APPLICATION)
|
||||
set(target_file_contents "")
|
||||
if(${target_type} IN_LIST BINARY_DIR_OUTPUTS)
|
||||
set(out_file_generator TARGET_FILE_NAME)
|
||||
set(out_dir bin)
|
||||
else()
|
||||
set(out_file_generator TARGET_LINKER_FILE_NAME)
|
||||
set(out_dir lib)
|
||||
endif()
|
||||
|
||||
set_target_properties(${NAME} PROPERTIES IMPORTED_LOCATION \"\${LY_ROOT_FOLDER}/${out_dir}/$<CONFIG>/$<${out_file_generator}:${NAME}>\")
|
||||
string(APPEND target_file_contents
|
||||
"# Generated by O3DE install
|
||||
|
||||
if(EXISTS \"\${LY_ROOT_FOLDER}/${out_dir}/$<CONFIG>/$<${out_file_generator}:${NAME}>\")
|
||||
set(target_location \"\${LY_ROOT_FOLDER}/${out_dir}/$<CONFIG>/$<${out_file_generator}:${NAME}>\")
|
||||
set_target_properties(${NAME}
|
||||
PROPERTIES
|
||||
$<$<CONFIG:profile>:IMPORTED_LOCATION \"\${target_location}>\"
|
||||
IMPORTED_LOCATION_$<UPPER_CASE:$<CONFIG>> \"\${target_location}\"
|
||||
)
|
||||
if(EXISTS \"\${target_location}\")
|
||||
set(${NAME}_$<CONFIG>_FOUND TRUE)
|
||||
else()
|
||||
set(${NAME}_$<CONFIG>_FOUND FALSE)
|
||||
endif()")
|
||||
endif()
|
||||
")
|
||||
endif()
|
||||
|
||||
file(GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${NAME}_$<CONFIG>.cmake" CONTENT ${target_file_contents})
|
||||
file(GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${NAME}_$<CONFIG>.cmake" CONTENT "${target_file_contents}")
|
||||
|
||||
endfunction()
|
||||
|
||||
|
||||
#! ly_strip_non_interface_properties: strips private properties since we're exporting an interface target
|
||||
#! ly_strip_private_properties: strips private properties since we're exporting an interface target
|
||||
#
|
||||
# \arg:INTERFACE_PROPERTIES list of interface properties to be returned
|
||||
function(ly_strip_non_interface_properties INTERFACE_PROPERTIES)
|
||||
function(ly_strip_private_properties INTERFACE_PROPERTIES)
|
||||
set(reserved_keywords PRIVATE PUBLIC INTERFACE)
|
||||
unset(last_keyword)
|
||||
unset(stripped_props)
|
||||
@@ -196,36 +170,79 @@ function(ly_strip_non_interface_properties INTERFACE_PROPERTIES)
|
||||
endfunction()
|
||||
|
||||
|
||||
#! ly_setup_o3de_install: generates the Findo3de.cmake file and setup install locations for scripts, tools, assets etc.,
|
||||
#! ly_setup_o3de_install: orchestrates the installation of the different parts. This is the entry point from the root CMakeLists.txt
|
||||
function(ly_setup_o3de_install)
|
||||
|
||||
get_property(all_targets GLOBAL PROPERTY LY_ALL_TARGETS)
|
||||
unset(find_package_list)
|
||||
foreach(target IN LISTS all_targets)
|
||||
list(APPEND find_package_list "find_package(${target})")
|
||||
endforeach()
|
||||
ly_setup_cmake_install()
|
||||
ly_setup_target_generator()
|
||||
ly_setup_others()
|
||||
|
||||
string(REPLACE ";" "\n" FIND_PACKAGES_PLACEHOLDER "${find_package_list}")
|
||||
endfunction()
|
||||
|
||||
configure_file(${LY_ROOT_FOLDER}/cmake/Findo3de.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/Findo3de.cmake @ONLY)
|
||||
#! ly_setup_cmake_install: install the "cmake" folder
|
||||
function(ly_setup_cmake_install)
|
||||
|
||||
ly_install_launcher_target_generator()
|
||||
|
||||
ly_install_o3de_directories()
|
||||
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/Findo3de.cmake"
|
||||
DESTINATION cmake
|
||||
install(DIRECTORY "${CMAKE_SOURCE_DIR}/cmake"
|
||||
DESTINATION .
|
||||
REGEX "Findo3de.cmake" EXCLUDE
|
||||
REGEX "Platform\/.*\/BuiltInPackages_.*\.cmake" EXCLUDE
|
||||
)
|
||||
install(
|
||||
FILES
|
||||
"${CMAKE_SOURCE_DIR}/CMakeLists.txt"
|
||||
"${CMAKE_SOURCE_DIR}/engine.json"
|
||||
DESTINATION .
|
||||
)
|
||||
|
||||
install(FILES "${CMAKE_SOURCE_DIR}/CMakeLists.txt"
|
||||
DESTINATION .
|
||||
# Collect all Find files that were added with ly_add_external_target_path
|
||||
unset(additional_find_files)
|
||||
get_property(additional_module_paths GLOBAL PROPERTY LY_ADDITIONAL_MODULE_PATH)
|
||||
foreach(additional_module_path ${additional_module_paths})
|
||||
unset(find_files)
|
||||
file(GLOB find_files "${additional_module_path}/Find*.cmake")
|
||||
list(APPEND additional_find_files "${find_files}")
|
||||
endforeach()
|
||||
install(FILES ${additional_find_files}
|
||||
DESTINATION cmake/3rdParty
|
||||
)
|
||||
|
||||
# Findo3de.cmake file: we generate a different Findo3de.camke file than the one we have in cmake. This one is going to expose all
|
||||
# targets that are pre-built
|
||||
get_property(all_targets GLOBAL PROPERTY LY_ALL_TARGETS)
|
||||
unset(FIND_PACKAGES_PLACEHOLDER)
|
||||
foreach(target IN LISTS all_targets)
|
||||
string(APPEND FIND_PACKAGES_PLACEHOLDER " find_package(${target})\n")
|
||||
endforeach()
|
||||
|
||||
configure_file(${LY_ROOT_FOLDER}/cmake/Findo3de.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/cmake/Findo3de.cmake @ONLY)
|
||||
|
||||
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/cmake/Findo3de.cmake"
|
||||
DESTINATION cmake
|
||||
)
|
||||
|
||||
# BuiltInPackage_<platform>.cmake: since associations could happen in any cmake file across the engine. We collect
|
||||
# all the associations in ly_associate_package and then generate them into BuiltInPackages_<platform>.cmake. This
|
||||
# will consolidate all associations in one file
|
||||
get_property(all_package_names GLOBAL PROPERTY LY_PACKAGE_NAMES)
|
||||
set(builtinpackages "# Generated by O3DE install\n\n")
|
||||
foreach(package_name IN LISTS all_package_names)
|
||||
get_property(package_hash GLOBAL PROPERTY LY_PACKAGE_HASH_${package_name})
|
||||
get_property(targets GLOBAL PROPERTY LY_PACKAGE_TARGETS_${package_name})
|
||||
string(APPEND builtinpackages "ly_associate_package(PACKAGE_NAME ${package_name} TARGETS ${targets} PACKAGE_HASH ${package_hash})\n")
|
||||
endforeach()
|
||||
|
||||
ly_get_absolute_pal_filename(pal_builtin_file ${CMAKE_CURRENT_BINARY_DIR}/cmake/3rdParty/Platform/${PAL_PLATFORM_NAME}/BuiltInPackages_${PAL_PLATFORM_NAME_LOWERCASE}.cmake)
|
||||
file(GENERATE OUTPUT ${pal_builtin_file}
|
||||
CONTENT ${builtinpackages}
|
||||
)
|
||||
install(FILES "${pal_builtin_file}"
|
||||
DESTINATION cmake/3rdParty/Platform/${PAL_PLATFORM_NAME}
|
||||
)
|
||||
|
||||
endfunction()
|
||||
|
||||
|
||||
#! ly_install_o3de_directories: install directories required by the engine
|
||||
function(ly_install_o3de_directories)
|
||||
#! ly_setup_others: install directories required by the engine
|
||||
function(ly_setup_others)
|
||||
|
||||
# List of directories we want to install relative to engine root
|
||||
set(DIRECTORIES_TO_INSTALL Tools/LyTestTools Tools/RemoteConsole ctest_scripts scripts)
|
||||
@@ -242,12 +259,6 @@ function(ly_install_o3de_directories)
|
||||
|
||||
endforeach()
|
||||
|
||||
# Directories which have excludes
|
||||
install(DIRECTORY "${CMAKE_SOURCE_DIR}/cmake"
|
||||
DESTINATION .
|
||||
REGEX "Findo3de.cmake" EXCLUDE
|
||||
)
|
||||
|
||||
install(DIRECTORY "${CMAKE_SOURCE_DIR}/python"
|
||||
DESTINATION .
|
||||
REGEX "downloaded_packages" EXCLUDE
|
||||
@@ -257,8 +268,8 @@ function(ly_install_o3de_directories)
|
||||
endfunction()
|
||||
|
||||
|
||||
#! ly_install_launcher_target_generator: install source files needed for project launcher generation
|
||||
function(ly_install_launcher_target_generator)
|
||||
#! ly_setup_target_generator: install source files needed for project launcher generation
|
||||
function(ly_setup_target_generator)
|
||||
|
||||
install(FILES
|
||||
${CMAKE_SOURCE_DIR}/Code/LauncherUnified/launcher_generator.cmake
|
||||
|
||||
@@ -628,8 +628,8 @@ def get_test_module_registry(build_dir_path):
|
||||
|
||||
test_module_items = unit_test_json['Amazon']
|
||||
for _, test_module_item in test_module_items.items():
|
||||
module_file = test_module_item['Modules']
|
||||
dep_modules.append(module_file)
|
||||
module_files = test_module_item['Modules']
|
||||
dep_modules.extend(module_files)
|
||||
|
||||
except FileNotFoundError:
|
||||
raise LmbrCmdError(f"Unit test registry not found ('{str(unit_test_module_path)}')")
|
||||
@@ -659,7 +659,10 @@ def get_validated_test_modules(test_modules, build_dir_path):
|
||||
for test_target_check in test_modules:
|
||||
if test_target_check not in all_test_modules:
|
||||
raise LmbrCmdError(f"Invalid test module {test_target_check}")
|
||||
validated_test_modules.append(test_target_check)
|
||||
if isinstance(test_target_check, list):
|
||||
validated_test_modules.extend(test_target_check)
|
||||
else:
|
||||
validated_test_modules.append(test_target_check)
|
||||
else:
|
||||
validated_test_modules = all_test_modules
|
||||
|
||||
|
||||
Reference in New Issue
Block a user