Commit Graph

457 Commits

Author SHA1 Message Date
Antony Riakiotakis
8e2dd1c351 Scons, linux: If we are to keep WITH_INTERNATIONAL on by default, also turn on boost by default because it locale libraries are needed 2013-01-22 17:09:10 +00:00
Antony Riakiotakis
10261c4250 a better fix for scons finding pyconfig.h in ubuntu 12.10 2013-01-22 16:40:40 +00:00
Sergey Sharybin
5781859753 Dosvidanya, old compositor!
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!
2013-01-14 15:53:17 +00:00
Sergey Sharybin
35d0e99299 Added new scons target: cudakernels
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.
2013-01-10 08:01:07 +00:00
Jens Verwiebe
474b92c76c OSX: take back 53611 for now, give trouble with the local variables in config, guess needs some cleanup 2013-01-08 07:36:22 +00:00
Jens Verwiebe
69dd1b0819 OSX/scons: make 64bit Intel the default now 2013-01-06 18:26:29 +00:00
Thomas Dinges
b3dc1d585a Scons / Windows Release Builds:
* Don't put -release- string into the final .exe name.
blender-2.65-release-windows32.exe --> blender-2.65-windows32.exe
2012-12-20 08:54:37 +00:00
Bastien Montagne
b481ec92e4 Minor tweaks to some UI messages... 2012-12-17 20:16:37 +00:00
Sergey Sharybin
e00e649063 SCons: clean up code which was commented out since 2007 2012-12-14 12:06:24 +00:00
Sergey Sharybin
7fe2ac8e9a SCons; cleanup linux-config.py from using deprecated libraries from svn
This was already done for CMake and mentioning this paths in scons only
messes things up.
2012-12-14 12:06:09 +00:00
Sergey Sharybin
d4cd823912 SCons: added static libs path for OIIO, OCIO and Boost
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.
2012-12-13 16:55:54 +00:00
Jens Verwiebe
8af6721eb5 OSX: make cmake and scons both compile jack and ndof with newer sdk's 2012-12-12 19:54:14 +00:00
Brecht Van Lommel
dbd44e3bf5 Fix scons not installing closure/ directory for runtime compiles of CUDA kernel. 2012-12-03 16:51:05 +00:00
Campbell Barton
a7555a81c7 remove unmaintained eltopo, keeping scons/cmake entries, but commenting out user visible config to make branch merging less of a hassle. 2012-11-27 09:52:20 +00:00
Campbell Barton
0a5d44588c switch verious references from py3.2 -> 3.3 or just 3. 2012-11-26 13:58:06 +00:00
Sergey Sharybin
2d6402c10c Switch windows to python 3.3
Should affect on msvc2008 only, however scons with msvc2010 could still be broken.
2012-11-26 12:38:40 +00:00
Brecht Van Lommel
629ea82a13 Fix 33149: LLVM caused startup crash on linux systems using Mesa llvmpipe.
Now we hide the LLVM symbols with an ld version script to avoid conflicts.
2012-11-21 22:28:15 +00:00
Thomas Dinges
d7ff8855cb Mingw x64:
* Iconv libs have been removed from SVN, disable it. This hopefully fixes the buildbot.
2012-11-20 01:26:21 +00:00
Thomas Dinges
d19339a181 Windows / OSL:
* Enable OSL for Windows and Windows Buildbot.
2012-11-20 00:54:32 +00:00
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
Jens Verwiebe
29fe8abf8d OSX/scons: migration to py 3.3 2012-11-19 10:14:55 +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
0c12ea0939 Buildbot: show OS X target version in buildbot zip filename. 2012-11-17 23:00:04 +00:00
Jens Verwiebe
d017f34c5d OSX/scons/osl: working but not optimally designed atm 2012-11-16 14:42:04 +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
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
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
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
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
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
c75b6c854c Buildbot: use proper archive name for glibc2.11 archives 2012-10-29 16:07:16 +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
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
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
Thomas Dinges
9e1b13da56 * Disable building of Legacy Compositor in Scons. 2012-09-15 12:32:30 +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
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
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
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
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
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
Antony Riakiotakis
84c0aee254 Correct openjpeg for scons too. 2012-06-21 14:49:10 +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
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
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
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
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
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
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
1df04f1dcd SCons: command line options should be coma-separated when adding to options list 2012-02-14 15:44:17 +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
5c6413f695 fix for scons/linux with opencollada debug libs 2012-01-20 12:32: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
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
Campbell Barton
b5ce2b028a link mingw libstdc++ and libgcc libs statically so users dont need mingw installed to use mingw builds 2012-01-05 07:52:03 +00:00
Alexander Kuznetsov
28e658a386 Openexr path change for scons (win) 2011-12-31 17:15:47 +00:00
Campbell Barton
ba8d1b940f option to build without remesh modifier for cmake and scons 2011-12-31 03:34:44 +00:00
Joshua Leung
fc74eea7a4 Mingw - use truly relative instead of absolute-relative paths for Boost and OIIO
That is, instead of '#../lib/windows/lib_name/include', we're now using BF_LIBNAME + '/include'. This makes it possible to have a single lib folder shared between several local working trees again.
2011-12-29 02:57:41 +00:00
Sergey Sharybin
a0e62e77d7 Update build files to use new OpenAL libraries 2011-12-27 09:37:19 +00:00
Sergey Sharybin
7bc43f3693 Added WITH_BF_LIBMV to command line options 2011-12-26 14:52:21 +00:00
Thomas Dinges
b66c87231a * Changes for static win32 png libs. 2011-12-19 19:46:07 +00:00
Thomas Dinges
0ebb1a3f9f * Fix for moving mingw png libs. 2011-12-19 14:46:17 +00:00
Thomas Dinges
8f0e9c7c09 MinGW png libs
* Moved to gcc/png in the libs dir.
2011-12-18 23:23:09 +00:00
Jens Verwiebe
94bc2b0cff OSX: proper scons config and linking weak for jackOSX and errorhandling 2011-12-12 22:17:02 +00:00
Thomas Dinges
7c630aac80 Scons/CUDA
* Added missing bitness info to the nvcc_flags. 
This makes sure that the nvcc compiler builds the correct cubins.
2011-12-08 19:16:43 +00:00
Thomas Dinges
b7649ea757 Cycles / CUDA Kernel compile:
* Added option "WITH_BF_CYCLES_CUDA_THREADED_COMPILE" for the people who have much RAM (8 or more) and can compile several kernels at the same time. If enabled, it uses the general BF_NUMJOBS flag.
* The option is off per default.
2011-12-06 16:00:57 +00:00
Thomas Dinges
12326ac6c5 CUDA
* Added CUDA Binaries to Windows scons config files, disabled by default. 
Also the path to nvcc is commented out, best to set this in the user config, as it varies on each system probably.
2011-12-04 10:45:25 +00:00
Brecht Van Lommel
45de380771 Cycles
* Compile all of cycles with -ffast-math again
* Add scons compilation of cuda binaries, tested on mac/linux.
* Add UI option for supported/experimental features, to make it
  more clear what is supported, opencl/subdivision is experimental.
