Commit Graph

3624 Commits

Author SHA1 Message Date
bartus
791aeeff9a Build: Upgrade OpenPGL to version 0.6.0
Main improvements:
* Spatial structure (Kd-tree) build is now multithreaded.
* Kd-tree switched to use cache-friendlier TreeLets.
* Field fixed some non-deterministic behavior when spatial cache does
  not receive any training data during a training iteration due to a
  large number of training iterations.
* Fixed build problems on (non-Mac) ARM systems.

Pull Request: https://projects.blender.org/blender/blender/pulls/118328
2024-02-19 13:32:23 +01:00
Brecht Van Lommel
fd643535bc Merge branch 'blender-v4.1-release' into main 2024-02-16 17:55:26 +01:00
Brecht Van Lommel
17ca22ae9f macOS: Raise minimum required version to macOS 11.2
This was already the minimum requirement for Intel and Apple Silicon
GPUs. It is required for the Metal backend to work correctly.

Previously the minimum for AMD GPUs was 10.15.

Pull Request: https://projects.blender.org/blender/blender/pulls/118287
2024-02-16 17:53:51 +01:00
Campbell Barton
156fffbfde Merge branch 'blender-v4.1-release' 2024-02-14 14:29:55 +11:00
Brecht Van Lommel
dd382be067 Fix #118020: Cycles OptiX OSL crashes
Turns out we were not building OSL with OptiX enabled anymore.
Also check now if the OSL builds has OptiX support and if not
disable it in Cycles.

Building OSL with support for this (still) does not require
either the OptiX SDK or CUDA, it only needs LLVM.

Pull Request: https://projects.blender.org/blender/blender/pulls/118234
2024-02-14 03:40:01 +01:00
Campbell Barton
2119d271e0 Cleanup: remove "-noaudio" argument in background mode
This is no longer needed as background mode implies -noaudio.
2024-02-14 00:13:38 +11:00
Brecht Van Lommel
3e0d77c80f Build: macOS support for "make source_archive" 2024-02-11 02:50:23 +01:00
Campbell Barton
28e771372b Cleanup: wrap lines for in CMake's build-environment for readability
- Commands which have arguments split over multiple lines use
  indented lines.
- Wrap lines where multiple commands run using "&&".
- Blank lines between multiple commands helps the text from becoming
  too dense.
2024-02-10 22:36:36 +11:00
Harley Acheson
48390d018d Merge branch 'blender-v4.1-release' 2024-02-09 12:23:51 -08:00
Brecht Van Lommel
93e4fa7d36 Build: Disable TIFF sphinx docs for library dependencies 2024-02-09 20:00:30 +01:00
Bastien Montagne
b21ceece05 Cleanup: Move BKE_blender.h to CPP header.
Also fix comment in `build_files/cmake/macros.cmake`, CMake blender version
parsing depends in the (still C) `BKE_blender_version.h` header now.
2024-02-09 19:12:23 +01:00
Brecht Van Lommel
506556fb3f Merge branch 'blender-v4.1-release' into main 2024-02-08 15:23:47 +01:00
Brecht Van Lommel
8f9ca23b9e Build: document and check GCC/CUDA/HIP compiler version for libraries
This is not a hard requirement to be able to build the libraries, but
these versions should be written down somewhere. So compare compiler
versions as part of make deps setup.

Pull Request: https://projects.blender.org/blender/blender/pulls/117457
2024-02-08 15:23:14 +01:00
Campbell Barton
aead8a0428 Merge branch 'blender-v4.1-release' 2024-02-08 15:08:27 +11:00
Campbell Barton
34f64eb35b Build: add additional packages for Linux (cuda-toolkip & autogen) 2024-02-08 15:03:46 +11:00
Campbell Barton
4a50f1d4ee Build: unbreak building flex on Rock8 Linux from aclocal-1.16
Flex's bundled configure depended on aclocal-1.15 which has been
updated to 1.16.

Resolve by regenerating configure files on Linux which in turn adds a
new dependency on texinfo.
2024-02-08 11:10:07 +11:00
Campbell Barton
412b279629 Build: unbreak building flex on Rock8 Linux from aclocal-1.16
Flex's bundled configure depended on aclocal-1.15 which has been
updated to 1.16.

