Commit Graph

3711 Commits

Author SHA1 Message Date
Jeroen Bakker
c15e5116ab Vulkan: MoltenVK Support for Developers
MoltenVK original intent was to let developers work on a mac system developing
for the vulkan eco-system. MoltenVK doesn't support all the features that we
require and would require additional workarounds to be actually supported.

It is not expected that we will release Blender with MoltenVK for this reason.
But it still has value for shader developers to validate shaders on metal and
vulkan on a single platform.

![image](/attachments/9a4a9904-a5f6-4922-896d-744dfb78244c)

Pull Request: https://projects.blender.org/blender/blender/pulls/117940
2024-04-11 11:04:43 +02:00
Campbell Barton
51fd558be2 cppcheck: suppress noisy output
Some of these could be enabled if there is an interest to consider
them warnings, until then they're noisy and don't often hint at errors
in the code.
2024-04-08 12:02:58 +10:00
Campbell Barton
cbee0f5477 cppcheck: update the checking utility to resolve issues in source/
The script to run cppcheck failed for most files in source/ because
of a syntax error in MEM_guardedalloc.h with attribute functions.

Workaround the error by including BLI_compiler_attrs.h directly.

Other changes:

- Specify c++17 / c11 standards for C++ & C.
- Resolve errors from undefined integer ranges.
- Set the check level to exhaustive so checks always run.
- Suppress noisy missingIncludeSystem warning.
- Move run-time compiler defines into a temporary include
  which resolves argument quoting errors when cppcheck is used with
  clang's parser.
2024-04-02 17:02:23 +11:00
Campbell Barton
03d728e281 Cleanup: improve type checking in project_source_info.py
Since the type hints were added it seems mypy has been improved
making it possible to remove the workarounds.
2024-04-02 10:26:14 +11:00
Campbell Barton
ae950451ea Cleanup: remove redundant f-string use 2024-04-01 16:51:32 +11:00
Campbell Barton
0eb1317e70 Cleanup: remove unused exception value 2024-03-29 16:18:28 +11:00
Campbell Barton
6a937d646b Cleanup: remove unused variables 2024-03-21 10:11:54 +11:00
Brecht Van Lommel
971e82b93a Merge branch 'blender-v4.1-release' 2024-03-15 21:13:19 +01:00
Brecht Van Lommel
b32554e53b Build: Upgrade OpenImageDenoise to 2.2.2
Fixing memory leak reported in #119035, and crashes with old AMD
drivers and unsupported GPUs.

Pull Request: https://projects.blender.org/blender/blender/pulls/119538
2024-03-15 21:11:04 +01:00
Campbell Barton
a654e0dde3 Cleanup: unset temporary variables in CMake 2024-03-14 10:38:15 +11:00
Brecht Van Lommel
92f6ba5a5f Merge branch 'blender-v4.1-release' 2024-03-11 15:09:55 +01:00
Brecht Van Lommel
c388ed1e53 Fix #118709: Crash in OIDN GPU detection for unsupported HIP device
Pull Request: https://projects.blender.org/blender/blender/pulls/119315
2024-03-11 15:09:24 +01:00
Jesse Yurkovich
5b522359ee Cleanup: Centralize MSVC conformance related cmake items
Move the MSVC conformance flags to a win32-specific central location.

Pull Request: https://projects.blender.org/blender/blender/pulls/119235
2024-03-09 23:42:20 +01:00
Hans Goudey
04a9790035 Merge branch 'blender-v4.1-release' 2024-03-08 16:35:33 -05:00
Ray Molenkamp
850b89ba51 deps_builder: fix URI for the blender mirror of the source packages
This was still using the SVN repository, which isn't used any more
since the migration to git lfs.
2024-03-08 10:01:44 -07:00
Campbell Barton
cb4351665a Cleanup: format, trailing space 2024-03-08 11:31:01 +11:00
Campbell Barton
5214e6f35d Cleanup: unset temporary CMake variables
Also use consistent case (for `_*_SEARCH_DIRS`).
2024-03-08 10:54:56 +11:00
Hans Goudey
744f3b2823 Cleanup: Grammar in comments: Fix uses of "own"
"Own" (the adjective) cannot be used on its own. It should be combined
with something like "its own", "our own",  "her own", or "the object's own".
It also isn't used separately to mean something like "separate".

