Commit Graph

829 Commits

Author SHA1 Message Date
Jens Verwiebe
eebc9f4922 OSX/osl: link also boost_wave, cause we use its preprocessor now 2012-11-19 19:10:31 +00:00
Brecht Van Lommel
1e98e96f7c Windows Libs: move OpenEXR headers to same directory structure as other platforms. 2012-11-19 16:02:29 +00:00
Brecht Van Lommel
312abf8cb2 SCons: make OSL linking work on windows, and fix OSL compiler path issue to
properly expand to absolute path.
2012-11-19 14:54:35 +00:00
Bastien Montagne
7ecbc39610 Basic work for an ALL_STATIC option, to enable when you want to build blender in a portable way. Still WIP! 2012-11-19 11:12:30 +00:00
Bastien Montagne
063ca9b2a6 No boost system when we have own compiled version! 2012-11-19 10:45:03 +00:00
Jens Verwiebe
29fe8abf8d OSX/scons: migration to py 3.3 2012-11-19 10:14:55 +00:00
Bastien Montagne
67031c1712 Fix when statically linking with distro's boost: in this case, we most likely also need to statically link against icu, as most boost packages are built with it. Without that, you get a bunch of errors at link time (when using boost_locale, or, in freestyle branch, boost_regex).
So when you enable Boost_USE_STATIC_LIBS, you should also set Boost_USE_ICU to True. Will add a note about that in build doc too.
2012-11-19 08:51:35 +00:00
Bastien Montagne
509e178f72 Definitive fix for version_ge with equal versions like "1.0.0" and "1.0".
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!
2012-11-19 08:48:21 +00:00
Bastien Montagne
0aadad0896 Partial fix to version_ge (greater or equal), was not working correctly with eaqual versions, now will do with exact same versions at least (yet have to fix case like comparing 1.0 and 1.0.0).
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 :/ ).
2012-11-18 20:31:58 +00:00
Bastien Montagne
00c194718a More cleanup/deduplication. Also explicitly using gawk (so system without it should print a much comprehensive error message!).
Note: RPM-related edits not yet tested.
2012-11-18 17:47:26 +00:00
Bastien Montagne
76c901d342 Better handing of llvm version (now we can be sure to use the same for osl and blender - and the latest one available!).
And more cosmetic cleanups...
2012-11-18 17:27:29 +00:00
Bastien Montagne
03f4e7fba4 Fix own stupid mistake for threads count, and edits to user messages (mostly adding the ldconfig trick for dynamic boost libs). 2012-11-18 14:27:19 +00:00
Campbell Barton
d3d5c57c32 move source/darwin into release/darwin since these files are for osx packaging. 2012-11-18 07:41:38 +00:00
Thomas Dinges
6810813068 OSL / Windows:
* Some fixes for scons, kernel/osl compiles now. 
* Still disabled per default, as relative path to oslc.exe does not work and linking fails.
2012-11-18 03:56:53 +00:00
Brecht Van Lommel
fd7a3db8eb Buildbot:
* 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.
2012-11-18 00:20:23 +00:00
Brecht Van Lommel
0c12ea0939 Buildbot: show OS X target version in buildbot zip filename. 2012-11-17 23:00:04 +00:00
Sergey Sharybin
ecb11b43fc Install dependencies: added check for minimal version of x264
Also fixed parsing of package version with epoch
2012-11-17 17:58:15 +00:00
Bastien Montagne
f55b9b6e2f Mono-core platform seem to not output the cores field in /proc/cpuinfo :/
Also adding gawk packages (gnu awk), looks like some distro do not have that one by default!
2012-11-17 14:41:18 +00:00
Sergey Sharybin
13ea663590 Install dependencies: workaround for SHA linking issues 2012-11-17 12:59:24 +00:00
Sergey Sharybin
fd15b39438 Install dependencies: abort script if compilation of some component failed 2012-11-17 12:10:35 +00:00
Sergey Sharybin
eae0174b04 Install dependencies: disable OSL for now
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).
2012-11-17 11:57:10 +00:00
Sergey Sharybin
d00e6dcc3a Install dependencies: dead links should not occur 2012-11-17 11:42:37 +00:00
Sergey Sharybin
70308d51f1 Install dependencies: use OIIO 1.1.1 where SHA crap seems to be solved 2012-11-17 11:35:13 +00:00
Sergey Sharybin
b20cb61607 Made sure open OIIO does not use system's boost in cases it was compiled from sources 2012-11-17 11:28:12 +00:00
Sergey Sharybin
c98be502cd Install dependencies: made it sure llvm-3.1 or llvm-3.0 is installing
llvm-dev could be a meta-package for older version of llvm
2012-11-17 11:23:53 +00:00
Campbell Barton
38eee0104b quiet scons deprecation warnings and correct --with_filesystem --> --with-filesystem in install_deps.sh 2012-11-17 05:16:54 +00:00
Bastien Montagne
abc122205a More fixes and cleanup...
Now OSL should work for DEB-like systems with CMake (not yet tested with scones, nor fedora).
Fedora version-checking bug should be fixed.
Also simplified a bit compile_FOO funcs code.
2012-11-16 17:14:01 +00:00
Jens Verwiebe
d017f34c5d OSX/scons/osl: working but not optimally designed atm 2012-11-16 14:42:04 +00:00
Bastien Montagne
366b60c6cb First atempt to add OSL.
DEB only for now: installs needed deps (LLVM & co), downloads OSL source and compiles the lib. However, blender linking fails currently... :/
2012-11-16 12:42:01 +00:00
Thomas Dinges
88b26f24e4 Windows x64:
* Fix compile after recent OIIO changes.
2012-11-16 12:18:47 +00:00
Jens Verwiebe
4ece50723b OSX/scons/osl: ready for compile now, little hack to be resolved, todo:fix a crash with shadercompile 2012-11-16 00:43:28 +00:00
Jens Verwiebe
69320ea595 OSX/scons/osl: initial osl compiling, todo: fix shader compile and copy to bundle 2012-11-15 21:35:25 +00:00
Sergey Sharybin
2007ba687f Enable OSL for linux 32 bit builders, it should work now 2012-11-15 19:26:11 +00:00
Bastien Montagne
7d6417bbb3 Another nuch of fixes/improvements to install_deps script, among which:
*New $INST variable to easily change the installation root dir of compiled libs.
*Better handling of versions for debian (DEB) too (and fix a bug for fedora (RPM) ones).
*Enhancements/fixes to compile_FOO funcs:
**Most notable, we now can force a recompile when we change something into these funcs, so user will always have latest-instructions compiled libs (else, he would have have to manually remove lib dirs under $INST...)
*General naming cleanup inside script (still wip).