* Remove cycles xml exporter, was just for testing.
2011-12-01 16:33:21 +00:00
Thomas Dinges
366554d303 Scons / Cycles:
* Add dummy WITH_BF_CYCLES_BINARIES to scons, to be able to copy the .cubin kernels from cmake and have it work.
2011-11-24 19:22:34 +00:00
Campbell Barton
df22957bfc image format arg parsing for creator.c
move these checks from creator into BKE's image.c, this way we dont need the defines for creator, scons was missing DDS, HDR & Cineon  for example and nobody noticed.
2011-11-24 05:18:26 +00:00
Campbell Barton
d9e99abe37 hide overly picky warnings from 'pylint' for pep8 script, indentation edits. 2011-11-19 16:17:35 +00:00
Campbell Barton
c63873ad22 exclude addons_contrib for release builds for scons/osx too 2011-11-18 05:14:13 +00:00
Campbell Barton
8c6057d5e3 exclude addons_contrib/ for release builds. 2011-11-17 19:43:59 +00:00
Sergey Sharybin
df6aa48eb9 Fixed typo in previous commit 2011-11-15 09:21:22 +00:00
Sergey Sharybin
5cf345f860 Request from nico_ga: expose WITH_BF_STATIC* variables to linux-config so
builders can easily find interesting for them flag.
2011-11-15 08:43:23 +00:00
Joshua Leung
36c073ab2a mingw compiles again after OceanSim stuff 2011-11-14 10:35:11 +00:00
Jens Verwiebe
ea38cb2e5e Scons_buildsystem: add WITH_BF_OCEANSIM = True to all configs 2011-11-13 15:10:54 +00:00
Lukas Toenne
11c83d8432 Ocean Sim modifier patch
by Matt Ebb, Hamed Zaghaghi

