mirror of
https://github.com/blender/blender
synced 2026-10-25 03:07:01 +03:00
This commit includes new minimum compiler requirements for Blender 5.1 as well as updated and new libraries. **New compiler requirements** * Windows x64: Visual Studio 2022 (17.14.14 or newer) * Windows arm64: Visual Studio 2022 (17.14.23 or newer) * Linux x64: gcc 14 (when used with our libraries) **New libraries** Abseil 20250814.1 ThorVG 1.0.0-pre31 OpenJPH 0.25.2 **Updated libraries** AOM 3.13.1 Expat 2.7.2 FFI 3.5.2 HIPRT 606b4886efabce918dd0634ef71c06615a47c83b Imath 3.2.2 ISPC 1.29.1 libheif 1.20.2 MaterialX 1.39.4 MESON 1.9.0 minizip-ng 4.0.10 Numpy 2.3.4 oneAPI Level Zero 1.21.9 OneTBB 2022.3.0 OpenColorIO 2.5.0 OpenEXR 3.4.3 OpenImageDenoise 2.4.1 OpenImageIO 3.1.7 OpenSubDiv 3.7.0 OpenVDB 13.0.0 OpenXR 1.1.53 PIP 25.2 Python 3.13.9 ShaderC 2025.4 Vulkan 1.4.328 webp 1.6.0 Yaml CPP 0.8.0 ZSTD 1.5.7 (z-standard 0.25.0) **Library changes** FMT (moved from /extern to libs) Ceres (updated version in lib, will be removed from /extern in a later commit) Eigen (updated version in lib, will be removed from /extern in a later commit)) Ref #147201 Co-authored-by: Nikita Sirgienko <nikita.sirgienko@intel.com> Co-authored-by: Ray Molenkamp <github@lazydodo.com> Co-authored-by: Sebastian Parborg <sebastian@blender.org> Co-authored-by: Anthony Roberts <anthony.roberts@linaro.org> Co-authored-by: Jonas Holzman <jonas@holzman.fr> Co-authored-by: Bart van der Braak <bart@blender.org> Pull Request: https://projects.blender.org/blender/blender/pulls/149852
71 lines
2.1 KiB
CMake
71 lines
2.1 KiB
CMake
# SPDX-FileCopyrightText: 2002-2023 Blender Authors
|
|
#
|
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
if(MSVC)
|
|
set(ZLIB_PATCH_COMMAND
|
|
${PATCH_CMD} -p 1 -d
|
|
${BUILD_DIR}/zlib/src/external_zlib <
|
|
${PATCH_DIR}/zlib.diff
|
|
)
|
|
else()
|
|
set(ZLIB_PATCH_COMMAND echo .)
|
|
endif()
|
|
|
|
ExternalProject_Add(external_zlib
|
|
URL file://${PACKAGE_DIR}/${ZLIB_FILE}
|
|
URL_HASH ${ZLIB_HASH_TYPE}=${ZLIB_HASH}
|
|
PREFIX ${BUILD_DIR}/zlib
|
|
PATCH_COMMAND ${ZLIB_PATCH_COMMAND}
|
|
CMAKE_GENERATOR ${PLATFORM_ALT_GENERATOR}
|
|
|
|
CMAKE_ARGS
|
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
|
-DCMAKE_INSTALL_PREFIX=${LIBDIR}/zlib
|
|
${DEFAULT_CMAKE_FLAGS}
|
|
|
|
INSTALL_DIR ${LIBDIR}/zlib
|
|
)
|
|
|
|
if(WIN32)
|
|
if(BUILD_MODE STREQUAL Release)
|
|
ExternalProject_Add_Step(external_zlib after_install
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
${LIBDIR}/zlib/lib/zlibstatic${LIBEXT}
|
|
${HARVEST_TARGET}/zlib/lib/libz_st${LIBEXT}
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory
|
|
${LIBDIR}/zlib/include/
|
|
${HARVEST_TARGET}/zlib/include/
|
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/zlib/bin/zlib.dll
|
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/zlib/lib/zlib.lib
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
${LIBDIR}/zlib/lib/zlibstatic${LIBEXT}
|
|
${LIBDIR}/zlib/lib/zlib${LIBEXT}
|
|
DEPENDEES install
|
|
)
|
|
endif()
|
|
if(BUILD_MODE STREQUAL Debug)
|
|
ExternalProject_Add_Step(external_zlib after_install
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
${LIBDIR}/zlib/lib/zlibstaticd${LIBEXT}
|
|
${HARVEST_TARGET}/zlib/lib/libz_st_d${LIBEXT}
|
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/zlib/bin/zlib.dll
|
|
COMMAND ${CMAKE_COMMAND} -E rm -f ${LIBDIR}/zlib/lib/zlib.lib
|
|
DEPENDEES install
|
|
)
|
|
endif()
|
|
else()
|
|
ExternalProject_Add_Step(external_zlib after_install
|
|
COMMAND ${CMAKE_COMMAND} -E copy
|
|
${LIBDIR}/zlib/lib/libz.a
|
|
${LIBDIR}/zlib/lib/libz_pic.a
|
|
# Make sure that our libraries do not pick up the shared libraries by mistake
|
|
COMMAND sh -c "rm -f ${LIBDIR}/zlib/lib/*.so*"
|
|
DEPENDEES install
|
|
)
|
|
endif()
|
|
|
|
if(UNIX AND NOT APPLE)
|
|
harvest(external_zlib zlib/include zlib/include "*.h")
|
|
harvest(external_zlib zlib/lib zlib/lib "*.a")
|
|
endif()
|