Commit Graph

781 Commits

Author SHA1 Message Date
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
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
Alexander Kuznetsov
4b9457dd4a Patch is partially made by Pelle Johnsen. Thanks!
This patch enables search for specific libraries for vc2010 using "set_lib_path" macro
If *x* library or path exists in lib/win___/vc2010/*x* , vc2010 will use it. If not, compiler will use standard libraries.
It can be easily extended to gcc.

The function is enabled for:
openCollada
openExr
Python
openImageIO

The different libraries are needed for different compilers because C++ was used. There is no standard for lib's C++ structure/functions' names.

Actual libs will follow
2011-12-30 22:10:48 +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
Sergey Sharybin
5e586fa0ca Buildbot tweaks:
- Enable SSE/SSe2 for 64bit builds
- Build CUDA binaries
2011-12-13 09:54:48 +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
Campbell Barton
4b73f587ee attempt to fix defione for qtcreator project file and cycles define. 2011-12-06 04:53:16 +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
Sergey Sharybin
020bafb0af Buildbot configuration tweaks
- Force libsamplerate linking statically
- Remove global compiler flags for sse2 and sse.
  Tests of release builds didn't show big difference in time of
  tracking using SAD algorithm or time of solving,
  so this shouldn't introduce big slowdown.
2011-11-27 19:21:49 +00:00
Campbell Barton
6e28ac2d7b pep8 edits and avoid naming conflicts with python builtins 2011-11-24 19:36:12 +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
6585527151 add python3 checks to avoid confusion from errors with python2. 2011-11-19 00:01:10 +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
Campbell Barton
1cfbde0eb4 pass encoding to uses of decode() incase the default isnt utf-8. ignore decode errors in some cases.
This should fix an error with generated qtcreator projects.

also replace decoded bytes for unicode escape sequences in the VIEW3D_MT_edit_text_chars menu.
2011-11-17 04:05:54 +00:00
Campbell Barton
4d9766aacf minor cleanup
- remove / comment unused python vars
- replace mul_v3_fl(somevec, -1.0f); with negate_v3(somevec);
2011-11-16 16:38:37 +00:00
Campbell Barton
9d31c99c26 support for creating project files in utf8 paths (was defaulting to ascii and throwing errors) 2011-11-16 03:44:08 +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
Sergey Sharybin
6c3e4b77bf Fix #29245: BuilderBot can't build anymore
Buildbot is using different settings for blender and player,
enable fftw library in rules for player now.
2011-11-14 05:52:06 +00:00
Jens Verwiebe
ea38cb2e5e Scons_buildsystem: add WITH_BF_OCEANSIM = True to all configs 2011-11-13 15:10:54 +00:00
Campbell Barton
7d0b5920c6 rename cmake WITH_OCEANSIM --> WITH_MOD_OCEANSIM and tag CYCLES_CUDA_BINARIES_ARCH as advanced. 2011-11-13 14:16:43 +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
Campbell Barton
cd9b51c1bf add some missing headers to cmake, also add some files as comments since it seems they should be added but evidently work fine without. 2011-11-10 06:05:22 +00:00
Sergey Sharybin
ce15c0c943 One library from OpenEXR is needed for oiio. Hope buildbot is working fine now. 2011-11-09 19:25:16 +00:00
Sergey Sharybin
473ebc8827 Disable libmv for blenderplayer rules used by buildbot 2011-11-09 19:04:17 +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
Antony Riakiotakis
2a747e8b03 Fixes for MinGW cmake debug build:
* OpenEXR doesn't need debug suffix
* Fix libmv template issue when linking by removing duplicate libmv inclusion. I wonder how this never turned up in release builds as well.

Important: Since OpenImageIO went into trunk, OpenEXR, possibly along with other image libraries will need to be turned on too because OIIO depends on them.
2011-11-09 18:50:48 +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
Sergey Sharybin
1ff2018842 Enable Cycles for buildbot 2011-11-09 17:18:37 +00:00
Antony Riakiotakis
ee1569b933 No tabs in scons! Sorry for that.. 2011-11-09 14:00:24 +00:00