Also adding boost date_time lib to linux in cmake file (why wasn't it there???).
2012-11-15 17:31:18 +00:00
Brecht Van Lommel
2324c80f50 Cycles OSL: windows build system changes to support static OSL/OIIO. 2012-11-15 17:16:27 +00:00
Thomas Dinges
1c9b548d92 Windows / Scons OSL:
* Initial support, still commented.
2012-11-15 16:34:22 +00:00
Sergey Sharybin
b89026a302 Correction to 32bit buildslaves 2012-11-15 13:26:32 +00:00
Sergey Sharybin
9eccf40daa OSL Scons rules
Initial support of OSL builds using SCons build system. Only tested on Linux now.
No changes to configuration files themselves -- for now check how it's configured
for linux buildbot (it was already horror to make all this changes and verify them,
changes to linux-config.py could easily be done later).

Currently WITH_BF_STATICOSL and WITH_BF_STATICLLVM are more like rudiments because
linking against oslexec requires special trick with --whole-archive. We woul either
need to find a way dealing with this oslexec less hackish or drop STATICOSL and 
STATICLLVM flags. Will keep dropping this flags for until we have "final" build
rules for OSL.

Still can not make 32bit linux rendering with OSL -- blender simply crashes when
starting rendering. So for time being this issues are solving disabled OSL for
32bit build slaves.
2012-11-15 13:11:12 +00:00
Bastien Montagne
c3ce2bbfdf looks like we need those libs as well to compile with static ffmpeg on fedora (by why in hell librt???)... 2012-11-14 23:20:16 +00:00
Bastien Montagne
67f0a4b424 Fixes, mostly for RPM (tested on fedora17):
*Better handling of optional libs for ffmpeg, and is now able to check and give user additional link libs for ffmpeg.
*Added two helpers (only used by RPM for now) to:
**check whether a version number is greater or equal than another one, and...
**check whether a version number is "included" into another one (eg 3.3.2 is included into more general 3.3).
*Added date-time as target when building our own boost.
*Removed apt-get upgrade action for DEB (let the user decide when he wants to globally upgrade its system!).
2012-11-14 21:57:47 +00:00
Campbell Barton
7c3db355b1 remove ifdef'd bevel code, current bevel works better then the previous code.
reduce strlen check in texttool_suggest_add()
use 'del list[:]' rather then 'list[:] = []' in python scripts which clear lists.
2012-11-14 09:45:15 +00:00
Bastien Montagne
7138beaa64 Fix for oiio/ocio/boost in those scons config, else specifying a custom "root" path for those libs in user-config.py is useless! 2012-11-14 08:12:52 +00:00
Campbell Barton
050f09aa6c buildsystem cleanup: remove duplicate source & includes for scons,
add a check for duplicates in BlenderLib()m, if 0'd now.
2012-11-14 01:41:24 +00:00
Bastien Montagne
95a64ff2da Fixes for scons 2012-11-13 18:12:57 +00:00
Bastien Montagne
4713c30017 Adding an escape for '/' char inside the regex's char classe, looks like it is needed for ubuntu 's awk but not mandatory for debian's awk??? Anyway, does not arm... ;) 2012-11-13 18:04:52 +00:00
Bastien Montagne
a46b1feb77 Add more info to make ffmpeg work "out of the box" for DEB systems:
*For CMake, enable ffmpeg (it is disabled by default...)
*Give the full list a librairies to link.

Tested on Debian for CMake (did not test scons at all for now, anyway). Not yet implemented for RPM/SUSE distribs, but this should not be too hard.
2012-11-13 16:42:36 +00:00
Bastien Montagne
741e167f83 More fixes:
*Unset LANG envar for the script execution time, because commands like "apt-cache policy" will return translated messages, which would not be grep'ed crrectly...
*Disable using distrib's ffmpeg for DEB distribs too, as e.g. official debian features libav under ffmpeg name, which is not that much compatible with current Blender code.
*Also check for libxvidcore-dev .deb package, debian has no libxvidcore4-dev ;)
2012-11-13 10:49:55 +00:00
Sergey Sharybin
c382c03ccf Hopefully now suse will just work :) 2012-11-13 10:12:42 +00:00
Sergey Sharybin
0b1411046b Install dependencies script: added support of OpenSUSE
Currently it'll install basic packages only and will compile all
python, boost, oiio, ocio and ffmpeg.
2012-11-13 09:29:22 +00:00
Bastien Montagne
d1cd8f5802 fix for boost (symlink was buggy, and better to only build needed boost libs).
Note; we might also want to add the --without-icu option later...
2012-11-13 06:22:47 +00:00
Sergey Sharybin
d3c3f07133 Initial implementation of a script for automatic dependencies installer/builder
This script will install all packages from the repositories and will compile
missing in repositories libraries.

It is supposed to replace pre-compiled libraries from our svn.

