Commit Graph

114 Commits

Author SHA1 Message Date
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
1df04f1dcd SCons: command line options should be coma-separated when adding to options list 2012-02-14 15:44:17 +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
ba8d1b940f option to build without remesh modifier for cmake and scons 2011-12-31 03:34:44 +00:00
Sergey Sharybin
7bc43f3693 Added WITH_BF_LIBMV to command line options 2011-12-26 14:52:21 +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
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
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
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
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
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
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
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
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
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
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
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
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
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