Resolve by regenerating configure files on Linux which in turn adds a
new dependency on texinfo.
2024-02-08 10:12:22 +11:00
Thomas Dinges
fb0f06a2ac Revert "Release cycle: 4.1, Bcon3"
This reverts commit 4db1426818.
2024-02-07 12:53:08 +01:00
Thomas Dinges
4db1426818 Release cycle: 4.1, Bcon3 2024-02-07 12:49:52 +01:00
Ray Molenkamp
ea7c0a4a46 deps_builder: Fix broken hash for sqlite
hash update was missed in ec4b074506
2024-02-06 17:25:18 -07:00
Ray Molenkamp
28208cfddb deps_builder: update ffmpeg diff
did not apply anymore
2024-02-06 14:17:42 -07:00
Ray Molenkamp
dfb3482946 deps_builder/win: update perl to 5.38.0.1
5.22.1.3 was incompatible with the latest openssl update.
2024-02-06 14:16:55 -07:00
Ray Molenkamp
0d8710aa2e deps_builder: Update oidn diff
did not apply any more on windows
2024-02-06 14:14:03 -07:00
Stefan Werner
31d55e87f9 Cycles: Metal support for OpenImageDenoise
This is supported on Apple Silicon GPUs and macOS 13.0+.

Co-authored-by: Stefan Werner <stefan.werner@intel.com>
Co-authored-by: Attila Afra <attila.t.afra@intel.com>
Pull Request: https://projects.blender.org/blender/blender/pulls/116124
2024-02-06 21:13:23 +01:00
Xavier Hallade
acdc3deaea Build: upgrade OIDN to 2.2-rc2
Minor update over OpenImageDenoise 2.2-rc, fixing the runtime issues on
macOS Ventura. For other platforms the code is identical.

Pull Request: https://projects.blender.org/blender/blender/pulls/117902
2024-02-06 17:43:55 +01:00
Brecht Van Lommel
ec4b074506 Build: Update 4.1 libraries to fix CVEs
Pull Request: https://projects.blender.org/blender/blender/pulls/117866
2024-02-06 13:56:16 +01:00
Bastien Montagne
a48e825c1e install_linux_packages: Updated OIdenoise, level zero and OCIO versions.
Ref. #113157
2024-02-05 17:45:53 +01:00
Bastien Montagne
ec5594ec7f install_linux_packages: update OIIO, OSL, LLVM and USD library versions.
NOTE: Blender does not seem to build with older OpenImageIO versions
(2.4.x and before) anymore. Since this library is now mandatory, it
means that Blender cannot be built without using the pre-compiled libs
on most Debian system, currently.

Ref. #113157.
2024-02-05 16:47:08 +01:00
Nikita Sirgienko
6827400305 Build: Cycles: Backport a DPC++ fix for caching of GPU binaries
Since the addition of Meteor Lake binaries, prebuilt GPU binaries
are now stored as fatbinaries. When running on a platform for which
prebuilt binaries are lacking or considered incompatible, the DPC++
SYCL runtime caching logic failed storing the (re)compiled
compatible version. This patch to DPC++ SYCL runtime fixes it.

