Files
test2/build_files/build_environment/cmake/rubberband.cmake
Thomas Dinges 66224d69b0 Deps: Library changes for Blender 5.0
This commit includes the changes to the build system, updated hashes to the actual new libraries as well as a required test update.

* DPC++ 6.2.0 RC
* freetype 2.13.3
* HIP 6.4.5010
* IGC 2.16.0
* ISPC 1.28.0
* libharu  2.4.5
* libpng 1.6.50
* libvpx 1.15.2
* libxml2 2.14.5
* LLVM 20.1.8
* Manifold 3.2.1
* MaterialX 1.39.3
* OpenColorIO 2.4.2
* openexr 3.3.5
* OpenImageIO 3.0.9.1
* openjpeg 2.5.3
* OpenShadingLanguage 1.14.7.0
* openssl 3.5.2
* Python 3.11.13
* Rubber Band 4.0.0
* ShaderC 2025.3
* sqlite 3.50.4
* USD 25.08
* Wayland 1.24.0

Ref #138940

Co-authored-by: Ray Molenkamp <github@lazydodo.com>
Co-authored-by: Jesse Yurkovich <jesse.y@gmail.com>
Co-authored-by: Brecht Van Lommel <brecht@blender.org>
Co-authored-by: Nikita Sirgienko <nikita.sirgienko@intel.com>
Co-authored-by: Sybren A. Stüvel <sybren@blender.org>
Co-authored-by: Kace <lakacey03@gmail.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>

Pull Request: https://projects.blender.org/blender/blender/pulls/144479
2025-10-02 18:34:11 +02:00

70 lines
2.1 KiB
CMake

# # SPDX-FileCopyrightText: 2025 Blender Authors
# #
# # SPDX-License-Identifier: GPL-2.0-or-later
if(WIN32)
set(RUBBERBAND_CONFIGURE_ENV ${CONFIGURE_ENV_MSVC})
set(FFTW_DIR ${LIBDIR}/fftw3/lib/pkgconfig)
file(TO_NATIVE_PATH "${FFTW_DIR}" FFTW_DIR)
set(RUBBERBAND_PKG_ENV PKG_CONFIG_PATH=${FFTW_DIR})
else()
set(RUBBERBAND_CONFIGURE_ENV ${CONFIGURE_ENV})
set(RUBBERBAND_PKG_ENV "PKG_CONFIG_PATH=\
${LIBDIR}/fftw3/lib/pkgconfig:\
$PKG_CONFIG_PATH"
)
endif()
ExternalProject_Add(external_rubberband
URL file://${PACKAGE_DIR}/${RUBBERBAND_FILE}
DOWNLOAD_DIR ${DOWNLOAD_DIR}
URL_HASH ${RUBBERBAND_HASH_TYPE}=${RUBBERBAND_HASH}
PREFIX ${BUILD_DIR}/rubberband
CONFIGURE_COMMAND ${RUBBERBAND_CONFIGURE_ENV} &&
${CMAKE_COMMAND} -E env ${RUBBERBAND_PKG_ENV} ${MESON} setup
--prefix ${LIBDIR}/rubberband
--libdir lib
${MESON_BUILD_TYPE}
-Dauto_features=disabled
-Ddefault_library=static
-Dfft=fftw
${BUILD_DIR}/rubberband/src/external_rubberband-build
${BUILD_DIR}/rubberband/src/external_rubberband
BUILD_COMMAND ninja
INSTALL_COMMAND ninja install
INSTALL_DIR ${LIBDIR}/rubberband
)
add_dependencies(
external_rubberband
external_fftw
# Needed for `MESON`.
external_python_site_packages
)
if(WIN32)
if(BUILD_MODE STREQUAL Release)
ExternalProject_Add_Step(external_rubberband after_install
COMMAND ${CMAKE_COMMAND} -E copy_directory
${LIBDIR}/rubberband/include
${HARVEST_TARGET}/rubberband/include
COMMAND ${CMAKE_COMMAND} -E copy
${LIBDIR}/rubberband/lib/rubberband-static.lib
${HARVEST_TARGET}/rubberband/lib/rubberband-static.lib
DEPENDEES install
)
else()
ExternalProject_Add_Step(external_rubberband after_install
COMMAND ${CMAKE_COMMAND} -E copy
${LIBDIR}/rubberband/lib/rubberband-static.lib
${HARVEST_TARGET}/rubberband/lib/rubberband-static_d.lib
DEPENDEES install
)
endif()
else()
harvest(external_rubberband rubberband/include rubberband/include "*.h")
harvest(external_rubberband rubberband/lib rubberband/lib "*.a")
endif()