Also, "its own" is correct instead of "it's own" which is a misues of the verb.
2024-03-07 16:23:35 -05:00
Campbell Barton
0cd414120b Unbreak build on macOS with AppleClang from recent cleanup
Exact an exact match with Clang broke building when the compiler ID
was "AppleClang", reverting parts of [0].

[0]: 6549019ae19cecbea524782054dca0e99cb833b8
2024-03-07 19:56:58 +11:00
Campbell Barton
6549019ae1 Cleanup: use STREQUAL instead of MATCHES for exact comparisons
MATCHES takes a REGEX and searches the input for a match,
this isn't necessary for CMAKE_SYSTEM_PROCESSOR & CMAKE_*_COMPILER_ID.
2024-03-07 17:56:41 +11:00
Campbell Barton
d0fc9e2d9d Merge branch 'blender-v4.1-release' 2024-03-07 17:36:31 +11:00
Campbell Barton
239395565a Build: fix building openimagedenoise on Linux
hipPointerAttribute_t.memoryType was renamed to type,
perform the rename on Linux to fix build error.
2024-03-07 17:32:04 +11:00
Campbell Barton
a975c7096a Cleanup: line length in CMake files 2024-03-07 13:26:55 +11:00
Brecht Van Lommel
b3d55b37bc Merge branch 'blender-v4.1-release' 2024-03-06 16:52:54 +01:00
Brecht Van Lommel
216637ab56 Build: Upgrade OSL to 1.13.7, OIDN to 2.2.1
Fix #118020: Crash with OptiX OSL on Windows
Maybe help with #119035: Memory leaks with OIDN GPU

Ref #113157

Pull Request: https://projects.blender.org/blender/blender/pulls/119095
2024-03-06 16:34:27 +01:00
Anthony Roberts
445fd42c61 Windows: Add ARM64 support
* Only works on machines with a Qualcomm Snapdragon 8cx Gen3 or above.
  Older generation devices are not and will not be supported due to
  some driver issues
* Requires VS2022 for building.
* Uses new MSVC preprocessor for sse2neon compatibility.
* SIMD is not enabled, waiting on conversion of blenlib to C++.

Ref #119126

Pull Request: https://projects.blender.org/blender/blender/pulls/117036
2024-03-06 16:14:34 +01:00
Anthony Roberts
7e3b83b146 Build: Add Windows ARM64 support for library dependencies
* VS2022 is required.
* Only OpenPGL and DPCPP are disabled, other libraries are supported.
* Embree is built with LLVM and VS2019 tools, and for that reason has
  its own cmake file as it is quite different.
* TBB and USD patches should become obsolete once these are upstreamed
  and Blender upgrades to the latest versions.

Ref #119126

Pull Request: https://projects.blender.org/blender/blender/pulls/117036
2024-03-06 16:14:33 +01:00
Ray Molenkamp
55dfe399b5 deps_builder: Fix openpgl build error on windows
$ was on the wrong line causing a build error,
issue introduced in 28e771372bcad3194bc55f56e9da32361036b241
2024-03-04 15:12:15 -07:00
Campbell Barton
8c16b612ca Merge branch 'blender-v4.1-release' 2024-03-04 12:53:37 +11:00
Campbell Barton
7e9a36c1fa Cleanup: suppress undefined variable use warnings 2024-03-04 12:51:24 +11:00
Sebastian Parborg
1cdf41a341 Fix: CMake LIBDIR check not working as intended after cleanup
After 65f5e8b775, the LIBDIR cmake check would actually not print any
warnings if the LIBDIR could not be found automatically.
2024-03-01 19:44:02 +01:00
Sebastian Parborg
4b114861c0 Fix: CMake LIBDIR check not working as intended after cleanup
After ca8dc11a85, the LIBDIR cmake check would actually not print any
warnings or error out if the LIBDIR could not be found automatically.

