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-05-26Fix buildbot CUDA/OptiX warnings on macOSBrecht Van Lommel
Explicitly disable these, rather than relying on them not being found. Also, don't duplicates the architectures list.
2021-05-20macOS build: set minimum deployment target correctlyAnkit Meel
Make `CMAKE_OSX_DEPLOYMENT_TARGET` independent of buildbot settings and always set to `OSX_MIN_DEPLOYMENT_TARGET`. That fixes the launch error on OS older than buildbot's. Remove unused `MACOSX_DEPLOYMENT_TARGET`. Fix T88419 Diff D11323
2021-04-13Cleanup: use typing for checking utilitiesCampbell Barton
2021-04-13CMake: fix error building with the version set to 300Campbell Barton
When Blender's minor version was single digits, it wasn't properly extracted. Resolve by adding zero padding. Issue raised by @harley in D10954.
2021-04-12project_info: use type hintsCampbell Barton
'mypy --strict' passes without errors.
2021-04-12cmake_consistency_check: use type hintsCampbell Barton
'mypy --strict' passes without errors.
2021-04-12Cleanup: remove make_quicky and enum generation utilitiesCampbell Barton
- Remove `make_quicky` as on modern systems linking is the main bottleneck, and there isn't such a gain from partial builds. - Remove enum generator as `PyC_StringEnumItems` & `EnumPropertyItem` are used in most places to access enums from Python, otherwise macros are added via macros.
2021-04-09Fix T86928: OSL script compilation failedSybren A. Stüvel
Tell `FindOSL.cmake` where to find the shader header files. These have moved from `${LIBDIR}/osl/shaders` to `${LIBDIR}/osl/share/OSL/shaders` when OSL was upgraded (T85365).
2021-03-31Cleanup/CMake: tweak messages in platform_appleAnkit Meel
2021-03-31Cleanup/CMake: warning to status to reduce noiseAnkit Meel
Correction in e5f0d176d4cfa020bfb4de78086007dcfd02e8f9
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-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-08Cleanup: Removed duplicate slash in macOS SDK pathSebastián Barschkis
Cleanup although it's harmless.
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-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-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-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-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-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-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-12Cleanup: use the assignment operator with list-comprehensionCampbell Barton
2021-02-11CMake: update python to 3.9.1Campbell Barton
Default to Python version 3.9. Reviewed By: LazyDodo, sybren, sebbas Ref D10380
2021-02-11Fix finding system Haru library on Debian.Bastien Montagne
Paths and names of system packages-installed libhpdf on Debian (and probably its derived distributions?) are slightly different than what was given to CMake finding script.
2021-02-09CMake/Linux: Add libharu to platform_linux.cmakeAnkit Meel
Since GPencil changes depending on libharu may be committed to master before SVN libraries for all platforms are in place, avoid build issues. Extension of D9928. Reviewed By: sybren Differential Revision: https://developer.blender.org/D10280
2021-02-05Cleanup: cmake indentation, white-spaceCampbell Barton
2021-02-02macOS: use precompiled libraries for arm64 buildBrecht Van Lommel
Standard wiki build instructions for building Blender on macOS can now be used on Macs with ARM processors. This contains all libraries except for Embree and OpenImageDenoise, so Cycles performance does not yet have full performance and features in this build. An x86-64 build is likely to still render faster than arm64 until Embree is added. Uses the new lib/darwin_arm64 folder. For simplicity and to keep download size under control, both for end users and builders, we are not planning to ship universal binaries. So this is a separate folder from lib/darwin. Ref T78710 Differential Revision: https://developer.blender.org/D10276
2021-02-01CMake: Remove duplicated code for Haru-TIFF dependency.Ankit Meel
2021-02-01CMake/Windows: Fix build issue in lite+haruRay Molenkamp
Haru depends on some symbols defined in libtiff which will cause linker errors if not enabled. Disable haru if WITH_IMAGE_TIFF is off.
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
2021-01-29Tests, docs: Use sanitizer options from environment too.Ankit Meel
Don't overwrite environment variables that may contain options like suppression files, symboliser etc. It's similar to rBa181b156399a13fa429159112e30c8005d5e8a59 and rBA589d13408a60cbec34a8bc3cc798c586043743ae . For Blender Add-ons repo, see the equivalent in D9816. Reviewed By: Blendify Differential Revision: https://developer.blender.org/D9815
2021-01-27CMake: Detect Clang-Tidy 11 and 12Sergey Sharybin
2021-01-26Fix: incomplete integration of PugiXML and Potrace build optionsBrecht Van Lommel
Add them to the standard build configurations, disable properly when library not found and print as part of configuration overview.
2021-01-20Cleanup: spelling & cleanup for cmake_consistency_checkCampbell Barton
Much more could be done here, some obvious corrections.
2021-01-20CMake: update checking utility to ignore nanovdb filesCampbell Barton
2021-01-14Fix automated tests when building with GCC and march=nativeSebastian Parborg
When building with more aggressive optimization flags, GCC will add FMA (Fused Multiply Add) instructions that will slightly alter the floating point operation results. This causes some automated tests to fail in blender. In clang and the intel compiler ffp-contract is set to off per default it seems from my research. (They do not have the exact same setting, but the default seems to match the off behavior) Reviewed By: Brecht Differential Revision: http://developer.blender.org/D9047
2021-01-13Cleanup: clang-format, trailing spaceCampbell Barton
2021-01-11Tests: run suites instead of individual test casesSybren A. Stüvel
Group all tests of a test suite into a single test command invocation. This reduces the number of invocations by `ctest` by an order of magnitude. Since rB56aa5b0d8c6b663, `bin/tests/blender_test` was run for every individual test. Having over a 1000 tests made testing slower than necessary. Individual tests can still be run if desired by invocation of `bin/tests/blender_test --gtest_filter=suitename.testname`. NOTE: For this commit to have an immediate effect, it may be necessary to remove the `tests` and `Testing` directories and some CMake files from your build directory and rebuild. Run `ctest -N` to see the list of tests; there should be less than 200. Reviewed By: sergey, LazyDodo, sebbas Maniphest Tasks: T83222 Differential Revision: https://developer.blender.org/D9649
2021-01-04Fix clang_array_check checking utilityCampbell Barton
Use python3 which is now supported, only use CLANG_BIND_DIR & CLANG_LIB_DIR when they are set. Also add immediate mode GPU API function calls.
2020-12-21Unix/macOS: support building with CcacheMatt Hill
This adds an option (WITH_COMPILER_CCACHE) to build using Ccache if it's found. Makefiles-based, Ninja-based and Xcode generators are supported. Pass `-DWITH_COMPILER_CCACHE=ON` to cmake to enable Ccache. Utility option in GNUmakefile is also added: for e.g., `make ninja ccache`. Reviewed By: brecht, ankitm Differential Revision: https://developer.blender.org/D9665