* Deprecate computing capability 1.3 (sm_13)
This commit disables auto build of sm_13 CUDA platform, which means that starting with Blender 2.67, we don't support sm_13 devices anymore. It has become difficult to support that and it was already feature incomplete (no render-passes, AO, Multi Closure etc).
It's still possible to manually enable sm_13 for own tests, but building might break in the future.
Crosscompiling of cubins doesn't work on linux with toolkit 4.2,
so use native toolkit for now. Disabled sm_13 for 32bit platform
for now.
Would keep cudakernels build target for a while. It doesn't hurt
being in the code and it could be helpful again once we'll switch
to toolkit 5.x where crosscompilation works fine.
Some further tweaks could probably be needed still, let's see how
building goes on buildbot now :)
You served well and now desired retirement, but you'll always live in our hearts.
And for sure -- monument!
+-------------------------------------------+
/ ++==+ . .. . ... . .. . /
/ // ++==++ ++ ++ ++==++ ++==++ /
/ // // // //\\//\\ // // // // /
/ ++==+ ++==++ // \\ //==++ ++==++ /
/ . ... .. . // .. ... /
+-------------------------------------------+
Some notes:
- Removed all code which was from inside ifdef WITH_COMPOSITOR_LEGACY
- Removed some functions which were used by old compositor only but
weren't ported to new color management
- Removed WITH_COMPOSITOR_LEGACY from build systems
- node_composite_util.h was in fatc used by compo nodes specification
files, so added it back to cmake.
Could be cleaned up by moving header files to files where they're
actually needed but would consider this is a separate task.
- Should be no functional changes!
Issue was caused by how CUDA devices availability done in Cycles.
Basically, if there's no WITH_CUDA_BINARIES buildtime, nvcc becomes
mandatory dependency.
Since kernels are building in separate target now, this logic broke
a bit.
Perhaps condition in util_cuda shall be changed to be a bit smarter,
but for now just work-around by enabling CUDA binaries when building
Cycles. Made it empty arch list to be sure no kernels will try to
re-compile after cudakernels target is done.
- BF_BITNESS should be passed as a command line argument
- Made it so CUDA binaries and OSL compiled scripts would
be installed regardless WITH_BF_PYTHON (which seems to
be quite obvious)
- Disable overwrite install, so CUDA kernels installed by
it's build target will be preserved when building blender
itself.
It's intended to perform compilation of CUDA kernels only,
without doing anything with other sources/resources and
main purpose of this target is to be able to compile cuda
kernels in completely different environment than the rest
of blender was compiled.
This is needed for linux build environment, where sm_13
compilation fails dramatically in 32bit chroot but could
be compiled in 64bit environment.
Mostly, it:
* Adds numpy and opencollada
* Merges both Suse and Fedora/Redhat into a single func (not sure this is a good idea, but would have been to painful to undo this).
Notes:
* I changed a bit how numpy is handled, so that the script does not try to build it when py3.3 was installed from package!
* Bumped oiio 'magic number', as now trying to use libtiff5 means we have to rebuild everything using tiff!
* Only made a quick test on my own system, but Ejner made quite some extensive ones, so it should be safe.
* I’m not sure keeping on extending that horrible bash thing is a good idea. Shell scripts are nice for small, limited stuff, but I personnaly find that one (over 53ko!) unreadable and a pita to maintain. Further more, doing the same for windows would mean to rewrite everything in another language... I have started work to port this as a py3 script, so that we have a nice structure (classes...) easy to extend/tweak/implement in various OSs/etc.!
Note: this doesn't work yet for everything with latest stable bullet (2.81), need to look into why and likely apply some patches upstream.
However I managed to link blender by disabling some features, likely it can be made to work without too much trouble.
by Lawrence D'Oliveiro (ldo)
so BKE_utildefines.h allows use of C99's bool type and true/false.
currently scons wont try to use stdbool.h, and works as if its never found.
This should make it easier to write user-config.py
Still not sure how to deal with OSL and LLVM in a nice way, they're currently
using some hacks which didn't support specifying this libraries as static.
It'll likely give issues with system boost libraries in ubuntu/debian due
to this distros doesn't like static linking and not building static libs
with -fPIC flag.
Disabling LINKSTATIC should be quite painless since blender requires the
same image libraries as oiio does.
Also add compile_LLVM func, needed by openSuse (which llvm package is
completly broken), and probably can help for OSL in Fedora17 too (will test soon).
* Prevent ocio from building its python binding, we don't use it, and it looks like OCIO's CMakeList is not robust here (i.e. can try to build it even when Python.h is not found :/ [irc report]).
* Do not build ffmpeg's player, server nor doc.
* Give right paths to static extra libs for ffmpeg when ALL_STATIC is true.
Also fixed DEB boost version checking, own fault.
And disabled building ocio's apps, else it would go searching for an oiio lib (and we have not yet built ours) - anyway, if users want them, they can build them on their own!
Also refactored a bit osl/llvm/etc. stuff for DEB (so that now all osl-deps are only installed when we do have a valid llvm and want to [try to!] build osl).
And added osl/llvm/etc. code for RPM (osl does not compile under fedora currently, though :/ ).
* Use rsync upload for Mac slave, rather than uploading entire file. This could
be enabled for more slaves, should make more frequent builds possible.
* Split Mac into 10.6 and 10.5 builds.
It's really horror even for me to compile it on release environment,
i do not want anybody to spend time trying to support this lib in
automatic script or make it so user's are easily frustrated by some
hack added to OSL repository.
If you REALLY want to build OSL with this script, set BUILD_OSL to
truth (it's in the top of the script).