Automated g4 rollback of changelist 885555524.

*** Reason for rollback ***

Rolling back obj/stl decoder inclusion as sources due to broken windows build.

*** Original change description ***

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: 885576586
Change-Id: I31e6fa4d10697862f7d800d0d771ca752747e36d
This commit is contained in:
Sam Haves
2026-03-18 07:17:39 -07:00
committed by Copybara-Service
parent 15ca42ff68
commit ef78f07ffb
10 changed files with 103 additions and 21 deletions
+43 -4
View File
@@ -12,9 +12,48 @@
# See the License for the specific language governing permissions and
# limitations under the License.
target_compile_definitions(mujoco PRIVATE TINYOBJLOADER_IMPLEMENTATION)
target_sources(mujoco PRIVATE
obj_decoder.cc
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_link_libraries(mujoco PRIVATE tinyobjloader)
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()