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
2020-07-16T73268: Link C/C++ unit tests into single executableSybren A. Stüvel
This commit introduces a new way to build unit tests. It is now possible for each module to generate its own test library. The tests in these libraries are then bundled into a single executable. The test executable can be run with `ctest`. Even though the tests reside in a single executable, they are still exposed as individual tests to `ctest`, and thus can be selected via its `-R` argument. Not yet ported tests still build & run as before. The following rules apply: - Test code should reside in the same directory as the code under test. - Tests that target functionality in `somefile.{c,cc}` should reside in `somefile_test.cc`. - The namespace for tests is the `tests` sub-namespace of the code under test. For example, tests for `blender::bke` should be in `blender::bke:tests`. - The test files should be listed in the module's `CMakeLists.txt` in a `blender_add_test_lib()` call. See the `blenkernel` module for an example. Reviewed By: brecht Differential Revision: https://developer.blender.org/D7649
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
2020-07-13Build: make update support for git tagsBrecht Van Lommel
Previously it only picked the appropriate version with the blender-vX.XX-release branches.
2020-07-09Make deps: Fix compilation error on CentOSSergey Sharybin
There were two issues. First is related on ISPC's CMake configuration forcing C and C++ compilers to be clang and clang++. This goes against of desired behavior when we use our own compiled clang compilers. The second issue was related on linker failure: CLang libraries are linked statically, and they need some of C++ 11 STL symbols which are coming from libstdc++. Differential Revision: https://developer.blender.org/D8258
2020-07-08Build: fix stack linker warning with ffmpeg on macOSSergey Sharybin
The ff_cfhd_init_vlcs() function was using a lot of stack space, which made linker on macOS unhappy. Using heap allocation allows to silence the warning without causing other side-effects. Kept the patch enabled for all platforms to avoid difference in behavior and performance on different platforms, which could make certain types of investigation very tricky. Differential Revision: https://developer.blender.org/D8248
2020-07-08macOS: upgrade minimum required version to 10.13 High SierraBrecht Van Lommel
C++17 does not work on 10.12, and Apple extended support ended for 10.12 in October 2019. Maniphest Tasks: T76783, T76184 Differential Revision: https://developer.blender.org/D8179
2020-07-08CMake: Fix spelling of Embree passed to find packageSergey Sharybin
The spelling and capitalization of package name passed to find_package() and find_package_handle_standard_args() needs to match. Silences CMake warning about mismatch. Differential Revision: https://developer.blender.org/D8247
2020-07-07Make deps: Use own nasm for ffmpeg and x264Sergey Sharybin
Fixes the warning: building for macOS, but linking in object file Differential Revision: https://developer.blender.org/D8235
2020-07-07Make deps: Compile own version of nasm for AppleSergey Sharybin
The upstream version of nasm does not put version information to the generated object files, which makes linker to show the following warning: building for macOS, but linking in object file Using own patched version of nasm which puts required information to the object file, making linker happy. The plan is to either streamline the patch and provide it to the upstream, or, it that takes too long, get an independent fix from the upstream.
2020-07-07Mae deps: Ensure Brotli is disabled for FreeTypeSergey Sharybin
We don't need it and it was optionally enabled, causing Blender to fail to link on certain configuration (when Brotli is installed via Homebrew for example).
2020-07-07Make deps: Fix compilation error of Python on macOSSergey Sharybin
The configuration was confused about gettext installed via Homebrew and isysroot passed to Python's compilation but not to test programs. After this change `import gettext` still works, but it is unclear how to test it further, Differential Revision: https://developer.blender.org/D8231
2020-07-07Make deps: Fixes for macOS platformSergey Sharybin
Set of fixes which had to be made in order to have dependencies built on own laptop: - Require bison as a dependent software. It is required by ISPC. On macOS it is required to be installed via Homebrew. This is because Bison from Xcode toolchain is too old. - Made sure Boost is compiled using clang. Without this gcc was used, and some unsupported command line argument was passed to it. - Modify OGG in a way which does in fact pull fixed sized types. They are defined in stdint.h. Without this fix FFmpeg will not detect presence of OGG because the test program fails to compile. - Force disable zstd compression and make wepb optional for the TIFF library. Without this TIFF might pick up development libraries from Homebrew. Differential Revision: https://developer.blender.org/D8221
2020-07-03Initial support of clang-tidy toolchainSergey Sharybin
Clang Tidy is a Clang based "linter" tool which goal is to help fixing typical programming errors. It is run as a separate compile step of every file, which slows compilation down but allows to fully analyze the file the same way as compiler does and catch non-trivial bugprone cases. This change includes: - CMake option called `WITH_CLANG_TIDY` which enables Clang Tidy linter tool on all source in the `source/` directory. This option is only available on Linux, as it is currently the easiest platform to get the Clang Tidy toolchain to work. - CMake module which is aimed to find latest available Clang Tidy. - Set of rules which allows to have Blender fully compiled without extra issues. The goal of this change is to provide a base ground so that solving all the warnings can happen later on, as a team effort. It should be possible to use Clang Tidy side-by-side with both GCC and Clang, but there seems to be some tweaks to be done in CMake to make it really work for Blender. For now use Clang toolchain if there are issues with GCC+Clang Tidy. It will be worked on in the nearest future to bring seamless experience for all configurations. Currently there is no official way of getting Clang Tidy on macOS, and on Windows there are some difficulties of hooking up Clang Tidy from LLVM package to the MSVC compiler toolchain. The actual warnings in the code will be addressed as a part of the Code Quality Days, task T78535. Differential Revision: https://developer.blender.org/D7937
2020-06-30Build: disable OpenXR in make deps for macOS, it's not supportedBrecht Van Lommel
2020-06-30Codesign: Wait for unsigned directory to appearSergey Sharybin
Solves problem with different order of codesign server startup and mount of network shares: avoids exception happening when server is started prior to the mounts are ready.
2020-06-30Codesign: CLeanup, redundant semicolonSergey Sharybin
2020-06-29Build: Point ISPC explicitly to the location of LLVM libraries.Stefan Werner
Sometimes the ISPC build could pick up the system LLVM librareis instead of the ones in the Blender lib directory.
2020-06-28Deps Builder: Fix OSL build error.Tuomo Keskitalo
When there is no system python OSL will fail to build the documentation. Given we don't ship the documentation, this is safe to disable. Originally part of D8123
2020-06-26deps: Fix build issue with USD on windows.Ray Molenkamp
When doing a release build the TBB debug libs are not set which was causing an error during the configure phase of USD, so always set them even if not used.
2020-06-25Build: remove unused lapack/hidapi/mingw32 build infrastructureBrecht Van Lommel
Ref T76184
2020-06-25Build: upgrade OpenImageDenoise to 1.2.1Ray Molenkamp
This requires ISPC for building OpenImageDenoise, so that is now added as a dependency as well. Blender itself does not need ISPC for building so it is not included as part of the precompiled libraries. Differential Revision: https://developer.blender.org/D7641
2020-06-25Build: upgrade a few smaller Linux/macOS only libraries to latest versionsBrecht Van Lommel
* jemalloc 5.2.1 * xml2 2.9.10 * bzip2 1.0.8 * ffi 3.3 * lzma 5.2.5 * ssl 1.1.1g * sqlite 3.31.1 Ref T78252
2020-06-24Fix missing WITH_CYCLES_EMBREE in the build configurationsBrecht Van Lommel
2020-06-19USD: Upgrade library 20.02 → 20.05Sybren A. Stüvel
The Blender USD code didn't have to change for this upgrade. Pixar's USD did include a change that we had in the patch, so that's been removed from our patch now. Some of the USD code that we patched changed as well.
2020-06-17Buildbot: Cleanup, remove unused script and change namingSergey Sharybin
Follow upstream convention.
2020-06-16Buildbot: Cleanup, typo in loggingSergey Sharybin
2020-06-16Buildbot: Switch WIndows builds to MSVC 2019Sergey Sharybin
2020-06-16Buildbot: Support multiple workers talking to single codesign serverSergey Sharybin
Is achieved by replacing hard-coded signed/unsigned file names with "<uuid>" which acts as a "request ID". This way multiple workers can put their requests into a single directory without collisions. The code sign server will handle the requests sequentially in an unknown order.
2020-06-16Buildbot: Don't use builder name in the build directorySergey Sharybin
The directory layout on worker goes as following: <Worker> <Builder Name> blender.git/ build/ install/ lib/ Adding an extra <Builder Name> after build is redundant. Differential Revision: https://developer.blender.org/D8045
2020-06-15Cleanup: removed trailing spaces from `install_deps.sh`Sybren A. Stüvel
No functional changes.
2020-06-15x264: update URL and hash in versions.cmakeSybren A. Stüvel
The old URL did have a Git commit hash in it, but apparently the server was ignoring it and only used the `master` that was also mentioned in the URL. As a result, every new download would get the latest version from the `master` branch, invalidating the SHA256 checksum. I replaced `master` with the actual commit hash. This should make the situation stable. No functional changes.
2020-06-15Alembic: remove HDF5 support from CMake filesSybren A. Stüvel
This is a follup to 0c384362272. No functional changes to Blender, just the build scripts.
2020-06-14deps/windows/embree: Prevent exports leaking out of blender binaryRay Molenkamp
embree marks a few of its functions with a dll_export macro forcibly exporting these symbols from whatever binary links them. Given we link embree statically and we do not want these exports in the blender binary, the macro needs to be a no-op.
2020-06-14install_deps: Update python default version to 3.7.7.Bastien Montagne
Re T77846.
2020-06-14Deps builder: Python 3.7.7Ray Molenkamp
This updates python to the latest patch level available for 3.7 also updates some of the packages we rely on: idna 2.9 urllib3 1.25.9 cerifi 2020.4.5.2 requests 2.23.0 numpy 1.17.5
2020-06-12install_deps: bumped USD library version 19.11 → 20.02Sybren A. Stüvel
2020-06-12USD: Library upgrade 19.11 → 20.02Sybren A. Stüvel
This upgrade required a few changes: - Some parts of our patch are no longer necessary, as the USD library now includes those changes. - The rest of the patch needed adjustment as the `pxr/base/lib/*` directories in USD's source code have moved to `pxr/base/*`. - Updated library names on Windows -- thanks @LazyDodo. Note that this does not enable the USD Python API for inclusion in Blender. It just aims at being an as-simple-as-possible version upgrade of the USD library.
2020-06-12Buildbot: Switch to devtoolset-9Sergey Sharybin
Famous "should just work", but will never know until actually attempted to be used. Ref T76783.
2020-06-10Installdeps: Fix broken commit rBe3396d8bfc94.Bastien Montagne
Not sure why final version of the change was lost...
2020-06-08Installdeps: better handling of python versions.Bastien Montagne
now that we stick to some outdated py version, some distro (like current debian testing) will feature several python3 dev package, but other dependant libs like numpy are only built against current default version of python (3.8 now in deb testing)... In order to be able to use distro packages we need to allow using higher versions of python, and set relevant CMake option accordingly.
2020-06-05Installdeps: make embree use TBB.Bastien Montagne
Following changes done to makedeps in rBc7329da14b22.
2020-06-05Build: use TBB as Embree tasking systemBrecht Van Lommel
This avoids launching additional threads and solves some console warnings on Linux + AMD Ryzen CPU.
2020-06-05Fix make deps build errors with conflicting Boost system packagesBrecht Van Lommel
2020-06-04installdeps: fix bad FFMPEG official version number.Bastien Montagne
re T77035.
2020-06-01Cleanup: clang-formatCampbell Barton
2020-05-31Deps: Update OIIO + ImageLibs + OSL + HelpersRay Molenkamp
This is the cluster of OIIO and friends , since they are all kinda tangled best to deal with this as a single unit OIIO 2.1.15.0 png 1.6.37 jpeg 2.0.4 opencolorio 1.1.1 tiff 4.1.0 OSL 1.10.10 pugixml 1.10 openjpeg 2.3.1 Differential Revision: https://developer.blender.org/D7727 Reviewed by: brecht
2020-05-31Deps: iconv 1.16Ray Molenkamp
2020-05-29Merge branch 'blender-v2.83-release'Brecht Van Lommel
2020-05-29Blender: change bugfix release versioning from a/b/c to .1/.2/.3Brecht Van Lommel
The file subversion is no longer used in the Python API or user interface, and is now internal to Blender. User interface, Python API and file I/O metadata now use more consistent formatting for version numbers. Official releases use "2.83.0", "2.83.1", and releases under development use "2.90.0 Alpha", "2.90.0 Beta". Some Python add-ons may need to lower the Blender version in bl_info to (2, 83, 0) or (2, 90, 0) if they used a subversion number higher than 0. https://wiki.blender.org/wiki/Reference/Release_Notes/2.83/Python_API#Compatibility This change is in preparation of LTS releases, and also brings us more in line with semantic versioning. Fixes T76058. Differential Revision: https://developer.blender.org/D7748
2020-05-27Cycles: Upgraded Embree to version 3.10.0Stefan Werner
Enabled round linear hair in Embree. Differential Revision: https://developer.blender.org/D7623