Tested script on Fedora 14 and 17, Ubuntu 10.04 and 12.10. All the dependencies
and manually built libraries seems to be fine. However, it's really annoying to
build blender in virtual machine to ensure there's no linking errors, i would
hope community will help testing and making needed tweaks to the script :)

To use the script, simple run it from your user name. It'll run installation
commands from a sudo, so you would likely be requested to type a password.

I've made tweaks to CMake FindLibs, so it should find OIIO, OCIO and python
libraries compiled by this script. Boost and FFmpeg would need to be specified
manually.

SCons currently would require manual paths specifications as well. Perhaps we
could make SCons smarter in the future.

All the parameters you need to pass to CMake/SCons would be printed when script
finishes to run.

Pretty much sure it's not production-ready script, but we need to start testing
at some point :)
2012-11-12 19:39:09 +00:00
Sergey Sharybin
3e910de184 Enable libboost_locale for buildbot rules 2012-11-12 12:10:46 +00:00
Jens Verwiebe
ad5cf1fe9c fix scons compile after introducing BF_BOOST_LIB_INTERNATIONAL 2012-11-12 09:31:10 +00:00
Joshua Leung
c844033cd0 Scons compiling fix
Proper implementation for only including the boost locale libs when
WITH_BF_INTERNATIONAL is enabled, so that those of us who do not need/want to
bother with translated ui's can compile. The way it was done before was wrong as
1) the value was always set to true earlier in the config scripts, 2) the base
config scripts run before user config overrides are set
2012-11-12 02:30:16 +00:00
Bastien Montagne
0738284e32 Clen up of gettext stuff from scons scripts... Did not touch to buildbots ones, nor to iconv, as it’s still uncleare whether we can get rid of it :/ 2012-11-11 19:46:36 +00:00
Bastien Montagne
5ff3017900 Replacing gettext i18n backend by boost::locale one.
This commit adds a small and simplistic C wrapper around boost's locale library as intern/locale, and heavily simplifies/reduces Blender's own i18n code (under blenfont/ dir). And it adds back UI translation on windows' official builds (with msvc)!

Note to platform maintainers: iconv and gettext (libintl) can now be removed from precompiled libs (not gettext binaries, under windows, of course ;) ).

Note to MinGW32/64 users: boost_locale lib has not yet been uploaded for those build env, please disable WITH_INTERNATIONAL for now (hopefully will be fixed very soon, have contacted psy-fy).
2012-11-11 16:54:26 +00:00
Bastien Montagne
dcca228906 Another fix for finding python stuff... Should work for everyone now! (I hope...). 2012-11-09 20:38:09 +00:00
Bastien Montagne
3e004d3043 Use CMAKE_LIBRARY_ARCHITECTURE instead of hardcoded stuff like x86_64-linux-gnu! Now should work with any multiarch! 2012-11-07 16:51:09 +00:00
Bastien Montagne
5850e62262 Attempt to fix problems with local built py caused by own r51976. 2012-11-07 12:24:03 +00:00
Bastien Montagne
fff3f95768 Update to make it work with new debian-like py3.3 packages. A bit hackish (this arch-dependent stuff makes things a bit complex), and probably only working for amd64 arch, but at least should not create any regression... 2012-11-07 11:44:39 +00:00
Campbell Barton
5cf9d5e4ca for utility checkers, use QUIET env var, not to print progress. 2012-11-07 01:00:27 +00:00
Sergey Sharybin
804f642ebd Release environment script: make python linking to openssl statically 2012-11-06 12:17:47 +00:00
Sergey Sharybin
2f9e846e7d Buildbot: blenderplayer configuration needs to define path to boost now 2012-11-05 15:55:59 +00:00
Sergey Sharybin
1eb1e1e09a Switch glibc-2.7 buildbots to py3.3 2012-11-05 15:28:48 +00:00
Sergey Sharybin
6b0c7c1e59 Release environment script: correction to python shm check 2012-11-05 14:50:18 +00:00
Campbell Barton
004f8d78ed default to Python3.3 on Linux for SCons and CMake, warn when building with python 3.2x or older.
also remove casts to keep Python3.2 warning quiet.
2012-11-05 13:48:42 +00:00
Sergey Sharybin
6d8e55545d Script to configure release build environment
This script was used to initialize build environment currently used
for glibc-2.11 builds.

It's supposed to be used on debian-based distros.

Usage is described in the top comment of the script.

It is highly recommended to use this script in the virtual machine
to prevent possible conflicts with your own configuration.

TODO:
- Add OSL configuration
- Script requires manual copying of some scripts still (see comments
  at the top of the script)

