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.
o3de/cmake/Platform/Linux/LYWrappers_linux.cmake

42 lines
1.7 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
#
#
function(ly_apply_platform_properties target)
# Noop
endfunction()
function(ly_handle_custom_output_directory target output_subdirectory)
if(output_subdirectory)
set_target_properties(${target} PROPERTIES
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${output_subdirectory}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/${output_subdirectory}
)
foreach(conf ${CMAKE_CONFIGURATION_TYPES})
string(TOUPPER ${conf} UCONF)
set_target_properties(${target} PROPERTIES
RUNTIME_OUTPUT_DIRECTORY_${UCONF} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY_${UCONF}}/${output_subdirectory}
LIBRARY_OUTPUT_DIRECTORY_${UCONF} ${CMAKE_LIBRARY_OUTPUT_DIRECTORY_${UCONF}}/${output_subdirectory}
)
endforeach()
# Things like rc plugins are built into a subdirectory, but their
# dependent libraries end up in the top-level build dir. Their rpath
# needs to contain $ORIGIN in case they depend on other plugins, and
# $ORIGIN/.. for the main dependencies.
if(NOT IS_ABSOLUTE output_subdirectory)
file(RELATIVE_PATH relative_path "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${output_subdirectory}" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}")
set_target_properties(${target} PROPERTIES
INSTALL_RPATH "$ORIGIN:$ORIGIN/${relative_path}"
)
endif()
endif()
endfunction()