CMakeLists for mjz.

PiperOrigin-RevId: 862214752
Change-Id: I498a1f0092adc9e94016bf23589403296bffb4f7
This commit is contained in:
Haroon Qureshi
2026-01-28 06:52:11 -08:00
committed by Copybara-Service
parent 1d44f7a0d0
commit 40f2fe0977
5 changed files with 90 additions and 0 deletions
+1
View File
@@ -215,6 +215,7 @@ if(MUJOCO_BUILD_SIMULATE)
endif()
if(MUJOCO_BUILD_STUDIO)
add_subdirectory(src/experimental/mjz)
add_subdirectory(src/experimental/platform)
add_subdirectory(src/experimental/studio)
endif()
+29
View File
@@ -0,0 +1,29 @@
# Copyright 2026 DeepMind Technologies Limited
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
set(MUJOCO_DEP_VERSION_miniz
2.1.0
CACHE STRING "Tag/version of `miniz` to be fetched."
)
mark_as_advanced(MUJOCO_DEP_VERSION_miniz)
include(FindOrFetch)
fetchpackage(
PACKAGE_NAME miniz
GIT_REPO https://github.com/richgel999/miniz.git
GIT_TAG ${MUJOCO_DEP_VERSION_miniz}
TARGETS miniz
CUSTOM_CMAKE "${CMAKE_SOURCE_DIR}/cmake/third_party_deps/miniz/CMakeLists.txt"
)
@@ -0,0 +1,22 @@
# Copyright 2026 DeepMind Technologies Limited
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
cmake_minimum_required(VERSION 2.8)
PROJECT(miniz C)
set(miniz_SOURCE miniz.c miniz_zip.c miniz_tinfl.c miniz_tdef.c)
add_library(miniz STATIC ${miniz_SOURCE})
target_include_directories(miniz PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}")
+37
View File
@@ -0,0 +1,37 @@
# Copyright 2026 DeepMind Technologies Limited
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
cmake_minimum_required(VERSION 3.16)
set(MUJOCO_MJZ_TARGET_NAME mujoco_mjz)
add_library(${MUJOCO_MJZ_TARGET_NAME} STATIC)
target_include_directories(${MUJOCO_MJZ_TARGET_NAME} PRIVATE
../..
)
target_sources(${MUJOCO_MJZ_TARGET_NAME}
PUBLIC
mjz_decoder.cc
)
include(third_party_deps/miniz)
target_link_libraries(${MUJOCO_MJZ_TARGET_NAME}
miniz
mujoco::mujoco
)
add_library(mujoco::mjz ALIAS ${MUJOCO_MJZ_TARGET_NAME})
+1
View File
@@ -54,6 +54,7 @@ target_link_libraries(${MUJOCO_STUDIO_TARGET_NAME}
implot
mujoco::mujoco
mujoco::platform
mujoco::mjz
)
file(MAKE_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/assets)