Commit Graph

218 Commits

Author SHA1 Message Date
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