Commit Graph

122 Commits

Author SHA1 Message Date
49e3f08815 Build Environment: install clang-format for macOS / Linux.
It's already there for Windows.
2019-01-09 17:18:49 +01:00
Sergey Sharybin
4e3562f45a Dependencies builder: Don't rely on system-wide PugiXML 2018-12-14 17:39:38 +01:00
Ray Molenkamp
756c99b504 deps: add missing sqlite dll to windows build. 2018-12-13 06:59:37 -07:00
Ray Molenkamp
ba8d6ca3dd dependencies windows: Replace pthreads-win32 2.9.1 with pthreads4w 3.0.0
maintenance seems to have stopped for pthreads-win32
2018-12-11 15:12:56 -07:00
Ray Molenkamp
4cb6d97691 deps: update opencollada to v1.6.68 2018-12-05 08:44:50 -07:00
Ray Molenkamp
d3b11de7d6 build_environment: add debug libs for embree on windows 2018-11-07 19:33:07 -07:00
Stefan Werner
2c5531c0a5 Cycles: Added Embree as BVH option for CPU renders.
Note that this is turned off by default and must be enabled at build time with the CMake WITH_CYCLES_EMBREE flag.
Embree must be built as a static library with ray masking turned on, the `make deps` scripts have been updated accordingly.
There, Embree is off by default too and must be enabled with the WITH_EMBREE flag.

Using Embree allows for much faster rendering of deformation motion blur while reducing the memory footprint.

TODO: GPU implementation, deduplication of data, leveraging more of Embrees features (e.g. tessellation cache).

Differential Revision: https://developer.blender.org/D3682
2018-11-07 12:58:12 +01:00
Ray Molenkamp
dcef3c30e3 build_depenencies: Fix url for openal. 2018-10-19 09:09:06 -06:00
Jorge Bernal
6e08b01bd9 Fix T57059: "make deps" build error when sndio library is present. 2018-10-04 13:34:08 +02:00
a4f2ebc78d Spelling fixes in comments and descriptions, patch by luzpaz.
Differential Revision: https://developer.blender.org/D3700
2018-09-19 18:18:05 +02:00
Campbell Barton
4c918efd44 Cleanup: trailing space 2018-09-19 12:04:34 +10:00
Ray Molenkamp
d2161d6463 build_environment: linux/python, help python find ffi.
we were building ffi, but python wasn't finding it.
2018-09-17 13:13:17 -06:00
Ray Molenkamp
9e4f44ad30 build_environment: ffi/linux force predictable lib path.
ffi stubbornly wants to put libs in lib64 even when you tell it not to on some linux distributions.
patch based on sed fix the gentoo guys did [1]

[1] https://bugs.gentoo.org/462814
2018-09-17 11:58:13 -06:00
Ray Molenkamp
8c97cdd6a8 build_environment: force a consistent libdir across Linux distributions.
on some distributions libs ended up in lib64 confusing the cmake builder.
2018-09-17 08:13:08 -06:00
cd5db90726 Build Environment: updates for macOS.
Mainly this is following Linux to build own xml2/lzma/ssl/sqlite and linking
them all statically. This ensures the Python ssl module uses a recent openssl
version rather than a very old one shipped with macOS.
2018-09-11 07:51:17 +02:00
Sergey Sharybin
4939769cd6 Build environment: Tweak to harvasting script
The idea is to make find_package() to succeed without any
extra tips given. For this, we need header files to be
harvasted.
2018-08-30 11:03:25 +02:00
8864dde5bb Cleanup: remove unused build environment patches. 2018-08-29 16:32:07 +02:00
Sergey Sharybin
66f8a4c07e Build environment: Fix compilation of boost on Linux 32bit 2018-08-29 14:11:32 +02:00
Sergey Sharybin
9fd0060c0f Build environment: Ensure Python is using static ffi
Surely, need to compile ffi first :)

Good news are: Python seems static enough now!
2018-08-28 18:55:00 +02:00
Sergey Sharybin
c70eb30240 Build environment: Make sure Python is linkign against static Zlib
There is system-wide libz development package installed by default,
needed for some other dependencies. This patch ensures Python will
use our own self-compiled Zlib.
2018-08-28 18:29:13 +02:00
Sergey Sharybin
19c65cd6e2 Build environment: Enable bzip2, lzma and sqlite for Python on Linux 2018-08-28 12:17:52 +02:00
Ray Molenkamp
6dd394bf02 build_environment: llvm only copy lib files for the debug build. 2018-08-27 19:38:31 -06:00
53457351b5 Build Environment: fix Windows Alembic build.
Ideally we should remove this difference between platforms, but for now
just do the simple fix.
2018-08-27 19:07:14 +02:00
Sergey Sharybin
072540688a Build environment: Enable SSL for Python on Linux
This involved getting SSL compiled from sources first, ensuring
it is a static library placement independent code. Configuration
is based on what Debian is using. CFlags required to have own
configuration file, which i didn't find a better place that next
to the corresponding CMake file.

It is OpenSSL btw.

