Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-09-27Build: add missing include for opencolorioCampbell Barton
OpenColorIO failed to build on Linux+GCC-12.2 because of strlen() use.
2022-08-30Merge branch 'blender-v3.3-release'Sergey Sharybin
2022-08-30Update DPC++ to 20220812Sergey Sharybin
This was already done in the libraries SVN, just the build system changes got forgotten to be committed.
2022-08-18Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-17deps/windows: bzip2 1.0.8 for pythonRay Molenkamp
backport of python PR 31735 [1] [1] https://github.com/python/cpython/pull/31735
2022-08-15GPU: replace GLEW with libepoxyChristian Rauch
With libepoxy we can choose between EGL and GLX at runtime, as well as dynamically open EGL and GLX libraries without linking to them. This will make it possible to build with Wayland, EGL, GLVND support while still running on systems that only have X11, GLX and libGL. It also paves the way for headless rendering through EGL. libepoxy is a new library dependency, and is included in the precompiled libraries. GLEW is no longer a dependency, and WITH_SYSTEM_GLEW was removed. Includes contributions by Brecht Van Lommel, Ray Molenkamp, Campbell Barton and Sergey Sharybin. Ref T76428 Differential Revision: https://developer.blender.org/D15291
2022-07-26deps: FFmpeg vpx/aom-av1 updatesRay Molenkamp
This is a refresh of our current FFmpeg 5.0.0 (unchanged) version with the following changes: * libvpx all platforms: enable SSE3/4/AVX/AVX2 instruction sets. libvpx has a proper CPUID check in place and will not call the faster kernels unless it is sure the CPU supports it. So we can safely enable this, this partially resolves T95743 (completely on Linux and macOS). * libvpx Windows - threading was disabled due to a shared dependency on libwinpthreads.dll which we prefer not to distribute. However when configure cannot find pthreads it will happily fall back on a win32 threads based emulation layer. This also resolves the final part of T95743. * libaom-av1 - new dependency required for D14920, this is a somewhat odd dependency, it's cmake based, but still needs the perl environment setup, so we have to setup the env and call cmake our selves for the configure, build and install commands. This dep has the same libwinpthreads issue as vpx on Windows, however since it's cmake based, it's easier to prevent cmake from detecting it. Differential Revision: https://developer.blender.org/D15399
2022-07-26Partially revert "Build: Fix build of library dependencies on Linux aarch64"Sybren A. Stüvel
This reverts the Flex-related parts of commit rBef268c78933079137288e326704431432adf9ad9, as those caused a build error on CentOS 7 (which is used for the precompiled Linux libraries). CentOS 7 only has Automake 1.13, whereas after this commit version 1.15 seems to be required. Since in its patch description (D15319) it's mentioned that this "probably doesn't warrant changing", and it's actually blocking the build of the precompiled libraries for Blender 3.3 now, I'll revert the Flex-related part of the commit.
2022-07-18Build: update Embree to 3.13.4, enable Neon2x on ArmBrecht Van Lommel
* Allows Apple Silicon machines to use 8-wide BVH, which the release notes mention give an 8% performance boost. * An update to this version is also required for OpenPGL. This patch includes contributions from Jason Fielder and Sebastian Herholz. Ref D15286, T98555 Differential Revision: https://developer.blender.org/D15482
2022-06-30Build: Fix build of library dependencies on Linux aarch64Patrick Mours
rBb9c37608a9e959a896f5358d4ab3d3d001a70833 moved evaluation of `versions.cmake` before `options.cmake`, as a result of which `BLENDER_PLATFORM_ARM` was no longer defined in `versions.cmake`, causing it to choose the wrong OpenSSL version for aarch64. This reverts that. Also fixes a compiler crash when building flex with some glibc versions. Differential Revision: https://developer.blender.org/D15319
2022-06-29Cycles: Add support for rendering on Intel GPUs using oneAPIXavier Hallade
This patch adds a new Cycles device with similar functionality to the existing GPU devices. Kernel compilation and runtime interaction happen via oneAPI DPC++ compiler and SYCL API. This implementation is primarly focusing on Intel® Arc™ GPUs and other future Intel GPUs. The first supported drivers are 101.1660 on Windows and 22.10.22597 on Linux. The necessary tools for compilation are: - A SYCL compiler such as oneAPI DPC++ compiler or https://github.com/intel/llvm - Intel® oneAPI Level Zero which is used for low level device queries: https://github.com/oneapi-src/level-zero - To optionally generate prebuilt graphics binaries: Intel® Graphics Compiler All are included in Linux precompiled libraries on svn: https://svn.blender.org/svnroot/bf-blender/trunk/lib The same goes for Windows precompiled binaries but for the graphics compiler, available as "Intel® Graphics Offline Compiler for OpenCL™ Code" from https://www.intel.com/content/www/us/en/developer/articles/tool/oneapi-standalone-components.html, for which path can be set as OCLOC_INSTALL_DIR. Being based on the open SYCL standard, this implementation could also be extended to run on other compatible non-Intel hardware in the future. Reviewed By: sergey, brecht Differential Revision: https://developer.blender.org/D15254 Co-authored-by: Nikita Sirgienko <nikita.sirgienko@intel.com> Co-authored-by: Stefan Werner <stefan.werner@intel.com>
2022-05-12Build: patch USD to avoid using rdtscp instruction not available on older CPUsBrecht Van Lommel
Disable the new more accurate timing code, this is not needed for Blender. In USD itself this code is disabled on macOS anyway, so it should operate fine without it. Ref T97950, T95206 Differential Revision: https://developer.blender.org/D14928
2022-05-09Build: disable usage of GLEW, CLEW, CUDA, GLFW in OpenSubdivBrecht Van Lommel
The previous 3.1 libraries (accidentally) used glApi instead of GLEW and were working for GPU subdivision, so revert to that. There's a suspected conflict with Blender's own bundled GLEW or other issue with GLEW, causing the crash in T97737. The current GPU subdivision implementation does not need OpenCL, CUDA or GLFW. So also remove libraries needed for that. It's simpler to stick to compute shaders in OpenGL/Vulkan/Metal and not involve additional APIs. Ref T95206 Differential Revision: https://developer.blender.org/D14898
2022-04-29Fix missing NanoVDB patch for HIP support, after unifying with OpenVDBBrecht Van Lommel
This patch has also been contributed upstream, so will not be needed anymore soon. Also automatically clear cached variables for new nanovdb location in libs.
2022-04-21install_deps: Update USD to 22.03.Bastien Montagne
Add back a patch wrongly removed by rBb9c37608a9e9, and add another fix, for gcc11 build support. Re {T95206}.
2022-04-20Build: upgrade many library dependencies to new versions for Blender 3.2Ray Molenkamp
This only updates the build system, precompiled libraries for the various platforms will be committed over the coming week. New: fmt 8.0.0 level_zero v1.7.15 pystring v1.1.3 robinmap v0.6.2 webp 1.2.2 Updated: alembic 1.8.3 blosc 1.21.1 boost 1.78.0 embree 3.13.3 ffmpeg 5.0 fftw 3.3.10 flac 1.3.4 imath 3.1.4 ispc v1.17.0 jpeg 2.1.3 ogg 1.3.5 oidn 1.4.3 openal 1.21.1 opencolorio 2.1.1 openexr 3.1.4 openimageio v2.3.13.0 openjpeg 2.4.0 opensubdiv v3_4_4 openvdb 9.0.0 osl 1.11.17.0 sdl 2.0.20 tbb 2020_u3 tiff 4.3.0 usd 22.03 vorbis 1.3.7 vpx 1.11.0 x264 35fe20d1b zlib 1.2.12 Implemented by Ray Molenkamp, Sybren Stüvel and Brecht Van Lommel. Ref T95206
2022-02-11File headers: add missing copyright, add MIT to SPDX licensesCampbell Barton
2022-02-11File headers: use SPDX license for CMake filesCampbell Barton
2021-12-20Update our USD 21.02 patch to support gcc-11Bastien Montagne
There are two issues in USD code that break building it with gcc-11, one (in `demangle.cpp`) was already fixed upstream, the other (in `singularTask.h`) is still pending (reported upstream, see https://github.com/PixarAnimationStudios/USD/issues/1721). CC #platforms_builds_tests_devices project.
2021-11-18Fix T93045: Cycles HIP not rendering OpenVDB volumesBrecht Van Lommel
Build HIP kernels with NanoVDB, and patch NanoVDB to work with HIP. This is a header only library so no rebuild is needed. The changes are being submitted upstream to openvdb, so this patch should be temporary. Thanks Thomas for help testing this.
2021-10-21Deps: Python, bump bundled packages to their latest versionsSybren A. Stüvel
certifi : 2020.12.5 → 2021.10.8 chardet : 4.0.0 → charset-normalizer 2.0.6 cython : 0.29.21 → 0.29.24 idna : 2.10 → 3.2 numpy : 1.19.5 → 1.21.2 (which makes it possible to remove our patch) requests: 2.25.1 → 2.26.0 urllib3 : 1.26.3 → 1.26.7 Nowadays `requests` no longer depends on `chardet` but on `charset-normalizer`. That project describes itself as: > A library that helps you read text from an unknown charset encoding. > Motivated by chardet, I'm trying to resolve the issue by taking a new > approach. All IANA character set names for which the Python core library > provides codecs are supported. Reviewed By: LazyDodo, mont29, brecht Differential Revision: https://developer.blender.org/D12777
2021-09-23Fix: T91602 ffmpeg crashRay Molenkamp
Issue caused by our patch in rB1af722b81912 we replaced an array with a memory allocation but we forgot to update the assert which now used an invalid method to calculate the array size. SVN libs will have to be updated before T91602 will be fixed for end users.
2021-08-09Build: macOS library upgrade fixesBrecht Van Lommel
* Revert back to OpenMP 9.0.1 due to bug causing cloth physics test to fail. * Skip flex build on macOS to avoid link error, only reason we build this is due to old flex version on Linux CentOS 7. * Fix PNG cmake argument that expects lowercase on instead of ON. Ref T90507, T88438
2021-07-29Cleanup: OSL buildlib patch: Remove `.rej` part.Bastien Montagne
This patch contained changes for an `.rej` rejection file generated by failed patch apply... Definitly nothing to do here.
2021-07-27Deps builder: OIIO/OSL/ISPC/OIDN/LLVM/Flex updatesSybren A. Stüvel
This diff somewhat snowballed out of updating OIDN to 1.4.1 it had some changes that allowed us to remove the arm hacks we had in place and revert to using identical versions for a whole bunch of deps. But that required an update to ISPC which needed a newer LLVM and if we're updating LLVM we may as well update OSL, and when we update OSL, OIIO may as well be dragged in soo......anyhow... This diff updates: LLVM 9.0.0 (11.0.1 for mac/arm) -> 12.0.0 OIIO 2.1.15.0 -> 2.2.15.1 OSL 1.11.10.0 -> 1.11.14.1 winflex_bison 2.5.5-> 2.5.24 (ispc needed newer bison, windows only dep) OIDN 1.4.0 -> 1.4.1 ISPC v1.14.1(random hash for mac/arm) -> v1.16.0 Flex 2.6.4 (ISPC needed newer Flex than available on CentOS 7) and removes most of the "special arm/mac" versions. I think just ssl and embree are left with special versions. notable changes: @LazyDodo included some clang headers in the linux/mac harvest which are needed to start writing custom clang based tooling like D9465 these were already shipping on windows, but not the other platforms. [macOS] Change the `LC_ID_DYLIB` of OpenMP for {D11997}. This changes where the executables look for dylibs. Reviewed By: sebbas, LazyDodo Differential Revision: https://developer.blender.org/D11748
2021-07-06Deps builder: macOS/ ffmpeg: Fix linker warningAnkit Meel
ld: warning: could not create compact unwind for _ff_rl_init_vlc: stack subq instruction is too different from dwarf stack size Similar to rB2de5de57c58521862e0fecc95fc474ea347b7468 Differential Revision: https://developer.blender.org/D11796
2021-06-08Build: upgrade OpenImageDenoise to 1.4.0Brecht Van Lommel
CMake builder and install deps changes, precompiled libraries are still to be committed. Ref T88438, T88434 Differential Revision: https://developer.blender.org/D11486
2021-05-21Cleanup: spellingLeon Zandman
Includes fixes to misspelled function names. Ref D11280
2021-04-20Add support for building on Linux aarch64Patrick Mours
Differential Revision: https://developer.blender.org/D10958
2021-04-19Fix T86530: crash with Cycles OSL on Arm64Brecht Van Lommel
Bug in OSL itself, fix is submitted upstream.
2021-02-24Cmake/deps: Update OSL to 1.11.10.0Ray Molenkamp
This bumps OSL to 1.11.10.0. OSL Has a new build time dependency: Clang, and more importantly it expects clang and llvm to share a library folder, which it previously for us did not. This patch changes: -OSL Update to 1.11.10.0 -refactor the llvm/clang/clang-tools-extra builds into the llvm build using the llvm-project tarball for building that has all of the subprojects in it. -update ispc/openmp builds since clang no longer its own dependency and they have to depend on the llvm build now. -Update the windows builder to use the 64 bit host tools since it ran out of ram linking clang -Since OSL now needs clang to link successfully a findclang.cmake has been provided for linux/OSX Differential Revision: https://developer.blender.org/D10212 Reviewed By: brecht, sebbas, sybren
2021-02-23Build Environment/macOS/Python: link against zlib staticallyAnkit Meel
rBc70eb30240f8b5d5a8f2ac509f0eb585936142b5 added patch to use static zlib on Linux. But also added flags to use the zlib in LIBDIR for Python on macOS. That causes some shared libraries (binascii for one) to link against libz.1.dylib which will not be there on users' systems. Reuse the said patch for macOS also to avoid rpath issues. Fix T85648. Reviewed By: #platform_macos, brecht Differential Revision: https://developer.blender.org/D10479
2021-02-15macOS: add Embree, OpenImageDenoise and sse2neon libraries for ARMBrecht Van Lommel
This required using a fork of Embree, newer LLVM version, unreleased ISPC version and sse2neon directly from Git. Hopefully over time all the required changes end up in official releases. For now we deviate from other platforms. Based on contributions by Apple and Stefan Werner. Ref D9527, D8237, T78710
2021-02-15CMake/Deps: upgrade USD 20.05 → 21.02Sybren A. Stüvel
USD version 21.02 includes two of the changes Blender used to patch in, which have now been removed from `usd.diff`. Unfortunately 21.02 introduces another issue where LZ4 symbols are accidentally exported, causing linker errors. Fortunately these symbols are only used for resting, so I added a patch hunk that simply removes their `extern "C"` declaration. The LZ4 linker issue has been reported upstream at https://github.com/PixarAnimationStudios/USD/issues/1447. Reviewed By: sebbas, mont29 Differential Revision: https://developer.blender.org/D10367
2021-02-15CMake/Deps: OpenVDB 8.0.1Ray molenkamp
Straight forward version bump, some of the variables to detect a static OpenEXR changed and the folder structure seemingly changed a little requiring updates to the diff Reviewed By: sebbas, sybren Differential Revision: https://developer.blender.org/D10340
2021-02-15CMake/Deps: TBB 2020U2Ray molenkamp
Straight forward version bump. 2020U2 is significantly louder in the deprecated header usage warning department, we should probably see if we need to act on this: P1949 Differential Revision: https://developer.blender.org/D10359
2021-02-13Build: fix macOS minimum version link warning with pystringBrecht Van Lommel
Patch OpenColorIO again to pass along build flags, and remove outdated patches which were no longer being used.
2021-02-10cmake/deps: update Python to 3.9.1Ray Molenkamp
The following packages also have received updates: - IDNA 2.10 - CHARDET 4.0.0 - URLLIB3 1.26.3 - CERTIFI 2020.12.5 - REQUESTS 2.25.1 - NUMPY 1.19.5 numpy has gained a hard dependency on cython: - CYTHON 0.29.21 Notes: - This only updates the build environment files, once these are built, Blender can default to Python 3.9. - The 'm' suffix for Python binaries/libs has been removed. - The macOS patch in Python 3.7 is has been removed. Reviewed By: sybren, campbellbarton, sebbas Ref D10257
2021-02-01CMake/Windows/macOS: Add LibharuAnkit Meel
Decision: https://lists.blender.org/pipermail/bf-committers/2020-December/050836.html Adds CMake dependency builder support. Tested on macOS and Windows (Thanks @LazyDodo). Reviewed By: #platform_macos, LazyDodo, sebbas Maniphest Task: T84836 Differential Revision: https://developer.blender.org/D9928
2020-11-26macOS: Patch OpenImageIO's ustring for ARM.Stefan Werner
OpenImageIO's ustring makes assumptions about the interals of std::string which aren't true on macOS/ARM. A patch for OpenImageIO addresses this for macOS/ARM builds only, at the expense of potentially duplicated allocations of strings.
2020-10-29Simplify and enable NanoVDB dependency installationPatrick Mours
Changes NanoVDB to be a standalone dependency that is independent of the OpenVDB one. It works by downloading the "feature/nanovdb" branch of OpenVDB, but using the NanoVDB CMake in the "nanovdb" subdirectory. Since it is header-only, only the install target is used. Reviewed By: brecht Differential Revision: https://developer.blender.org/D9383
2020-10-05Cycles: Add NanoVDB support for rendering volumesPatrick Mours
NanoVDB is a platform-independent sparse volume data structure that makes it possible to use OpenVDB volumes on the GPU. This patch uses it for volume rendering in Cycles, replacing the previous usage of dense 3D textures. Since it has a big impact on memory usage and performance and changes the OpenVDB branch used for the rest of Blender as well, this is not enabled by default yet, which will happen only after 2.82 was branched off. To enable it, build both dependencies and Blender itself with the "WITH_NANOVDB" CMake option. Reviewed By: brecht Differential Revision: https://developer.blender.org/D8794
2020-09-18Fix T79929: crashes with Cycles denoising on older MacsBrecht Van Lommel
This was a bug in OpenImageDenoise, upgrade to latest 1.2.3 which has the fix. This in turn required a newer ispc version. Differential Revision: https://developer.blender.org/D8892
2020-09-15Deps: Add potrace as a new library dependencyRay Molenkamp
For work the GP team plans to land soon (T79877) potrace was taken on as an additional optional dependency. This diff adds building the library to the deps builder and takes care of the integration into the build-system with the `WITH_POTRACE` cmake switch. Differential Revision: https://developer.blender.org/D8662 Reviewed by: brecht, sergey
2020-09-01USD: remove library initialisation hackSybren A. Stüvel
Remove the hack for library initialisation; this is no longer necessary as the required information can be passed to the USD library after its static initialisers have run. This new approach is compatible with both the patched and original USD library. This means that platform maintainers don't need to rebuild the USD library until the next upgrade. Manifest Task: https://developer.blender.org/T80320
2020-08-31Remove patch for HDF5 librarySybren A. Stüvel
Delete `hdf5.diff`, because it's no longer used. Since Blender 2.90 the optional support for HDF5 has been dropped, but this file accidentally wasn't deleted. See 0102b9d47edf and 0c3843622726. No functional changes.
2020-08-13Deps_builder: Update openvdb to a dynamic libraryRay Molenkamp
This patch changes openvdb from a static to a dynamic library. this is in preparation for enabling pyopenvdb at some point in the future. Differential Revision: https://developer.blender.org/D8282 Reviewed by: brecht
2020-08-12deps_builder: Optionally build boost::pythonRay Molenkamp
This this adds the option of building boost::python in the libs builder, in preparation for future dependencies that require it (ie pyopenvdb) disabled by default, can be enabled with the `WITH_BOOST_PYTHON` cmake option. Differential Revision: https://developer.blender.org/D8212 Reviewed by: brecht
2020-07-31Deps builder: Add support for building GMPRay Molenkamp
Required for the new boolean code, disabled by default until all platforms have landed the libs and the boolean code actually lands in master. Reviewed By: brecht Differential Revision: https://developer.blender.org/D8384
2020-07-16macOS: Support arm64 architecture.Stefan Werner
Enabling all `make deps` dependencies with the exception of Embree and OIDN. After that, Blender can be compiled on an Apple Silicon Mac just like on any Intel based Mac. There are still compiler warnings that need to be investigated and there are probably a couple of bug still to be discovered and to be fixed. Most patches to the dependencies are simple and are about disabling SSE and setting the proper architecture to compiile for. Notable exception is Python, where I back ported a yet to be accepted PR for upstream Python: https://github.com/python/cpython/pull/21249 Cross compiling or buliding a Universal Binary is not supported yet. The minimum macOS target version for x86_64 remains at 10.13, the target for arm64 is 11.00. Differential Revision: https://developer.blender.org/D8236