Fix rpath for usd target shared libs.
PiperOrigin-RevId: 846759676 Change-Id: I5b2a73b3f997d4d0d447e051c43069ae7418a7ec
This commit is contained in:
committed by
Copybara-Service
parent
849a650143
commit
3d9c195e3c
@@ -102,7 +102,6 @@ function(configure_houdini_target target_name link_scope include_scope)
|
|||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
## usdMjcf
|
## usdMjcf
|
||||||
set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
|
|
||||||
|
|
||||||
add_library(${MJCF_PLUGIN_TARGET_NAME} SHARED)
|
add_library(${MJCF_PLUGIN_TARGET_NAME} SHARED)
|
||||||
target_sources(${MJCF_PLUGIN_TARGET_NAME} PRIVATE
|
target_sources(${MJCF_PLUGIN_TARGET_NAME} PRIVATE
|
||||||
@@ -167,40 +166,21 @@ target_compile_options(
|
|||||||
|
|
||||||
# Configure RPATH for macOS and UNIX.
|
# Configure RPATH for macOS and UNIX.
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
set(RPATH_LIST "@loader_path")
|
set_target_properties($(MJCF_PLUGIN_TARGET_NAME) PROPERTIES
|
||||||
# Add OpenUSD lib to RPATH for macOS
|
BUILD_RPATH "${USD_INSTALL_ROOT}"
|
||||||
if(DEFINED pxr_DIR AND EXISTS "${pxr_DIR}/lib")
|
INSTALL_RPATH "@loader_path")
|
||||||
list(APPEND RPATH_LIST "${pxr_DIR}/lib")
|
|
||||||
endif()
|
|
||||||
# Add MuJoCo lib to RPATH for macOS
|
|
||||||
if(DEFINED MUJOCO_INSTALL_DIR AND EXISTS "${MUJOCO_INSTALL_DIR}/lib")
|
|
||||||
list(APPEND RPATH_LIST "${MUJOCO_INSTALL_DIR}/lib")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
string(JOIN ":" CMAKE_INSTALL_RPATH "${RPATH_LIST}") # macOS uses colon for RPATH separator
|
set_target_properties($(MJC_PHYSICS_PLUGIN_TARGET_NAME) PROPERTIES
|
||||||
message(STATUS "Final CMAKE_INSTALL_RPATH: ${CMAKE_INSTALL_RPATH}")
|
BUILD_RPATH "${USD_INSTALL_ROOT}"
|
||||||
|
INSTALL_RPATH "@loader_path")
|
||||||
elseif(UNIX)
|
elseif(UNIX)
|
||||||
|
set_target_properties($(MJCF_PLUGIN_TARGET_NAME) PROPERTIES
|
||||||
|
BUILD_RPATH "${USD_INSTALL_ROOT}"
|
||||||
|
INSTALL_RPATH "$ORIGIN")
|
||||||
|
|
||||||
# For adjacent libs.
|
set_target_properties($(MJC_PHYSICS_PLUGIN_TARGET_NAME) PROPERTIES
|
||||||
set(RPATH_LIST "\$ORIGIN")
|
BUILD_RPATH "${USD_INSTALL_ROOT}"
|
||||||
|
INSTALL_RPATH "$ORIGIN")
|
||||||
# Add OpenUSD library directory
|
|
||||||
if(DEFINED pxr_DIR AND EXISTS "${pxr_DIR}/lib")
|
|
||||||
list(APPEND RPATH_LIST "${pxr_DIR}/lib")
|
|
||||||
message(STATUS "Adding OpenUSD lib to RPATH: ${pxr_DIR}/lib")
|
|
||||||
else()
|
|
||||||
message(WARNING "pxr_DIR is not defined or ${pxr_DIR}/lib does not exist. OpenUSD libraries might not be found via RPATH.")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Add MuJoCo library directory
|
|
||||||
if(DEFINED MUJOCO_INSTALL_DIR AND EXISTS "${MUJOCO_INSTALL_DIR}/lib")
|
|
||||||
list(APPEND RPATH_LIST "${MUJOCO_INSTALL_DIR}/lib")
|
|
||||||
elseif(DEFINED MUJOCO_INSTALL_DIR AND EXISTS "${MUJOCO_INSTALL_DIR}/bin")
|
|
||||||
list(APPEND RPATH_LIST "${MUJOCO_INSTALL_DIR}/bin")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Set the final RPATH for installation
|
|
||||||
string(JOIN ";" CMAKE_INSTALL_RPATH "${RPATH_LIST}")
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(${MJC_PHYSICS_PLUGIN_TARGET_NAME} PRIVATE
|
target_link_libraries(${MJC_PHYSICS_PLUGIN_TARGET_NAME} PRIVATE
|
||||||
|
|||||||
Reference in New Issue
Block a user