I would prefer this script be edited only in cases when it's really
needed, meaning i wouldn't be fan of changes like "just use latest
version of library XXX". It's not so safe to do such changes and it's
easy to upgrade libraries after environment was set up.
2012-11-05 09:58:05 +00:00
Sergey Sharybin
7f125bbc20 Buildbot: hopefully fix for missed sound on glibc2.11 slaves 2012-10-29 18:03:32 +00:00
Sergey Sharybin
c75b6c854c Buildbot: use proper archive name for glibc2.11 archives 2012-10-29 16:07:16 +00:00
Sergey Sharybin
37801c86f2 Buildbot: tweaks for glibc2.11 build environment 2012-10-29 15:31:48 +00:00
Sergey Sharybin
07d9cb739a Buildbot: keem sm_13 disabled for new buildbot too 2012-10-28 17:04:32 +00:00
Sergey Sharybin
4f8c55c67c Buildbot: add glibc2.11 configuration files and build rules
Builder will go online as soon as new environment is copied to buildslave machine over the internet
2012-10-28 17:03:36 +00:00
Sergey Sharybin
445bd0eb6e Buildbot: add glibc2.11 slaves, not online yet 2012-10-28 16:58:44 +00:00
Sergey Sharybin
b980b43e66 Buildbot: copy master.cfg from builder.blender.org
Seems this file went out of sync with actual file on the server
2012-10-28 16:40:31 +00:00
Sergey Sharybin
b9e652a669 SCons: more libraries could be specified to be static now
Jack, jpeg, png, openmp, opencollada libraris now could be forced to be static
2012-10-27 13:22:36 +00:00
Sergey Sharybin
5b0759fc00 Temporary disable sm_13 for 32bit buildbot -- it requires more than 4GB of memory
to compile, which for sure can not be allocated on 32bit platform
2012-10-22 18:10:15 +00:00
Campbell Barton
226a5ee834 remove LOD_Decimator (c++ decimator), now replaced by bmesh decimator. also remove CTR c++ classes that are no longer used. 2012-10-22 02:39:26 +00:00
Campbell Barton
f3ece5a108 style cleanup: trailing tabs & expand some non prefix tabs into spaces. 2012-10-21 05:46:41 +00:00
Campbell Barton
aeda5142ef style cleanup: make OSL follow our C style convention. http://wiki.blender.org/index.php/Dev:Doc/CodeStyle 2012-10-17 01:47:37 +00:00
Campbell Barton
e3ea7187ce another change needed for qtcreator project generator to work with ninja. 2012-10-15 14:26:14 +00:00
Campbell Barton
c2ba1324fb add support for using ninja to extract build info for qtcreator/netbeans/error-checkers. 2012-10-15 14:11:30 +00:00
Lukas Toenne
5a9bb39e34 Fix for own commit r51178, duplicate line. 2012-10-08 12:02:55 +00:00
Lukas Toenne
10547d4c67 Allow user config files in qtcreator project.
The blender.config file used for local #defines in qtcreator projects is rewritten on every project update. To avoid losing user settings these can now be written to an optional blender_custom.config file, which is then merged into the main blender.config on updates.
2012-10-08 11:02:11 +00:00
Campbell Barton
7614428c09 style cleanup: pep8 2012-10-08 10:03:01 +00:00
Campbell Barton
8b7896814f code cleanup: reduce change the size of some float vectors that were bigger then they needed to be.
update to clang_array_check.py - parse function definitions lazily for some speedup.
2012-10-08 07:08:29 +00:00
Campbell Barton
aa1e50be94 add option to build without blenders default avi codec. 2012-10-08 02:51:42 +00:00
Campbell Barton
e8872a8ea2 style cleanup: if(); 2012-10-07 09:48:59 +00:00
Campbell Barton
1e2f475512 added simple checker for array sizes, uses clang to parse C/C++,
Warns if an array is passed to a function where the array is declared larger, eg float[2] argument is passed function defined as float[3], (or a greater size).

Existing free static checkers dont do this from what I can tell.
2012-10-06 12:36:21 +00:00
Lukas Toenne
a2d8cf333f Better support for LLVM linking, needed for static OSL library.
This adds cmake code for LLVM on linux and updates the cmake code used for OSX.
LLVM is linked like other external libraries now, by using the setup_liblinks and setup_libdirs macros instead of the PLATFORM_LINKFLAGS variable.
The use of llvm-config for getting a list of libraries can also be simplified quite a bit.

