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
2021-03-30CMake: issue warnings when changing optionsAnkit Meel
Only done in top level CMakeLists, and platform_apple. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D10343
2021-03-30Build Environment: set MAKE_THREADS as per the CPUAnkit Meel
It is a better default. Reviewed By: sebbas, sybren Differential Revision: https://developer.blender.org/D10652
2021-03-30MSVC: ASAN support for VS 16.9Ray Molenkamp
This enables ASAN support when used with VS 16.9 enable as usual in cmake with the WITH_COMPILER_ASAN option, or when using make.bat just tag on `asan' to the invocation, ie: `make lite 2019 asan` MSVC: Asan support for 16.9 This enables ASAN support when used with VS 16.9 enable as usual in cmake with the WITH_COMPILER_ASAN option, or when using make.bat just tag on `asan' to the invocation, ie: `make lite 2019 asan` Differential Revision: https://developer.blender.org/D7794 Reviewed By: brecht, sergey
2021-03-29Cleanup/CMake: remove trailing `/`; whitespace.Ankit Meel
2021-03-26macOS/bpy: install into site-packagesAnkit Meel
Reviewed By: #platform_macos, brecht Maniphest Tasks: T86579 Differential Revision: https://developer.blender.org/D10664
2021-03-23Cleanup/CMake: Fix comment, sort order of options.Ankit Meel
2021-03-17Audaspace: add support for CoreAudio on macOSJörg Müller
This adds CoreAudio as audio backend on macOS. CoreAudio is the standard audio API on macOS. Ref T86590
2021-03-17Audaspace: add support for WASAPI on WindowsJörg Müller
This adds WASAPI as audio backend on Windows. WASAPI is the modern standard audio API on Windows introduced with Windows Vista. Ref T86590
2021-03-17Audaspace: add support for PulseAudio on LinuxJörg Müller
This adds PulseAudio as audio backend on Linux. PulseAudio is the main audio engine used on most, if not all, Linux distributions today. Ref T86590
2021-03-16make_deps: Update blender package mirror URIRay Molenkamp
Final location in SVN was slightly different than we were planning on.
2021-03-16Libraries: Fix deps build on macOS arm64Sebastián Barschkis
Minor adjustments that were missing when D10598 landed.
2021-03-16CMake/deps: Updated deps build requirements prompt for macOS arm64Sebastián Barschkis
Building deps on macOS arm64 has slightly different requirements. Belongs to 4b3dcd80698a
2021-03-16Fix T86124: Self-hosting external libraries packagesSybren A. Stüvel
Allow downloading of source packages of Blender's dependencies, so that it's easier to provide a "full source archive" that contains the blender source + all dependencies archives. A `make` command for this will be introduced soon. This changes the deps builder slightly to be more flexible with the origin of our source packages. To support this a new CMake variable has been added called `PACKAGE_DIR` where all sources archives will be stored. default: a directory called `packages` in the build folder. alternative-default: if a directory called `packages` exists in the blender source folder that will be used. This is to support the "full source archive" use case. The download phase have been moved from the build phase to the configure phase. Configure will download all sources validate the hashes while downloading. All `[depname].cmake` files have been changed to take a local `file://[path_to_local_tarball]` path rather than a remote URI. A second requirement was that there needed to be an option to grab the sources from the blender SVN mirror rather than upstream. For this an option has been added PACKAGE_USE_UPSTREAM_SOURCES (default ON). The exact location in SVN still needs to be worked out, I tested with my local webserver and codewise it checks out. The path that is in there currently will not work (given there is no mirror there yet). To build this mirror our local package caches can be used. Reviewed By: lazydodo Differential Revision: https://developer.blender.org/D10598
2021-03-12Cleanup: make_source_archive.py minor changes & commentsCampbell Barton
- Add notes on portability. - Use encoding argument for all file IO. - Use integer math to calculate major/minor version, while float division should be fine prefer matching Blender.
2021-03-08Python version of `make_source_archive.sh`Sybren A. Stüvel
This is a Python version of the existing `make_source_archive.sh` script. IMO it's easier to read, and it'll also be easier to extend with the necessary functionality for D10598. The number of lines of code is larger than `make_source_archive.sh`, but it has considerably less invocations of `awk` ;-) And also the filtering is integrated, instead of forking out to Python to prevent certain files to be included in the tarball. Reviewed By: dfelinto, campbellbarton Differential Revision: https://developer.blender.org/D10629
2021-03-08Cleanup: Removed duplicate slash in macOS SDK pathSebastián Barschkis
Cleanup although it's harmless.
2021-03-02CMake/deps: Append platform CFLAGS and LDFLAGS to Python build to ensure ↵Sebastián Barschkis
compatibility with minimum macOS version Similarly to other dependencies, the Python build should make use of the default CMake arguments. On macOS, for example, these arguments are required to set the deployment target correctly. See also: https://devtalk.blender.org/t/compiling-latest-branch-on-macos-fails-undefined-symbol/17649 Reviewed By: brecht, sybren Differential Revision: https://developer.blender.org/D10498
2021-03-01CMake: reduce Neon related output on Intel platformsBrecht Van Lommel
* Only try to find sse2neon if Neon detected * Only run Neon support test once
2021-03-01CMake/deps: Added new macOS arm64 build dependency to instructionsSebastián Barschkis
macOS arm64 has extra requirements.
2021-02-27Fix (unreported) broken OCIO from install_deps.Bastien Montagne
Looks like they removed static libs by default in OCIO 2.0, for some historical reasons `install_deps` was enforcing using only static libs for this one, now removed it so that Blender buil can use usual so's.
2021-02-26CMake/deps: Adjust OSL shader directorySebastián Barschkis
The location of the shaders changed with OSL 1.11.10. This commit is therefore in addition to D10212. @sybren With the latest SVN libraries, I am fairly certain there is a "OSL not found" in the CMake output. Can you check on Linux? @LazyDodo Since you haven't pushed the new OSL libs yet, this should not be a problem on Windows. So this will only be needed whenever those land. Reviewed By: LazyDodo Differential Revision: https://developer.blender.org/D10552
2021-02-26CMake/deps: Fix LLVM and OSL buildsSebastián Barschkis
This commit is addition to D10212. Apple arm64 support was left out in that patch.
2021-02-26CMake/Deps: Python 3.9.2Ray Molenkamp
Straight up minor version bump, no anomalies to report Reviewed By: sebbas, sybren Differential Revision: https://developer.blender.org/D10523
2021-02-25Fix macOS SSE support not detected correctly after recent changesBrecht Van Lommel
Due to moving the code the test binary was incorrectly compiled with OpenMP flags. Move setting of the OpenMP flags to the appropriate place.
2021-02-25install_deps: bump USD version to 21.02.Bastien Montagne
Should have been part of D10367/rBa923a34de19c, but for some reasons it did not make it into final commit... Re T85365.
2021-02-25install_deps: bump python version to 3.9.2.Bastien Montagne
Also bump exlusive maximal version to 3.11, since 3.10 is now supported. Re T85365.
2021-02-24CMake: Removed temporarily disabled clang blockSebastián Barschkis
Was disabled in rBc778fd981e63. Libraries have been updated in rBL62576.
2021-02-24CMake: Temporarily removing find clang blockSebastián Barschkis
New libs have not landed in the SVN repository. Once they are up, this commit will be reverted.
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-22CMake/Windows: Update for new XR_OPENXR versionRay Molenkamp
This updates platform/platform_win32.cmake to support both the old and new library names for OpenXR. The new version links against one additional system library and the debug library filename changed ever so slightly. This is a temporary workaround and can be removed once the new lib versions have landed.
2021-02-22CMake/Windows: Detect Boost versionRay Molenkamp
Rather than hardcoding the lib names, read boosts version.hpp and extract the version from there. This will make it easier to land lib changes in the near future.
2021-02-21CMake/Deps: OpenEXR 2.5.5Ray Molenkamp
2021-02-19CMake/Deps: Mesa, harvest lib files from new locationSybren A. Stüvel
The upgraded Mesa (see D10282) stores library files in `mesa/lib64`.
2021-02-17macOS: support building with command line tools without full XcodeBrecht Van Lommel
Latest Xcode takes up 15GB, command line tools are only 1.2GB.
2021-02-17BLI: use sse2neon to emulate SSE instructions with Arm NeonBrecht Van Lommel
* WITH_CPU_SSE was renamed to WITH_CPU_SIMD, and now covers both SSE and Neon. * For macOS sse2neon.h is included as part of the precompiled libraries. * For Linux it is enabled if the sse2neon.h header file is detected. However this library does not have official releases and is not shipped with any Linux distribution, so manual installation and configuration is required to get this working. Ref D8237, T78710
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-15macOS Deps: NumPy: Remove buggy Accelerate frameworkAnkit Meel
Building NumPy from source with default options of builder causes it to link against Accelerate framework which is buggy and raises a warning mentioned in [2]. "RankWarning: Polyfit may be poorly conditioned" Accelerate is deprecated with NumPy 1.20+.[1] So either we build OpenBLAS in dependencies also and set appropriate env variables suggested in [1] while building NumPy for it to find OpenBLAS. Or download NumPy wheel from pip and never allow pip to build NumPy from source while installing. After this change, pip wheels are used for NumPy for macOS with x86_64. [1] https://numpy.org/doc/stable/user/building.html#lapack [2] https://github.com/numpy/numpy/issues/15947 Reviewed By: #platform_macos, sebbas Differential Revision: https://developer.blender.org/D10368
2021-02-15install_deps: Bump OpenEXR to 2.5.5 version.Bastien Montagne
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: OpenImageDenoise 1.2.3 → 1.3.0Sybren A. Stüvel
2021-02-15CMake/Deps: XR_OpenXR v1.0.14Ray molenkamp
Straight up version bump Things of note: They started using API calls only available in windows 8, however given the Python 3.9 update will forcibly bump us to 8.1+ anyhow this is not an issue. Will require some minor tweaks to platform_win32.cmake after adding the libs to svn which are not included in this diff so this diff can land without having to have the libs in place yet. Reviewed By: sebbas, sybren Differential Revision: https://developer.blender.org/D10349
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: Alembic 1.7.16Sybren A. Stüvel
Version bump + no longer using Boost. Building Alembic with Boost gave compiler errors, and having one less inter-dependency is good as well. Reviewed By: sebbas, sybren Differential Revision: https://developer.blender.org/D10329
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-15CMake/Deps: Boost 1.73Ray molenkamp
Just a simple version bump. Maniphest Tasks: T85365 Differential Revision: https://developer.blender.org/D10314
2021-02-14cmake/deps: Update mesa to 20.3.4Campbell Barton
This resolves build error with Py3.9x, use meson build system since autoconf/automake are no longer supported. This adds ninja & meson as dependencies for Linux. Reviewed By: brecht, sybren Ref D10282
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-12OpenColorIO: upgrade to version 2.0.0Brecht Van Lommel
Ref T84819 Build System ============ This is an API breaking new version, and the updated code only builds with OpenColorIO 2.0 and later. Adding backwards compatibility was too complicated. * Tinyxml was replaced with Expat, adding a new dependency. * Yaml-cpp is now built as a dependency on Unix, as was already done on Windows. * Removed currently unused LCMS code. * Pystring remains built as part of OCIO itself, since it has no good build system. * Linux and macOS check for the OpenColorIO verison, and disable it if too old. Ref D10270 Processors and Transforms ========================= CPU processors now need to be created to do CPU processing. These are cached internally, but the cache lookup is not fast enough to execute per pixel or texture sample, so for performance these are now also exposed in the C API. The C API for transforms will no longer be needed afer all changes, so remove it to simplify the API and fallback implementation. Ref D10271 Display Transforms ================== Needs a bit more manual work constructing the transform. LegacyViewingPipeline could also have been used, but isn't really any simpler and since it's legacy we better not rely on it. We moved more logic into the opencolorio module, to simplify the API. There is no need to wrap a dozen functions just to be able to do this in C rather than C++. It's also tightly coupled to the GPU shader logic, and so should be in the same module. Ref D10271 GPU Display Shader ================== To avoid baking exposure and gamma into the GLSL shader and requiring slow recompiles when tweaking, we manually apply them in the shader. This leads to some logic duplicaton between the CPU and GPU display processor, but it seems unavoidable. Caching was also changed. Previously this was done both on the imbuf and opencolorio module levels. Now it's all done in the opencolorio module by simply matching color space names. We no longer use cacheIDs from OpenColorIO since computing them is expensive, and they are unlikely to match now that more is baked into the shader code. Shaders can now use multiple 2D textures, 3D textures and uniforms, rather than a single 3D texture. So allocating and binding those adds some code. Color space conversions for blending with overlays is now hardcoded in the shader. This was using harcoded numbers anyway, if this every becomes a general OpenColorIO transform it can be changed, but for now there is no point to add code complexity. Ref D10273 CIE XYZ ======= We need standard CIE XYZ values for rendering effects like blackbody emission. The relation to the scene linear role is based on OpenColorIO configuration. In OpenColorIO 2.0 configs roles can no longer have the same name as color spaces, which means our XYZ role and colorspace in the configuration give an error. Instead use the new standard aces_interchange role, which relates scene linear to a known scene referred color space. Compatibility with the old XYZ role is preserved, if the configuration file has no conflicting names. Also includes a non-functional change to the configuraton file to use an XYZ-to-ACES matrix instead of REC709-to-ACES, makes debugging a little easier since the matrix is the same one we have in the code now and that is also found easily in the ACES specs. Ref D10274
2021-02-12CMake/Deps: fix build of nasm when asciidoc and xmlto are unavailableSybren A. Stüvel
Create zero-byte manual page files `nasm.1` and `ndisasm.1` such that nasm's `make install` step succeeds. Installing nasm requires that its manual pages are built. This requires local packages `asciidoc` and `xmlto` to be installed. Not only does `asciidoc` pull in 110 MB of packages (itself + dependencies), there is also no need for these manual pages. Nasm is just used for building other dependencies, and not even part of our precompiled libraries in SVN. Reviewed By: sebbas Differential Revision: https://developer.blender.org/D10396