Pull Request: https://projects.blender.org/blender/blender/pulls/117844
2024-02-05 13:55:40 +01:00
Xavier Hallade
b91ebfb866 Build: upgrade OIDN to 2.2-rc
It includes support for Meteor Lake, the CUDA driver API, and Metal (to
be enabled by https://projects.blender.org/blender/blender/pulls/116124)

Pull Request: https://projects.blender.org/blender/blender/pulls/117752
2024-02-02 18:31:14 +01:00
Xavier Hallade
cb643f8e44 Build: upgrade Level Zero to 1.15.8
OpenImageDenoise 2.2 requires at least 1.9.4 and 1.8.8 was used, so we
upgrade to latest version.
2024-02-02 18:31:12 +01:00
Brecht Van Lommel
25acfc7497 Fix: OpenColorIO deps build not finding pystring header 2024-02-02 17:23:05 +01:00
Brecht Van Lommel
deb4273565 Build: Bump OpenColorIO to 2.3.2
To fix issues with detection of AVX instruction support.

Ref #113157, #117435
2024-02-02 16:37:30 +01:00
Jeroen Bakker
324ef0cbf4 RenderTest: GPU Render Tests Pass Silently
Add silently fail option to GPU based render tests. This is a pre-requisite to enable
render tests on the buildbot. By default these render tests will pass silently.

* Test will pass when using the `--pass-silently` arguments.
* Only crashes will be reported as failed tests.
* To find out failing test, review the test reports.

`WITH_GPU_RENDER_TESTS_SILENT` compile option can be used to let tests pass (default)
or fail (default for developers).

Although some tests fail, they still passed. In the generated render report,
the silently passed failures are correctly reported to be failures.

Pull Request: https://projects.blender.org/blender/blender/pulls/117629
2024-01-29 15:39:14 +01:00
Sergey Sharybin
f11292104d Render Tests: Separate difference of Color and Alpha
This change fixes confusion situation when the render output
is an RGBA image: the difference in color was not visible in
the report because alpha channel was all zeros. This is due
to idiff performing per-channel difference.

The solution to this problem is to have separate images for
color and alpha difference, which makes it clear where the
difference actually is coming from.
2024-01-25 10:04:16 +01:00
Campbell Barton
e89fdadf8e CPPCheck: exclude large lookup table in checks 2024-01-25 10:09:00 +11:00
Ray Molenkamp
52152aac90 deps_builder: include all oiio tools for windows
oiiotool is required for PR117481
2024-01-24 08:47:30 -07:00
Stefan Werner
d16d2bbd3a Cycles: Adding OIDN support for CUDA and OptiX devices
Small changes to turn on support and to build OIDN with the CUDA backend.

Co-authored-by: Werner, Stefan <stefan.werner@intel.com>
Pull Request: https://projects.blender.org/blender/blender/pulls/115828
2024-01-24 08:19:39 +01:00
Brecht Van Lommel
440b1d9179 Cleanup: cmake warning in make deps 2024-01-23 20:29:07 +01:00
Campbell Barton
dd8c42bfaf CMake: mark freetype & tiff directories as advanced
It's not clear what these are used for as they seem like recent
additions and are set to "NOT-FOUND" even when tiff/freetype are found.

Marking as advanced instead of removing so as not to interfere with
freetype/tiff finding logic.
2024-01-23 20:45:19 +11:00
Thomas Dinges
64fc6d7890 Docs: Replace most wiki links with links to new developer docs
Exceptions:
* Links to personal wiki pages
* Pages that are not in the new developer docs yet (like Human Interface Guidelines)
* tools\check_wiki\check_wiki_file_structure.py needs a refactor
2024-01-18 16:49:38 +01:00
Brecht Van Lommel
aefa1cd723 Build: bump sse2neon version to latest hash
This includes an additional fix for precision of some operations that affect
Blender tests.
2024-01-16 14:18:33 +01:00
Campbell Barton
6e9e1557bb Cleanup: tabs to spaces 2024-01-14 11:37:04 +11:00
Campbell Barton
95c0968246 Cleanup: quiet mypy warning 2024-01-11 16:29:19 +11:00
Bastien Montagne
f23ee504d0 Tests: Improve the sanitizer options handling.
Previous code was using the 'nuclear' SAN weapon `exitcode=0`, which
essentially makes testing ignore all sanitizer errors.

This commit removes this option, and instead uses the suppression
list from Blender source repository (`tools/config/analysis/lsan.supp`)
for the leak sanitizer.

It also enables the `allocator_may_return_null` for the address sanitizer.
This should only be needed for one test (the `guardedalloc` one), but for
now it is simpler to define it for all tests. This can be refined at a
later time.

Pull Request: https://projects.blender.org/blender/blender/pulls/116635
2024-01-09 14:26:36 +01:00
Campbell Barton
5afd33d129 PyAPI: drop support for Python 3.10
All platforms have been updated to support 3.11
so supporting 3.10 is no longer needed.
2024-01-09 22:23:41 +11:00
Campbell Barton
cff7415040 Build: bump OpenAL-soft from 1.21.1 to 1.23.1
Along with regular fixes and improvements,
this removes a warning on startup for Linux, see:
https://github.com/kcat/openal-soft/issues/554

Some deprecated CMake variables were removed and needed to be renamed.

Note that the previous URL from http://openal-soft.org/
is no longer responsive, using the GITHUB URL instead.

Ref !116877
2024-01-09 21:29:05 +11:00
Campbell Barton
c6485d5947 CMake: quiet undefined variable warnings 2024-01-09 12:38:42 +11:00
Brecht Van Lommel
df43c8e7ef Fix macOS not auto updating cmake cache for Python 3.11 2024-01-08 13:14:34 +01:00
Brecht Van Lommel
0e4da8d55f Fix macOS ARM build failing with make lite
OpenImageIO headers have a dependency on Imath headers when not on x86_64.
2024-01-08 13:14:34 +01:00