This adds a new Modifier "Ocean" to simulate large-scale wave motion.
Details can be found in the wiki documentation [1], the project homepage [2] and the patch tracker [3]

The modifier is disabled by default for now. To enable it, the WITH_OCEANSIM (cmake) / WITH_BF_OCEANSIM (scons) flags have to be set. The code depends on fftw3, so this also has to be enabled.

[1]
http://wiki.blender.org/index.php/Doc:2.6/Manual/Modifiers/Simulation/Ocean

[2]
http://www.savetheoceansim.com

[3]
http://projects.blender.org/tracker/?group_id=9&atid=127&func=detail&aid=28338
2011-11-13 12:17:27 +00:00
Brecht Van Lommel
0f85990d4a Cycles: more linux build system tweaks, attempting to avoid using boost
system libraries by default if we have a lib/ directory.
2011-11-11 20:57:00 +00:00
Brecht Van Lommel
38fd8c0e22 Cycles: fix wrong openimageio path for lib/ directory. 2011-11-11 19:20:52 +00:00
Brecht Van Lommel
a7f09ea0b2 CMake/Scons: automatically use ffmpeg, boost and openimageio from the svn lib/
directory if available, which should make building with ffmpeg and cycles easier.

If this folder is not available or another path is specified in user-config.py
or CMakeCache.txt, this should have no effect. Wiki build instructions now show
how to use these.
http://wiki.blender.org/index.php/Dev:2.5/Doc/Building_Blender/Linux
2011-11-11 14:52:24 +00:00
Brecht Van Lommel
5b1a42cb17 Cycles:
* Fix excessive fireflies in Velvet BSDF (patch by David).
* Disable some unused SSE code
* Remove RTTI disabling flags for now, this is giving some compile issues and
  was only needed of OSL which we're not using yet.
2011-11-10 14:32:16 +00:00
Joshua Leung
9111213a98 Whitespace tweaks 2011-11-10 10:34:26 +00:00
Sergey Sharybin
f09f5eec57 - Added options to link staticly against oiio/boost
- Also changed buildbot settings so now linking should happe staticly
2011-11-09 19:02:42 +00:00
Nathan Letwory
f0adbb7746 Fix ${} var usage. Was missing BF_OIIO and BF_BOOST init.
Noticed still missing: OSX file copying (cycles .py files, kernel files, licenses).
2011-11-09 17:22:55 +00:00
Antony Riakiotakis
ee1569b933 No tabs in scons! Sorry for that.. 2011-11-09 14:00:24 +00:00
Brecht Van Lommel
adf17b48d8 Cycles: mac + scons build should not work. 2011-11-09 11:49:39 +00:00
Antony Riakiotakis
2f1e51ac99 correct comment, no longer needed. 2011-11-09 11:38:04 +00:00
Antony Riakiotakis
83b16687b9 Make scons work MinGW. This commit resolves several issues such as enable OpenEXR, Game Engine and Player, enable latest features, and solve link order for gcc. So MinGW is right now fully supported as a build system for release type builds. Debug builds not tested. 2011-11-09 11:33:10 +00:00
Thomas Dinges
7f273394d5 Cycles:
* Scons: Disable Cycles per default on Linux/Mac for now until compile issues have been sorted out.
2011-11-08 21:46:31 +00:00
Thomas Dinges
af867438fc Scons:
* Fixing x64 compile with Cycles.
2011-11-08 21:17:42 +00:00
Thomas Dinges
a645935a1d Build system fixes:
* Fixed Boost libs names after upgrade to 1.47
* Remove old reference to space_sound from cmake.
2011-11-08 20:56:55 +00:00
Nathan Letwory
c9bca51e76 Add compiles support for Cycles.
No CUDA compiling yet, will be added later.
2011-11-08 20:40:02 +00:00
Sergey Sharybin
27d42c63d9 Camera tracking integration
===========================