Pull Request: https://projects.blender.org/blender/blender/pulls/118975
2024-03-01 19:37:36 +01:00
Bastien Montagne
c3d3528280 Fix broken CMake file after recent refactor.
Basically all 'normal' builds were erroring in CMake config after
ca8dc11a85.
2024-03-01 12:17:44 +01:00
Campbell Barton
ca8dc11a85 Merge branch 'blender-v4.1-release' 2024-03-01 16:25:29 +11:00
Campbell Barton
65f5e8b775 Cleanup: undefined defined variable warnings with CMake 2024-03-01 16:22:06 +11:00
Campbell Barton
d39998318f Merge branch 'blender-v4.1-release' 2024-02-29 12:34:14 +11:00
Campbell Barton
36e217142f Build: remove svn from Linux build deps script 2024-02-29 10:12:20 +11:00
Xavier Hallade
b8fdef965d Merge branch 'blender-v4.1-release' 2024-02-28 18:25:21 +01:00
Xavier Hallade
98343c0c17 Build: Upgrade Intel Graphics Compiler to 1.0.15468 on Linux
This corresponds the latest stable LTS release:
https://dgpu-docs.intel.com/releases/LTS_803.29_20240131.html

Graphics compiler upgrades require increasing the mininum required
driver (compute-runtime) version to the corresponding one to guarantee
compatibility, which is XX.XX.27642.38 in this release, so we bump this
requirement accordingly.

Fixes #118713

Pull Request: https://projects.blender.org/blender/blender/pulls/118814
2024-02-28 18:24:30 +01:00
Falk David
5c7e4e15ca Cleanup: Fix typo 2024-02-28 15:23:09 +01:00
Sergey Sharybin
9060b0dfb7 Cleanup: Correction to type annotation and smaller fixes/optimizations
This commit contains changes done to these scripts in the main branch.
2024-02-28 11:36:44 +01:00
Sergey Sharybin
066f7d9eea Revert "Cleanup: Address mypy errors and warnings"
The similar cleanup with a lot of other changes were committed
to the main branch. Is easier to revert this change, copy the
scripts from main, and merge things back.

This reverts commit 4bc1ba3c2d579b2bd4746eac71c0de948985fa45.
2024-02-28 11:36:44 +01:00
Sergey Sharybin
4bc1ba3c2d Cleanup: Address mypy errors and warnings
Pull Request: https://projects.blender.org/blender/blender/pulls/118844
2024-02-28 11:25:44 +01:00
Campbell Barton
2e6739967e Cleanup: reduce right-shift in Python scripts
Also place the return type on it's own line as it's easier to identify
when it's in a predictable location instead of the line ending.
2024-02-28 11:02:54 +11:00
Campbell Barton
44e64b8f29 Cleanup: correct type hints for Python scripts 2024-02-28 11:02:53 +11:00
Campbell Barton
4f8db2ee67 Cleanup: use static sets for contains checks, remove f-string use 2024-02-28 11:02:49 +11:00
Sergey Sharybin
05b465f02d Merge branch 'blender-v4.1-release' 2024-02-27 20:02:45 +01:00
Sergey Sharybin
468e4b0e3b Make update: Bring behavior closer to what it used to be
The `make update` will now always update all initialized submodules,
including the library ones.

The `make_update.py --no-libraries` will neither initialize nor update
pre-compiled libraries or tests.

Pull Request: https://projects.blender.org/blender/blender/pulls/118812
2024-02-27 20:02:15 +01:00
Ray Molenkamp
7c0a22cdaf Merge remote-tracking branch 'origin/blender-v4.1-release' 2024-02-26 16:50:22 -07:00
Ray Molenkamp
2330e2564f make.bat: give status updates during initial lib clone
This implements #118673 for make.bat as it is not using
the python script for the initial clone.
2024-02-26 16:49:08 -07:00