Caching the LLVM_DIRECTORY and LLVM_VERSION strings could be nicer though.
2012-10-06 11:00:45 +00:00
Dan Eicher
794520a86a Have CPack rpm builder install the colorspace folder too 2012-10-04 15:14:15 +00:00
Campbell Barton
589ada7f0c code cleanup: correct spelling 2012-09-28 06:45:20 +00:00
Thomas Dinges
c39ac85899 Cycles:
* Change Addons Link to point to the manual instead of the dev documentation. 
* Add sm_30 to Linux build configuration.
2012-09-21 17:53:52 +00:00
Joshua Leung
aecb2f7039 Updating mingw32 config to reflect new boost libraries in svn
(1.47 -> 1.49)
2012-09-17 12:05:18 +00:00
Antony Riakiotakis
3968b63735 * Enable opencolorio for scons/mingw32 (coming very soon)
* Change names of libraries for mingw32 boost to 1.49
2012-09-16 20:26:28 +00:00
Antony Riakiotakis
237a9fde92 Enable OpenColorIO for MinGW64 build targets 2012-09-16 18:05:32 +00:00
Campbell Barton
c2a1dcf621 fix for error in recent commit (made function static that shouldn't have been), add extra gcc warnings to cmake. 2012-09-16 01:35:00 +00:00
Thomas Dinges
9e1b13da56 * Disable building of Legacy Compositor in Scons. 2012-09-15 12:32:30 +00:00
Sergey Sharybin
3e48bef023 Buildbot: OpenColorIO should be enabled for buildbot now 2012-09-15 10:29:59 +00:00
Sergey Sharybin
b93da9b01e Color Management, Stage 1: Initial OpenColorIO library integration
This commit integrates support of OpenColorIO library into build systems.

It also contains C-API for OpenColorIO library which could be used by Blender.

CMake has got find rules familiar to OpenImageIO's one which makes it easier
for build system to find needed libraries and includes. Scons only could use
explicitly defined paths to libraries and includes.

C-API would be compiled and Blender would be linked against C-API and OpenColorIO
but it wouldn't affect on Blender behavior at all.

OpenColorIO could be disabled by setting up WITH_OCIO to Off in CMake and
setting WITH_BF_OCIO in Scons.
2012-09-15 10:03:17 +00:00
Campbell Barton
e75f5c8208 quiet -Wmissing-prototypes warnings, and enable this warning by default for C with gcc.
helps for finding unused functions and making functions static, also did some minor code cleanup.
2012-09-15 01:52:28 +00:00
Campbell Barton
b31a88ccf0 add checking target check_smatch 2012-09-14 05:08:48 +00:00
Campbell Barton
ab48f2108b - cmake macro list_insert_after/list_insert_before now error when the item passed is not found in the list.
- BKE_pose_copy_data() check for target pointer is no longer valid and infact comparing against un-initialized memory in some cases.
2012-09-13 01:52:58 +00:00
Lukas Toenne
1352a955ca Cleanup for OSL linking in cmake: Move cmake OSL library search and path definition from the cycles macro file to the top-level CMakeLists.txt. This makes the OSL_LIBRARIES and other variables accessible throughout Blender cmake scripts and especially in the creator module for linking libraries. 2012-09-10 06:18:20 +00:00
Antony Riakiotakis
bcb552ef94 Enable shader model 3.0 shaders for mingw compilers 2012-09-01 14:53:01 +00:00
Antony Riakiotakis
3793e178f4 Turn OpenMP off for MinGW64. I thought it behaved correctly in new compiler builds but unfortunately it looks like there is some issue still which mostly shows when openmp threads stop. This causes crashes after rendering with subsurf, multires, when calculating fluids and possibly when other functionality is used as well.
This should make MinGW64 builds quite stable again :)
2012-08-22 00:06:09 +00:00
Antony Riakiotakis
59c71eb00a For gcc based systems use g++ for linking. This is necessary so that exceptions are propagated between shared libraries. We already use g++ when linking with cmake.
This solves crash when trying to render with missing files on MinGW-w64 cycles. The cause was an OpenEXR exception that went uncaught when trying to check the file's extension through OpenImageIO while building the shader tree. Thus my bug-hunting frustration can end with a happy chord.
2012-08-21 21:01:07 +00:00
Thomas Dinges
94ce9505a9 Legacy Compositor / Scons:
* Added WITH_BF_COMPOSITOR_LEGACY, enabled per default.
2012-08-20 20:13:37 +00:00
Campbell Barton
e982e9b04f fix [#32353] 'Focus'(center) applied on a rig should only take visible bones into account 2012-08-18 14:27:48 +00:00
Campbell Barton
ca7d1ec39d style cleanup: use <pre> for doxygen ascii art 2012-08-13 15:17:15 +00:00
Daniel Genrich
23a299788d Fix El Topo compile with scons (win32 + linux - both untested) 2012-08-12 01:47:14 +00:00
Daniel Genrich
1aaaf67a9e Fix El Topo compile with scons (only win64 so far) 2012-08-12 00:19:55 +00:00
Campbell Barton
823083a744 fix for own error with opencl bokeh blur. 2012-08-11 18:47:09 +00:00
Campbell Barton
df1dd658c9 minor improvements to cmake's datatoc usage, now changes to datatoc.c re-make generated files. 2012-08-11 18:39:38 +00:00
Campbell Barton
ca7c07cda9 add back datatoc, use this instead of cmake script which was too slow. 2012-08-11 16:25:31 +00:00
Campbell Barton
be4ae581ff simplified data_to_c macro in cmake 2012-08-11 13:32:19 +00:00
Campbell Barton
5f341a846b startup.blend and preview.blend are now converted to C at build time.
made some changes to startup.c
- change default player to internal since its working now.
- added new screen for full screen 3d viewport (nice for demo's and navigating)
- disable cursor depth option (was enabled by default because of re-used flag)
2012-08-11 12:26:43 +00:00
Sergey Sharybin
0682c3f1ae Code cleanup and minor change to CMake's colalda detection to make
it detect directory structure used for libs in our svn (<root>/include/<component>/include)
2012-08-11 10:32:27 +00:00
Campbell Barton
7a760b4804 generate COM_OpenCLKernels.cl.h automatically at build time, this allows editing COM_OpenCLKernels.cl and rebuilding and means we dont have to have both files in svn.
updates made to cmake and scons.
2012-08-09 19:59:36 +00:00
Campbell Barton
c953ca11ac data_to_c in cmake, not used yet. 2012-08-08 16:03:42 +00:00
Thomas Dinges
ab1badf9a2 Windows MSVC libraries:
* Some refactor, use set_lib_path macro again, which simplifies the code a bit.
2012-08-04 20:25:04 +00:00
Sergey Sharybin
1a5998bc4e Remove old boolean operation module
Carve proved it's a way to go, so the time have came to get rid of old
boolean operation module which isn't used anymore.

Still kept BOP interface but move it to BSP module. At some point it
could be cleaned up further (like perhaps removed extra abstraction
level or so) but would be nice to combine such a refactor with making
BSP aware of NGons.

Tested on linux using both cmake and scons, possible regressions on
windows/osx. Would check windoes build just after commit.
2012-08-02 16:42:30 +00:00
Sergey Sharybin
0a782a4550 Buildbot: package softwaregl scripts for buildbot builds
Uses the same libs as release environment does
2012-08-02 08:57:18 +00:00
Sergey Sharybin
990466e87e Initial support for numpy in scons
Assumes numpy is installed to the BF_PYTHON/site-packages/numpy directory,
could be tweaked further, but this should be enough to setup release
building environment.

Seems blender can't import numpy, but that doesn't seem to be scons issue,
the same happens here with cmake too. Would ask Campbell to help looking
into this.
2012-07-27 16:01:33 +00:00
Jens Verwiebe
53a861b6f9 OSX/scons: fix compiling on the new OSX 10.8 (Mountain Lion) with delivered Xcode 4.4 2012-07-26 11:08:56 +00:00
Campbell Barton
5b04685f49 handy cmake list macros for inserting items into a list before/after existing items 2012-07-16 08:26:42 +00:00
Campbell Barton
aeaa95a525 more minor speedups for new mask rasterizer 2012-07-14 04:07:59 +00:00
Antony Riakiotakis
fa92f2fb55 Update build systems to copy needed dlls from MinGW-w64, turn openmp on by default for MinGW. 2012-07-05 11:39:11 +00:00
Thomas Dinges
273f56ace0 Scons:
* WITH_BF_COMPOSITOR option, to disable tile compositor compilation.
* Removed unused SCons file.
2012-06-30 22:44:36 +00:00
Thomas Dinges
91de70a788 Cycles / Boost:
* Windows (msvc 2008) is now using Boost 1.49
2012-06-30 18:20:14 +00:00
Campbell Barton
c8c743b609 code cleanup: compile with clang and quiet some warnings. 2012-06-28 12:32:06 +00:00
Campbell Barton
0c8ebad16e add cmake option WITH_SYSTEM_OPENJPEG so linux can build cycles without having libopenjpeg installed. 2012-06-23 14:23:44 +00:00
Campbell Barton
263be14811 rename WITH_BUILTIN_GLEW, WITH_SYSTEM_GLEW & negate. 2012-06-23 13:42:14 +00:00
Antony Riakiotakis
84c0aee254 Correct openjpeg for scons too. 2012-06-21 14:49:10 +00:00
Sergey Sharybin
491babf2a7 Enable cuda sm_30 kernels for buildbot 2012-06-05 19:23:52 +00:00
Thomas Dinges
b1e8063d69 Cycles / CUDA:
* Windows department switches to CUDA Toolkit 4.2 :)
* Windows Buildbot uses that too now (thanks jesterKing) 
* Re-enable sm_13 for x86, compiled again with current SVN and the new toolkit. 

* All official builds for windows now come with sm_13, sm_20, sm_21 and sm_30 for the Kepler cards.
2012-05-29 12:28:34 +00:00
Thomas Dinges
04c30c5efb Scons / MSVC - Windows x64
* SSE/SSE2 is an unknown option for the compiler (Command line warning D9002 : ignoring unknown option '/arch:SSE2'), so it can be left out because on x64 it automatically builds with SSE and SSE2.
2012-05-28 09:20:04 +00:00
Campbell Barton
1e45042396 code cleanup: remove mode comments, these were applied very un-evenly across a few files. 2012-05-27 13:22:43 +00:00
Campbell Barton
9978f97b12 cmake edits
- only show mingw option when building with mingw
- always run cmake configure with convenience build targets so failed configurations stop re-configuring.
- disable WITH_GHOST_XDND in 'make lite'
2012-05-27 10:03:13 +00:00
Joshua Leung
795edb74fa scons - Added option to not remove and unpack python modules bundle every
compile
2012-05-23 03:49:42 +00:00
Antony Riakiotakis
1937f3b8de Disable building of CUDA 1.3 kernels for cycles for win32 cmake and mingw32 scons. They were already disabled for scons MSVC 32bit. 2012-05-22 12:30:37 +00:00
Dan Eicher
e6ddad5146 CPack rpm cleanup
-- package name and .spec->Version match
-- use find_lang macro for locales
-- Requires & Provides (mostly) match the fedora .spec
-- fix unpackaged file error for blender-thumbnailer.py 

TODO: figure out how persuade CPack to make multiple rpms to also package blenderplayer
2012-05-16 02:51:58 +00:00
Daniel Genrich
7f92b5f79a Fix El Topo:
- Library compile errors
- 2 Bugs (have been reported to lib owner)
- LAPACK for cmake

TODO:
- Scons is still missing LAPACK lib define
- Do other platforms got LAPACK lib?
2012-05-15 11:35:01 +00:00
Antony Riakiotakis
232980eef0 Cleanup optimization compile flags for mingw-w64.
After testing it seems that for safe debug sessions, debug build optimizations need to be off. 

Also removed sse flags from release flags since they are included in ray optimization flags which are on by default.
2012-05-14 23:36:07 +00:00
Antony Riakiotakis
e5963aae1d Change the scons configuration for MinGW-w64 to be more in-line with cmake. Also deactivate openmp as it causes crashes when rendering with subsurf or multires modifiers 2012-05-13 17:26:07 +00:00
Nathan Letwory
a88f910b9a Disable sm_13 CUDA kernel building for now, as the build fails with out of memory. 2012-05-12 22:00:32 +00:00
Nathan Letwory
63690b6b45 Enable setting of CUDA kernels to compile on command-line:
python scons/scons.py BF_CYCLES_CUDA_BINARIES_ARCH=sm_20,sm21
2012-05-12 21:37:01 +00:00
Nathan Letwory
e8e1a7cb9e Enable OpenCOLLADA support for MingW64 builds by default.
Note: don't forget to update your local checkout of lib/mingw64
2012-05-11 17:29:55 +00:00
Antony Riakiotakis
f91fa9d2ce Enable ffmpeg building with MinGW-w64. The libraries were compiled with gcc 4.7, however is has been claimed there are issues with gcc > 4.4 so this is for testing purposes. Still it doesn't crash on startup anymore. Forgot to mention on ffmpeg lib commit that committed ffmpeg version is 0.10.2 2012-05-10 11:37:41 +00:00
Brecht Van Lommel
ad929044d3 Fix: recent commit setting python3.2 command should not be applied to this file
scons build scripts are still using python2.
2012-05-02 09:03:04 +00:00
Campbell Barton
c6051ea87b replace python3 command with python3.2, python3 isnt available on ubuntu. 2012-05-01 20:45:16 +00:00
Thomas Dinges
e08a46c070 Windows / Scons:
* Disable CUDA kernel compile per default, so people who don't use it can compile file with the default config.
2012-04-30 09:06:19 +00:00
Nathan Letwory
fd2439f47a bump commit count, mingw32 -> mingw64 2012-04-28 08:47:37 +00:00
Nathan Letwory
5d70a6aedf Add MingW as "platform" 2012-04-28 08:45:55 +00:00
Nathan Letwory
09dc600839 Same mingw fix as for compile 2012-04-28 06:28:07 +00:00
Nathan Letwory
a299855e34 Changes to get mingw buildslaves going. 2012-04-27 13:18:55 +00:00
Antony Riakiotakis
7ac4bd9105 Enable building of the installer with MinGW-w64, patch by Caleb Joseph (Dobz) thanks a lot! 2012-04-25 11:15:55 +00:00
Antony Riakiotakis
75addcf233 Lower optimization settings for MinGW-w64. Full optimization causes artifacts with empties and gods know what else. Turned on -ftree-vectorize to match MSVC behaviour for 64bit. 2012-04-24 17:20:51 +00:00
Antony Riakiotakis
4e6590067d revert 45924, not a very clean solution, especially for external libraries and looks like -fpermissive is used in linux too 2012-04-24 16:14:23 +00:00
Antony Riakiotakis
0db3c5f743 Remove mingw-w64 errors from loss of precision by converting 64bit pointers to ints. All cases found were harmless and the error behaviour could be turned off by the -fpermissive flag but I'd rather keep that off to detect any real problems should they arise. 2012-04-24 14:33:44 +00:00
Antony Riakiotakis
4782522379 Add libMV and Scons support for MinGW-w64, patches by Caleb Joseph with slight modifications.
Thanks!
2012-04-24 12:57:58 +00:00
Antony Riakiotakis
c498c0eb42 Update build files to use the new lib locations for MinGW. For builders: you will need to checkout https://svn.blender.org/svnroot/bf-blender/trunk/lib/mingw32/
to build with MinGW past this commit.
2012-04-23 01:11:42 +00:00
Antony Riakiotakis
ff06260ea1 Solve restriction of MinGW that users have to turn ffmpeg on for cmake. 2012-04-22 14:33:40 +00:00
Campbell Barton
5c4a7171fe qtcreator/netbeans generators: fix for error getting project info when svn isnt found (common on windows) 2012-04-15 09:34:57 +00:00
Thomas Dinges
f725a3d6c4 Scons ToDo:
* Made Frameserver building optional, added WITH_BF_FRAMESERVER.
* Enabled per default in btools.py
2012-04-14 22:19:29 +00:00
Thomas Dinges
48ed63b1a5 Scons ToDo:
* Made Smoke building optional, added WITH_BF_SMOKE.
* Enabled per default in btools.py
2012-04-14 21:55:38 +00:00
Thomas Dinges
d7221fd7c9 Scons / Windows release build configs:
* Enable CUDA per default, only thing the builder has to do for release libs, is to specify BF_CYCLES_CUDA_NVCC.
2012-04-12 13:58:16 +00:00
Thomas Dinges
3d4a14149b Scons:
* Some code and comment cleanup
* Remove cmake equivalent variable comments
* Remove some non used parameters from config files and btools: WITH_BF_FMOD, BF_VERSION.
* Remove some commented non-used variables
2012-04-07 18:26:54 +00:00
Thomas Dinges
3d893a926e Windows x64 / Scons:
* Enable WITH_BF_OPENJPEG per default, it was enabled for 32 bit systems, why not on x64? 
* This brings back JPEG 2000 support for win x64.
2012-04-06 10:57:22 +00:00
Sergey Sharybin
785373b03a Added new command-line arguments --debug-ffmpeg and --debug-libmv to
be able to see debug prints coming from FFmpeg or libmv independently
of general blender debug messages.
2012-03-30 10:37:49 +00:00
Mitchell Stokes
9391e4c4a3 This does two things for cleanup builds made with SCons:
1) Removes unwanted folders from Python/lib instead of just emptying them out.
  2) Removes the test folder from Python/lib. This folder contains unit tests for Python (not the unittest module itself), and is about 10~12MB.