Commiting camera tracking integration gsoc project into trunk.

This commit includes:

- Bundled version of libmv library (with some changes against official repo,
  re-sync with libmv repo a bit later)
- New datatype ID called MovieClip which is optimized to work with movie
  clips (both of movie files and image sequences) and doing camera/motion
  tracking operations.
- New editor called Clip Editor which is currently used for motion/tracking
  stuff only, but which can be easily extended to work with masks too.

  This editor supports:
  * Loading movie files/image sequences
  * Build proxies with different size for loaded movie clip, also supports
    building undistorted proxies to increase speed of playback in
    undistorted mode.
  * Manual lens distortion mode calibration using grid and grease pencil
  * Supervised 2D tracking using two different algorithms KLT and SAD.
  * Basic algorithm for feature detection
  * Camera motion solving. scene orientation

- New constraints to "link" scene objects with solved motions from clip:

  * Follow Track (make object follow 2D motion of track with given name
    or parent object to reconstructed 3D position of track)
  * Camera Solver to make camera moving in the same way as reconstructed camera

This commit NOT includes changes from tomato branch:

- New nodes (they'll be commited as separated patch)
- Automatic image offset guessing for image input node and image editor
  (need to do more tests and gather more feedback)
- Code cleanup in libmv-capi. It's not so critical cleanup, just increasing
  readability and understanadability of code. Better to make this chaneg when
  Keir will finish his current patch.

More details about this project can be found on this page:
    http://wiki.blender.org/index.php/User:Nazg-gul/GSoC-2011

Further development of small features would be done in trunk, bigger/experimental
features would first be implemented in tomato branch.
2011-11-07 12:55:18 +00:00
Thomas Dinges
563becafb9 Scons:
* Basic support for OpenImageIO and Boost libraries
* Path to libraries added for win32/64-vc-config.py, still commented out.
2011-11-03 12:40:15 +00:00
Thomas Dinges
6ea6e992ba Scons:
* Minor cleanup
2011-11-03 12:24:29 +00:00
Campbell Barton
9c801a6d85 Correction to own commit r41169 2011-10-31 09:52:43 +00:00
Thomas Dinges
f837b46a2b Modifier compilation tweaks (Blender conference commit)
* Fluid compilation: Inverse the compile flag from DISABLE_ELBEEM to WITH_MOD_FLUID for consistency. (scons/cmake)
* Use WITH_BF_FLUID in your user config (scons) 

* Add support for scons to disable build with Decimate and Boolean modifier. 
(WITH_BF_DECIMATE and WITH_BF_BOOLEAN)
2011-10-29 23:56:07 +00:00
Campbell Barton
5efcf9bd1f remove scons files for unsupported/obscure unix variants, these configs are not maintained (aix defined FREE_WINDOWS for example and nobody noticed), and CMake builds on OpenBSD/NetBSD with no manual configuration. 2011-10-21 04:26:48 +00:00
Campbell Barton
d37760bc34 cleanup scons build flags, many duplicates because because of confusion between CFLAGS/CPPFLAGS/CCFLAGS/CXXFLAGS, devs would set multiple to be on the safe side.
- defines go in CPPFLAGS
- C & C++ flags go in CCFLAGS
- CFLAGS / CXXFLAGS are C OR C++ only.

also commented intended ghost unicode/ascii usage.
2011-10-21 04:23:26 +00:00
Campbell Barton
78a8f8a4b1 - remove release/bin/.blender/.bfont.ttf, we have ./release/datafiles/bfont.ttf already, and its not used anymore.
- removed scons WITH_BF_FREETYPE
2011-10-21 03:16:01 +00:00
Campbell Barton
d132b08f33 move fonts/ and locale/ dirs into release/datafiles, since blender wasn't finding them in their current location and so to test international characters you had to 'make install'.
updated scons/cmake/translation-scripts.
2011-10-21 03:00:28 +00:00
Campbell Barton
4512f10db9 misc edits
- rename define DISABLE_SDL --> WITH_SDL (which was already used in some places)
- blenders interation preset was using orbit rather then turntable 3d view preference (different from factory defaults).
- tagged some unused rna args.
2011-10-20 00:19:21 +00:00
Jens Verwiebe
8dce8e0c17 OSX: make sure the set_simulation_threads script is always renewed 2011-10-15 14:13:49 +00:00
Jens Verwiebe
e7095450e7 OSX: commit the omp_set_simulation_threads applescript and copy-routines 2011-10-14 17:54:37 +00:00
Jens Verwiebe
afcf581fb0 OSX: commit the needed steps for compiling with gcc 4.6.1 and OMP_NUM_THREADS env variable setting 2011-10-14 17:27:55 +00:00
Campbell Barton
019dca9c54 remove redundant code, also dont bother with os.path.basename(x) for recent scons commit. 2011-10-04 08:28:37 +00:00
Sergey Sharybin
91c38f0aa0 Fix for unix python bundling: config-* directories didn't deleted
This is because of passing config-* to rm command in quotes.
2011-10-04 08:20:29 +00:00
Campbell Barton
e42146c1ec remove .Blanguages, its not used anymore 2011-10-02 22:28:49 +00:00
Nathan Letwory
1023ed4e4d Make sure that default settings have OpenMP support by default (also good for buildbots).
Note that builders that don't have VS pro version need to manually disable this setting in their respective user-config.py
2011-10-02 17:53:52 +00:00
Joerg Mueller
07ad83a439 * Removing libsamplerate from build systems
* Enabling OpenAL for scons win64-vc in default config; Nathan or Sergey: please update the build bot to build with OpenAL!
2011-10-02 17:09:39 +00:00
Jens Verwiebe
6f9636b800 OSX: another non-ASCII char, sorry 2011-09-29 17:02:19 +00:00
Jens Verwiebe
6088d460ef OSX: Give clear commenting and more up-to-date defaults 2011-09-28 17:28:37 +00:00
Jens Verwiebe
eb2c89ab87 OSX: change omp default True gor gcc-4.6.1 only atm 2011-09-28 17:21:08 +00:00
Dalai Felinto
78dc35cf29 scons OSX - we don't need extra junk in blenderplayer ;) 2011-09-27 17:26:36 +00:00
Jens Verwiebe
6f2d937a63 OSX: introduced a workaround for compiling with non-apple gcc-4.6.1, ghost must be compiled with apple-gcc nevertheless due objc incompatibilities 2011-09-27 13:18:34 +00:00
Campbell Barton
4b449aefea remove support for irix 2011-09-21 08:40:30 +00:00
Brecht Van Lommel
219eeb3e54 Internationalization: fix OS X scons install to copy font and language files
correctly.
2011-09-20 15:55:28 +00:00
Sergey Sharybin
07ed73caee - Fix for compiling without international support
- Enable international support for win64 msvc by default
2011-09-20 14:07:40 +00:00
Nathan Letwory
a199c9a4bb Don't set BF_NUMJOBS in default config, but instead let users do that in user-config.py. 2011-09-20 07:53:20 +00:00
Campbell Barton
83a2f02a78 cleanup endian handling
- define __BIG_ENDIAN__ or __LITTLE_ENDIAN__ with cmake & scons.
- ENDIAN_ORDER is now a define rather than a global short.
- replace checks like this with single ifdef: #if defined(__sgi) || defined (__sparc) || defined (__sparc__) || defined (__PPC__) || defined (__ppc__) || defined (__hppa__) || defined (__BIG_ENDIAN__)
- remove BKE_endian.h which isn't used
2011-09-19 08:02:17 +00:00
Sergey Sharybin
86d05b3144 Update build rules to deal with new gettext libraries. 2011-09-15 11:37:42 +00:00
Sergey Sharybin
899bd19c71 Forgot to add FFmpeg DLLs list to linuxcross config. 2011-09-08 19:05:52 +00:00
Jens Verwiebe
7983627500 OSX: revert default compile to i386, for it breakes QTKit-condition for some unknown reason 2011-09-07 14:44:52 +00:00
Antony Riakiotakis
aabd702dbd fix link issues with MinGW - a substitute declaration(correctByteOrder) for itoln that was not present in MinGW was being used. Duplicated the declaration from <winsock2.h>(tried including but gave some errors) and added the appropriate link library, wsock32, according to MinGW documentation. 2011-09-06 11:17:29 +00:00
Jens Verwiebe
d8394b9d67 set OSX default python to static 2011-08-31 14:46:27 +00:00
Jens Verwiebe
5e8d191930 OSX/scons: fix compile with static python, my patch was a bit outdates, sorry 2011-08-31 14:15:14 +00:00
Jens Verwiebe
2457c2134a OSX: additionally choice to link against python-framework again 2011-08-30 23:52:12 +00:00
Nathan Letwory
24ea5fe424 Enable libsndfile by default on win32 too. 2011-08-30 12:40:15 +00:00
Jens Verwiebe
3b1192431f OSX/scons: don´t link to system stubs with 10.7 sdk 2011-08-25 09:41:36 +00:00
Sergey Sharybin
0e3b8ff6a5 Update rules for linux cross and mingw: list of DLLs for FFmpeg should be defined there. 2011-08-22 19:27:54 +00:00
Sergey Sharybin
a33a26ca07 FFmpeg library update:
- Update scons/cmake rules to use new versions of libs/dlls.
- Update rules for buildbot.
2011-08-22 18:49:42 +00:00
Campbell Barton
7d316b70b8 rename NAN_BUILDINFO --> WITH_BUILDINFO 2011-08-22 16:54:26 +00:00
Campbell Barton
817273931a buildinfo is now quoted from the build systems, avoids stripping quotes on startup.
tested with linux/cmake linux/scons windows/cmake/mingw windows/cmake/msvc
2011-08-22 12:24:14 +00:00
Sergey Sharybin
36f20f162c Fix #28154: linux3-config.py doesn't exist
Change OURPLATFORM from "linux<major_version>" to simple "linux".
Since new policy for linux kernel versions that major version in
platform doesn't make much sense for building rules so the same
rules could be used for both of linux2 and linux3 now/

Tested on both of linux2 and linux3 systems.
2011-08-21 13:31:46 +00:00
Sergey Sharybin
c9216e390c Commiting patch from jensverwiebe for NDOF support on OSX 2011-08-11 15:59:19 +00:00
Thomas Dinges
fad243a4bf Mac Compile fix for ndof, by jensverwiebe. Thanks! 2011-08-07 22:48:04 +00:00
Campbell Barton
577293569a scons patch from jensverwiebe
fix a silly bug in version detection, - added an OSX sdk-check

jensverwiebe, needs to get commit access!, but will apply his patches for now.
2011-08-07 16:54:40 +00:00
Mike Erwin
6a0bbfd0e4 fixed ndof library detect for Mac SCons, ndof enabled by default (disabled if lib not found), minor cleanup 2011-08-07 16:29:05 +00:00
Mike Erwin
6c821f4078 stricter NDOF guards for Windows (forgot in earlier commit) 2011-08-06 23:13:36 +00:00
Kent Mein
7368298a45 Messed up char was causing problems on windows even though it was in the
comments.

Kent
2011-08-05 19:55:36 +00:00
Campbell Barton
a6b677c81d patch from jensverwiebe to scons to be compatible with gcc llvm. people who copy the darwin-config.py to their user-config.py should update. 2011-08-05 12:07:05 +00:00
Nathan Letwory
d795a78cb7 Default to False for WITH_BF_3DMOUSE, since needs separate package installed. 2011-08-03 14:04:48 +00:00
Sergey Sharybin
2c4357c1e1 - Move list of FFmpeg DLLs to be installed from SConstruct
to conficuration variable BF_FFMPEG_DDL.
  This would allow to use different FFmpeg in buildbot.
- Added some 3DMOUSE variables to list of command line options.
  Now 3dmouse related-settings can be set from command line.
2011-08-03 10:50:21 +00:00