Include obj and stl decoder plugins as sources in CMake builds.
This removes the need to load these decoders via mj_loadAllPluginLibraries when using MuJoCo built with CMake. Other plugins are unchanged. PiperOrigin-RevId: 897114719 Change-Id: Iee914cc5e05798186f384a67901f1cf86bc2f887
This commit is contained in:
committed by
Copybara-Service
parent
81720071b8
commit
a744b366fb
@@ -12,48 +12,9 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
if(EMSCRIPTEN)
|
||||
add_library(obj_decoder OBJECT obj_decoder.cc)
|
||||
else()
|
||||
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||
set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_LIBDIR}")
|
||||
|
||||
add_library(obj_decoder SHARED obj_decoder.cc)
|
||||
endif()
|
||||
|
||||
target_include_directories(obj_decoder PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../..
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../../include
|
||||
target_compile_definitions(mujoco PRIVATE TINYOBJLOADER_IMPLEMENTATION)
|
||||
target_sources(mujoco PRIVATE
|
||||
obj_decoder.cc
|
||||
)
|
||||
|
||||
if(EMSCRIPTEN)
|
||||
target_link_libraries(obj_decoder PRIVATE
|
||||
tinyobjloader
|
||||
)
|
||||
else()
|
||||
target_link_libraries(obj_decoder PRIVATE
|
||||
mujoco
|
||||
tinyobjloader
|
||||
)
|
||||
endif()
|
||||
|
||||
target_compile_definitions(obj_decoder PRIVATE TINYOBJLOADER_IMPLEMENTATION)
|
||||
|
||||
target_compile_options(obj_decoder PRIVATE
|
||||
${AVX_COMPILE_OPTIONS}
|
||||
${MUJOCO_MACOS_COMPILE_OPTIONS}
|
||||
${EXTRA_COMPILE_OPTIONS}
|
||||
${MUJOCO_CXX_FLAGS}
|
||||
)
|
||||
|
||||
if(NOT EMSCRIPTEN)
|
||||
target_link_options(obj_decoder PRIVATE
|
||||
${MUJOCO_MACOS_LINK_OPTIONS}
|
||||
${EXTRA_LINK_OPTIONS}
|
||||
)
|
||||
|
||||
install(
|
||||
TARGETS obj_decoder
|
||||
LIBRARY DESTINATION "${CMAKE_INSTALL_BINDIR}/mujoco_plugin"
|
||||
)
|
||||
endif()
|
||||
target_link_libraries(mujoco PRIVATE tinyobjloader)
|
||||
|
||||
Reference in New Issue
Block a user