2012-03-28 19:56:11 +00:00
Alexander Kuznetsov
f11a6d3a84 Adds support for utf paths on Windows.
Not all file formats/calls are supported yet. It will be expended.

Please from now on use BLI_fopen, BLI_* for file manipulations.
For non-windows systems BLI_fopen just calls fopen.
For Windows, the utf-8 string is translated to utf-16 string in order to call UTF version of the function.
2012-03-20 02:17:37 +00:00
Jens Verwiebe
f2475088b6 OSX/scons: also allow for omp-builds with gcc-4.6.2 and 4.6.3 ( tested ), TODO: check if we can compile objC/objC++ with newer gcc too 2012-03-15 14:57:51 +00:00
Antony Riakiotakis
d184fe0df3 Missed Scons update for MinGW boost 2012-02-26 16:54:20 +00:00
Sergey Sharybin
ed21afa2eb Disable fancy scons output for buildbot. Should make reading build logs a bit more easier. 2012-02-26 10:47:50 +00:00
Campbell Barton
6ca7d82932 code cleanup: white space, spelling & ';;' end of lines. 2012-02-25 16:04:03 +00:00
Jens Verwiebe
f8d55b5bf0 OSX: scons: fix own mistake, truncate output of xcode-build -version to major.minor version in config to change the var not only the print 2012-02-25 11:21:20 +00:00
Jens Verwiebe
2377bfe32f OSX: set ffmpeg back in darwin-config according librenaming 2012-02-24 18:31:09 +00:00
Sergey Sharybin
9def83f7e0 XDND support now can be disabled using WITH_GHOST_XDND=OFF with CMake and WITH_GHOST_XDND=False with SCons
Disabled on FreeBSD platforms due to some linking errors.
2012-02-17 20:51:39 +00:00
Campbell Barton
61596d5bb3 patch [#30227] Various MSVC (32-bit) Warning and Typo Fixes
made some small edits
- removed changes to AVI reading since the data types are apart of the format spec.
- absf -> abs for a double value in render code.
2012-02-17 19:21:47 +00:00
Sergey Sharybin
29f0ff718b Reverting changes made to build systems when was upgrading OpenAL.
Reverting to openal from creative because own builds doesn't deal with 3D sound.
Hopefully it wouldn't lead to crashes caused by ffmpeg+openal (for resolving which
libraries were updated to openal-soft).
2012-02-17 16:58:34 +00:00
Jens Verwiebe
c9d8af6cff OSX: since XCode 4.3 the developer directory is inside XCode.app bundle, so we handle path according XCODE_VERSION now 2012-02-17 10:44:21 +00:00
Sergey Sharybin
001299a0f6 Buildbot: WITH_BF_CYCLES_CUDA_BINARIES should be set for packing stage too. 2012-02-14 17:03:27 +00:00
Sergey Sharybin
9df1fb5076 Buildbot: another attempt to make Windows builds support CUDA
Set BF_CYCLES_CUDA_NVCC to nvcc.exe, hopefully it's on search path at builder machine.
2012-02-14 15:59:10 +00:00
Sergey Sharybin
1df04f1dcd SCons: command line options should be coma-separated when adding to options list 2012-02-14 15:44:17 +00:00
Sergey Sharybin
b89beaf990 Buildbot: enable building CUDA binaries on Windows slaves.
Should make CUDA available for rendering in buildbot builds.
2012-02-14 15:26:20 +00:00
Jens Verwiebe
441dc0fc7e OSX: to make transition for mediaimports to ffmpeg reliable, ffmpeg_0.10 is mandatory 2012-02-14 07:47:29 +00:00
Sergey Sharybin
33bca3075f Fix for hardcoded to scons rules python abi flags and wrong behavior
of python bundling on systems where python is installed to /usr/lib64