It is set to Python via --with-openssl= configuration argument.
This works fine in a clean chroot, but having libssl-dev installed
might make Python to prefer system wide library, This was worked
around by using libssl_pic.a name for the library and modifying
setup.py. Would be cool to ensure system wide libraries are not
a problem, but official release builder is safe against this,
since it will catch possible non-static dependencies.

There is also a new map file which shadows bunch of Python
symbols. Without this Python's shared libraries might bring
conflicting symbols to Blender namespace at runtime.

Hopefully this doesn't break other platforms.
2018-08-27 18:14:42 +02:00
Sergey Sharybin
f693e2c644 Build environment: Fix for C placement independent code
Need to pass -fPIC to C code as well.
Without this blosc is not being properly placement independent.
2018-08-27 15:48:39 +02:00
04075ed744 Build Environment: fix alembic, openvdb, ffmpeg, osl build on Linux. 2018-08-27 14:15:03 +02:00
Campbell Barton
03fd1da3ee Cleanup: trailing space 2018-08-26 20:20:35 +10:00
Ray Molenkamp
920dff35dc build_environment: fix building openvdb on win32 2018-08-25 19:40:44 -06:00
Ray Molenkamp
182da56cd9 build_environment: fix build-flags on windows.
build all object files with /bigobj since multiple of the dependencies go over the limit on x86
2018-08-25 19:40:07 -06:00
Ray Molenkamp
0339964ea8 build_environment: cleanup harvest on windows 2018-08-25 19:38:47 -06:00
Ray Molenkamp
3311e29b72 build_environment: ffmpeg support x86 builds on windows. 2018-08-25 19:37:30 -06:00
Ray Molenkamp
b6edf860fe build_environment: mingw32 fix repeated unpack of gcc tarball 2018-08-25 19:37:11 -06:00
Ray Molenkamp
3f1606cb7c build_environment: osl work around shutdown issues.
there is an issue with objects destructing in a non deterministic way during process shutdown, temporary work around this until osl has a fix in place.
2018-08-25 19:35:45 -06:00
Ray Molenkamp
abc4beb245 build_environment: cleanup for osl harvesting on windows. 2018-08-21 10:49:41 -06:00
Campbell Barton
0734541bc4 Cleanup: trailing space 2018-08-21 17:01:56 +10:00
Campbell Barton
98efcdb1a0 Cleanup: trailing space 2018-08-20 11:24:14 +10:00
Ray Molenkamp
2349273ade build_environment: fix build issues with alembic
-read all headers from openexr not ilmbase
-add missing iexmath lib
-turn binaries back on, the blender unit tests require them.
2018-08-19 17:47:16 -06:00
Ray Molenkamp
b6b6eab6ae build_environment: windows harvest cleanup.
remove the commands that have already moved to the individual cmake files.
2018-08-19 11:44:46 -06:00
Ray Molenkamp
31b1d2ce73 build_environment: opencolorio buildfixes for windows.
copy the debug libs to the right place.
2018-08-19 11:44:46 -06:00
Ray Molenkamp
66dd954cab build_environment: openexr windows buildfix.
with the namespaces disabled the postfix also changed.
2018-08-19 11:44:46 -06:00
Ray Molenkamp
ae84db1d5d build_environment: buildfixes for boost
Disable hardcoded 64 bit build.
2018-08-19 11:44:46 -06:00
Ray Molenkamp
78f526087b build_environment: windows environment
get 32 bit and 64 bit compilers on the same gcc version.
2018-08-19 11:44:46 -06:00
Ray Molenkamp
897351fa52 build_environment: python windows build fixes
fix hardcoded ssl dll names.
2018-08-19 11:44:46 -06:00
Ray Molenkamp
0a08ad8636 build_environment: opensubdiv windows build fixes.
only build cuda on 64 bit, since 32 bit is no longer supported by nvcc
2018-08-19 11:44:46 -06:00
Ray Molenkamp
f4c9bdb022 build_environment: opennvdb windows build fixes.
disable openexr namespaces on windows due to linker errors with it.
link pthreads due to dependency though blosc
2018-08-19 11:44:46 -06:00
Ray Molenkamp
8309f8ee34 build_environment: openexr disable namespaces on windows.
Things do not end up in the right namespaces quite yet, and cause linker errors with other projects using the library.
2018-08-19 11:44:46 -06:00
Ray Molenkamp
8f4d772bf9 build_environment: blosc build fixes.
blosc embedded a copy of zlib/pthreads causing duplicate symbol linker errors. pthreads was windows specific, but zlib may apply to other platforms as well.
2018-08-19 11:44:46 -06:00
Ray Molenkamp
2a00bea7b4 build_environment: Various tweaks needed for windows debug libs. 2018-08-17 09:20:40 -06:00
Ray Molenkamp
aff7609aa5 build_environment: fix mistaken commit in openexr. 2018-08-17 06:30:27 -06:00
d33456e5ec Build Environment: fixes for Linux after recent updates. 2018-08-17 12:42:13 +02:00