Now ABI flags are automatically detecting (by checking all available flags
and checking if there's include directory exists for flag).
Also, automatically set PYTHON_LIBPATH to /usr/lib64 if python
scripts are stored in this folder.
Bundling python on *nix platforms is now checks if python is installed
to lib64 directory and if it is, python will be bundled to lib64
folder instead of lib.

This will make building on openSUSE a bit less annoying
2012-02-08 17:17:19 +00:00
Sergey Sharybin
2c088c5857 Use the same fancy compile output for .cc files as for .cpp files 2012-02-08 15:54:00 +00:00
Campbell Barton
637bc0ddea Code Cleanup: pep8 edits 2012-02-04 11:10:41 +00:00
Campbell Barton
a98a75346c quiet warnings and possible NULL checking crash fix for indentation functions. 2012-01-20 23:03:41 +00:00
Campbell Barton
5c6413f695 fix for scons/linux with opencollada debug libs 2012-01-20 12:32:11 +00:00
Campbell Barton
7f08c71f43 cleanup for redefined vars 2012-01-18 06:55:51 +00:00
Campbell Barton
af6f753400 fix for segfault with bpy compiled as python module (dont register atexit)
update `make lite` built target to remove some newly added features.
2012-01-17 15:19:11 +00:00
Sergey Sharybin
7a85ad51bf Compilation error when using mingw+scons
Error was caused by boost library (which doesn't seem to be working with Cycles too
when compiling with mingw). Switched mingw to use TR1 unordered collections. Also,
there was re-declaration of strcasecmp when mingw is used.

Additional changes are related on using own process spawning when BF_TOOLSET is set to
mingw. Seems to be working fine now (i've got too long command line error) and no
warning are supressing now (as it was told in comment for commented own process spawning).
2012-01-17 10:32:17 +00:00
Sergey Sharybin
e81f2853c8 Carve booleans library integration
==================================

Merging Carve library integration project into the trunk.

This commit switches Boolean modifier to another library which handles
mesh boolean operations in much stable and faster way, resolving old
well-known limitations of intern boolop library.

Carve is integrating as alternative interface for boolop library and
which makes it totally transparent for blender sources to switch between
old-fashioned boolop and new Carve backends.

Detailed changes in this commit:

- Integrated needed subset of Carve library sources into extern/
  Added script for re-bundling it (currently works only if repo
  was cloned by git-svn).
- Added BOP_CarveInterface for boolop library which can be used by
  Boolean modifier.
- Carve backend is enabled by default, can be disabled by WITH_BF_CARVE
  SCons option and WITH_CARVE CMake option.
- If Boost library is found in build environment it'll be used for
  unordered collections. If Boost isn't found, it'll fallback to TR1
  implementation for GCC compilers. Boost is obligatory if MSVC is used.

Tested on Linux 64bit and Windows 7 64bit.

NOTE: behavior of flat objects was changed. E.g. Plane-Sphere now gives
      plane with circle hole, not plane with semisphere. Don't think
      it's really issue because it's not actually defined behavior in
      such situations and both of ways might be useful. Since it's
      only known "regression" think it's OK to deal with it.

Details are there http://wiki.blender.org/index.php/User:Nazg-gul/CarveBooleans

Special thanks to:

- Ken Hughes: author of original carve integration patch.
- Campbell Barton: help in project development, review tests.
- Tobias Sargeant: author of Carve library, help in resolving some
                   merge stoppers, bug fixing.
2012-01-16 16:46:00 +00:00
Campbell Barton
535d27dac2 when building blender as a py module use add_library(... MODULE on all systems, was SHARED on linux/windows. 2012-01-11 00:09:46 +00:00
Campbell Barton
8391f534ab remove WITH_OGG define, its not used anywhere. 2012-01-10 13:33:53 +00:00
Campbell Barton
68fd186586 use warnigns for all msvc configurations 2012-01-06 05:13:36 +00:00
Joshua Leung
f6c5744b01 Bumping up scons+msvc warning level to w1 so that we at least get some warnings
out of it.
2012-01-06 04:07:09 +00:00
Campbell Barton
8a9650e620 disable recent attempt to static link mingw DLL's causes errors for some users.
also remove break statement, mistake on last commit.
2012-01-05 10:05:24 +00:00