Merge lp:~smartboyhw/ubuntu/raring/blender/2.66a-3ubuntu1-merge into lp:ubuntu/raring/blender

Proposed by Howard Chan
Status: Merged
Merge reported by: Andrew Starr-Bochicchio
Merged at revision: not available
Proposed branch: lp:~smartboyhw/ubuntu/raring/blender/2.66a-3ubuntu1-merge
Merge into: lp:ubuntu/raring/blender
Diff against target: 1931795 lines (+1068359/-446984)
5214 files modified
.pc/0001-blender_thumbnailer.patch/release/bin/blender-thumbnailer.py (+0/-155)
.pc/0001-blender_thumbnailer.patch/source/creator/CMakeLists.txt (+0/-946)
.pc/0002-disable_tests.patch/source/CMakeLists.txt (+0/-36)
.pc/0003-install_in_usr_lib.patch/intern/ghost/intern/GHOST_SystemPathsX11.cpp (+0/-103)
.pc/0003-install_in_usr_lib.patch/source/creator/CMakeLists.txt (+0/-946)
.pc/0004-filter_docs_to_install.patch/source/creator/CMakeLists.txt (+0/-946)
.pc/0005-locales_directory_install.patch/source/blender/blenfont/intern/blf_lang.c (+0/-303)
.pc/0005-locales_directory_install.patch/source/blender/blenlib/BLI_path_util.h (+0/-192)
.pc/0005-locales_directory_install.patch/source/blender/blenlib/intern/path_util.c (+0/-1981)
.pc/0005-locales_directory_install.patch/source/creator/CMakeLists.txt (+0/-944)
.pc/0006-update_manpages.patch/source/creator/CMakeLists.txt (+0/-944)
.pc/0007-fix_FTBFS_with_ffmpeg_from_debian.patch/intern/ffmpeg/ffmpeg_compat.h (+0/-160)
.pc/0007-fix_FTBFS_with_ffmpeg_from_debian.patch/source/blender/blenkernel/intern/writeffmpeg.c (+0/-1466)
.pc/0008-do_not_use_version_number_in_the_system_path.patch/source/blender/blenlib/intern/path_util.c (+0/-1984)
.pc/0009-look_for_droid_ttf_with_fontconfig.patch/CMakeLists.txt (+0/-1742)
.pc/0009-look_for_droid_ttf_with_fontconfig.patch/build_files/cmake/macros.cmake (+0/-681)
.pc/0009-look_for_droid_ttf_with_fontconfig.patch/source/blender/blenfont/CMakeLists.txt (+0/-63)
.pc/0009-look_for_droid_ttf_with_fontconfig.patch/source/blender/blenfont/intern/blf_translation.c (+0/-192)
.pc/0009-look_for_droid_ttf_with_fontconfig.patch/source/blender/blenlib/BLI_fileops.h (+0/-99)
.pc/0009-look_for_droid_ttf_with_fontconfig.patch/source/blender/blenlib/intern/fileops.c (+0/-886)
.pc/0009-look_for_droid_ttf_with_fontconfig.patch/source/creator/CMakeLists.txt (+0/-947)
.pc/applied-patches (+0/-10)
.pc/fix-ftbfs-python-3.3.patch/CMakeLists.txt (+0/-1752)
CMakeLists.txt (+772/-333)
GNUmakefile (+95/-25)
SConstruct (+286/-88)
build_files/build_environment/install_deps.sh (+2099/-0)
build_files/build_environment/prepare_release_env.sh (+1555/-0)
build_files/buildbot/config/user-config-cuda-glibc211-i686.py (+5/-0)
build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py (+5/-0)
build_files/buildbot/config/user-config-glibc211-i686.py (+164/-0)
build_files/buildbot/config/user-config-glibc211-x86_64.py (+164/-0)
build_files/buildbot/config/user-config-i686.py (+0/-121)
build_files/buildbot/config/user-config-player-glibc211-i686.py (+121/-0)
build_files/buildbot/config/user-config-player-glibc211-x86_64.py (+121/-0)
build_files/buildbot/config/user-config-player-i686.py (+0/-99)
build_files/buildbot/config/user-config-player-x86_64.py (+0/-99)
build_files/buildbot/config/user-config-x86_64.py (+0/-121)
build_files/buildbot/master.cfg (+45/-24)
build_files/buildbot/master_unpack.py (+3/-2)
build_files/buildbot/slave_compile.py (+37/-12)
build_files/buildbot/slave_pack.py (+26/-10)
build_files/buildbot/slave_rsync.py (+43/-0)
build_files/cmake/Modules/FindFontconfig.cmake (+0/-49)
build_files/cmake/Modules/FindIcuLinux.cmake (+146/-0)
build_files/cmake/Modules/FindOpenCOLLADA.cmake (+2/-0)
build_files/cmake/Modules/FindOpenColorIO.cmake (+86/-0)
build_files/cmake/Modules/FindOpenImageIO.cmake (+1/-0)
build_files/cmake/Modules/FindPythonLibsUnix.cmake (+61/-8)
build_files/cmake/clang_array_check.py (+353/-0)
build_files/cmake/cmake_consistency_check.py (+5/-5)
build_files/cmake/cmake_consistency_check_config.py (+21/-2)
build_files/cmake/cmake_netbeans_project.py (+6/-2)
build_files/cmake/cmake_qtcreator_project.py (+11/-2)
build_files/cmake/cmake_static_check_clang_array.py (+80/-0)
build_files/cmake/cmake_static_check_cppcheck.py (+16/-7)
build_files/cmake/cmake_static_check_smatch.py (+78/-0)
build_files/cmake/cmake_static_check_sparse.py (+12/-7)
build_files/cmake/cmake_static_check_splint.py (+12/-7)
build_files/cmake/config/blender_headless.cmake (+11/-11)
build_files/cmake/config/blender_lite.cmake (+43/-40)
build_files/cmake/config/bpy_module.cmake (+16/-16)
build_files/cmake/example_scripts/make_quicky.py (+1/-1)
build_files/cmake/macros.cmake (+143/-31)
build_files/cmake/packaging.cmake (+2/-2)
build_files/cmake/project_info.py (+19/-6)
build_files/cmake/project_source_info.py (+22/-6)
build_files/package_spec/rpm/blender.spec.in (+28/-10)
build_files/scons/config/Modules/FindPython.py (+10/-2)
build_files/scons/config/darwin-config.py (+49/-19)
build_files/scons/config/freebsd7-config.py (+1/-6)
build_files/scons/config/freebsd8-config.py (+1/-6)
build_files/scons/config/freebsd9-config.py (+1/-6)
build_files/scons/config/linux-config.py (+35/-59)
build_files/scons/config/linuxcross-config.py (+1/-6)
build_files/scons/config/win32-mingw-config.py (+21/-14)
build_files/scons/config/win32-vc-config.py (+38/-14)
build_files/scons/config/win64-mingw-config.py (+24/-21)
build_files/scons/config/win64-vc-config.py (+41/-17)
build_files/scons/tools/Blender.py (+116/-21)
build_files/scons/tools/btools.py (+100/-33)
debian/blender.install (+2/-3)
debian/blender.links (+1/-0)
debian/changelog (+114/-39)
debian/compat (+1/-1)
debian/control (+22/-10)
debian/copyright (+4/-3)
debian/docs (+0/-1)
debian/gbp.conf (+1/-1)
debian/patches/0001-blender_thumbnailer.patch (+24/-9)
debian/patches/0002-disable_tests.patch (+2/-2)
debian/patches/0003-install_in_usr_lib.patch (+0/-39)
debian/patches/0003-install_in_usr_share.patch (+25/-0)
debian/patches/0004-filter_docs_to_install.patch (+5/-5)
debian/patches/0005-locales_directory_install.patch (+56/-26)
debian/patches/0006-update_manpages.patch (+9/-11)
debian/patches/0007-do_not_use_version_number_in_system_path.patch (+44/-0)
debian/patches/0007-fix_FTBFS_with_ffmpeg_from_debian.patch (+0/-106)
debian/patches/0008-do_not_use_version_number_in_the_system_path.patch (+0/-32)
debian/patches/0008-look_for_droid_ttf_with_fontconfig.patch (+261/-0)
debian/patches/0009-fix_illegal_hardware_instruction_due_to_SSE2.patch (+79/-0)
debian/patches/0009-look_for_droid_ttf_with_fontconfig.patch (+0/-263)
debian/patches/0010-fix_format-security_issue.patch (+77/-0)
debian/patches/fix-ftbfs-python-3.3.patch (+0/-35)
debian/patches/series (+5/-5)
debian/rules (+13/-6)
doc/blender_file_format/BlendFileDnaExporter_25.py (+1/-1)
doc/blender_file_format/BlendFileReader.py (+1/-1)
doc/build_systems/scons-dev.txt (+1/-1)
doc/build_systems/scons.txt (+3/-3)
doc/guides/interface_API.txt (+9/-9)
doc/manpage/blender.1 (+49/-29)
doc/manpage/blenderplayer.1 (+0/-131)
doc/python_api/examples/bmesh.ops.1.py (+108/-0)
doc/python_api/examples/bpy.ops.1.py (+13/-18)
doc/python_api/examples/bpy.ops.2.py (+22/-0)
doc/python_api/examples/bpy.ops.3.py (+17/-0)
doc/python_api/examples/bpy.ops.py (+21/-1)
doc/python_api/examples/bpy.props.5.py (+89/-0)
doc/python_api/examples/bpy.types.AddonPreferences.1.py (+72/-0)
doc/python_api/examples/bpy.types.Mesh.py (+2/-3)
doc/python_api/examples/bpy.types.Object.py (+27/-0)
doc/python_api/examples/bpy.types.Operator.4.py (+2/-2)
doc/python_api/examples/bpy.types.Operator.5.py (+3/-1)
doc/python_api/examples/bpy.types.Panel.1.py (+1/-1)
doc/python_api/examples/bpy.types.UIList.py (+90/-0)
doc/python_api/rst/bge.constraints.rst (+8/-0)
doc/python_api/rst/bge.events.rst (+2/-2)
doc/python_api/rst/bge.logic.rst (+460/-146)
doc/python_api/rst/bge.render.rst (+28/-26)
doc/python_api/rst/bge.texture.rst (+22/-1)
doc/python_api/rst/bge.types.rst (+32/-5229)
doc/python_api/rst/bge_types/bge.types.BL_ActionActuator.rst (+78/-0)
doc/python_api/rst/bge_types/bge.types.BL_ArmatureActuator.rst (+61/-0)
doc/python_api/rst/bge_types/bge.types.BL_ArmatureBone.rst (+105/-0)
doc/python_api/rst/bge_types/bge.types.BL_ArmatureChannel.rst (+278/-0)
doc/python_api/rst/bge_types/bge.types.BL_ArmatureConstraint.rst (+129/-0)
doc/python_api/rst/bge_types/bge.types.BL_ArmatureObject.rst (+34/-0)
doc/python_api/rst/bge_types/bge.types.BL_Shader.rst (+220/-0)
doc/python_api/rst/bge_types/bge.types.BL_ShapeActionActuator.rst (+72/-0)
doc/python_api/rst/bge_types/bge.types.CListValue.rst (+72/-0)
doc/python_api/rst/bge_types/bge.types.CPropValue.rst (+11/-0)
doc/python_api/rst/bge_types/bge.types.CValue.rst (+17/-0)
doc/python_api/rst/bge_types/bge.types.KX_ArmatureSensor.rst (+36/-0)
doc/python_api/rst/bge_types/bge.types.KX_BlenderMaterial.rst (+77/-0)
doc/python_api/rst/bge_types/bge.types.KX_Camera.rst (+284/-0)
doc/python_api/rst/bge_types/bge.types.KX_CameraActuator.rst (+47/-0)
doc/python_api/rst/bge_types/bge.types.KX_CharacterWrapper.rst (+45/-0)
doc/python_api/rst/bge_types/bge.types.KX_ConstraintActuator.rst (+78/-0)
doc/python_api/rst/bge_types/bge.types.KX_ConstraintWrapper.rst (+18/-0)
doc/python_api/rst/bge_types/bge.types.KX_FontObject.rst (+12/-0)
doc/python_api/rst/bge_types/bge.types.KX_GameActuator.rst (+23/-0)
doc/python_api/rst/bge_types/bge.types.KX_GameObject.rst (+839/-0)
doc/python_api/rst/bge_types/bge.types.KX_IpoActuator.rst (+65/-0)
doc/python_api/rst/bge_types/bge.types.KX_LibLoadStatus.rst (+45/-0)
doc/python_api/rst/bge_types/bge.types.KX_LightObject.rst (+90/-0)
doc/python_api/rst/bge_types/bge.types.KX_MeshProxy.rst (+134/-0)
doc/python_api/rst/bge_types/bge.types.KX_MouseFocusSensor.rst (+66/-0)
doc/python_api/rst/bge_types/bge.types.KX_NavMeshObject.rst (+47/-0)
doc/python_api/rst/bge_types/bge.types.KX_NearSensor.rst (+23/-0)
doc/python_api/rst/bge_types/bge.types.KX_NetworkMessageActuator.rst (+35/-0)
doc/python_api/rst/bge_types/bge.types.KX_NetworkMessageSensor.rst (+38/-0)
doc/python_api/rst/bge_types/bge.types.KX_ObjectActuator.rst (+129/-0)
doc/python_api/rst/bge_types/bge.types.KX_ParentActuator.rst (+38/-0)
doc/python_api/rst/bge_types/bge.types.KX_PolyProxy.rst (+139/-0)
doc/python_api/rst/bge_types/bge.types.KX_PolygonMaterial.rst (+250/-0)
doc/python_api/rst/bge_types/bge.types.KX_RadarSensor.rst (+44/-0)
doc/python_api/rst/bge_types/bge.types.KX_RaySensor.rst (+72/-0)
doc/python_api/rst/bge_types/bge.types.KX_SCA_AddObjectActuator.rst (+55/-0)
doc/python_api/rst/bge_types/bge.types.KX_SCA_DynamicActuator.rst (+29/-0)
doc/python_api/rst/bge_types/bge.types.KX_SCA_EndObjectActuator.rst (+13/-0)
doc/python_api/rst/bge_types/bge.types.KX_SCA_ReplaceMeshActuator.rst (+89/-0)
doc/python_api/rst/bge_types/bge.types.KX_Scene.rst (+172/-0)
doc/python_api/rst/bge_types/bge.types.KX_SceneActuator.rst (+49/-0)
doc/python_api/rst/bge_types/bge.types.KX_SoundActuator.rst (+115/-0)
doc/python_api/rst/bge_types/bge.types.KX_StateActuator.rst (+29/-0)
doc/python_api/rst/bge_types/bge.types.KX_SteeringActuator.rst (+71/-0)
doc/python_api/rst/bge_types/bge.types.KX_TouchSensor.rst (+41/-0)
doc/python_api/rst/bge_types/bge.types.KX_TrackToActuator.rst (+39/-0)
doc/python_api/rst/bge_types/bge.types.KX_VehicleWrapper.rst (+161/-0)
doc/python_api/rst/bge_types/bge.types.KX_VertexProxy.rst (+209/-0)
doc/python_api/rst/bge_types/bge.types.KX_VisibilityActuator.rst (+29/-0)
doc/python_api/rst/bge_types/bge.types.PyObjectPlus.rst (+21/-0)
doc/python_api/rst/bge_types/bge.types.SCA_2DFilterActuator.rst (+49/-0)
doc/python_api/rst/bge_types/bge.types.SCA_ANDController.rst (+13/-0)
doc/python_api/rst/bge_types/bge.types.SCA_ActuatorSensor.rst (+19/-0)
doc/python_api/rst/bge_types/bge.types.SCA_AlwaysSensor.rst (+11/-0)
doc/python_api/rst/bge_types/bge.types.SCA_DelaySensor.rst (+39/-0)
doc/python_api/rst/bge_types/bge.types.SCA_IActuator.rst (+11/-0)
doc/python_api/rst/bge_types/bge.types.SCA_IController.rst (+55/-0)
doc/python_api/rst/bge_types/bge.types.SCA_ILogicBrick.rst (+29/-0)
doc/python_api/rst/bge_types/bge.types.SCA_IObject.rst (+11/-0)
doc/python_api/rst/bge_types/bge.types.SCA_ISensor.rst (+95/-0)
doc/python_api/rst/bge_types/bge.types.SCA_JoystickSensor.rst (+133/-0)
doc/python_api/rst/bge_types/bge.types.SCA_KeyboardSensor.rst (+64/-0)
doc/python_api/rst/bge_types/bge.types.SCA_MouseSensor.rst (+39/-0)
doc/python_api/rst/bge_types/bge.types.SCA_NANDController.rst (+13/-0)
doc/python_api/rst/bge_types/bge.types.SCA_NORController.rst (+13/-0)
doc/python_api/rst/bge_types/bge.types.SCA_ORController.rst (+13/-0)
doc/python_api/rst/bge_types/bge.types.SCA_PropertyActuator.rst (+29/-0)
doc/python_api/rst/bge_types/bge.types.SCA_PropertySensor.rst (+41/-0)
doc/python_api/rst/bge_types/bge.types.SCA_PythonController.rst (+48/-0)
doc/python_api/rst/bge_types/bge.types.SCA_PythonJoystick.rst (+75/-0)
doc/python_api/rst/bge_types/bge.types.SCA_PythonKeyboard.rst (+37/-0)
doc/python_api/rst/bge_types/bge.types.SCA_PythonMouse.rst (+35/-0)
doc/python_api/rst/bge_types/bge.types.SCA_RandomActuator.rst (+127/-0)
doc/python_api/rst/bge_types/bge.types.SCA_RandomSensor.rst (+23/-0)
doc/python_api/rst/bge_types/bge.types.SCA_XNORController.rst (+13/-0)
doc/python_api/rst/bge_types/bge.types.SCA_XORController.rst (+13/-0)
doc/python_api/rst/bgl.rst (+367/-124)
doc/python_api/rst/change_log.rst (+1929/-0)
doc/python_api/rst/gpu.rst (+7/-1)
doc/python_api/rst/include__bmesh.rst (+12/-4)
doc/python_api/rst/info_api_reference.rst (+305/-0)
doc/python_api/rst/info_best_practice.rst (+89/-19)
doc/python_api/rst/info_gotcha.rst (+67/-21)
doc/python_api/rst/info_overview.rst (+3/-1)
doc/python_api/rst/info_quickstart.rst (+20/-2)
doc/python_api/rst/info_tips_and_tricks.rst (+13/-3)
doc/python_api/rst/info_tutorial_addon.rst (+641/-0)
doc/python_api/rst_from_bmesh_opdefines.py (+380/-0)
doc/python_api/sphinx_changelog_gen.py (+8/-5)
doc/python_api/sphinx_doc_gen.py (+134/-76)
doc/python_api/sphinx_doc_gen.sh (+7/-3)
doc/python_api/sphinx_doc_gen_monkeypatch.py (+47/-0)
doc/sculpt.org (+199/-0)
extern/CMakeLists.txt (+11/-7)
extern/Eigen3/Eigen/Cholesky (+3/-4)
extern/Eigen3/Eigen/CholmodSupport (+45/-0)
extern/Eigen3/Eigen/Core (+34/-28)
extern/Eigen3/Eigen/Eigen2Support (+23/-23)
extern/Eigen3/Eigen/Eigenvalues (+6/-4)
extern/Eigen3/Eigen/Geometry (+0/-4)
extern/Eigen3/Eigen/Householder (+0/-4)
extern/Eigen3/Eigen/IterativeLinearSolvers (+40/-0)
extern/Eigen3/Eigen/Jacobi (+0/-4)
extern/Eigen3/Eigen/LU (+3/-4)
extern/Eigen3/Eigen/LeastSquares (+0/-4)
extern/Eigen3/Eigen/OrderingMethods (+23/-0)
extern/Eigen3/Eigen/PaStiXSupport (+46/-0)
extern/Eigen3/Eigen/PardisoSupport (+30/-0)
extern/Eigen3/Eigen/QR (+4/-4)
extern/Eigen3/Eigen/SVD (+5/-6)
extern/Eigen3/Eigen/Sparse (+11/-57)
extern/Eigen3/Eigen/SparseCholesky (+30/-0)
extern/Eigen3/Eigen/SparseCore (+66/-0)
extern/Eigen3/Eigen/StdDeque (+3/-18)
extern/Eigen3/Eigen/StdList (+3/-18)
extern/Eigen3/Eigen/StdVector (+3/-18)
extern/Eigen3/Eigen/SuperLUSupport (+59/-0)
extern/Eigen3/Eigen/UmfPackSupport (+36/-0)
extern/Eigen3/Eigen/src/Cholesky/LDLT.h (+145/-37)
extern/Eigen3/Eigen/src/Cholesky/LLT.h (+143/-41)
extern/Eigen3/Eigen/src/Cholesky/LLT_MKL.h (+102/-0)
extern/Eigen3/Eigen/src/CholmodSupport/CholmodSupport.h (+579/-0)
extern/Eigen3/Eigen/src/Core/Array.h (+7/-21)
extern/Eigen3/Eigen/src/Core/ArrayBase.h (+10/-21)
extern/Eigen3/Eigen/src/Core/ArrayWrapper.h (+27/-26)
extern/Eigen3/Eigen/src/Core/Assign.h (+61/-71)
extern/Eigen3/Eigen/src/Core/Assign_MKL.h (+224/-0)
extern/Eigen3/Eigen/src/Core/BandMatrix.h (+7/-19)
extern/Eigen3/Eigen/src/Core/Block.h (+29/-21)
extern/Eigen3/Eigen/src/Core/BooleanRedux.h (+13/-24)
extern/Eigen3/Eigen/src/Core/CommaInitializer.h (+7/-18)
extern/Eigen3/Eigen/src/Core/CwiseBinaryOp.h (+9/-20)
extern/Eigen3/Eigen/src/Core/CwiseNullaryOp.h (+31/-18)
extern/Eigen3/Eigen/src/Core/CwiseUnaryOp.h (+8/-19)
extern/Eigen3/Eigen/src/Core/CwiseUnaryView.h (+7/-20)
extern/Eigen3/Eigen/src/Core/DenseBase.h (+11/-21)
extern/Eigen3/Eigen/src/Core/DenseCoeffsBase.h (+11/-22)
extern/Eigen3/Eigen/src/Core/DenseStorage.h (+23/-24)
extern/Eigen3/Eigen/src/Core/Diagonal.h (+35/-26)
extern/Eigen3/Eigen/src/Core/DiagonalMatrix.h (+10/-21)
extern/Eigen3/Eigen/src/Core/DiagonalProduct.h (+8/-20)
extern/Eigen3/Eigen/src/Core/Dot.h (+11/-22)
extern/Eigen3/Eigen/src/Core/EigenBase.h (+6/-18)
extern/Eigen3/Eigen/src/Core/Flagged.h (+7/-18)
extern/Eigen3/Eigen/src/Core/ForceAlignedAccess.h (+7/-18)
extern/Eigen3/Eigen/src/Core/Functors.h (+81/-34)
extern/Eigen3/Eigen/src/Core/Fuzzy.h (+9/-20)
extern/Eigen3/Eigen/src/Core/GeneralProduct.h (+613/-0)
extern/Eigen3/Eigen/src/Core/GenericPacketMath.h (+8/-19)
extern/Eigen3/Eigen/src/Core/GlobalFunctions.h (+28/-20)
extern/Eigen3/Eigen/src/Core/IO.h (+8/-19)
extern/Eigen3/Eigen/src/Core/Map.h (+8/-21)
extern/Eigen3/Eigen/src/Core/MapBase.h (+7/-20)
extern/Eigen3/Eigen/src/Core/MathFunctions.h (+20/-21)
extern/Eigen3/Eigen/src/Core/Matrix.h (+8/-42)
extern/Eigen3/Eigen/src/Core/MatrixBase.h (+12/-21)
extern/Eigen3/Eigen/src/Core/NestByValue.h (+7/-18)
extern/Eigen3/Eigen/src/Core/NoAlias.h (+7/-18)
extern/Eigen3/Eigen/src/Core/NumTraits.h (+14/-27)
extern/Eigen3/Eigen/src/Core/PermutationMatrix.h (+11/-20)
extern/Eigen3/Eigen/src/Core/PlainObjectBase.h (+78/-48)
extern/Eigen3/Eigen/src/Core/Product.h (+89/-616)
extern/Eigen3/Eigen/src/Core/ProductBase.h (+24/-34)
extern/Eigen3/Eigen/src/Core/Random.h (+7/-18)
extern/Eigen3/Eigen/src/Core/Redux.h (+33/-31)
extern/Eigen3/Eigen/src/Core/Replicate.h (+19/-21)
extern/Eigen3/Eigen/src/Core/ReturnByValue.h (+7/-18)
extern/Eigen3/Eigen/src/Core/Reverse.h (+13/-19)
extern/Eigen3/Eigen/src/Core/Select.h (+25/-21)
extern/Eigen3/Eigen/src/Core/SelfAdjointView.h (+15/-26)
extern/Eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h (+17/-18)
extern/Eigen3/Eigen/src/Core/SolveTriangular.h (+22/-25)
extern/Eigen3/Eigen/src/Core/StableNorm.h (+10/-21)
extern/Eigen3/Eigen/src/Core/Stride.h (+7/-18)
extern/Eigen3/Eigen/src/Core/Swap.h (+18/-18)
extern/Eigen3/Eigen/src/Core/Transpose.h (+10/-21)
extern/Eigen3/Eigen/src/Core/Transpositions.h (+8/-19)
extern/Eigen3/Eigen/src/Core/TriangularMatrix.h (+23/-34)
extern/Eigen3/Eigen/src/Core/VectorBlock.h (+6/-18)
extern/Eigen3/Eigen/src/Core/VectorwiseOp.h (+75/-34)
extern/Eigen3/Eigen/src/Core/Visitor.h (+10/-21)
extern/Eigen3/Eigen/src/Core/arch/AltiVec/Complex.h (+8/-19)
extern/Eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h (+9/-20)
extern/Eigen3/Eigen/src/Core/arch/Default/Settings.h (+3/-18)
extern/Eigen3/Eigen/src/Core/arch/NEON/Complex.h (+9/-20)
extern/Eigen3/Eigen/src/Core/arch/NEON/PacketMath.h (+44/-40)
extern/Eigen3/Eigen/src/Core/arch/SSE/Complex.h (+10/-21)
extern/Eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h (+9/-20)
extern/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h (+25/-27)
extern/Eigen3/Eigen/src/Core/products/CoeffBasedProduct.h (+26/-37)
extern/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h (+158/-124)
extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h (+16/-27)
extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h (+15/-26)
extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_MKL.h (+146/-0)
extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_MKL.h (+118/-0)
extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector.h (+15/-26)
extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector_MKL.h (+131/-0)
extern/Eigen3/Eigen/src/Core/products/Parallelizer.h (+26/-21)
extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h (+9/-20)
extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_MKL.h (+295/-0)
extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h (+23/-27)
extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_MKL.h (+114/-0)
extern/Eigen3/Eigen/src/Core/products/SelfadjointProduct.h (+10/-21)
extern/Eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h (+9/-20)
extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h (+56/-56)
extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_MKL.h (+309/-0)
extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector.h (+57/-44)
extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector_MKL.h (+247/-0)
extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h (+56/-58)
extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix_MKL.h (+155/-0)
extern/Eigen3/Eigen/src/Core/products/TriangularSolverVector.h (+7/-18)
extern/Eigen3/Eigen/src/Core/util/BlasUtil.h (+20/-27)
extern/Eigen3/Eigen/src/Core/util/Constants.h (+36/-44)
extern/Eigen3/Eigen/src/Core/util/DisableStupidWarnings.h (+1/-3)
extern/Eigen3/Eigen/src/Core/util/ForwardDeclarations.h (+9/-18)
extern/Eigen3/Eigen/src/Core/util/MKL_support.h (+109/-0)
extern/Eigen3/Eigen/src/Core/util/Macros.h (+34/-42)
extern/Eigen3/Eigen/src/Core/util/Memory.h (+106/-65)
extern/Eigen3/Eigen/src/Core/util/Meta.h (+22/-20)
extern/Eigen3/Eigen/src/Core/util/NonMPL2.h (+3/-0)
extern/Eigen3/Eigen/src/Core/util/StaticAssert.h (+26/-19)
extern/Eigen3/Eigen/src/Core/util/XprHelper.h (+25/-38)
extern/Eigen3/Eigen/src/Eigen2Support/Block.h (+7/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Cwise.h (+7/-18)
extern/Eigen3/Eigen/src/Eigen2Support/CwiseOperators.h (+7/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h (+11/-22)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/All.h (+1/-1)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h (+6/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h (+7/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h (+6/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h (+16/-27)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h (+6/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h (+10/-21)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h (+6/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h (+6/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h (+6/-18)
extern/Eigen3/Eigen/src/Eigen2Support/LU.h (+6/-19)
extern/Eigen3/Eigen/src/Eigen2Support/Lazy.h (+7/-18)
extern/Eigen3/Eigen/src/Eigen2Support/LeastSquares.h (+6/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Macros.h (+3/-18)
extern/Eigen3/Eigen/src/Eigen2Support/MathFunctions.h (+7/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Memory.h (+6/-19)
extern/Eigen3/Eigen/src/Eigen2Support/Meta.h (+7/-18)
extern/Eigen3/Eigen/src/Eigen2Support/Minor.h (+7/-18)
extern/Eigen3/Eigen/src/Eigen2Support/QR.h (+6/-18)
extern/Eigen3/Eigen/src/Eigen2Support/SVD.h (+8/-19)
extern/Eigen3/Eigen/src/Eigen2Support/TriangularSolver.h (+7/-18)
extern/Eigen3/Eigen/src/Eigen2Support/VectorBlock.h (+7/-18)
extern/Eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h (+6/-19)
extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur.h (+10/-62)
extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur_MKL.h (+94/-0)
extern/Eigen3/Eigen/src/Eigenvalues/EigenSolver.h (+16/-25)
extern/Eigen3/Eigen/src/Eigenvalues/EigenvaluesCommon.h (+0/-31)
extern/Eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h (+7/-19)
extern/Eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h (+8/-19)
extern/Eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h (+7/-18)
extern/Eigen3/Eigen/src/Eigenvalues/RealSchur.h (+43/-53)
extern/Eigen3/Eigen/src/Eigenvalues/RealSchur_MKL.h (+83/-0)
extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h (+304/-35)
extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_MKL.h (+92/-0)
extern/Eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h (+11/-22)
extern/Eigen3/Eigen/src/Geometry/AlignedBox.h (+45/-22)
extern/Eigen3/Eigen/src/Geometry/AngleAxis.h (+8/-19)
extern/Eigen3/Eigen/src/Geometry/EulerAngles.h (+6/-18)
extern/Eigen3/Eigen/src/Geometry/Homogeneous.h (+14/-25)
extern/Eigen3/Eigen/src/Geometry/Hyperplane.h (+8/-19)
extern/Eigen3/Eigen/src/Geometry/OrthoMethods.h (+14/-25)
extern/Eigen3/Eigen/src/Geometry/ParametrizedLine.h (+47/-20)
extern/Eigen3/Eigen/src/Geometry/Quaternion.h (+65/-38)
extern/Eigen3/Eigen/src/Geometry/Rotation2D.h (+9/-20)
extern/Eigen3/Eigen/src/Geometry/RotationBase.h (+13/-24)
extern/Eigen3/Eigen/src/Geometry/Scaling.h (+12/-28)
extern/Eigen3/Eigen/src/Geometry/Transform.h (+97/-53)
extern/Eigen3/Eigen/src/Geometry/Translation.h (+11/-20)
extern/Eigen3/Eigen/src/Geometry/Umeyama.h (+7/-18)
extern/Eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h (+12/-23)
extern/Eigen3/Eigen/src/Householder/BlockHouseholder.h (+8/-19)
extern/Eigen3/Eigen/src/Householder/Householder.h (+54/-19)
extern/Eigen3/Eigen/src/Householder/HouseholderSequence.h (+44/-32)
extern/Eigen3/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h (+149/-0)
extern/Eigen3/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h (+254/-0)
extern/Eigen3/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h (+251/-0)
extern/Eigen3/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h (+466/-0)
extern/Eigen3/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h (+254/-0)
extern/Eigen3/Eigen/src/Jacobi/Jacobi.h (+11/-21)
extern/Eigen3/Eigen/src/LU/Determinant.h (+7/-18)
extern/Eigen3/Eigen/src/LU/FullPivLU.h (+9/-27)
extern/Eigen3/Eigen/src/LU/Inverse.h (+8/-19)
extern/Eigen3/Eigen/src/LU/PartialPivLU.h (+7/-18)
extern/Eigen3/Eigen/src/LU/PartialPivLU_MKL.h (+85/-0)
extern/Eigen3/Eigen/src/LU/arch/Inverse_SSE.h (+9/-20)
extern/Eigen3/Eigen/src/OrderingMethods/Amd.h (+439/-0)
extern/Eigen3/Eigen/src/PaStiXSupport/PaStiXSupport.h (+742/-0)
extern/Eigen3/Eigen/src/PardisoSupport/PardisoSupport.h (+614/-0)
extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR.h (+6/-18)
extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR_MKL.h (+98/-0)
extern/Eigen3/Eigen/src/QR/FullPivHouseholderQR.h (+85/-37)
extern/Eigen3/Eigen/src/QR/HouseholderQR.h (+6/-18)
extern/Eigen3/Eigen/src/QR/HouseholderQR_MKL.h (+69/-0)
extern/Eigen3/Eigen/src/SVD/JacobiSVD.h (+231/-80)
extern/Eigen3/Eigen/src/SVD/JacobiSVD_MKL.h (+92/-0)
extern/Eigen3/Eigen/src/SVD/UpperBidiagonalization.h (+7/-18)
extern/Eigen3/Eigen/src/Sparse/AmbiVector.h (+0/-379)
extern/Eigen3/Eigen/src/Sparse/CompressedStorage.h (+0/-239)
extern/Eigen3/Eigen/src/Sparse/CoreIterators.h (+0/-71)
extern/Eigen3/Eigen/src/Sparse/DynamicSparseMatrix.h (+0/-346)
extern/Eigen3/Eigen/src/Sparse/MappedSparseMatrix.h (+0/-165)
extern/Eigen3/Eigen/src/Sparse/SparseBlock.h (+0/-465)
extern/Eigen3/Eigen/src/Sparse/SparseCwiseBinaryOp.h (+0/-375)
extern/Eigen3/Eigen/src/Sparse/SparseCwiseUnaryOp.h (+0/-146)
extern/Eigen3/Eigen/src/Sparse/SparseDenseProduct.h (+0/-231)
extern/Eigen3/Eigen/src/Sparse/SparseDiagonalProduct.h (+0/-195)
extern/Eigen3/Eigen/src/Sparse/SparseDot.h (+0/-97)
extern/Eigen3/Eigen/src/Sparse/SparseFuzzy.h (+0/-41)
extern/Eigen3/Eigen/src/Sparse/SparseMatrix.h (+0/-651)
extern/Eigen3/Eigen/src/Sparse/SparseMatrixBase.h (+0/-706)
extern/Eigen3/Eigen/src/Sparse/SparseProduct.h (+0/-141)
extern/Eigen3/Eigen/src/Sparse/SparseRedux.h (+0/-56)
extern/Eigen3/Eigen/src/Sparse/SparseSelfAdjointView.h (+0/-454)
extern/Eigen3/Eigen/src/Sparse/SparseSparseProduct.h (+0/-401)
extern/Eigen3/Eigen/src/Sparse/SparseTranspose.h (+0/-68)
extern/Eigen3/Eigen/src/Sparse/SparseTriangularView.h (+0/-100)
extern/Eigen3/Eigen/src/Sparse/SparseUtil.h (+0/-130)
extern/Eigen3/Eigen/src/Sparse/SparseVector.h (+0/-431)
extern/Eigen3/Eigen/src/Sparse/SparseView.h (+0/-109)
extern/Eigen3/Eigen/src/Sparse/TriangularSolver.h (+0/-339)
extern/Eigen3/Eigen/src/SparseCholesky/SimplicialCholesky.h (+873/-0)
extern/Eigen3/Eigen/src/SparseCore/AmbiVector.h (+371/-0)
extern/Eigen3/Eigen/src/SparseCore/CompressedStorage.h (+233/-0)
extern/Eigen3/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h (+245/-0)
extern/Eigen3/Eigen/src/SparseCore/CoreIterators.h (+61/-0)
extern/Eigen3/Eigen/src/SparseCore/MappedSparseMatrix.h (+179/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseBlock.h (+387/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseCwiseBinaryOp.h (+324/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseCwiseUnaryOp.h (+163/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseDenseProduct.h (+300/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseDiagonalProduct.h (+184/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseDot.h (+94/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseFuzzy.h (+26/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseMatrix.h (+1116/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseMatrixBase.h (+458/-0)
extern/Eigen3/Eigen/src/SparseCore/SparsePermutation.h (+148/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseProduct.h (+186/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseRedux.h (+45/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseSelfAdjointView.h (+480/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseSparseProductWithPruning.h (+149/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseTranspose.h (+61/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseTriangularView.h (+164/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseUtil.h (+173/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseVector.h (+398/-0)
extern/Eigen3/Eigen/src/SparseCore/SparseView.h (+98/-0)
extern/Eigen3/Eigen/src/SparseCore/TriangularSolver.h (+334/-0)
extern/Eigen3/Eigen/src/StlSupport/StdDeque.h (+3/-18)
extern/Eigen3/Eigen/src/StlSupport/StdList.h (+3/-18)
extern/Eigen3/Eigen/src/StlSupport/StdVector.h (+3/-18)
extern/Eigen3/Eigen/src/StlSupport/details.h (+3/-18)
extern/Eigen3/Eigen/src/SuperLUSupport/SuperLUSupport.h (+1025/-0)
extern/Eigen3/Eigen/src/UmfPackSupport/UmfPackSupport.h (+431/-0)
extern/Eigen3/Eigen/src/misc/Image.h (+7/-18)
extern/Eigen3/Eigen/src/misc/Kernel.h (+7/-18)
extern/Eigen3/Eigen/src/misc/Solve.h (+8/-19)
extern/Eigen3/Eigen/src/misc/SparseSolve.h (+111/-0)
extern/Eigen3/Eigen/src/misc/blas.h (+658/-0)
extern/Eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h (+56/-0)
extern/Eigen3/Eigen/src/plugins/BlockMethods.h (+3/-18)
extern/Eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h (+3/-18)
extern/Eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h (+3/-18)
extern/Eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h (+24/-18)
extern/Eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h (+3/-18)
extern/SConscript (+5/-1)
extern/bullet2/CMakeLists.txt (+49/-37)
extern/bullet2/patches/convex_hull.patch (+127/-0)
extern/bullet2/patches/ghost_character.patch (+28/-0)
extern/bullet2/patches/ghost_softbody.patch (+42/-0)
extern/bullet2/patches/make_id.patch (+42/-0)
extern/bullet2/patches/pvs_warning_fixes.patch (+31/-0)
extern/bullet2/readme.txt (+16/-12)
extern/bullet2/src/Bullet-C-Api.h (+10/-0)
extern/bullet2/src/BulletCollision/BroadphaseCollision/btAxisSweep3.h (+4/-4)
extern/bullet2/src/BulletCollision/BroadphaseCollision/btBroadphaseInterface.h (+3/-3)
extern/bullet2/src/BulletCollision/BroadphaseCollision/btBroadphaseProxy.h (+4/-4)
extern/bullet2/src/BulletCollision/BroadphaseCollision/btCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/BroadphaseCollision/btDbvt.h (+2/-1)
extern/bullet2/src/BulletCollision/BroadphaseCollision/btDispatcher.h (+9/-7)
extern/bullet2/src/BulletCollision/BroadphaseCollision/btMultiSapBroadphase.cpp (+1/-1)
extern/bullet2/src/BulletCollision/BroadphaseCollision/btOverlappingPairCache.h (+3/-3)
extern/bullet2/src/BulletCollision/BroadphaseCollision/btQuantizedBvh.h (+6/-6)
extern/bullet2/src/BulletCollision/BroadphaseCollision/btSimpleBroadphase.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/SphereTriangleDetector.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btBoxBoxCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btBoxBoxDetector.h (+2/-2)
extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionConfiguration.h (+1/-0)
extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionCreateFunc.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.cpp (+11/-4)
extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionDispatcher.h (+16/-5)
extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionObject.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.cpp (+274/-201)
extern/bullet2/src/BulletCollision/CollisionDispatch/btCollisionWorld.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btCompoundCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.cpp (+3/-12)
extern/bullet2/src/BulletCollision/CollisionDispatch/btConvexConcaveCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp (+224/-65)
extern/bullet2/src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.cpp (+26/-8)
extern/bullet2/src/BulletCollision/CollisionDispatch/btConvexPlaneCollisionAlgorithm.h (+4/-4)
extern/bullet2/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.cpp (+11/-0)
extern/bullet2/src/BulletCollision/CollisionDispatch/btDefaultCollisionConfiguration.h (+2/-0)
extern/bullet2/src/BulletCollision/CollisionDispatch/btEmptyCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp (+80/-10)
extern/bullet2/src/BulletCollision/CollisionDispatch/btManifoldResult.cpp (+2/-2)
extern/bullet2/src/BulletCollision/CollisionDispatch/btManifoldResult.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.cpp (+13/-6)
extern/bullet2/src/BulletCollision/CollisionDispatch/btSimulationIslandManager.h (+4/-4)
extern/bullet2/src/BulletCollision/CollisionDispatch/btSphereBoxCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btSphereSphereCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btSphereTriangleCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionDispatch/btUnionFind.cpp (+1/-1)
extern/bullet2/src/BulletCollision/CollisionDispatch/btUnionFind.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btBox2dShape.h (+9/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btBoxShape.cpp (+12/-2)
extern/bullet2/src/BulletCollision/CollisionShapes/btBoxShape.h (+5/-11)
extern/bullet2/src/BulletCollision/CollisionShapes/btBvhTriangleMeshShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btCapsuleShape.cpp (+4/-4)
extern/bullet2/src/BulletCollision/CollisionShapes/btCollisionMargin.h (+7/-6)
extern/bullet2/src/BulletCollision/CollisionShapes/btCollisionShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btCompoundShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btConcaveShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btConeShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btConvexHullShape.cpp (+44/-0)
extern/bullet2/src/BulletCollision/CollisionShapes/btConvexHullShape.h (+5/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btConvexInternalShape.h (+22/-0)
extern/bullet2/src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp (+296/-0)
extern/bullet2/src/BulletCollision/CollisionShapes/btConvexPolyhedron.h (+62/-0)
extern/bullet2/src/BulletCollision/CollisionShapes/btConvexShape.cpp (+19/-2)
extern/bullet2/src/BulletCollision/CollisionShapes/btConvexShape.h (+5/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btConvexTriangleMeshShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btCylinderShape.cpp (+2/-0)
extern/bullet2/src/BulletCollision/CollisionShapes/btCylinderShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btEmptyShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.cpp (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btHeightfieldTerrainShape.h (+10/-10)
extern/bullet2/src/BulletCollision/CollisionShapes/btMaterial.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btMultiSphereShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btMultimaterialTriangleMeshShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btOptimizedBvh.cpp (+2/-2)
extern/bullet2/src/BulletCollision/CollisionShapes/btOptimizedBvh.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp (+288/-6)
extern/bullet2/src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.h (+17/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btScaledBvhTriangleMeshShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btShapeHull.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btSphereShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btStaticPlaneShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btStridingMeshInterface.cpp (+2/-0)
extern/bullet2/src/BulletCollision/CollisionShapes/btStridingMeshInterface.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btTetrahedronShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btTriangleCallback.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btTriangleIndexVertexArray.h (+2/-0)
extern/bullet2/src/BulletCollision/CollisionShapes/btTriangleInfoMap.h (+3/-0)
extern/bullet2/src/BulletCollision/CollisionShapes/btTriangleMesh.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btTriangleMeshShape.h (+3/-3)
extern/bullet2/src/BulletCollision/CollisionShapes/btTriangleShape.h (+3/-3)
extern/bullet2/src/BulletCollision/Gimpact/btCompoundFromGimpact.h (+98/-0)
extern/bullet2/src/BulletCollision/Gimpact/btContactProcessing.cpp (+1/-1)
extern/bullet2/src/BulletCollision/Gimpact/btGImpactCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.cpp (+4/-4)
extern/bullet2/src/BulletCollision/Gimpact/btGImpactQuantizedBvh.h (+2/-2)
extern/bullet2/src/BulletCollision/Gimpact/btGImpactShape.cpp (+35/-0)
extern/bullet2/src/BulletCollision/Gimpact/btGImpactShape.h (+20/-7)
extern/bullet2/src/BulletCollision/Gimpact/btQuantization.h (+3/-3)
extern/bullet2/src/BulletCollision/Gimpact/btTriangleShapeEx.h (+3/-3)
extern/bullet2/src/BulletCollision/Jamfile (+0/-14)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.cpp (+73/-66)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btContinuousConvexCollision.h (+11/-4)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btConvexCast.h (+4/-4)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btConvexPenetrationDepthSolver.h (+3/-3)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btDiscreteCollisionDetectorInterface.h (+5/-3)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btGjkConvexCast.h (+3/-3)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.cpp (+65/-23)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btGjkEpa2.h (+5/-3)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btGjkPairDetector.h (+3/-3)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btManifoldPoint.h (+4/-4)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btMinkowskiPenetrationDepthSolver.h (+3/-3)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.cpp (+48/-6)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btPersistentManifold.h (+5/-9)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btPointCollector.h (+3/-3)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.cpp (+440/-0)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btPolyhedralContactClipping.h (+46/-0)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btRaycastCallback.h (+3/-3)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btSimplexSolverInterface.h (+3/-3)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btSubSimplexConvexCast.h (+3/-3)
extern/bullet2/src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h (+4/-3)
extern/bullet2/src/BulletDynamics/Character/btCharacterControllerInterface.h (+4/-3)
extern/bullet2/src/BulletDynamics/Character/btKinematicCharacterController.cpp (+10/-2)
extern/bullet2/src/BulletDynamics/Character/btKinematicCharacterController.h (+4/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.cpp (+6/-1)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btConeTwistConstraint.h (+3/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btConstraintSolver.h (+3/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btContactConstraint.cpp (+48/-4)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btContactConstraint.h (+6/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btContactSolverInfo.h (+3/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.cpp (+9/-1)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btGeneric6DofConstraint.h (+4/-4)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.cpp (+13/-0)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btGeneric6DofSpringConstraint.h (+5/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h (+3/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btHingeConstraint.cpp (+15/-14)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btHingeConstraint.h (+4/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btJacobianEntry.h (+3/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btPoint2PointConstraint.h (+3/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.cpp (+137/-85)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btSequentialImpulseConstraintSolver.h (+5/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btSliderConstraint.h (+7/-4)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btSolve2LinearConstraint.h (+3/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btSolverConstraint.h (+2/-0)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btTypedConstraint.cpp (+10/-0)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btTypedConstraint.h (+48/-6)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp (+3/-3)
extern/bullet2/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h (+4/-4)
extern/bullet2/src/BulletDynamics/Dynamics/Bullet-C-API.cpp (+58/-1)
extern/bullet2/src/BulletDynamics/Dynamics/btContinuousDynamicsWorld.cpp (+0/-196)
extern/bullet2/src/BulletDynamics/Dynamics/btContinuousDynamicsWorld.h (+0/-46)
extern/bullet2/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.cpp (+270/-175)
extern/bullet2/src/BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h (+5/-0)
extern/bullet2/src/BulletDynamics/Dynamics/btDynamicsWorld.h (+2/-1)
extern/bullet2/src/BulletDynamics/Dynamics/btRigidBody.cpp (+4/-3)
extern/bullet2/src/BulletDynamics/Dynamics/btRigidBody.h (+3/-3)
extern/bullet2/src/BulletDynamics/Dynamics/btSimpleDynamicsWorld.h (+1/-1)
extern/bullet2/src/BulletDynamics/Jamfile (+0/-13)
extern/bullet2/src/BulletDynamics/Vehicle/btRaycastVehicle.h (+3/-3)
extern/bullet2/src/BulletDynamics/Vehicle/btVehicleRaycaster.h (+4/-4)
extern/bullet2/src/BulletDynamics/Vehicle/btWheelInfo.h (+3/-3)
extern/bullet2/src/BulletSoftBody/Jamfile (+0/-9)
extern/bullet2/src/BulletSoftBody/btDefaultSoftBodySolver.cpp (+1/-1)
extern/bullet2/src/BulletSoftBody/btDefaultSoftBodySolver.h (+1/-1)
extern/bullet2/src/BulletSoftBody/btSoftBody.cpp (+211/-81)
extern/bullet2/src/BulletSoftBody/btSoftBody.h (+17/-7)
extern/bullet2/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.cpp (+1/-1)
extern/bullet2/src/BulletSoftBody/btSoftBodyConcaveCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletSoftBody/btSoftBodyHelpers.cpp (+34/-1)
extern/bullet2/src/BulletSoftBody/btSoftBodyHelpers.h (+3/-3)
extern/bullet2/src/BulletSoftBody/btSoftBodyInternals.h (+1/-1)
extern/bullet2/src/BulletSoftBody/btSoftBodySolvers.h (+1/-1)
extern/bullet2/src/BulletSoftBody/btSoftRigidCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletSoftBody/btSoftRigidDynamicsWorld.cpp (+12/-5)
extern/bullet2/src/BulletSoftBody/btSoftRigidDynamicsWorld.h (+4/-0)
extern/bullet2/src/BulletSoftBody/btSoftSoftCollisionAlgorithm.h (+3/-3)
extern/bullet2/src/BulletSoftBody/btSparseSDF.h (+3/-3)
extern/bullet2/src/Jamfile (+0/-7)
extern/bullet2/src/LinearMath/Jamfile (+0/-10)
extern/bullet2/src/LinearMath/btAabbUtil2.h (+3/-3)
extern/bullet2/src/LinearMath/btAlignedAllocator.cpp (+7/-8)
extern/bullet2/src/LinearMath/btAlignedObjectArray.h (+28/-5)
extern/bullet2/src/LinearMath/btConvexHull.h (+3/-3)
extern/bullet2/src/LinearMath/btConvexHullComputer.cpp (+2753/-0)
extern/bullet2/src/LinearMath/btConvexHullComputer.h (+104/-0)
extern/bullet2/src/LinearMath/btDefaultMotionState.h (+3/-3)
extern/bullet2/src/LinearMath/btGrahamScan2dConvexHull.h (+110/-0)
extern/bullet2/src/LinearMath/btHashMap.h (+16/-0)
extern/bullet2/src/LinearMath/btIDebugDraw.h (+4/-3)
extern/bullet2/src/LinearMath/btList.h (+3/-3)
extern/bullet2/src/LinearMath/btMinMax.h (+4/-4)
extern/bullet2/src/LinearMath/btPoint3.h (+0/-24)
extern/bullet2/src/LinearMath/btPoolAllocator.h (+5/-0)
extern/bullet2/src/LinearMath/btQuadWord.h (+3/-3)
extern/bullet2/src/LinearMath/btQuaternion.h (+25/-28)
extern/bullet2/src/LinearMath/btQuickprof.cpp (+2/-1)
extern/bullet2/src/LinearMath/btQuickprof.h (+11/-4)
extern/bullet2/src/LinearMath/btRandom.h (+3/-3)
extern/bullet2/src/LinearMath/btScalar.h (+30/-7)
extern/bullet2/src/LinearMath/btSerializer.cpp (+577/-568)
extern/bullet2/src/LinearMath/btSerializer.h (+21/-37)
extern/bullet2/src/LinearMath/btSimdMinMax.h (+0/-41)
extern/bullet2/src/LinearMath/btTransform.h (+3/-3)
extern/bullet2/src/LinearMath/btTransformUtil.h (+3/-3)
extern/bullet2/src/LinearMath/btVector3.h (+3/-3)
extern/bullet2/src/SConscript (+12/-19)
extern/bullet2/src/btBulletDynamicsCommon.h (+0/-1)
extern/carve/CMakeLists.txt (+80/-80)
extern/carve/bundle.sh (+9/-7)
extern/carve/include/carve/csg.hpp (+28/-28)
extern/carve/include/carve/polyline_decl.hpp (+5/-0)
extern/carve/include/carve/rtree.hpp (+11/-2)
extern/carve/lib/csg_data.hpp (+2/-2)
extern/carve/lib/csg_detail.hpp (+21/-19)
extern/carve/lib/intersect.cpp (+174/-126)
extern/carve/lib/intersect_face_division.cpp (+6/-1)
extern/carve/patches/mingw_w64.patch (+5/-5)
extern/carve/patches/strict_flags.patch (+3/-3)
extern/eltopo/CMakeLists.txt (+0/-126)
extern/eltopo/SConscript (+0/-28)
extern/eltopo/common/array1.h (+0/-799)
extern/eltopo/common/array2.h (+0/-321)
extern/eltopo/common/array2_utils.h (+0/-63)
extern/eltopo/common/array3.h (+0/-284)
extern/eltopo/common/array3_utils.h (+0/-87)
extern/eltopo/common/bfstream.cpp (+0/-76)
extern/eltopo/common/bfstream.h (+0/-373)
extern/eltopo/common/blas_wrapper.h (+0/-598)
extern/eltopo/common/ccd_defs.h (+0/-17)
extern/eltopo/common/ccd_wrapper.cpp (+0/-811)
extern/eltopo/common/ccd_wrapper.h (+0/-119)
extern/eltopo/common/clamped_spline.cpp (+0/-137)
extern/eltopo/common/clamped_spline.h (+0/-24)
extern/eltopo/common/collisionqueries.cpp (+0/-328)
extern/eltopo/common/collisionqueries.h (+0/-36)
extern/eltopo/common/commonoptions.h (+0/-22)
extern/eltopo/common/cubic_ccd_wrapper.cpp (+0/-760)
extern/eltopo/common/fe_ccd_wrapper.cpp (+0/-83)
extern/eltopo/common/fileio.cpp (+0/-463)
extern/eltopo/common/fileio.h (+0/-135)
extern/eltopo/common/gluvi.cpp (+0/-1307)
extern/eltopo/common/gluvi.h (+0/-234)
extern/eltopo/common/grid3.h (+0/-17)
extern/eltopo/common/hashtable.h (+0/-251)
extern/eltopo/common/lapack_wrapper.h (+0/-242)
extern/eltopo/common/levelset.cpp (+0/-210)
extern/eltopo/common/levelset.h (+0/-18)
extern/eltopo/common/lexer.cpp (+0/-361)
extern/eltopo/common/lexer.h (+0/-41)
extern/eltopo/common/makelevelset2.cpp (+0/-124)
extern/eltopo/common/makelevelset2.h (+0/-12)
extern/eltopo/common/makelevelset3.cpp (+0/-190)
extern/eltopo/common/makelevelset3.h (+0/-28)
extern/eltopo/common/marching_tiles_hires.cpp (+0/-405)
extern/eltopo/common/marching_tiles_hires.h (+0/-37)
extern/eltopo/common/marching_triangles.cpp (+0/-66)
extern/eltopo/common/marching_triangles.h (+0/-33)
extern/eltopo/common/mat.h (+0/-478)
extern/eltopo/common/matlapack.h (+0/-24)
extern/eltopo/common/meshes/Edge.hpp (+0/-123)
extern/eltopo/common/meshes/ObjLoader.cpp (+0/-2761)
extern/eltopo/common/meshes/ObjLoader.hpp (+0/-351)
extern/eltopo/common/meshes/TriangleIndex.hpp (+0/-106)
extern/eltopo/common/meshes/meshloader.cpp (+0/-83)
extern/eltopo/common/meshes/meshloader.h (+0/-71)
extern/eltopo/common/newparser.cpp (+0/-195)
extern/eltopo/common/newparser.h (+0/-42)
extern/eltopo/common/newsparse/dense_matrix.cpp (+0/-92)
extern/eltopo/common/newsparse/dense_matrix.h (+0/-51)
extern/eltopo/common/newsparse/krylov_solvers.cpp (+0/-175)
extern/eltopo/common/newsparse/krylov_solvers.h (+0/-92)
extern/eltopo/common/newsparse/linear_operator.h (+0/-92)
extern/eltopo/common/newsparse/sparse_matrix.cpp (+0/-246)
extern/eltopo/common/newsparse/sparse_matrix.h (+0/-103)
extern/eltopo/common/openglutils.cpp (+0/-286)
extern/eltopo/common/openglutils.h (+0/-25)
extern/eltopo/common/predicates.cpp (+0/-1008)
extern/eltopo/common/predicates.h (+0/-88)
extern/eltopo/common/runstats.cpp (+0/-239)
extern/eltopo/common/runstats.h (+0/-90)
extern/eltopo/common/sos_ccd_wrapper.cpp (+0/-384)
extern/eltopo/common/sparse/cgsolver.h (+0/-178)
extern/eltopo/common/sparse/crsolver.h (+0/-134)
extern/eltopo/common/sparse/incomplete_qr.cpp (+0/-152)
extern/eltopo/common/sparse/incomplete_qr.h (+0/-15)
extern/eltopo/common/sparse/sparseilu.h (+0/-182)
extern/eltopo/common/sparse/sparsematrix.h (+0/-407)
extern/eltopo/common/sparse/sparsemilu.h (+0/-208)
extern/eltopo/common/tunicate/expansion.cpp (+0/-534)
extern/eltopo/common/tunicate/expansion.h (+0/-224)
extern/eltopo/common/tunicate/intersection.cpp (+0/-951)
extern/eltopo/common/tunicate/neg.cpp (+0/-16)
extern/eltopo/common/tunicate/neg.h (+0/-17)
extern/eltopo/common/tunicate/orientation.cpp (+0/-473)
extern/eltopo/common/tunicate/sos_intersection.cpp (+0/-255)
extern/eltopo/common/tunicate/sos_orientation.cpp (+0/-260)
extern/eltopo/common/tunicate/tunicate.h (+0/-260)
extern/eltopo/common/util.h (+0/-510)
extern/eltopo/common/vec.h (+0/-505)
extern/eltopo/common/vector_math.h (+0/-36)
extern/eltopo/common/wallclocktime.cpp (+0/-44)
extern/eltopo/common/wallclocktime.h (+0/-7)
extern/eltopo/eltopo-capi.cpp (+0/-35)
extern/eltopo/eltopo-capi.h (+0/-11)
extern/eltopo/eltopo3d/Makefile (+0/-50)
extern/eltopo/eltopo3d/Makefile.example_defs (+0/-29)
extern/eltopo/eltopo3d/Makefile.inc (+0/-33)
extern/eltopo/eltopo3d/Makefile.local_defs (+0/-29)
extern/eltopo/eltopo3d/accelerationgrid.cpp (+0/-364)
extern/eltopo/eltopo3d/accelerationgrid.h (+0/-106)
extern/eltopo/eltopo3d/broadphase.h (+0/-143)
extern/eltopo/eltopo3d/broadphase_blenderbvh.cpp (+0/-128)
extern/eltopo/eltopo3d/broadphase_blenderbvh.h (+0/-230)
extern/eltopo/eltopo3d/broadphasegrid.cpp (+0/-277)
extern/eltopo/eltopo3d/broadphasegrid.h (+0/-458)
extern/eltopo/eltopo3d/collisionpipeline.cpp (+0/-1559)
extern/eltopo/eltopo3d/collisionpipeline.h (+0/-337)
extern/eltopo/eltopo3d/cpp-file-template.txt (+0/-27)
extern/eltopo/eltopo3d/dynamicsurface.cpp (+0/-1686)
extern/eltopo/eltopo3d/dynamicsurface.h (+0/-1064)
extern/eltopo/eltopo3d/edgecollapser.cpp (+0/-871)
extern/eltopo/eltopo3d/edgecollapser.h (+0/-126)
extern/eltopo/eltopo3d/edgeflipper.cpp (+0/-540)
extern/eltopo/eltopo3d/edgeflipper.h (+0/-82)
extern/eltopo/eltopo3d/edgesplitter.cpp (+0/-740)
extern/eltopo/eltopo3d/edgesplitter.h (+0/-114)
extern/eltopo/eltopo3d/eltopo.cpp (+0/-271)
extern/eltopo/eltopo3d/eltopo.h (+0/-267)
extern/eltopo/eltopo3d/h-file-template.txt (+0/-23)
extern/eltopo/eltopo3d/impactzonesolver.cpp (+0/-768)
extern/eltopo/eltopo3d/impactzonesolver.h (+0/-161)
extern/eltopo/eltopo3d/meshmerger.cpp (+0/-463)
extern/eltopo/eltopo3d/meshmerger.h (+0/-113)
extern/eltopo/eltopo3d/meshpincher.cpp (+0/-250)
extern/eltopo/eltopo3d/meshpincher.h (+0/-76)
extern/eltopo/eltopo3d/meshrenderer.cpp (+0/-277)
extern/eltopo/eltopo3d/meshrenderer.h (+0/-85)
extern/eltopo/eltopo3d/meshsmoother.cpp (+0/-445)
extern/eltopo/eltopo3d/meshsmoother.h (+0/-80)
extern/eltopo/eltopo3d/nondestructivetrimesh.cpp (+0/-706)
extern/eltopo/eltopo3d/nondestructivetrimesh.h (+0/-678)
extern/eltopo/eltopo3d/options.h (+0/-23)
extern/eltopo/eltopo3d/readme.txt (+0/-143)
extern/eltopo/eltopo3d/subdivisionscheme.cpp (+0/-214)
extern/eltopo/eltopo3d/subdivisionscheme.h (+0/-101)
extern/eltopo/eltopo3d/surftrack.cpp (+0/-699)
extern/eltopo/eltopo3d/surftrack.h (+0/-479)
extern/eltopo/eltopo3d/trianglequality.cpp (+0/-494)
extern/eltopo/eltopo3d/trianglequality.h (+0/-231)
extern/eltopo/readme.txt (+0/-19)
extern/glew/src/glew.c (+2/-2)
extern/libmv/CMakeLists.txt (+14/-37)
extern/libmv/ChangeLog (+548/-352)
extern/libmv/SConscript (+7/-29)
extern/libmv/bundle.sh (+26/-28)
extern/libmv/files.txt (+7/-0)
extern/libmv/libmv-capi.cpp (+236/-44)
extern/libmv/libmv-capi.h (+44/-4)
extern/libmv/libmv/image/convolve.cc (+14/-0)
extern/libmv/libmv/image/convolve.h (+10/-0)
extern/libmv/libmv/image/correlation.h (+20/-4)
extern/libmv/libmv/image/sample.h (+46/-21)
extern/libmv/libmv/multiview/euclidean_resection.cc (+31/-15)
extern/libmv/libmv/multiview/euclidean_resection.h (+10/-2)
extern/libmv/libmv/multiview/fundamental.cc (+4/-4)
extern/libmv/libmv/multiview/homography.cc (+267/-0)
extern/libmv/libmv/multiview/homography.h (+84/-0)
extern/libmv/libmv/multiview/homography_parameterization.h (+91/-0)
extern/libmv/libmv/numeric/levenberg_marquardt.h (+5/-5)
extern/libmv/libmv/simple_pipeline/camera_intrinsics.cc (+1/-1)
extern/libmv/libmv/simple_pipeline/detect.cc (+3/-3)
extern/libmv/libmv/simple_pipeline/initialize_reconstruction.cc (+1/-16)
extern/libmv/libmv/simple_pipeline/intersect.cc (+1/-0)
extern/libmv/libmv/simple_pipeline/modal_solver.cc (+126/-0)
extern/libmv/libmv/simple_pipeline/modal_solver.h (+48/-0)
extern/libmv/libmv/simple_pipeline/pipeline.cc (+18/-11)
extern/libmv/libmv/simple_pipeline/pipeline.h (+10/-2)
extern/libmv/libmv/simple_pipeline/reconstruction.h (+11/-0)
extern/libmv/libmv/simple_pipeline/resect.cc (+20/-3)
extern/libmv/libmv/simple_pipeline/resect.h (+5/-1)
extern/libmv/libmv/simple_pipeline/tracks.cc (+26/-0)
extern/libmv/libmv/simple_pipeline/tracks.h (+8/-0)
extern/libmv/libmv/tracking/brute_region_tracker.cc (+41/-28)
extern/libmv/libmv/tracking/esm_region_tracker.cc (+53/-28)
extern/libmv/libmv/tracking/track_region.cc (+1553/-0)
extern/libmv/libmv/tracking/track_region.h (+156/-0)
extern/libmv/mkfiles.sh (+1/-1)
extern/libmv/patches/mingw_w64_support.patch (+0/-58)
extern/libmv/third_party/CMakeLists.txt (+3/-0)
extern/libmv/third_party/SConscript (+4/-0)
extern/libmv/third_party/ceres/CMakeLists.txt (+261/-0)
extern/libmv/third_party/ceres/ChangeLog (+524/-0)
extern/libmv/third_party/ceres/LICENSE (+27/-0)
extern/libmv/third_party/ceres/README (+3/-0)
extern/libmv/third_party/ceres/SConscript (+45/-0)
extern/libmv/third_party/ceres/bundle.sh (+235/-0)
extern/libmv/third_party/ceres/files.txt (+168/-0)
extern/libmv/third_party/ceres/include/ceres/autodiff_cost_function.h (+211/-0)
extern/libmv/third_party/ceres/include/ceres/ceres.h (+48/-0)
extern/libmv/third_party/ceres/include/ceres/conditioned_cost_function.h (+97/-0)
extern/libmv/third_party/ceres/include/ceres/cost_function.h (+127/-0)
extern/libmv/third_party/ceres/include/ceres/crs_matrix.h (+65/-0)
extern/libmv/third_party/ceres/include/ceres/fpclassify.h (+88/-0)
extern/libmv/third_party/ceres/include/ceres/internal/autodiff.h (+370/-0)
extern/libmv/third_party/ceres/include/ceres/internal/eigen.h (+80/-0)
extern/libmv/third_party/ceres/include/ceres/internal/fixed_array.h (+195/-0)
extern/libmv/third_party/ceres/include/ceres/internal/macros.h (+171/-0)
extern/libmv/third_party/ceres/include/ceres/internal/manual_constructor.h (+203/-0)
extern/libmv/third_party/ceres/include/ceres/internal/port.h (+50/-0)
extern/libmv/third_party/ceres/include/ceres/internal/scoped_ptr.h (+311/-0)
extern/libmv/third_party/ceres/include/ceres/iteration_callback.h (+171/-0)
extern/libmv/third_party/ceres/include/ceres/jet.h (+678/-0)
extern/libmv/third_party/ceres/include/ceres/local_parameterization.h (+189/-0)
extern/libmv/third_party/ceres/include/ceres/loss_function.h (+397/-0)
extern/libmv/third_party/ceres/include/ceres/normal_prior.h (+75/-0)
extern/libmv/third_party/ceres/include/ceres/numeric_diff_cost_function.h (+285/-0)
extern/libmv/third_party/ceres/include/ceres/problem.h (+265/-0)
extern/libmv/third_party/ceres/include/ceres/rotation.h (+534/-0)
extern/libmv/third_party/ceres/include/ceres/sized_cost_function.h (+88/-0)
extern/libmv/third_party/ceres/include/ceres/solver.h (+535/-0)
extern/libmv/third_party/ceres/include/ceres/types.h (+314/-0)
extern/libmv/third_party/ceres/internal/ceres/array_utils.cc (+67/-0)
extern/libmv/third_party/ceres/internal/ceres/array_utils.h (+65/-0)
extern/libmv/third_party/ceres/internal/ceres/block_evaluate_preparer.cc (+83/-0)
extern/libmv/third_party/ceres/internal/ceres/block_evaluate_preparer.h (+77/-0)
extern/libmv/third_party/ceres/internal/ceres/block_jacobi_preconditioner.cc (+135/-0)
extern/libmv/third_party/ceres/internal/ceres/block_jacobi_preconditioner.h (+84/-0)
extern/libmv/third_party/ceres/internal/ceres/block_jacobian_writer.cc (+212/-0)
extern/libmv/third_party/ceres/internal/ceres/block_jacobian_writer.h (+127/-0)
extern/libmv/third_party/ceres/internal/ceres/block_random_access_dense_matrix.cc (+83/-0)
extern/libmv/third_party/ceres/internal/ceres/block_random_access_dense_matrix.h (+98/-0)
extern/libmv/third_party/ceres/internal/ceres/block_random_access_matrix.cc (+40/-0)
extern/libmv/third_party/ceres/internal/ceres/block_random_access_matrix.h (+132/-0)
extern/libmv/third_party/ceres/internal/ceres/block_random_access_sparse_matrix.cc (+158/-0)
extern/libmv/third_party/ceres/internal/ceres/block_random_access_sparse_matrix.h (+111/-0)
extern/libmv/third_party/ceres/internal/ceres/block_sparse_matrix.cc (+286/-0)
extern/libmv/third_party/ceres/internal/ceres/block_sparse_matrix.h (+144/-0)
extern/libmv/third_party/ceres/internal/ceres/block_structure.cc (+92/-0)
extern/libmv/third_party/ceres/internal/ceres/block_structure.h (+105/-0)
extern/libmv/third_party/ceres/internal/ceres/canonical_views_clustering.cc (+238/-0)
extern/libmv/third_party/ceres/internal/ceres/canonical_views_clustering.h (+133/-0)
extern/libmv/third_party/ceres/internal/ceres/casts.h (+108/-0)
extern/libmv/third_party/ceres/internal/ceres/cgnr_linear_operator.h (+120/-0)
extern/libmv/third_party/ceres/internal/ceres/cgnr_solver.cc (+80/-0)
extern/libmv/third_party/ceres/internal/ceres/cgnr_solver.h (+66/-0)
extern/libmv/third_party/ceres/internal/ceres/collections_port.h (+167/-0)
extern/libmv/third_party/ceres/internal/ceres/compressed_row_jacobian_writer.cc (+217/-0)
extern/libmv/third_party/ceres/internal/ceres/compressed_row_jacobian_writer.h (+75/-0)
extern/libmv/third_party/ceres/internal/ceres/compressed_row_sparse_matrix.cc (+354/-0)
extern/libmv/third_party/ceres/internal/ceres/compressed_row_sparse_matrix.h (+149/-0)
extern/libmv/third_party/ceres/internal/ceres/conditioned_cost_function.cc (+130/-0)
extern/libmv/third_party/ceres/internal/ceres/conjugate_gradients_solver.cc (+233/-0)
extern/libmv/third_party/ceres/internal/ceres/conjugate_gradients_solver.h (+74/-0)
extern/libmv/third_party/ceres/internal/ceres/corrector.cc (+125/-0)
extern/libmv/third_party/ceres/internal/ceres/corrector.h (+88/-0)
extern/libmv/third_party/ceres/internal/ceres/cxsparse.cc (+130/-0)
extern/libmv/third_party/ceres/internal/ceres/cxsparse.h (+90/-0)
extern/libmv/third_party/ceres/internal/ceres/dense_jacobian_writer.h (+110/-0)
extern/libmv/third_party/ceres/internal/ceres/dense_normal_cholesky_solver.cc (+86/-0)
extern/libmv/third_party/ceres/internal/ceres/dense_normal_cholesky_solver.h (+95/-0)
extern/libmv/third_party/ceres/internal/ceres/dense_qr_solver.cc (+93/-0)
extern/libmv/third_party/ceres/internal/ceres/dense_qr_solver.h (+99/-0)
extern/libmv/third_party/ceres/internal/ceres/dense_sparse_matrix.cc (+197/-0)
extern/libmv/third_party/ceres/internal/ceres/dense_sparse_matrix.h (+116/-0)
extern/libmv/third_party/ceres/internal/ceres/detect_structure.cc (+114/-0)
extern/libmv/third_party/ceres/internal/ceres/detect_structure.h (+63/-0)
extern/libmv/third_party/ceres/internal/ceres/dogleg_strategy.cc (+691/-0)
extern/libmv/third_party/ceres/internal/ceres/dogleg_strategy.h (+163/-0)
extern/libmv/third_party/ceres/internal/ceres/evaluator.cc (+147/-0)
extern/libmv/third_party/ceres/internal/ceres/evaluator.h (+160/-0)
extern/libmv/third_party/ceres/internal/ceres/file.cc (+94/-0)
extern/libmv/third_party/ceres/internal/ceres/file.h (+52/-0)
extern/libmv/third_party/ceres/internal/ceres/generate_eliminator_specialization.py (+186/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_2_2.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_2_3.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_2_4.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_2_d.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_3_3.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_3_4.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_3_9.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_3_d.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_4_3.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_4_4.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_2_4_d.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_4_4_2.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_4_4_3.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_4_4_4.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_4_4_d.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/generated/schur_eliminator_d_d_d.cc (+53/-0)
extern/libmv/third_party/ceres/internal/ceres/gradient_checking_cost_function.cc (+308/-0)
extern/libmv/third_party/ceres/internal/ceres/gradient_checking_cost_function.h (+85/-0)
extern/libmv/third_party/ceres/internal/ceres/graph.h (+138/-0)
extern/libmv/third_party/ceres/internal/ceres/graph_algorithms.h (+270/-0)
extern/libmv/third_party/ceres/internal/ceres/implicit_schur_complement.cc (+228/-0)
extern/libmv/third_party/ceres/internal/ceres/implicit_schur_complement.h (+168/-0)
extern/libmv/third_party/ceres/internal/ceres/integral_types.h (+92/-0)
extern/libmv/third_party/ceres/internal/ceres/iterative_schur_complement_solver.cc (+145/-0)
extern/libmv/third_party/ceres/internal/ceres/iterative_schur_complement_solver.h (+94/-0)
extern/libmv/third_party/ceres/internal/ceres/levenberg_marquardt_strategy.cc (+144/-0)
extern/libmv/third_party/ceres/internal/ceres/levenberg_marquardt_strategy.h (+86/-0)
extern/libmv/third_party/ceres/internal/ceres/linear_least_squares_problems.cc (+769/-0)
extern/libmv/third_party/ceres/internal/ceres/linear_least_squares_problems.h (+87/-0)
extern/libmv/third_party/ceres/internal/ceres/linear_operator.cc (+40/-0)
extern/libmv/third_party/ceres/internal/ceres/linear_operator.h (+59/-0)
extern/libmv/third_party/ceres/internal/ceres/linear_solver.cc (+93/-0)
extern/libmv/third_party/ceres/internal/ceres/linear_solver.h (+295/-0)
extern/libmv/third_party/ceres/internal/ceres/local_parameterization.cc (+141/-0)
extern/libmv/third_party/ceres/internal/ceres/loss_function.cc (+157/-0)
extern/libmv/third_party/ceres/internal/ceres/map_util.h (+129/-0)
extern/libmv/third_party/ceres/internal/ceres/matrix_proto.h (+40/-0)
extern/libmv/third_party/ceres/internal/ceres/minimizer.h (+146/-0)
extern/libmv/third_party/ceres/internal/ceres/mutex.h (+322/-0)
extern/libmv/third_party/ceres/internal/ceres/normal_prior.cc (+66/-0)
extern/libmv/third_party/ceres/internal/ceres/parameter_block.h (+271/-0)
extern/libmv/third_party/ceres/internal/ceres/partitioned_matrix_view.cc (+315/-0)
extern/libmv/third_party/ceres/internal/ceres/partitioned_matrix_view.h (+121/-0)
extern/libmv/third_party/ceres/internal/ceres/polynomial_solver.cc (+184/-0)
extern/libmv/third_party/ceres/internal/ceres/polynomial_solver.h (+65/-0)
extern/libmv/third_party/ceres/internal/ceres/problem.cc (+149/-0)
extern/libmv/third_party/ceres/internal/ceres/problem_impl.cc (+358/-0)
extern/libmv/third_party/ceres/internal/ceres/problem_impl.h (+127/-0)
extern/libmv/third_party/ceres/internal/ceres/program.cc (+232/-0)
extern/libmv/third_party/ceres/internal/ceres/program.h (+129/-0)
extern/libmv/third_party/ceres/internal/ceres/program_evaluator.h (+335/-0)
extern/libmv/third_party/ceres/internal/ceres/random.h (+70/-0)
extern/libmv/third_party/ceres/internal/ceres/residual_block.cc (+215/-0)
extern/libmv/third_party/ceres/internal/ceres/residual_block.h (+124/-0)
extern/libmv/third_party/ceres/internal/ceres/residual_block_utils.cc (+156/-0)
extern/libmv/third_party/ceres/internal/ceres/residual_block_utils.h (+80/-0)
extern/libmv/third_party/ceres/internal/ceres/runtime_numeric_diff_cost_function.cc (+217/-0)
extern/libmv/third_party/ceres/internal/ceres/runtime_numeric_diff_cost_function.h (+87/-0)
extern/libmv/third_party/ceres/internal/ceres/schur_complement_solver.cc (+388/-0)
extern/libmv/third_party/ceres/internal/ceres/schur_complement_solver.h (+186/-0)
extern/libmv/third_party/ceres/internal/ceres/schur_eliminator.cc (+141/-0)
extern/libmv/third_party/ceres/internal/ceres/schur_eliminator.h (+339/-0)
extern/libmv/third_party/ceres/internal/ceres/schur_eliminator_impl.h (+724/-0)
extern/libmv/third_party/ceres/internal/ceres/schur_ordering.cc (+101/-0)
extern/libmv/third_party/ceres/internal/ceres/schur_ordering.h (+74/-0)
extern/libmv/third_party/ceres/internal/ceres/scratch_evaluate_preparer.cc (+78/-0)
extern/libmv/third_party/ceres/internal/ceres/scratch_evaluate_preparer.h (+69/-0)
extern/libmv/third_party/ceres/internal/ceres/solver.cc (+252/-0)
extern/libmv/third_party/ceres/internal/ceres/solver_impl.cc (+803/-0)
extern/libmv/third_party/ceres/internal/ceres/solver_impl.h (+119/-0)
extern/libmv/third_party/ceres/internal/ceres/sparse_matrix.cc (+40/-0)
extern/libmv/third_party/ceres/internal/ceres/sparse_matrix.h (+114/-0)
extern/libmv/third_party/ceres/internal/ceres/sparse_normal_cholesky_solver.cc (+253/-0)
extern/libmv/third_party/ceres/internal/ceres/sparse_normal_cholesky_solver.h (+93/-0)
extern/libmv/third_party/ceres/internal/ceres/split.cc (+116/-0)
extern/libmv/third_party/ceres/internal/ceres/split.h (+21/-0)
extern/libmv/third_party/ceres/internal/ceres/stl_util.h (+75/-0)
extern/libmv/third_party/ceres/internal/ceres/stringprintf.cc (+127/-0)
extern/libmv/third_party/ceres/internal/ceres/stringprintf.h (+89/-0)
extern/libmv/third_party/ceres/internal/ceres/suitesparse.cc (+346/-0)
extern/libmv/third_party/ceres/internal/ceres/suitesparse.h (+233/-0)
extern/libmv/third_party/ceres/internal/ceres/triplet_sparse_matrix.cc (+306/-0)
extern/libmv/third_party/ceres/internal/ceres/triplet_sparse_matrix.h (+137/-0)
extern/libmv/third_party/ceres/internal/ceres/trust_region_minimizer.cc (+550/-0)
extern/libmv/third_party/ceres/internal/ceres/trust_region_minimizer.h (+67/-0)
extern/libmv/third_party/ceres/internal/ceres/trust_region_strategy.cc (+27/-0)
extern/libmv/third_party/ceres/internal/ceres/trust_region_strategy.h (+148/-0)
extern/libmv/third_party/ceres/internal/ceres/types.cc (+131/-0)
extern/libmv/third_party/ceres/internal/ceres/visibility.cc (+150/-0)
extern/libmv/third_party/ceres/internal/ceres/visibility.h (+77/-0)
extern/libmv/third_party/ceres/internal/ceres/visibility_based_preconditioner.cc (+611/-0)
extern/libmv/third_party/ceres/internal/ceres/visibility_based_preconditioner.h (+273/-0)
extern/libmv/third_party/ceres/mkfiles.sh (+4/-0)
extern/libmv/third_party/ceres/patches/collections_port.h.mingw.patch (+13/-0)
extern/libmv/third_party/ceres/patches/msvc_glog_fix.patch (+50/-0)
extern/libmv/third_party/ceres/patches/no_previous_declaration_fix.patch (+199/-0)
extern/libmv/third_party/ceres/patches/series (+3/-0)
extern/libmv/third_party/gflags/README.libmv (+2/-0)
extern/libmv/third_party/glog/README.libmv (+1/-0)
extern/libmv/third_party/ssba/CMakeLists.txt (+64/-0)
extern/libmv/third_party/ssba/SConscript (+36/-0)
extern/libopenjpeg/CMakeLists.txt (+8/-0)
extern/libopenjpeg/cidx_manager.c (+213/-0)
extern/libopenjpeg/cidx_manager.h (+56/-0)
extern/libopenjpeg/cio.c (+4/-4)
extern/libopenjpeg/cio.h (+1/-1)
extern/libopenjpeg/dwt.c (+58/-25)
extern/libopenjpeg/event.c (+10/-9)
extern/libopenjpeg/event.h (+2/-2)
extern/libopenjpeg/image.c (+2/-3)
extern/libopenjpeg/image.h (+1/-1)
extern/libopenjpeg/indexbox_manager.h (+118/-0)
extern/libopenjpeg/j2k.c (+154/-118)
extern/libopenjpeg/j2k.h (+13/-13)
extern/libopenjpeg/j2k_lib.c (+5/-5)
extern/libopenjpeg/j2k_lib.h (+1/-1)
extern/libopenjpeg/jp2.c (+679/-180)
extern/libopenjpeg/jp2.h (+61/-4)
extern/libopenjpeg/mct.c (+42/-0)
extern/libopenjpeg/mqc.c (+90/-36)
extern/libopenjpeg/mqc.h (+4/-1)
extern/libopenjpeg/openjpeg.c (+31/-17)
extern/libopenjpeg/openjpeg.h (+65/-49)
extern/libopenjpeg/opj_config.h (+38/-0)
extern/libopenjpeg/opj_includes.h (+20/-19)
extern/libopenjpeg/opj_malloc.h (+34/-18)
extern/libopenjpeg/patches/osx.patch (+12/-12)
extern/libopenjpeg/phix_manager.c (+170/-0)
extern/libopenjpeg/pi.c (+32/-32)
extern/libopenjpeg/pi.h (+4/-2)
extern/libopenjpeg/ppix_manager.c (+173/-0)
extern/libopenjpeg/t1.c (+451/-75)
extern/libopenjpeg/t1.h (+2/-2)
extern/libopenjpeg/t2.c (+24/-18)
extern/libopenjpeg/t2.h (+2/-0)
extern/libopenjpeg/tcd.c (+48/-30)
extern/libopenjpeg/tcd.h (+3/-2)
extern/libopenjpeg/thix_manager.c (+120/-0)
extern/libopenjpeg/tpix_manager.c (+153/-0)
extern/libredcode/codec.c (+6/-3)
extern/rangetree/CMakeLists.txt (+31/-0)
extern/rangetree/README.org (+13/-0)
extern/rangetree/SConscript (+9/-0)
extern/rangetree/range_tree.hh (+228/-0)
extern/rangetree/range_tree_c_api.cc (+86/-0)
extern/rangetree/range_tree_c_api.h (+60/-0)
extern/recastnavigation/Recast/Include/RecastAssert.h (+1/-1)
extern/recastnavigation/Recast/Source/RecastContour.cpp (+15/-15)
extern/recastnavigation/Recast/Source/RecastFilter.cpp (+2/-2)
extern/recastnavigation/Recast/Source/RecastMesh.cpp (+4/-4)
extern/recastnavigation/Recast/Source/RecastMeshDetail.cpp (+5/-5)
extern/recastnavigation/recast-capi.cpp (+1/-1)
extern/xdnd/xdnd.c (+1/-1)
intern/CMakeLists.txt (+19/-7)
intern/SConscript (+44/-14)
intern/audaspace/CMakeLists.txt (+20/-2)
intern/audaspace/FX/AUD_AccumulatorFactory.cpp (+4/-4)
intern/audaspace/FX/AUD_AccumulatorFactory.h (+2/-2)
intern/audaspace/FX/AUD_BandpassCalculator.cpp (+5/-0)
intern/audaspace/FX/AUD_BandpassCalculator.h (+10/-0)
intern/audaspace/FX/AUD_BaseIIRFilterReader.cpp (+1/-1)
intern/audaspace/FX/AUD_BaseIIRFilterReader.h (+1/-1)
intern/audaspace/FX/AUD_ButterworthCalculator.cpp (+38/-0)
intern/audaspace/FX/AUD_ButterworthCalculator.h (+20/-0)
intern/audaspace/FX/AUD_ButterworthFactory.cpp (+4/-37)
intern/audaspace/FX/AUD_ButterworthFactory.h (+1/-10)
intern/audaspace/FX/AUD_CallbackIIRFilterReader.cpp (+1/-1)
intern/audaspace/FX/AUD_CallbackIIRFilterReader.h (+1/-1)
intern/audaspace/FX/AUD_DelayFactory.cpp (+3/-3)
intern/audaspace/FX/AUD_DelayFactory.h (+2/-2)
intern/audaspace/FX/AUD_DelayReader.cpp (+3/-3)
intern/audaspace/FX/AUD_DelayReader.h (+1/-1)
intern/audaspace/FX/AUD_DoubleFactory.cpp (+5/-5)
intern/audaspace/FX/AUD_DoubleFactory.h (+4/-4)
intern/audaspace/FX/AUD_DoubleReader.cpp (+2/-2)
intern/audaspace/FX/AUD_DoubleReader.h (+5/-4)
intern/audaspace/FX/AUD_DynamicIIRFilterFactory.cpp (+13/-9)
intern/audaspace/FX/AUD_DynamicIIRFilterFactory.h (+8/-13)
intern/audaspace/FX/AUD_DynamicIIRFilterReader.cpp (+4/-4)
intern/audaspace/FX/AUD_DynamicIIRFilterReader.h (+4/-4)
intern/audaspace/FX/AUD_EffectFactory.cpp (+2/-2)
intern/audaspace/FX/AUD_EffectFactory.h (+4/-4)
intern/audaspace/FX/AUD_EffectReader.cpp (+1/-1)
intern/audaspace/FX/AUD_EffectReader.h (+4/-3)
intern/audaspace/FX/AUD_EnvelopeFactory.cpp (+5/-5)
intern/audaspace/FX/AUD_EnvelopeFactory.h (+2/-2)
intern/audaspace/FX/AUD_FaderFactory.cpp (+3/-3)
intern/audaspace/FX/AUD_FaderFactory.h (+4/-4)
intern/audaspace/FX/AUD_FaderReader.cpp (+1/-1)
intern/audaspace/FX/AUD_FaderReader.h (+1/-1)
intern/audaspace/FX/AUD_HighpassCalculator.cpp (+27/-0)
intern/audaspace/FX/AUD_HighpassCalculator.h (+25/-0)
intern/audaspace/FX/AUD_HighpassFactory.cpp (+4/-26)
intern/audaspace/FX/AUD_HighpassFactory.h (+1/-13)
intern/audaspace/FX/AUD_IDynamicIIRFilterCalculator.h (+54/-0)
intern/audaspace/FX/AUD_IIRFilterFactory.cpp (+3/-3)
intern/audaspace/FX/AUD_IIRFilterFactory.h (+3/-2)
intern/audaspace/FX/AUD_IIRFilterReader.cpp (+2/-2)
intern/audaspace/FX/AUD_IIRFilterReader.h (+1/-1)
intern/audaspace/FX/AUD_LimiterFactory.cpp (+3/-3)
intern/audaspace/FX/AUD_LimiterFactory.h (+2/-2)
intern/audaspace/FX/AUD_LimiterReader.cpp (+1/-1)
intern/audaspace/FX/AUD_LimiterReader.h (+1/-1)
intern/audaspace/FX/AUD_LoopFactory.cpp (+3/-3)
intern/audaspace/FX/AUD_LoopFactory.h (+2/-2)
intern/audaspace/FX/AUD_LoopReader.cpp (+1/-1)
intern/audaspace/FX/AUD_LoopReader.h (+1/-1)
intern/audaspace/FX/AUD_LowpassCalculator.cpp (+27/-0)
intern/audaspace/FX/AUD_LowpassCalculator.h (+25/-0)
intern/audaspace/FX/AUD_LowpassFactory.cpp (+5/-28)
intern/audaspace/FX/AUD_LowpassFactory.h (+1/-13)
intern/audaspace/FX/AUD_PingPongFactory.cpp (+5/-5)
intern/audaspace/FX/AUD_PingPongFactory.h (+2/-2)
intern/audaspace/FX/AUD_PitchFactory.cpp (+3/-3)
intern/audaspace/FX/AUD_PitchFactory.h (+2/-2)
intern/audaspace/FX/AUD_PitchReader.cpp (+1/-1)
intern/audaspace/FX/AUD_PitchReader.h (+1/-1)
intern/audaspace/FX/AUD_RectifyFactory.cpp (+3/-3)
intern/audaspace/FX/AUD_RectifyFactory.h (+2/-2)
intern/audaspace/FX/AUD_ReverseFactory.cpp (+3/-3)
intern/audaspace/FX/AUD_ReverseFactory.h (+2/-2)
intern/audaspace/FX/AUD_ReverseReader.cpp (+1/-1)
intern/audaspace/FX/AUD_ReverseReader.h (+1/-1)
intern/audaspace/FX/AUD_SquareFactory.cpp (+4/-4)
intern/audaspace/FX/AUD_SquareFactory.h (+2/-2)
intern/audaspace/FX/AUD_SumFactory.cpp (+3/-3)
intern/audaspace/FX/AUD_SumFactory.h (+2/-2)
intern/audaspace/FX/AUD_SuperposeFactory.cpp (+5/-5)
intern/audaspace/FX/AUD_SuperposeFactory.h (+4/-4)
intern/audaspace/FX/AUD_SuperposeReader.cpp (+1/-1)
intern/audaspace/FX/AUD_SuperposeReader.h (+5/-4)
intern/audaspace/FX/AUD_VolumeFactory.cpp (+3/-3)
intern/audaspace/FX/AUD_VolumeFactory.h (+2/-2)
intern/audaspace/OpenAL/AUD_OpenALDevice.cpp (+228/-170)
intern/audaspace/OpenAL/AUD_OpenALDevice.h (+7/-7)
intern/audaspace/Python/AUD_PyAPI.cpp (+152/-152)
intern/audaspace/Python/AUD_PyAPI.h (+4/-4)
intern/audaspace/SConscript (+23/-2)
intern/audaspace/ffmpeg/AUD_FFMPEGFactory.cpp (+4/-4)
intern/audaspace/ffmpeg/AUD_FFMPEGFactory.h (+3/-3)
intern/audaspace/ffmpeg/AUD_FFMPEGReader.cpp (+11/-18)
intern/audaspace/ffmpeg/AUD_FFMPEGReader.h (+3/-3)
intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp (+15/-10)
intern/audaspace/fftw/AUD_BandPassFactory.h (+1/-1)
intern/audaspace/intern/AUD_3DMath.h (+2/-2)
intern/audaspace/intern/AUD_AnimateableProperty.cpp (+4/-10)
intern/audaspace/intern/AUD_AnimateableProperty.h (+4/-3)
intern/audaspace/intern/AUD_BufferReader.cpp (+1/-1)
intern/audaspace/intern/AUD_BufferReader.h (+4/-3)
intern/audaspace/intern/AUD_C-API.cpp (+353/-399)
intern/audaspace/intern/AUD_C-API.h (+95/-93)
intern/audaspace/intern/AUD_ChannelMapperFactory.cpp (+4/-4)
intern/audaspace/intern/AUD_ChannelMapperFactory.h (+2/-2)
intern/audaspace/intern/AUD_ChannelMapperReader.cpp (+38/-28)
intern/audaspace/intern/AUD_ChannelMapperReader.h (+1/-1)
intern/audaspace/intern/AUD_ConverterFactory.cpp (+4/-4)
intern/audaspace/intern/AUD_ConverterFactory.h (+2/-2)
intern/audaspace/intern/AUD_ConverterReader.cpp (+1/-1)
intern/audaspace/intern/AUD_ConverterReader.h (+1/-1)
intern/audaspace/intern/AUD_FileFactory.cpp (+7/-7)
intern/audaspace/intern/AUD_FileFactory.h (+3/-3)
intern/audaspace/intern/AUD_FileWriter.cpp (+5/-5)
intern/audaspace/intern/AUD_FileWriter.h (+8/-9)
intern/audaspace/intern/AUD_IDevice.h (+6/-4)
intern/audaspace/intern/AUD_IFactory.h (+4/-3)
intern/audaspace/intern/AUD_ILockable.h (+21/-0)
intern/audaspace/intern/AUD_IReader.h (+1/-1)
intern/audaspace/intern/AUD_IWriter.h (+1/-1)
intern/audaspace/intern/AUD_JOSResampleFactory.cpp (+3/-3)
intern/audaspace/intern/AUD_JOSResampleFactory.h (+2/-2)
intern/audaspace/intern/AUD_JOSResampleReader.cpp (+1/-1)
intern/audaspace/intern/AUD_JOSResampleReader.h (+1/-1)
intern/audaspace/intern/AUD_LinearResampleFactory.cpp (+3/-3)
intern/audaspace/intern/AUD_LinearResampleFactory.h (+2/-2)
intern/audaspace/intern/AUD_LinearResampleReader.cpp (+2/-2)
intern/audaspace/intern/AUD_LinearResampleReader.h (+1/-1)
intern/audaspace/intern/AUD_Mixer.h (+2/-1)
intern/audaspace/intern/AUD_MixerFactory.cpp (+3/-3)
intern/audaspace/intern/AUD_MixerFactory.h (+4/-4)
intern/audaspace/intern/AUD_MutexLock.h (+24/-0)
intern/audaspace/intern/AUD_NULLDevice.cpp (+4/-4)
intern/audaspace/intern/AUD_NULLDevice.h (+2/-2)
intern/audaspace/intern/AUD_PyInit.h (+2/-2)
intern/audaspace/intern/AUD_Reference.h (+0/-275)
intern/audaspace/intern/AUD_ReferenceHandler.cpp (+0/-52)
intern/audaspace/intern/AUD_ResampleReader.cpp (+1/-1)
intern/audaspace/intern/AUD_ResampleReader.h (+1/-1)
intern/audaspace/intern/AUD_Sequencer.cpp (+176/-0)
intern/audaspace/intern/AUD_Sequencer.h (+206/-0)
intern/audaspace/intern/AUD_SequencerEntry.cpp (+16/-41)
intern/audaspace/intern/AUD_SequencerEntry.h (+8/-7)
intern/audaspace/intern/AUD_SequencerFactory.cpp (+40/-118)
intern/audaspace/intern/AUD_SequencerFactory.h (+13/-49)
intern/audaspace/intern/AUD_SequencerHandle.cpp (+14/-15)
intern/audaspace/intern/AUD_SequencerHandle.h (+5/-5)
intern/audaspace/intern/AUD_SequencerReader.cpp (+36/-37)
intern/audaspace/intern/AUD_SequencerReader.h (+7/-7)
intern/audaspace/intern/AUD_SilenceFactory.cpp (+2/-2)
intern/audaspace/intern/AUD_SilenceFactory.h (+1/-1)
intern/audaspace/intern/AUD_SinusFactory.cpp (+2/-2)
intern/audaspace/intern/AUD_SinusFactory.h (+1/-1)
intern/audaspace/intern/AUD_SoftwareDevice.cpp (+109/-81)
intern/audaspace/intern/AUD_SoftwareDevice.h (+11/-11)
intern/audaspace/intern/AUD_StreamBufferFactory.cpp (+4/-4)
intern/audaspace/intern/AUD_StreamBufferFactory.h (+5/-4)
intern/audaspace/sndfile/AUD_SndFileFactory.cpp (+4/-4)
intern/audaspace/sndfile/AUD_SndFileFactory.h (+3/-3)
intern/audaspace/sndfile/AUD_SndFileReader.cpp (+1/-1)
intern/audaspace/sndfile/AUD_SndFileReader.h (+3/-3)
intern/boolop/CMakeLists.txt (+0/-111)
intern/boolop/SConscript (+0/-31)
intern/boolop/extern/BOP_Interface.h (+0/-47)
intern/boolop/intern/BOP_BBox.cpp (+0/-64)
intern/boolop/intern/BOP_BBox.h (+0/-98)
intern/boolop/intern/BOP_BSPNode.cpp (+0/-718)
intern/boolop/intern/BOP_BSPNode.h (+0/-107)
intern/boolop/intern/BOP_BSPTree.cpp (+0/-190)
intern/boolop/intern/BOP_BSPTree.h (+0/-76)
intern/boolop/intern/BOP_CarveInterface.cpp (+0/-818)
intern/boolop/intern/BOP_Chrono.h (+0/-54)
intern/boolop/intern/BOP_Edge.cpp (+0/-125)
intern/boolop/intern/BOP_Edge.h (+0/-70)
intern/boolop/intern/BOP_Face.cpp (+0/-430)
intern/boolop/intern/BOP_Face.h (+0/-120)
intern/boolop/intern/BOP_Face2Face.cpp (+0/-1250)
intern/boolop/intern/BOP_Face2Face.h (+0/-46)
intern/boolop/intern/BOP_Indexs.h (+0/-42)
intern/boolop/intern/BOP_Interface.cpp (+0/-535)
intern/boolop/intern/BOP_MathUtils.cpp (+0/-471)
intern/boolop/intern/BOP_MathUtils.h (+0/-83)
intern/boolop/intern/BOP_Merge.cpp (+0/-811)
intern/boolop/intern/BOP_Merge.h (+0/-81)
intern/boolop/intern/BOP_Merge2.cpp (+0/-948)
intern/boolop/intern/BOP_Merge2.h (+0/-104)
intern/boolop/intern/BOP_Mesh.cpp (+0/-1090)
intern/boolop/intern/BOP_Mesh.h (+0/-118)
intern/boolop/intern/BOP_Misc.h (+0/-58)
intern/boolop/intern/BOP_Segment.cpp (+0/-249)
intern/boolop/intern/BOP_Segment.h (+0/-74)
intern/boolop/intern/BOP_Splitter.cpp (+0/-194)
intern/boolop/intern/BOP_Splitter.h (+0/-46)
intern/boolop/intern/BOP_Tag.cpp (+0/-144)
intern/boolop/intern/BOP_Tag.h (+0/-147)
intern/boolop/intern/BOP_Triangulator.cpp (+0/-573)
intern/boolop/intern/BOP_Triangulator.h (+0/-46)
intern/boolop/intern/BOP_Vertex.cpp (+0/-115)
intern/boolop/intern/BOP_Vertex.h (+0/-67)
intern/bsp/CMakeLists.txt (+20/-1)
intern/bsp/SConscript (+44/-4)
intern/bsp/extern/CSG_BooleanOps.h (+4/-4)
intern/bsp/intern/BOP_CarveInterface.cpp (+829/-0)
intern/bsp/intern/BOP_Interface.h (+47/-0)
intern/bsp/intern/BSP_CSGMesh.cpp (+1/-1)
intern/bsp/intern/BSP_CSGMesh_CFIterator.h (+2/-2)
intern/bsp/intern/CSG_BooleanOps.cpp (+11/-12)
intern/bsp/test/BSP_GhostTest/BSP_GhostTest.dsp (+0/-126)
intern/bsp/test/BSP_GhostTest/BSP_GhostTest.dsw (+0/-125)
intern/bsp/test/BSP_GhostTest/BSP_GhostTest3D.cpp (+0/-649)
intern/bsp/test/BSP_GhostTest/BSP_GhostTest3D.h (+0/-159)
intern/bsp/test/BSP_GhostTest/BSP_MeshDrawer.cpp (+0/-156)
intern/bsp/test/BSP_GhostTest/BSP_MeshDrawer.h (+0/-71)
intern/bsp/test/BSP_GhostTest/BSP_PlyLoader.cpp (+0/-192)
intern/bsp/test/BSP_GhostTest/BSP_PlyLoader.h (+0/-60)
intern/bsp/test/BSP_GhostTest/BSP_TMesh.h (+0/-397)
intern/bsp/test/BSP_GhostTest/bsp.ply (+0/-7560)
intern/bsp/test/BSP_GhostTest/bsp_cube.ply (+0/-25)
intern/bsp/test/BSP_GhostTest/main.cpp (+0/-143)
intern/bsp/test/BSP_GhostTest/ply.h (+0/-196)
intern/bsp/test/BSP_GhostTest/plyfile.c (+0/-2544)
intern/container/CMakeLists.txt (+1/-4)
intern/container/CTR_HashedPtr.h (+16/-9)
intern/container/CTR_List.h (+0/-112)
intern/container/CTR_Map.h (+42/-42)
intern/container/CTR_TaggedIndex.h (+4/-13)
intern/container/CTR_TaggedSetOps.h (+30/-31)
intern/container/CTR_UHeap.h (+0/-305)
intern/container/SConscript (+27/-1)
intern/container/intern/CTR_List.cpp (+0/-150)
intern/cycles/CMakeLists.txt (+21/-18)
intern/cycles/SConscript (+65/-17)
intern/cycles/app/CMakeLists.txt (+3/-4)
intern/cycles/app/cycles_server.cpp (+15/-8)
intern/cycles/app/cycles_test.cpp (+16/-11)
intern/cycles/app/cycles_xml.cpp (+49/-18)
intern/cycles/blender/CCL_api.h (+3/-3)
intern/cycles/blender/CMakeLists.txt (+4/-1)
intern/cycles/blender/addon/__init__.py (+36/-15)
intern/cycles/blender/addon/engine.py (+11/-4)
intern/cycles/blender/addon/enums.py (+0/-56)
intern/cycles/blender/addon/osl.py (+133/-0)
intern/cycles/blender/addon/properties.py (+386/-32)
intern/cycles/blender/addon/ui.py (+440/-118)
intern/cycles/blender/blender_camera.cpp (+337/-102)
intern/cycles/blender/blender_curves.cpp (+1175/-0)
intern/cycles/blender/blender_mesh.cpp (+298/-99)
intern/cycles/blender/blender_object.cpp (+261/-84)
intern/cycles/blender/blender_particles.cpp (+85/-0)
intern/cycles/blender/blender_python.cpp (+251/-9)
intern/cycles/blender/blender_session.cpp (+392/-101)
intern/cycles/blender/blender_session.h (+22/-3)
intern/cycles/blender/blender_shader.cpp (+327/-79)
intern/cycles/blender/blender_sync.cpp (+140/-32)
intern/cycles/blender/blender_sync.h (+34/-14)
intern/cycles/blender/blender_util.h (+180/-53)
intern/cycles/bvh/CMakeLists.txt (+8/-0)
intern/cycles/bvh/bvh.cpp (+137/-38)
intern/cycles/bvh/bvh.h (+9/-6)
intern/cycles/bvh/bvh_binning.cpp (+224/-0)
intern/cycles/bvh/bvh_binning.h (+86/-0)
intern/cycles/bvh/bvh_build.cpp (+380/-401)
intern/cycles/bvh/bvh_build.h (+40/-75)
intern/cycles/bvh/bvh_node.cpp (+23/-5)
intern/cycles/bvh/bvh_node.h (+16/-4)
intern/cycles/bvh/bvh_params.h (+91/-3)
intern/cycles/bvh/bvh_sort.cpp (+10/-8)
intern/cycles/bvh/bvh_sort.h (+2/-2)
intern/cycles/bvh/bvh_split.cpp (+326/-0)
intern/cycles/bvh/bvh_split.h (+110/-0)
intern/cycles/cmake/external_libs.cmake (+3/-56)
intern/cycles/device/CMakeLists.txt (+12/-1)
intern/cycles/device/device.cpp (+8/-75)
intern/cycles/device/device.h (+15/-29)
intern/cycles/device/device_cpu.cpp (+164/-84)
intern/cycles/device/device_cuda.cpp (+184/-80)
intern/cycles/device/device_intern.h (+5/-5)
intern/cycles/device/device_multi.cpp (+37/-9)
intern/cycles/device/device_network.cpp (+381/-213)
intern/cycles/device/device_network.h (+110/-9)
intern/cycles/device/device_opencl.cpp (+91/-54)
intern/cycles/device/device_task.cpp (+113/-0)
intern/cycles/device/device_task.h (+76/-0)
intern/cycles/kernel/CMakeLists.txt (+36/-20)
intern/cycles/kernel/SConscript (+31/-4)
intern/cycles/kernel/closure/bsdf.h (+296/-0)
intern/cycles/kernel/closure/bsdf_ashikhmin_velvet.h (+151/-0)
intern/cycles/kernel/closure/bsdf_diffuse.h (+140/-0)
intern/cycles/kernel/closure/bsdf_diffuse_ramp.h (+96/-0)
intern/cycles/kernel/closure/bsdf_microfacet.h (+478/-0)
intern/cycles/kernel/closure/bsdf_oren_nayar.h (+97/-0)
intern/cycles/kernel/closure/bsdf_phong_ramp.h (+131/-0)
intern/cycles/kernel/closure/bsdf_reflection.h (+84/-0)
intern/cycles/kernel/closure/bsdf_refraction.h (+91/-0)
intern/cycles/kernel/closure/bsdf_toon.h (+206/-0)
intern/cycles/kernel/closure/bsdf_transparent.h (+74/-0)
intern/cycles/kernel/closure/bsdf_util.h (+137/-0)
intern/cycles/kernel/closure/bsdf_ward.h (+195/-0)
intern/cycles/kernel/closure/bsdf_westin.h (+182/-0)
intern/cycles/kernel/closure/emissive.h (+60/-0)
intern/cycles/kernel/closure/volume.h (+81/-0)
intern/cycles/kernel/kernel.cpp (+6/-136)
intern/cycles/kernel/kernel.h (+12/-5)
intern/cycles/kernel/kernel_accumulate.h (+52/-20)
intern/cycles/kernel/kernel_bvh.h (+824/-31)
intern/cycles/kernel/kernel_camera.h (+79/-16)
intern/cycles/kernel/kernel_compat_cpu.h (+11/-8)
intern/cycles/kernel/kernel_compat_cuda.h (+11/-0)
intern/cycles/kernel/kernel_compat_opencl.h (+2/-1)
intern/cycles/kernel/kernel_curve.h (+141/-0)
intern/cycles/kernel/kernel_differential.h (+4/-4)
intern/cycles/kernel/kernel_displace.h (+7/-2)
intern/cycles/kernel/kernel_emission.h (+71/-33)
intern/cycles/kernel/kernel_globals.h (+22/-17)
intern/cycles/kernel/kernel_light.h (+377/-128)
intern/cycles/kernel/kernel_mbvh.h (+0/-394)
intern/cycles/kernel/kernel_montecarlo.h (+32/-84)
intern/cycles/kernel/kernel_object.h (+238/-24)
intern/cycles/kernel/kernel_optimized.cpp (+0/-60)
intern/cycles/kernel/kernel_passes.h (+12/-6)
intern/cycles/kernel/kernel_path.h (+648/-56)
intern/cycles/kernel/kernel_primitive.h (+185/-0)
intern/cycles/kernel/kernel_projection.h (+210/-0)
intern/cycles/kernel/kernel_qbvh.h (+0/-413)
intern/cycles/kernel/kernel_random.h (+4/-4)
intern/cycles/kernel/kernel_shader.h (+315/-152)
intern/cycles/kernel/kernel_sse2.cpp (+60/-0)
intern/cycles/kernel/kernel_sse3.cpp (+60/-0)
intern/cycles/kernel/kernel_textures.h (+42/-12)
intern/cycles/kernel/kernel_triangle.h (+11/-0)
intern/cycles/kernel/kernel_types.h (+241/-63)
intern/cycles/kernel/osl/CMakeLists.txt (+8/-13)
intern/cycles/kernel/osl/SConscript (+53/-0)
intern/cycles/kernel/osl/background.cpp (+57/-32)
intern/cycles/kernel/osl/bsdf_ashikhmin_velvet.cpp (+0/-175)
intern/cycles/kernel/osl/bsdf_diffuse.cpp (+0/-181)
intern/cycles/kernel/osl/bsdf_diffuse_ramp.cpp (+115/-0)
intern/cycles/kernel/osl/bsdf_microfacet.cpp (+0/-533)
intern/cycles/kernel/osl/bsdf_oren_nayar.cpp (+0/-174)
intern/cycles/kernel/osl/bsdf_phong_ramp.cpp (+115/-0)
intern/cycles/kernel/osl/bsdf_reflection.cpp (+0/-108)
intern/cycles/kernel/osl/bsdf_refraction.cpp (+0/-120)
intern/cycles/kernel/osl/bsdf_toon.cpp (+179/-0)
intern/cycles/kernel/osl/bsdf_transparent.cpp (+0/-97)
intern/cycles/kernel/osl/bsdf_ward.cpp (+0/-222)
intern/cycles/kernel/osl/bsdf_westin.cpp (+0/-239)
intern/cycles/kernel/osl/bssrdf.cpp (+0/-105)
intern/cycles/kernel/osl/debug.cpp (+0/-80)
intern/cycles/kernel/osl/emissive.cpp (+40/-49)
intern/cycles/kernel/osl/nodes/CMakeLists.txt (+0/-88)
intern/cycles/kernel/osl/nodes/node_add_closure.osl (+0/-28)
intern/cycles/kernel/osl/nodes/node_attribute.osl (+0/-43)
intern/cycles/kernel/osl/nodes/node_background.osl (+0/-28)
intern/cycles/kernel/osl/nodes/node_blend_texture.osl (+0/-78)
intern/cycles/kernel/osl/nodes/node_blend_weight.osl (+0/-42)
intern/cycles/kernel/osl/nodes/node_brightness.osl (+0/-50)
intern/cycles/kernel/osl/nodes/node_bump.osl (+0/-46)
intern/cycles/kernel/osl/nodes/node_camera.osl (+0/-33)
intern/cycles/kernel/osl/nodes/node_clouds_texture.osl (+0/-42)
intern/cycles/kernel/osl/nodes/node_color.h (+0/-125)
intern/cycles/kernel/osl/nodes/node_convert_from_color.osl (+0/-33)
intern/cycles/kernel/osl/nodes/node_convert_from_float.osl (+0/-33)
intern/cycles/kernel/osl/nodes/node_convert_from_normal.osl (+0/-33)
intern/cycles/kernel/osl/nodes/node_convert_from_point.osl (+0/-33)
intern/cycles/kernel/osl/nodes/node_convert_from_vector.osl (+0/-33)
intern/cycles/kernel/osl/nodes/node_diffuse_bsdf.osl (+0/-32)
intern/cycles/kernel/osl/nodes/node_distorted_noise_texture.osl (+0/-46)
intern/cycles/kernel/osl/nodes/node_emission.osl (+0/-32)
intern/cycles/kernel/osl/nodes/node_environment_texture.osl (+0/-34)
intern/cycles/kernel/osl/nodes/node_fresnel.h (+0/-21)
intern/cycles/kernel/osl/nodes/node_fresnel.osl (+0/-31)
intern/cycles/kernel/osl/nodes/node_gamma.osl (+0/-33)
intern/cycles/kernel/osl/nodes/node_geometry.osl (+0/-50)
intern/cycles/kernel/osl/nodes/node_glass_bsdf.osl (+0/-41)
intern/cycles/kernel/osl/nodes/node_glossy_bsdf.osl (+0/-37)
intern/cycles/kernel/osl/nodes/node_holdout.osl (+0/-28)
intern/cycles/kernel/osl/nodes/node_hsv.osl (+0/-43)
intern/cycles/kernel/osl/nodes/node_image_texture.osl (+0/-34)
intern/cycles/kernel/osl/nodes/node_invert.osl (+0/-29)
intern/cycles/kernel/osl/nodes/node_light_path.osl (+0/-38)
intern/cycles/kernel/osl/nodes/node_magic_texture.osl (+0/-103)
intern/cycles/kernel/osl/nodes/node_mapping.osl (+0/-28)
intern/cycles/kernel/osl/nodes/node_marble_texture.osl (+0/-58)
intern/cycles/kernel/osl/nodes/node_math.osl (+0/-84)
intern/cycles/kernel/osl/nodes/node_mix.osl (+0/-316)
intern/cycles/kernel/osl/nodes/node_mix_closure.osl (+0/-30)
intern/cycles/kernel/osl/nodes/node_musgrave_texture.osl (+0/-218)
intern/cycles/kernel/osl/nodes/node_noise_texture.osl (+0/-36)
intern/cycles/kernel/osl/nodes/node_normal.osl (+0/-31)
intern/cycles/kernel/osl/nodes/node_output_displacement.osl (+0/-25)
intern/cycles/kernel/osl/nodes/node_output_surface.osl (+0/-25)
intern/cycles/kernel/osl/nodes/node_output_volume.osl (+0/-25)
intern/cycles/kernel/osl/nodes/node_sepcomb_rgb.osl (+0/-40)
intern/cycles/kernel/osl/nodes/node_sky_texture.osl (+0/-162)
intern/cycles/kernel/osl/nodes/node_stucci_texture.osl (+0/-49)
intern/cycles/kernel/osl/nodes/node_texture.h (+0/-251)
intern/cycles/kernel/osl/nodes/node_texture_coordinate.osl (+0/-66)
intern/cycles/kernel/osl/nodes/node_translucent_bsdf.osl (+0/-28)
intern/cycles/kernel/osl/nodes/node_transparent_bsdf.osl (+0/-28)
intern/cycles/kernel/osl/nodes/node_value.osl (+0/-33)
intern/cycles/kernel/osl/nodes/node_vector_math.osl (+0/-53)
intern/cycles/kernel/osl/nodes/node_velvet_bsdf.osl (+0/-32)
intern/cycles/kernel/osl/nodes/node_voronoi_texture.osl (+0/-82)
intern/cycles/kernel/osl/nodes/node_ward_bsdf.osl (+0/-30)
intern/cycles/kernel/osl/nodes/node_wood_texture.osl (+0/-63)
intern/cycles/kernel/osl/nodes/stdosl.h (+0/-472)
intern/cycles/kernel/osl/osl_closures.cpp (+140/-27)
intern/cycles/kernel/osl/osl_closures.h (+124/-61)
intern/cycles/kernel/osl/osl_globals.h (+36/-10)
intern/cycles/kernel/osl/osl_services.cpp (+754/-257)
intern/cycles/kernel/osl/osl_services.h (+86/-42)
intern/cycles/kernel/osl/osl_shader.cpp (+223/-220)
intern/cycles/kernel/osl/osl_shader.h (+22/-27)
intern/cycles/kernel/osl/vol_subsurface.cpp (+0/-135)
intern/cycles/kernel/shaders/CMakeLists.txt (+105/-0)
intern/cycles/kernel/shaders/SConscript (+68/-0)
intern/cycles/kernel/shaders/node_add_closure.osl (+28/-0)
intern/cycles/kernel/shaders/node_ambient_occlusion.osl (+28/-0)
intern/cycles/kernel/shaders/node_attribute.osl (+43/-0)
intern/cycles/kernel/shaders/node_background.osl (+28/-0)
intern/cycles/kernel/shaders/node_brick_texture.osl (+100/-0)
intern/cycles/kernel/shaders/node_brightness.osl (+34/-0)
intern/cycles/kernel/shaders/node_bump.osl (+49/-0)
intern/cycles/kernel/shaders/node_camera.osl (+33/-0)
intern/cycles/kernel/shaders/node_checker_texture.osl (+65/-0)
intern/cycles/kernel/shaders/node_color.h (+125/-0)
intern/cycles/kernel/shaders/node_combine_rgb.osl (+29/-0)
intern/cycles/kernel/shaders/node_convert_from_color.osl (+36/-0)
intern/cycles/kernel/shaders/node_convert_from_float.osl (+36/-0)
intern/cycles/kernel/shaders/node_convert_from_int.osl (+37/-0)
intern/cycles/kernel/shaders/node_convert_from_normal.osl (+36/-0)
intern/cycles/kernel/shaders/node_convert_from_point.osl (+36/-0)
intern/cycles/kernel/shaders/node_convert_from_string.osl (+31/-0)
intern/cycles/kernel/shaders/node_convert_from_vector.osl (+36/-0)
intern/cycles/kernel/shaders/node_diffuse_bsdf.osl (+32/-0)
intern/cycles/kernel/shaders/node_emission.osl (+32/-0)
intern/cycles/kernel/shaders/node_environment_texture.osl (+72/-0)
intern/cycles/kernel/shaders/node_fresnel.h (+36/-0)
intern/cycles/kernel/shaders/node_fresnel.osl (+31/-0)
intern/cycles/kernel/shaders/node_gamma.osl (+27/-0)
intern/cycles/kernel/shaders/node_geometry.osl (+67/-0)
intern/cycles/kernel/shaders/node_glass_bsdf.osl (+43/-0)
intern/cycles/kernel/shaders/node_glossy_bsdf.osl (+37/-0)
intern/cycles/kernel/shaders/node_gradient_texture.osl (+81/-0)
intern/cycles/kernel/shaders/node_hair_info.osl (+32/-0)
intern/cycles/kernel/shaders/node_holdout.osl (+26/-0)
intern/cycles/kernel/shaders/node_hsv.osl (+42/-0)
intern/cycles/kernel/shaders/node_image_texture.osl (+127/-0)
intern/cycles/kernel/shaders/node_invert.osl (+29/-0)
intern/cycles/kernel/shaders/node_layer_weight.osl (+46/-0)
intern/cycles/kernel/shaders/node_light_falloff.osl (+46/-0)
intern/cycles/kernel/shaders/node_light_path.osl (+41/-0)
intern/cycles/kernel/shaders/node_magic_texture.osl (+111/-0)
intern/cycles/kernel/shaders/node_mapping.osl (+35/-0)
intern/cycles/kernel/shaders/node_math.osl (+88/-0)
intern/cycles/kernel/shaders/node_mix.osl (+331/-0)
intern/cycles/kernel/shaders/node_mix_closure.osl (+30/-0)
intern/cycles/kernel/shaders/node_musgrave_texture.osl (+229/-0)
intern/cycles/kernel/shaders/node_noise_texture.osl (+63/-0)
intern/cycles/kernel/shaders/node_normal.osl (+30/-0)
intern/cycles/kernel/shaders/node_normal_map.osl (+60/-0)
intern/cycles/kernel/shaders/node_object_info.osl (+32/-0)
intern/cycles/kernel/shaders/node_output_displacement.osl (+25/-0)
intern/cycles/kernel/shaders/node_output_surface.osl (+25/-0)
intern/cycles/kernel/shaders/node_output_volume.osl (+25/-0)
intern/cycles/kernel/shaders/node_particle_info.osl (+38/-0)
intern/cycles/kernel/shaders/node_refraction_bsdf.osl (+39/-0)
intern/cycles/kernel/shaders/node_rgb_curves.osl (+53/-0)
intern/cycles/kernel/shaders/node_rgb_ramp.osl (+46/-0)
intern/cycles/kernel/shaders/node_separate_rgb.osl (+30/-0)
intern/cycles/kernel/shaders/node_set_normal.osl (+28/-0)
intern/cycles/kernel/shaders/node_sky_texture.osl (+169/-0)
intern/cycles/kernel/shaders/node_tangent.osl (+50/-0)
intern/cycles/kernel/shaders/node_texture.h (+289/-0)
intern/cycles/kernel/shaders/node_texture_coordinate.osl (+83/-0)
intern/cycles/kernel/shaders/node_translucent_bsdf.osl (+28/-0)
intern/cycles/kernel/shaders/node_transparent_bsdf.osl (+28/-0)
intern/cycles/kernel/shaders/node_value.osl (+33/-0)
intern/cycles/kernel/shaders/node_vector_curves.osl (+53/-0)
intern/cycles/kernel/shaders/node_vector_math.osl (+53/-0)
intern/cycles/kernel/shaders/node_velvet_bsdf.osl (+32/-0)
intern/cycles/kernel/shaders/node_voronoi_texture.osl (+55/-0)
intern/cycles/kernel/shaders/node_ward_bsdf.osl (+51/-0)
intern/cycles/kernel/shaders/node_wave_texture.osl (+68/-0)
intern/cycles/kernel/shaders/oslutil.h (+94/-0)
intern/cycles/kernel/shaders/stdosl.h (+489/-0)
intern/cycles/kernel/svm/bsdf.h (+0/-135)
intern/cycles/kernel/svm/bsdf_ashikhmin_velvet.h (+0/-161)
intern/cycles/kernel/svm/bsdf_diffuse.h (+0/-156)
intern/cycles/kernel/svm/bsdf_microfacet.h (+0/-508)
intern/cycles/kernel/svm/bsdf_oren_nayar.h (+0/-106)
intern/cycles/kernel/svm/bsdf_reflection.h (+0/-93)
intern/cycles/kernel/svm/bsdf_refraction.h (+0/-102)
intern/cycles/kernel/svm/bsdf_transparent.h (+0/-79)
intern/cycles/kernel/svm/bsdf_ward.h (+0/-200)
intern/cycles/kernel/svm/bsdf_westin.h (+0/-207)
intern/cycles/kernel/svm/emissive.h (+0/-60)
intern/cycles/kernel/svm/svm.h (+83/-6)
intern/cycles/kernel/svm/svm_attribute.h (+28/-20)
intern/cycles/kernel/svm/svm_brick.h (+115/-0)
intern/cycles/kernel/svm/svm_bsdf.h (+0/-245)
intern/cycles/kernel/svm/svm_closure.h (+269/-135)
intern/cycles/kernel/svm/svm_convert.h (+27/-1)
intern/cycles/kernel/svm/svm_displace.h (+20/-8)
intern/cycles/kernel/svm/svm_fresnel.h (+1/-1)
intern/cycles/kernel/svm/svm_gamma.h (+3/-3)
intern/cycles/kernel/svm/svm_geometry.h (+111/-10)
intern/cycles/kernel/svm/svm_gradient.h (+6/-6)
intern/cycles/kernel/svm/svm_hsv.h (+3/-3)
intern/cycles/kernel/svm/svm_image.h (+208/-45)
intern/cycles/kernel/svm/svm_light_path.h (+28/-0)
intern/cycles/kernel/svm/svm_magic.h (+9/-9)
intern/cycles/kernel/svm/svm_mapping.h (+11/-0)
intern/cycles/kernel/svm/svm_math.h (+2/-52)
intern/cycles/kernel/svm/svm_mix.h (+20/-8)
intern/cycles/kernel/svm/svm_musgrave.h (+4/-4)
intern/cycles/kernel/svm/svm_noise.h (+13/-8)
intern/cycles/kernel/svm/svm_noisetex.h (+1/-1)
intern/cycles/kernel/svm/svm_ramp.h (+24/-4)
intern/cycles/kernel/svm/svm_tex_coord.h (+206/-41)
intern/cycles/kernel/svm/svm_texture.h (+24/-33)
intern/cycles/kernel/svm/svm_types.h (+151/-91)
intern/cycles/kernel/svm/svm_voronoi.h (+4/-7)
intern/cycles/kernel/svm/svm_wave.h (+5/-5)
intern/cycles/kernel/svm/volume.h (+0/-74)
intern/cycles/render/CMakeLists.txt (+10/-2)
intern/cycles/render/attribute.cpp (+162/-79)
intern/cycles/render/attribute.h (+29/-42)
intern/cycles/render/buffers.cpp (+69/-6)
intern/cycles/render/buffers.h (+27/-8)
intern/cycles/render/camera.cpp (+116/-27)
intern/cycles/render/camera.h (+31/-6)
intern/cycles/render/curves.cpp (+210/-0)
intern/cycles/render/curves.h (+139/-0)
intern/cycles/render/film.cpp (+34/-2)
intern/cycles/render/film.h (+2/-0)
intern/cycles/render/filter.cpp (+3/-3)
intern/cycles/render/graph.cpp (+230/-23)
intern/cycles/render/graph.h (+35/-6)
intern/cycles/render/image.cpp (+320/-134)
intern/cycles/render/image.h (+35/-6)
intern/cycles/render/integrator.cpp (+45/-3)
intern/cycles/render/integrator.h (+11/-1)
intern/cycles/render/light.cpp (+182/-61)
intern/cycles/render/light.h (+5/-0)
intern/cycles/render/mesh.cpp (+443/-190)
intern/cycles/render/mesh.h (+31/-2)
intern/cycles/render/mesh_displace.cpp (+23/-9)
intern/cycles/render/nodes.cpp (+1056/-63)
intern/cycles/render/nodes.h (+128/-6)
intern/cycles/render/object.cpp (+178/-43)
intern/cycles/render/object.h (+13/-3)
intern/cycles/render/osl.cpp (+493/-126)
intern/cycles/render/osl.h (+51/-5)
intern/cycles/render/particles.cpp (+122/-0)
intern/cycles/render/particles.h (+74/-0)
intern/cycles/render/scene.cpp (+123/-35)
intern/cycles/render/scene.h (+39/-4)
intern/cycles/render/session.cpp (+335/-74)
intern/cycles/render/session.h (+39/-9)
intern/cycles/render/shader.cpp (+41/-8)
intern/cycles/render/shader.h (+26/-5)
intern/cycles/render/svm.cpp (+93/-96)
intern/cycles/render/svm.h (+10/-3)
intern/cycles/render/tile.cpp (+231/-38)
intern/cycles/render/tile.h (+68/-11)
intern/cycles/subd/CMakeLists.txt (+5/-0)
intern/cycles/subd/subd_build.cpp (+15/-12)
intern/cycles/subd/subd_dice.cpp (+16/-16)
intern/cycles/subd/subd_patch.cpp (+6/-6)
intern/cycles/subd/subd_ring.cpp (+4/-4)
intern/cycles/subd/subd_split.cpp (+28/-28)
intern/cycles/util/CMakeLists.txt (+8/-1)
intern/cycles/util/util_boundbox.h (+174/-22)
intern/cycles/util/util_cache.cpp (+9/-1)
intern/cycles/util/util_cache.h (+4/-4)
intern/cycles/util/util_color.h (+3/-3)
intern/cycles/util/util_cuda.cpp (+39/-22)
intern/cycles/util/util_cuda.h (+216/-215)
intern/cycles/util/util_dynlib.cpp (+1/-1)
intern/cycles/util/util_hash.h (+22/-10)
intern/cycles/util/util_math.h (+622/-161)
intern/cycles/util/util_md5.cpp (+14/-14)
intern/cycles/util/util_md5.h (+3/-3)
intern/cycles/util/util_opencl.cpp (+206/-200)
intern/cycles/util/util_opencl.h (+51/-51)
intern/cycles/util/util_path.cpp (+20/-4)
intern/cycles/util/util_path.h (+3/-0)
intern/cycles/util/util_progress.h (+91/-14)
intern/cycles/util/util_stats.h (+44/-0)
intern/cycles/util/util_system.cpp (+22/-7)
intern/cycles/util/util_system.h (+2/-1)
intern/cycles/util/util_task.cpp (+290/-0)
intern/cycles/util/util_task.h (+130/-0)
intern/cycles/util/util_thread.h (+3/-164)
intern/cycles/util/util_transform.cpp (+136/-12)
intern/cycles/util/util_transform.h (+193/-7)
intern/cycles/util/util_types.h (+222/-58)
intern/cycles/util/util_view.cpp (+1/-1)
intern/decimation/CMakeLists.txt (+0/-63)
intern/decimation/SConscript (+0/-8)
intern/decimation/extern/LOD_decimation.h (+0/-117)
intern/decimation/intern/LOD_DecimationClass.h (+0/-118)
intern/decimation/intern/LOD_EdgeCollapser.cpp (+0/-410)
intern/decimation/intern/LOD_EdgeCollapser.h (+0/-117)
intern/decimation/intern/LOD_ExternBufferEditor.h (+0/-164)
intern/decimation/intern/LOD_ExternNormalEditor.cpp (+0/-264)
intern/decimation/intern/LOD_ExternNormalEditor.h (+0/-135)
intern/decimation/intern/LOD_FaceNormalEditor.cpp (+0/-291)
intern/decimation/intern/LOD_FaceNormalEditor.h (+0/-144)
intern/decimation/intern/LOD_ManMesh2.cpp (+0/-618)
intern/decimation/intern/LOD_ManMesh2.h (+0/-265)
intern/decimation/intern/LOD_MeshBounds.h (+0/-133)
intern/decimation/intern/LOD_MeshException.h (+0/-55)
intern/decimation/intern/LOD_MeshPrimitives.cpp (+0/-404)
intern/decimation/intern/LOD_MeshPrimitives.h (+0/-221)
intern/decimation/intern/LOD_QSDecimator.cpp (+0/-327)
intern/decimation/intern/LOD_QSDecimator.h (+0/-129)
intern/decimation/intern/LOD_Quadric.h (+0/-167)
intern/decimation/intern/LOD_QuadricEditor.cpp (+0/-279)
intern/decimation/intern/LOD_QuadricEditor.h (+0/-120)
intern/decimation/intern/LOD_decimation.cpp (+0/-155)
intern/decimation/intern/future/LOD_ExternVColorEditor.cpp (+0/-122)
intern/decimation/intern/future/LOD_ExternVColorEditor.h (+0/-93)
intern/decimation/intern/future/LOD_NdQSDecimator.cpp (+0/-517)
intern/decimation/intern/future/LOD_NdQSDecimator.h (+0/-144)
intern/decimation/intern/future/LOD_NdQuadric.cpp (+0/-289)
intern/decimation/intern/future/LOD_NdQuadric.h (+0/-157)
intern/decimation/intern/future/LOD_NdQuadricEditor.cpp (+0/-339)
intern/decimation/intern/future/LOD_NdQuadricEditor.h (+0/-123)
intern/decimation/test/decimate_glut_test/beethoven.ply (+0/-7560)
intern/decimation/test/decimate_glut_test/intern/GlutMeshDrawer.h (+0/-170)
intern/decimation/test/decimate_glut_test/intern/LOD_GhostTestApp.cpp (+0/-196)
intern/decimation/test/decimate_glut_test/intern/LOD_GhostTestApp.h (+0/-83)
intern/decimation/test/decimate_glut_test/intern/MyGlutKeyHandler.h (+0/-88)
intern/decimation/test/decimate_glut_test/intern/MyGlutMouseHandler.h (+0/-127)
intern/decimation/test/decimate_glut_test/intern/common/GlutDrawer.cpp (+0/-90)
intern/decimation/test/decimate_glut_test/intern/common/GlutDrawer.h (+0/-96)
intern/decimation/test/decimate_glut_test/intern/common/GlutKeyboardManager.cpp (+0/-84)
intern/decimation/test/decimate_glut_test/intern/common/GlutKeyboardManager.h (+0/-98)
intern/decimation/test/decimate_glut_test/intern/common/GlutMouseManager.cpp (+0/-117)
intern/decimation/test/decimate_glut_test/intern/common/GlutMouseManager.h (+0/-134)
intern/decimation/test/decimate_glut_test/intern/main.cpp (+0/-323)
intern/decimation/test/decimate_glut_test/intern/ply/ply.h (+0/-196)
intern/decimation/test/decimate_glut_test/intern/ply/plyfile.c (+0/-2544)
intern/dualcon/CMakeLists.txt (+4/-1)
intern/dualcon/SConscript (+27/-1)
intern/dualcon/dualcon.h (+25/-25)
intern/dualcon/intern/GeoCommon.h (+6/-11)
intern/dualcon/intern/MemoryAllocator.h (+159/-157)
intern/dualcon/intern/ModelReader.h (+26/-25)
intern/dualcon/intern/Projections.cpp (+310/-8)
intern/dualcon/intern/Projections.h (+55/-771)
intern/dualcon/intern/Queue.h (+67/-69)
intern/dualcon/intern/cubes.h (+11/-11)
intern/dualcon/intern/dualcon_c_api.cpp (+150/-147)
intern/dualcon/intern/marching_cubes_table.cpp (+512/-512)
intern/dualcon/intern/octree.cpp (+962/-1238)
intern/dualcon/intern/octree.h (+540/-578)
intern/elbeem/CMakeLists.txt (+4/-0)
intern/elbeem/SConscript (+27/-1)
intern/elbeem/intern/controlparticles.cpp (+4/-4)
intern/elbeem/intern/globals.h (+10/-0)
intern/elbeem/intern/mvmcoords.cpp (+7/-0)
intern/elbeem/intern/ntl_blenderdumper.cpp (+1/-4)
intern/elbeem/intern/ntl_geometryobject.cpp (+2/-2)
intern/elbeem/intern/ntl_geometryshader.h (+1/-1)
intern/elbeem/intern/ntl_vector3dim.h (+13/-8)
intern/elbeem/intern/ntl_world.cpp (+16/-4)
intern/elbeem/intern/ntl_world.h (+4/-0)
intern/elbeem/intern/particletracer.cpp (+1/-3)
intern/elbeem/intern/solver_adap.cpp (+0/-3)
intern/elbeem/intern/solver_init.cpp (+2/-3)
intern/elbeem/intern/solver_main.cpp (+2/-2)
intern/elbeem/intern/solver_relax.h (+1/-1)
intern/elbeem/intern/solver_util.cpp (+2/-4)
intern/elbeem/intern/utilities.cpp (+1/-1)
intern/ffmpeg/ffmpeg_compat.h (+86/-64)
intern/ghost/CMakeLists.txt (+16/-11)
intern/ghost/GHOST_C-api.h (+368/-341)
intern/ghost/GHOST_IEvent.h (+10/-12)
intern/ghost/GHOST_IEventConsumer.h (+10/-13)
intern/ghost/GHOST_ISystem.h (+131/-118)
intern/ghost/GHOST_ISystemPaths.h (+25/-18)
intern/ghost/GHOST_ITimerTask.h (+10/-11)
intern/ghost/GHOST_IWindow.h (+106/-104)
intern/ghost/GHOST_Path-api.h (+14/-14)
intern/ghost/GHOST_Rect.h (+55/-53)
intern/ghost/GHOST_Types.h (+60/-56)
intern/ghost/SConscript (+28/-2)
intern/ghost/intern/GHOST_Buttons.cpp (+25/-24)
intern/ghost/intern/GHOST_Buttons.h (+9/-9)
intern/ghost/intern/GHOST_C-api.cpp (+238/-209)
intern/ghost/intern/GHOST_CallbackEventConsumer.cpp (+3/-4)
intern/ghost/intern/GHOST_CallbackEventConsumer.h (+15/-11)
intern/ghost/intern/GHOST_Debug.h (+19/-8)
intern/ghost/intern/GHOST_DisplayManager.cpp (+23/-23)
intern/ghost/intern/GHOST_DisplayManager.h (+28/-23)
intern/ghost/intern/GHOST_DisplayManagerCarbon.cpp (+39/-41)
intern/ghost/intern/GHOST_DisplayManagerCarbon.h (+22/-22)
intern/ghost/intern/GHOST_DisplayManagerCocoa.h (+18/-18)
intern/ghost/intern/GHOST_DisplayManagerCocoa.mm (+3/-3)
intern/ghost/intern/GHOST_DisplayManagerNULL.h (+2/-2)
intern/ghost/intern/GHOST_DisplayManagerSDL.cpp (+4/-2)
intern/ghost/intern/GHOST_DisplayManagerSDL.h (+2/-2)
intern/ghost/intern/GHOST_DisplayManagerWin32.cpp (+58/-49)
intern/ghost/intern/GHOST_DisplayManagerWin32.h (+17/-17)
intern/ghost/intern/GHOST_DisplayManagerX11.cpp (+48/-48)
intern/ghost/intern/GHOST_DisplayManagerX11.h (+43/-43)
intern/ghost/intern/GHOST_DropTargetWin32.cpp (+83/-91)
intern/ghost/intern/GHOST_DropTargetWin32.h (+40/-41)
intern/ghost/intern/GHOST_DropTargetX11.cpp (+24/-24)
intern/ghost/intern/GHOST_DropTargetX11.h (+32/-32)
intern/ghost/intern/GHOST_Event.h (+12/-12)
intern/ghost/intern/GHOST_EventButton.h (+8/-8)
intern/ghost/intern/GHOST_EventCursor.h (+7/-7)
intern/ghost/intern/GHOST_EventDragnDrop.h (+14/-14)
intern/ghost/intern/GHOST_EventKey.h (+13/-13)
intern/ghost/intern/GHOST_EventManager.cpp (+28/-32)
intern/ghost/intern/GHOST_EventManager.h (+39/-34)
intern/ghost/intern/GHOST_EventNDOF.h (+20/-21)
intern/ghost/intern/GHOST_EventPrinter.cpp (+229/-224)
intern/ghost/intern/GHOST_EventPrinter.h (+6/-6)
intern/ghost/intern/GHOST_EventString.h (+10/-9)
intern/ghost/intern/GHOST_EventTrackpad.h (+6/-6)
intern/ghost/intern/GHOST_EventWheel.h (+6/-6)
intern/ghost/intern/GHOST_ISystem.cpp (+26/-27)
intern/ghost/intern/GHOST_ISystemPaths.cpp (+24/-25)
intern/ghost/intern/GHOST_ModifierKeys.cpp (+62/-63)
intern/ghost/intern/GHOST_ModifierKeys.h (+11/-12)
intern/ghost/intern/GHOST_NDOFManager.cpp (+17/-17)
intern/ghost/intern/GHOST_NDOFManager.h (+6/-6)
intern/ghost/intern/GHOST_NDOFManagerCocoa.mm (+1/-1)
intern/ghost/intern/GHOST_NDOFManagerWin32.cpp (+1/-1)
intern/ghost/intern/GHOST_NDOFManagerX11.cpp (+9/-6)
intern/ghost/intern/GHOST_Path-api.cpp (+17/-17)
intern/ghost/intern/GHOST_Rect.cpp (+3/-3)
intern/ghost/intern/GHOST_System.cpp (+48/-39)
intern/ghost/intern/GHOST_System.h (+101/-93)
intern/ghost/intern/GHOST_SystemCarbon.cpp (+443/-430)
intern/ghost/intern/GHOST_SystemCarbon.h (+76/-68)
intern/ghost/intern/GHOST_SystemCocoa.h (+82/-79)
intern/ghost/intern/GHOST_SystemCocoa.mm (+264/-189)
intern/ghost/intern/GHOST_SystemNULL.h (+21/-27)
intern/ghost/intern/GHOST_SystemPaths.h (+20/-21)
intern/ghost/intern/GHOST_SystemPathsCarbon.cpp (+14/-12)
intern/ghost/intern/GHOST_SystemPathsCarbon.h (+21/-21)
intern/ghost/intern/GHOST_SystemPathsCocoa.h (+11/-11)
intern/ghost/intern/GHOST_SystemPathsCocoa.mm (+8/-8)
intern/ghost/intern/GHOST_SystemPathsWin32.cpp (+17/-13)
intern/ghost/intern/GHOST_SystemPathsWin32.h (+11/-11)
intern/ghost/intern/GHOST_SystemPathsX11.cpp (+44/-30)
intern/ghost/intern/GHOST_SystemPathsX11.h (+11/-11)
intern/ghost/intern/GHOST_SystemSDL.cpp (+279/-259)
intern/ghost/intern/GHOST_SystemSDL.h (+5/-1)
intern/ghost/intern/GHOST_SystemWin32.cpp (+402/-395)
intern/ghost/intern/GHOST_SystemWin32.h (+113/-106)
intern/ghost/intern/GHOST_SystemX11.cpp (+1132/-633)
intern/ghost/intern/GHOST_SystemX11.h (+195/-136)
intern/ghost/intern/GHOST_TaskbarWin32.h (+38/-38)
intern/ghost/intern/GHOST_TimerManager.cpp (+12/-12)
intern/ghost/intern/GHOST_TimerManager.h (+25/-20)
intern/ghost/intern/GHOST_TimerTask.h (+23/-23)
intern/ghost/intern/GHOST_Window.cpp (+38/-26)
intern/ghost/intern/GHOST_Window.h (+84/-61)
intern/ghost/intern/GHOST_WindowCarbon.cpp (+264/-260)
intern/ghost/intern/GHOST_WindowCarbon.h (+81/-77)
intern/ghost/intern/GHOST_WindowCocoa.h (+89/-80)
intern/ghost/intern/GHOST_WindowCocoa.mm (+232/-194)
intern/ghost/intern/GHOST_WindowManager.cpp (+27/-28)
intern/ghost/intern/GHOST_WindowManager.h (+35/-37)
intern/ghost/intern/GHOST_WindowNULL.h (+31/-31)
intern/ghost/intern/GHOST_WindowSDL.cpp (+192/-180)
intern/ghost/intern/GHOST_WindowSDL.h (+14/-8)
intern/ghost/intern/GHOST_WindowWin32.cpp (+466/-441)
intern/ghost/intern/GHOST_WindowWin32.h (+99/-93)
intern/ghost/intern/GHOST_WindowX11.cpp (+558/-663)
intern/ghost/intern/GHOST_WindowX11.h (+146/-158)
intern/ghost/test/gears/GHOST_C-Test.c (+189/-196)
intern/ghost/test/gears/GHOST_Test.cpp (+323/-327)
intern/ghost/test/multitest/Basic.c (+35/-25)
intern/ghost/test/multitest/EventToBuf.c (+39/-32)
intern/ghost/test/multitest/MultiTest.c (+442/-388)
intern/ghost/test/multitest/ScrollBar.c (+81/-63)
intern/ghost/test/multitest/Util.c (+14/-11)
intern/ghost/test/multitest/WindowData.c (+11/-8)
intern/guardedalloc/MEM_guardedalloc.h (+109/-47)
intern/guardedalloc/SConscript (+26/-1)
intern/guardedalloc/cpp/mallocn.cpp (+31/-12)
intern/guardedalloc/intern/mallocn.c (+374/-197)
intern/guardedalloc/intern/mmap_win.c (+50/-52)
intern/guardedalloc/test/simpletest/memtest.c (+8/-5)
intern/iksolver/CMakeLists.txt (+1/-1)
intern/iksolver/SConscript (+28/-2)
intern/iksolver/extern/IK_solver.h (+3/-0)
intern/iksolver/intern/IK_QJacobian.cpp (+43/-43)
intern/iksolver/intern/IK_QJacobianSolver.cpp (+43/-43)
intern/iksolver/intern/IK_QJacobianSolver.h (+3/-3)
intern/iksolver/intern/IK_QSegment.cpp (+105/-104)
intern/iksolver/intern/IK_QSegment.h (+4/-4)
intern/iksolver/intern/IK_QTask.cpp (+40/-40)
intern/iksolver/intern/IK_QTask.h (+5/-5)
intern/iksolver/intern/IK_Solver.cpp (+50/-49)
intern/iksolver/intern/MT_ExpMap.cpp (+63/-65)
intern/iksolver/intern/MT_ExpMap.h (+2/-2)
intern/iksolver/intern/TNT/cmat.h (+1/-1)
intern/iksolver/intern/TNT/vec.h (+1/-1)
intern/itasc/Armature.cpp (+20/-17)
intern/itasc/Armature.hpp (+1/-1)
intern/itasc/CMakeLists.txt (+219/-188)
intern/itasc/Distance.cpp (+1/-1)
intern/itasc/FixedObject.cpp (+3/-2)
intern/itasc/FixedObject.hpp (+1/-1)
intern/itasc/MovingFrame.cpp (+2/-1)
intern/itasc/MovingFrame.hpp (+1/-1)
intern/itasc/Object.hpp (+1/-1)
intern/itasc/SConscript (+27/-4)
intern/itasc/Scene.cpp (+3/-2)
intern/itasc/kdl/chain.hpp (+7/-2)
intern/itasc/kdl/frames.hpp (+3/-0)
intern/itasc/kdl/frames.inl (+10/-2)
intern/itasc/kdl/jntarray.cpp (+17/-12)
intern/itasc/kdl/jntarray.hpp (+12/-6)
intern/itasc/kdl/joint.cpp (+17/-9)
intern/itasc/kdl/joint.hpp (+1/-1)
intern/itasc/kdl/kinfam_io.cpp (+1/-1)
intern/itasc/kdl/segment.cpp (+2/-2)
intern/itasc/kdl/segment.hpp (+3/-3)
intern/itasc/kdl/tree.cpp (+13/-7)
intern/itasc/kdl/tree.hpp (+18/-7)
intern/itasc/kdl/utilities/utility.h (+4/-0)
intern/itasc/kdl/utilities/utility_io.cpp (+5/-5)
intern/locale/CMakeLists.txt (+47/-0)
intern/locale/SConscript (+39/-0)
intern/locale/boost_locale_wrapper.cpp (+139/-0)
intern/locale/boost_locale_wrapper.h (+50/-0)
intern/memutil/MEM_Allocator.h (+1/-1)
intern/memutil/MEM_CacheLimiter.h (+121/-55)
intern/memutil/MEM_CacheLimiterC-Api.h (+58/-53)
intern/memutil/MEM_RefCountPtr.h (+2/-2)
intern/memutil/MEM_SmartPtr.h (+5/-5)
intern/memutil/SConscript (+27/-1)
intern/memutil/intern/MEM_CacheLimiterC-Api.cpp (+62/-57)
intern/mikktspace/SConscript (+27/-1)
intern/mikktspace/mikktspace.c (+236/-240)
intern/mikktspace/mikktspace.h (+1/-2)
intern/moto/SConscript (+27/-1)
intern/opencl/CMakeLists.txt (+42/-0)
intern/opencl/OCL_opencl.h (+37/-0)
intern/opencl/SConscript (+34/-0)
intern/opencl/intern/OCL_opencl.c (+37/-0)
intern/opencl/intern/clew.c (+311/-0)
intern/opencl/intern/clew.h (+1317/-0)
intern/opencolorio/CMakeLists.txt (+65/-0)
intern/opencolorio/SConscript (+44/-0)
intern/opencolorio/fallback_impl.cc (+382/-0)
intern/opencolorio/ocio_capi.cc (+284/-0)
intern/opencolorio/ocio_capi.h (+126/-0)
intern/opencolorio/ocio_impl.cc (+543/-0)
intern/opencolorio/ocio_impl.h (+240/-0)
intern/opennl/CMakeLists.txt (+8/-5)
intern/opennl/SConscript (+28/-5)
intern/opennl/intern/opennl.c (+11/-6)
intern/opennl/superlu/get_perm_c.c (+28/-24)
intern/raskter/CMakeLists.txt (+40/-0)
intern/raskter/SConscript (+35/-0)
intern/raskter/raskter.c (+458/-0)
intern/raskter/raskter.h (+40/-0)
intern/rigidbody/CMakeLists.txt (+35/-0)
intern/rigidbody/RBI_api.h (+309/-0)
intern/rigidbody/SConscript (+42/-0)
intern/rigidbody/rb_bullet_api.cpp (+950/-0)
intern/smoke/CMakeLists.txt (+3/-1)
intern/smoke/SConscript (+27/-1)
intern/smoke/extern/smoke_API.h (+44/-10)
intern/smoke/intern/FFT_NOISE.h (+5/-3)
intern/smoke/intern/FLUID_3D.cpp (+571/-142)
intern/smoke/intern/FLUID_3D.h (+52/-9)
intern/smoke/intern/FLUID_3D_SOLVERS.cpp (+0/-1)
intern/smoke/intern/FLUID_3D_STATIC.cpp (+23/-66)
intern/smoke/intern/MERSENNETWISTER.h (+1/-1)
intern/smoke/intern/OBSTACLE.h (+4/-2)
intern/smoke/intern/WAVELET_NOISE.h (+3/-1)
intern/smoke/intern/WTURBULENCE.cpp (+161/-21)
intern/smoke/intern/WTURBULENCE.h (+18/-1)
intern/smoke/intern/smoke_API.cpp (+320/-147)
intern/smoke/intern/spectrum.cpp (+426/-0)
intern/smoke/intern/spectrum.h (+6/-0)
intern/string/SConscript (+27/-1)
intern/string/STR_HashedString.h (+42/-46)
intern/string/STR_String.h (+77/-73)
intern/string/intern/STR_String.cpp (+219/-226)
intern/tools/bpy_introspect_ui.py (+77/-29)
intern/tools/credits_svn_gen.py (+206/-44)
intern/tools/dump_rna2xml.py (+1/-1)
intern/tools/pydna.py (+85/-61)
intern/utfconv/SConscript (+27/-1)
intern/utfconv/utf_winfunc.c (+21/-11)
intern/utfconv/utfconv.c (+7/-5)
intern/utfconv/utfconv.h (+11/-11)
release/bin/blender-thumbnailer.py (+2/-2)
release/darwin/blender.app/Contents/Info.plist (+56/-0)
release/darwin/blender.app/Contents/MacOS/blender (+1/-0)
release/darwin/blender.app/Contents/PkgInfo (+1/-0)
release/darwin/blenderplayer.app/Contents/Info.plist (+51/-0)
release/darwin/blenderplayer.app/Contents/MacOS/blenderplayer (+1/-0)
release/darwin/blenderplayer.app/Contents/PkgInfo (+1/-0)
release/darwin/set_simulation_threads.app/Contents/Info.plist (+44/-0)
release/darwin/set_simulation_threads.app/Contents/PkgInfo (+1/-0)
release/darwin/set_simulation_threads.app/Contents/Resources/description.rtfd/TXT.rtf (+4/-0)
release/datafiles/blender_icons.sh (+5/-0)
release/datafiles/blender_icons.svg (+84948/-0)
release/datafiles/colormanagement/config.ocio (+287/-0)
release/datafiles/colormanagement/luts/aces_to_xyz.spimtx (+3/-0)
release/datafiles/colormanagement/luts/adx_adx10_to_cdd.spimtx (+4/-0)
release/datafiles/colormanagement/luts/adx_cdd_to_cid.spimtx (+4/-0)
release/datafiles/colormanagement/luts/adx_cid_to_rle.spi1d (+4102/-0)
release/datafiles/colormanagement/luts/adx_exp_to_aces.spimtx (+4/-0)
release/datafiles/colormanagement/luts/colorworks_filmlg_to_p3.3dl (+4916/-0)
release/datafiles/colormanagement/luts/dci_xyz.spi1d (+65542/-0)
release/datafiles/colormanagement/luts/lg10.spi1d (+2054/-0)
release/datafiles/colormanagement/luts/rec709.spi1d (+4107/-0)
release/datafiles/colormanagement/luts/rec709_to_aces.spimtx (+3/-0)
release/datafiles/colormanagement/luts/rrt_ut33_dcdm.spi3d (+32771/-0)
release/datafiles/colormanagement/luts/rrt_ut33_p3dci.spi3d (+32771/-0)
release/datafiles/colormanagement/luts/rrt_ut33_rec709.spi3d (+32771/-0)
release/datafiles/colormanagement/luts/rrt_ut33_sRGB.spi3d (+32771/-0)
release/datafiles/colormanagement/luts/spi_ocio_srgb_test.spi3d (+32771/-0)
release/datafiles/colormanagement/luts/srgb.spi1d (+4107/-0)
release/datafiles/colormanagement/luts/srgb_to_xyz.spimtx (+3/-0)
release/datafiles/colormanagement/luts/vd16.spi1d (+131079/-0)
release/datafiles/locale/languages (+57/-0)
release/datafiles/matcaps/license.txt (+3/-0)
release/datafiles/prvicons.sh (+4/-0)
release/datafiles/prvicons.svg (+19741/-0)
release/plugins/Makefile (+0/-36)
release/plugins/bmake (+0/-141)
release/plugins/sequence/Makefile (+0/-32)
release/plugins/sequence/blur.c (+0/-284)
release/plugins/sequence/color-correction-hsv.c (+0/-293)
release/plugins/sequence/color-correction-yuv.c (+0/-239)
release/plugins/sequence/dnr.c (+0/-150)
release/plugins/sequence/gamma.c (+0/-183)
release/plugins/sequence/scatter.c (+0/-259)
release/plugins/texture/Makefile (+0/-32)
release/plugins/texture/clouds2.c (+0/-178)
release/plugins/texture/tiles.c (+0/-177)
release/scripts/addons/add_curve_aceous_galore.py (+0/-1143)
release/scripts/addons/add_curve_extra_objects/__init__.py (+88/-0)
release/scripts/addons/add_curve_extra_objects/add_curve_aceous_galore.py (+1122/-0)
release/scripts/addons/add_curve_extra_objects/add_curve_spirals.py (+246/-0)
release/scripts/addons/add_curve_extra_objects/add_curve_torus_knots.py (+225/-0)
release/scripts/addons/add_curve_ivygen.py (+6/-6)
release/scripts/addons/add_curve_sapling/__init__.py (+11/-12)
release/scripts/addons/add_curve_sapling/utils.py (+13/-7)
release/scripts/addons/add_curve_torus_knots.py (+0/-245)
release/scripts/addons/add_mesh_BoltFactory/Boltfactory.py (+1/-1)
release/scripts/addons/add_mesh_BoltFactory/__init__.py (+2/-2)
release/scripts/addons/add_mesh_BoltFactory/createMesh.py (+2/-2)
release/scripts/addons/add_mesh_ant_landscape.py (+6/-6)
release/scripts/addons/add_mesh_extra_objects/__init__.py (+2/-2)
release/scripts/addons/add_mesh_extra_objects/add_mesh_3d_function_surface.py (+4/-4)
release/scripts/addons/add_mesh_extra_objects/add_mesh_extra_objects.py (+3/-3)
release/scripts/addons/add_mesh_extra_objects/add_mesh_gears.py (+39/-22)
release/scripts/addons/add_mesh_extra_objects/add_mesh_gemstones.py (+2/-2)
release/scripts/addons/add_mesh_extra_objects/add_mesh_honeycomb.py (+2/-2)
release/scripts/addons/add_mesh_extra_objects/add_mesh_polysphere.py (+1/-1)
release/scripts/addons/add_mesh_extra_objects/add_mesh_pyramid.py (+121/-101)
release/scripts/addons/add_mesh_extra_objects/add_mesh_supertoroid.py (+10/-10)
release/scripts/addons/add_mesh_extra_objects/add_mesh_teapot.py (+10/-10)
release/scripts/addons/add_mesh_extra_objects/add_mesh_torusknot.py (+10/-10)
release/scripts/addons/add_mesh_extra_objects/add_mesh_twisted_torus.py (+2/-2)
release/scripts/addons/add_mesh_pipe_joint.py (+7/-7)
release/scripts/addons/add_mesh_solid.py (+2/-2)
release/scripts/addons/animation_add_corrective_shape_key.py (+2/-2)
release/scripts/addons/animation_animall.py (+119/-33)
release/scripts/addons/animation_rotobezier.py (+0/-378)
release/scripts/addons/compositing_film_response/__init__.py (+199/-0)
release/scripts/addons/compositing_film_response/film_response_curves.py (+36129/-0)
release/scripts/addons/curve_simplify.py (+4/-4)
release/scripts/addons/development_api_navigator.py (+2/-2)
release/scripts/addons/development_icon_get.py (+2/-2)
release/scripts/addons/game_engine_save_as_runtime.py (+2/-2)
release/scripts/addons/io_anim_acclaim/__init__.py (+13/-13)
release/scripts/addons/io_anim_bvh/__init__.py (+4/-4)
release/scripts/addons/io_anim_bvh/export_bvh.py (+12/-4)
release/scripts/addons/io_anim_bvh/import_bvh.py (+3/-2)
release/scripts/addons/io_anim_c3d/__init__.py (+23/-14)
release/scripts/addons/io_anim_c3d/import_c3d.py (+18/-3)
release/scripts/addons/io_anim_camera.py (+29/-17)
release/scripts/addons/io_anim_nuke_chan/__init__.py (+6/-6)
release/scripts/addons/io_coat3D/__init__.py (+2/-2)
release/scripts/addons/io_coat3D/coat.py (+10/-7)
release/scripts/addons/io_convert_image_to_mesh_img/__init__.py (+3/-3)
release/scripts/addons/io_convert_image_to_mesh_img/import_img.py (+22/-22)
release/scripts/addons/io_curve_svg/__init__.py (+3/-3)
release/scripts/addons/io_curve_svg/import_svg.py (+8/-8)
release/scripts/addons/io_curve_svg/svg_colors.py (+1/-1)
release/scripts/addons/io_export_after_effects.py (+9/-9)
release/scripts/addons/io_export_directx_x.py (+3/-3)
release/scripts/addons/io_export_dxf/__init__.py (+46/-0)
release/scripts/addons/io_export_dxf/draw_blenders/__init__.py (+87/-0)
release/scripts/addons/io_export_dxf/export_dxf.py (+268/-0)
release/scripts/addons/io_export_dxf/model/dxfLibrary.py (+927/-0)
release/scripts/addons/io_export_dxf/model/migiusModel.py (+122/-0)
release/scripts/addons/io_export_dxf/model/model.py (+38/-0)
release/scripts/addons/io_export_dxf/operator.py (+283/-0)
release/scripts/addons/io_export_dxf/primitive_exporters/__init__.py (+10/-0)
release/scripts/addons/io_export_dxf/primitive_exporters/base_exporter.py (+195/-0)
release/scripts/addons/io_export_dxf/primitive_exporters/camera_exporter.py (+55/-0)
release/scripts/addons/io_export_dxf/primitive_exporters/curve_exporter.py (+260/-0)
release/scripts/addons/io_export_dxf/primitive_exporters/empty_exporter.py (+20/-0)
release/scripts/addons/io_export_dxf/primitive_exporters/insert_exporter.py (+75/-0)
release/scripts/addons/io_export_dxf/primitive_exporters/lamp_exporter.py (+21/-0)
release/scripts/addons/io_export_dxf/primitive_exporters/mesh_exporter.py (+154/-0)
release/scripts/addons/io_export_dxf/primitive_exporters/text_exporter.py (+89/-0)
release/scripts/addons/io_export_dxf/primitive_exporters/viewborder_exporter.py (+24/-0)
release/scripts/addons/io_export_pc2.py (+7/-8)
release/scripts/addons/io_export_unreal_psk_psa.py (+2148/-1727)
release/scripts/addons/io_import_gimp_image_to_scene.py (+40/-37)
release/scripts/addons/io_import_images_as_planes.py (+477/-343)
release/scripts/addons/io_import_scene_dxf.py (+41/-16)
release/scripts/addons/io_import_scene_lwo.py (+39/-39)
release/scripts/addons/io_import_scene_mhx.py (+965/-593)
release/scripts/addons/io_import_scene_unreal_psa_psk.py (+1288/-0)
release/scripts/addons/io_import_scene_unreal_psk.py (+0/-804)
release/scripts/addons/io_mesh_pdb/__init__.py (+51/-560)
release/scripts/addons/io_mesh_pdb/export_pdb.py (+15/-47)
release/scripts/addons/io_mesh_pdb/import_pdb.py (+269/-583)
release/scripts/addons/io_mesh_ply/__init__.py (+7/-7)
release/scripts/addons/io_mesh_ply/export_ply.py (+10/-10)
release/scripts/addons/io_mesh_ply/import_ply.py (+73/-68)
release/scripts/addons/io_mesh_raw/__init__.py (+9/-21)
release/scripts/addons/io_mesh_raw/export_raw.py (+2/-0)
release/scripts/addons/io_mesh_stl/__init__.py (+15/-12)
release/scripts/addons/io_mesh_stl/blender_utils.py (+7/-7)
release/scripts/addons/io_mesh_stl/stl_utils.py (+15/-15)
release/scripts/addons/io_mesh_uv_layout/__init__.py (+2/-2)
release/scripts/addons/io_mesh_uv_layout/export_uv_png.py (+1/-1)
release/scripts/addons/io_scene_3ds/__init__.py (+7/-7)
release/scripts/addons/io_scene_3ds/export_3ds.py (+73/-79)
release/scripts/addons/io_scene_3ds/import_3ds.py (+31/-36)
release/scripts/addons/io_scene_fbx/__init__.py (+4/-4)
release/scripts/addons/io_scene_fbx/export_fbx.py (+44/-37)
release/scripts/addons/io_scene_m3/__init__.py (+0/-97)
release/scripts/addons/io_scene_m3/import_m3.py (+0/-365)
release/scripts/addons/io_scene_map/__init__.py (+3/-3)
release/scripts/addons/io_scene_map/export_map.py (+12/-12)
release/scripts/addons/io_scene_ms3d/__init__.py (+107/-0)
release/scripts/addons/io_scene_ms3d/ms3d_export.py (+904/-0)
release/scripts/addons/io_scene_ms3d/ms3d_import.py (+1006/-0)
release/scripts/addons/io_scene_ms3d/ms3d_spec.py (+2075/-0)
release/scripts/addons/io_scene_ms3d/ms3d_strings.py (+264/-0)
release/scripts/addons/io_scene_ms3d/ms3d_ui.py (+1736/-0)
release/scripts/addons/io_scene_ms3d/ms3d_utils.py (+221/-0)
release/scripts/addons/io_scene_obj/__init__.py (+9/-9)
release/scripts/addons/io_scene_obj/export_obj.py (+139/-95)
release/scripts/addons/io_scene_obj/import_obj.py (+100/-73)
release/scripts/addons/io_scene_x3d/__init__.py (+5/-5)
release/scripts/addons/io_scene_x3d/export_x3d.py (+19/-12)
release/scripts/addons/io_scene_x3d/import_x3d.py (+77/-58)
release/scripts/addons/io_sequencer_edl/__init__.py (+333/-0)
release/scripts/addons/io_sequencer_edl/import_edl.py (+319/-0)
release/scripts/addons/io_sequencer_edl/parse_edl.py (+586/-0)
release/scripts/addons/io_shape_mdd/__init__.py (+25/-26)
release/scripts/addons/io_shape_mdd/export_mdd.py (+8/-23)
release/scripts/addons/io_shape_mdd/import_mdd.py (+36/-36)
release/scripts/addons/light_field_tools/__init__.py (+9/-9)
release/scripts/addons/light_field_tools/light_field_tools.py (+6/-6)
release/scripts/addons/mesh_bsurfaces.py (+3370/-487)
release/scripts/addons/mesh_f2.py (+298/-0)
release/scripts/addons/mesh_inset/__init__.py (+1/-1)
release/scripts/addons/mesh_inset/geom.py (+1/-1)
release/scripts/addons/mesh_looptools.py (+4098/-0)
release/scripts/addons/mesh_relax.py (+4/-3)
release/scripts/addons/mocap/__init__.py (+70/-62)
release/scripts/addons/modules/constants_utils.py (+2/-2)
release/scripts/addons/modules/cursor_utils.py (+2/-2)
release/scripts/addons/modules/extensions_framework/__init__.py (+1/-1)
release/scripts/addons/modules/extensions_framework/ui.py (+2/-2)
release/scripts/addons/modules/extensions_framework/util.py (+1/-1)
release/scripts/addons/modules/extensions_framework/validate.py (+1/-1)
release/scripts/addons/modules/geometry_utils.py (+2/-2)
release/scripts/addons/modules/misc_utils.py (+2/-2)
release/scripts/addons/modules/rna_wiki_reference.py (+336/-0)
release/scripts/addons/modules/selection_utils.py (+5/-4)
release/scripts/addons/modules/ui_utils.py (+2/-2)
release/scripts/addons/netrender/__init__.py (+1/-6)
release/scripts/addons/netrender/client.py (+1/-1)
release/scripts/addons/netrender/master.py (+3/-3)
release/scripts/addons/netrender/master_html.py (+5/-5)
release/scripts/addons/netrender/operators.py (+15/-15)
release/scripts/addons/netrender/ui.py (+6/-4)
release/scripts/addons/netrender/utils.py (+3/-3)
release/scripts/addons/object_add_chain.py (+3/-3)
release/scripts/addons/object_animrenderbake.py (+55/-85)
release/scripts/addons/object_cloud_gen.py (+3/-3)
release/scripts/addons/object_fracture/__init__.py (+2/-2)
release/scripts/addons/object_fracture/fracture_ops.py (+5/-5)
release/scripts/addons/object_fracture/fracture_setup.py (+1/-1)
release/scripts/addons/object_fracture_cell/__init__.py (+565/-0)
release/scripts/addons/object_fracture_cell/fracture_cell_calc.py (+120/-0)
release/scripts/addons/object_fracture_cell/fracture_cell_setup.py (+446/-0)
release/scripts/addons/object_grease_scatter.py (+4/-4)
release/scripts/addons/paint_palette.py (+19/-18)
release/scripts/addons/render_copy_settings/__init__.py (+24/-41)
release/scripts/addons/render_copy_settings/operator.py (+12/-23)
release/scripts/addons/render_copy_settings/panel.py (+26/-13)
release/scripts/addons/render_copy_settings/presets.py (+4/-8)
release/scripts/addons/render_copy_settings/translations.py (+35/-0)
release/scripts/addons/render_povray/__init__.py (+104/-78)
release/scripts/addons/render_povray/render.py (+307/-216)
release/scripts/addons/render_povray/ui.py (+18/-9)
release/scripts/addons/render_povray/update_files.py (+1/-3)
release/scripts/addons/render_renderfarmfi.py (+0/-1244)
release/scripts/addons/render_renderfarmfi/__init__.py (+222/-0)
release/scripts/addons/render_renderfarmfi/exceptions.py (+41/-0)
release/scripts/addons/render_renderfarmfi/operators.py (+337/-0)
release/scripts/addons/render_renderfarmfi/ore_session.py (+40/-0)
release/scripts/addons/render_renderfarmfi/panels.py (+270/-0)
release/scripts/addons/render_renderfarmfi/prepare.py (+193/-0)
release/scripts/addons/render_renderfarmfi/rpc.py (+196/-0)
release/scripts/addons/render_renderfarmfi/upload.py (+192/-0)
release/scripts/addons/render_renderfarmfi/utils.py (+144/-0)
release/scripts/addons/rigify/CREDITS (+1/-0)
release/scripts/addons/rigify/README (+28/-36)
release/scripts/addons/rigify/__init__.py (+11/-74)
release/scripts/addons/rigify/generate.py (+29/-25)
release/scripts/addons/rigify/metarig_menu.py (+90/-22)
release/scripts/addons/rigify/metarigs/human.py (+456/-405)
release/scripts/addons/rigify/rig_lists.py (+78/-0)
release/scripts/addons/rigify/rig_ui_template.py (+74/-34)
release/scripts/addons/rigify/rigs/basic/copy.py (+58/-61)
release/scripts/addons/rigify/rigs/basic/copy_chain.py (+88/-91)
release/scripts/addons/rigify/rigs/biped/arm/__init__.py (+233/-164)
release/scripts/addons/rigify/rigs/biped/arm/deform.py (+18/-191)
release/scripts/addons/rigify/rigs/biped/arm/fk.py (+24/-155)
release/scripts/addons/rigify/rigs/biped/arm/ik.py (+23/-272)
release/scripts/addons/rigify/rigs/biped/leg/__init__.py (+261/-190)
release/scripts/addons/rigify/rigs/biped/leg/deform.py (+27/-201)
release/scripts/addons/rigify/rigs/biped/leg/fk.py (+26/-151)
release/scripts/addons/rigify/rigs/biped/leg/ik.py (+46/-304)
release/scripts/addons/rigify/rigs/biped/limb_common.py (+1139/-0)
release/scripts/addons/rigify/rigs/finger.py (+143/-144)
release/scripts/addons/rigify/rigs/misc/delta.py (+95/-92)
release/scripts/addons/rigify/rigs/neck_short.py (+58/-62)
release/scripts/addons/rigify/rigs/palm.py (+117/-118)
release/scripts/addons/rigify/rigs/spine.py (+100/-151)
release/scripts/addons/rigify/ui.py (+163/-32)
release/scripts/addons/rigify/utils.py (+339/-35)
release/scripts/addons/space_view3d_3d_navigation.py (+3/-2)
release/scripts/addons/space_view3d_copy_attributes.py (+86/-65)
release/scripts/addons/space_view3d_materials_utils.py (+39/-14)
release/scripts/addons/space_view3d_math_vis/__init__.py (+5/-48)
release/scripts/addons/space_view3d_math_vis/draw.py (+51/-15)
release/scripts/addons/space_view3d_math_vis/utils.py (+5/-3)
release/scripts/addons/space_view3d_panel_measure.py (+25/-24)
release/scripts/addons/space_view3d_screencast_keys.py (+389/-129)
release/scripts/addons/space_view3d_spacebar_menu.py (+8/-12)
release/scripts/addons/system_blend_info.py (+2/-2)
release/scripts/addons/system_demo_mode/__init__.py (+14/-5)
release/scripts/addons/system_demo_mode/config.py (+3/-1)
release/scripts/addons/system_demo_mode/demo_mode.py (+49/-10)
release/scripts/addons/system_property_chart.py (+5/-5)
release/scripts/addons/texture_paint_layer_manager.py (+11/-14)
release/scripts/addons/ui_translate/__init__.py (+326/-0)
release/scripts/addons/ui_translate/utils.py (+191/-0)
release/scripts/addons/uv_bake_texture_to_vcols.py (+348/-0)
release/scripts/modules/addon_utils.py (+51/-34)
release/scripts/modules/animsys_refactor.py (+5/-5)
release/scripts/modules/bl_i18n_utils/__init__.py (+21/-0)
release/scripts/modules/bl_i18n_utils/bl_process_msg.py (+762/-0)
release/scripts/modules/bl_i18n_utils/check_po.py (+178/-0)
release/scripts/modules/bl_i18n_utils/clean_po.py (+96/-0)
release/scripts/modules/bl_i18n_utils/import_po_from_branches.py (+107/-0)
release/scripts/modules/bl_i18n_utils/merge_po.py (+143/-0)
release/scripts/modules/bl_i18n_utils/rtl_preprocess.py (+257/-0)
release/scripts/modules/bl_i18n_utils/settings.py (+394/-0)
release/scripts/modules/bl_i18n_utils/spell_check_utils.py (+535/-0)
release/scripts/modules/bl_i18n_utils/update_branches.py (+96/-0)
release/scripts/modules/bl_i18n_utils/update_languages_menu.py (+148/-0)
release/scripts/modules/bl_i18n_utils/update_mo.py (+106/-0)
release/scripts/modules/bl_i18n_utils/update_msg.py (+72/-0)
release/scripts/modules/bl_i18n_utils/update_po.py (+113/-0)
release/scripts/modules/bl_i18n_utils/update_pot.py (+338/-0)
release/scripts/modules/bl_i18n_utils/update_trunk.py (+144/-0)
release/scripts/modules/bl_i18n_utils/user_settings.py (+23/-0)
release/scripts/modules/bl_i18n_utils/utils.py (+743/-0)
release/scripts/modules/blend_render_info.py (+5/-3)
release/scripts/modules/bpy/__init__.py (+4/-3)
release/scripts/modules/bpy/ops.py (+35/-27)
release/scripts/modules/bpy/path.py (+11/-7)
release/scripts/modules/bpy/utils.py (+134/-37)
release/scripts/modules/bpy_extras/__init__.py (+1/-1)
release/scripts/modules/bpy_extras/anim_utils.py (+79/-112)
release/scripts/modules/bpy_extras/image_utils.py (+1/-1)
release/scripts/modules/bpy_extras/io_utils.py (+17/-17)
release/scripts/modules/bpy_extras/keyconfig_utils.py (+33/-11)
release/scripts/modules/bpy_extras/mesh_utils.py (+88/-22)
release/scripts/modules/bpy_extras/object_utils.py (+18/-5)
release/scripts/modules/bpy_extras/view3d_utils.py (+41/-15)
release/scripts/modules/bpy_restrict_state.py (+66/-0)
release/scripts/modules/bpy_types.py (+47/-7)
release/scripts/modules/bpyml.py (+1/-1)
release/scripts/modules/bpyml_ui.py (+3/-3)
release/scripts/modules/console/intellisense.py (+1/-1)
release/scripts/modules/console_python.py (+45/-6)
release/scripts/modules/console_shell.py (+6/-6)
release/scripts/modules/graphviz_export.py (+1/-1)
release/scripts/modules/rna_info.py (+10/-10)
release/scripts/modules/rna_prop_ui.py (+6/-3)
release/scripts/modules/rna_xml.py (+19/-8)
release/scripts/modules/sys_info.py (+4/-3)
release/scripts/presets/interaction/blender.py (+2/-1)
release/scripts/presets/interface_theme/back_to_black.xml (+870/-721)
release/scripts/presets/interface_theme/blender_24x.xml (+869/-720)
release/scripts/presets/interface_theme/elsyiun.xml (+871/-722)
release/scripts/presets/interface_theme/hexagon.xml (+869/-720)
release/scripts/presets/interface_theme/ubuntu_ambiance.xml (+881/-732)
release/scripts/presets/keyconfig/maya.py (+52/-42)
release/scripts/presets/operator/wm.collada_export/second_life_rigged.py (+17/-0)
release/scripts/presets/operator/wm.collada_export/second_life_static.py (+17/-0)
release/scripts/presets/tracking_settings/blurry_footage.py (+8/-5)
release/scripts/presets/tracking_settings/blurry_movie.py (+0/-11)
release/scripts/presets/tracking_settings/default.py (+8/-5)
release/scripts/presets/tracking_settings/fast_motion.py (+8/-5)
release/scripts/presets/tracking_settings/planar.py (+17/-0)
release/scripts/startup/bl_operators/__init__.py (+2/-0)
release/scripts/startup/bl_operators/add_mesh_torus.py (+10/-11)
release/scripts/startup/bl_operators/anim.py (+20/-12)
release/scripts/startup/bl_operators/clip.py (+54/-46)
release/scripts/startup/bl_operators/console.py (+24/-3)
release/scripts/startup/bl_operators/image.py (+6/-4)
release/scripts/startup/bl_operators/mesh.py (+7/-11)
release/scripts/startup/bl_operators/node.py (+263/-0)
release/scripts/startup/bl_operators/object.py (+91/-35)
release/scripts/startup/bl_operators/object_align.py (+13/-11)
release/scripts/startup/bl_operators/object_quick_effects.py (+41/-47)
release/scripts/startup/bl_operators/object_randomize_transform.py (+8/-6)
release/scripts/startup/bl_operators/presets.py (+78/-34)
release/scripts/startup/bl_operators/rigidbody.py (+260/-0)
release/scripts/startup/bl_operators/screen_play_rendered_anim.py (+24/-34)
release/scripts/startup/bl_operators/sequencer.py (+3/-3)
release/scripts/startup/bl_operators/uvcalc_follow_active.py (+179/-183)
release/scripts/startup/bl_operators/uvcalc_lightmap.py (+14/-14)
release/scripts/startup/bl_operators/uvcalc_smart_project.py (+16/-17)
release/scripts/startup/bl_operators/vertexpaint_dirt.py (+14/-10)
release/scripts/startup/bl_operators/wm.py (+251/-107)
release/scripts/startup/bl_ui/__init__.py (+18/-6)
release/scripts/startup/bl_ui/properties_animviz.py (+21/-17)
release/scripts/startup/bl_ui/properties_data_armature.py (+16/-19)
release/scripts/startup/bl_ui/properties_data_bone.py (+42/-35)
release/scripts/startup/bl_ui/properties_data_camera.py (+26/-8)
release/scripts/startup/bl_ui/properties_data_curve.py (+9/-4)
release/scripts/startup/bl_ui/properties_data_lamp.py (+4/-4)
release/scripts/startup/bl_ui/properties_data_mesh.py (+83/-9)
release/scripts/startup/bl_ui/properties_data_modifier.py (+182/-16)
release/scripts/startup/bl_ui/properties_data_speaker.py (+1/-2)
release/scripts/startup/bl_ui/properties_game.py (+105/-22)
release/scripts/startup/bl_ui/properties_mask_common.py (+345/-0)
release/scripts/startup/bl_ui/properties_material.py (+28/-7)
release/scripts/startup/bl_ui/properties_object.py (+37/-26)
release/scripts/startup/bl_ui/properties_object_constraint.py (+40/-19)
release/scripts/startup/bl_ui/properties_paint_common.py (+48/-0)
release/scripts/startup/bl_ui/properties_particle.py (+79/-57)
release/scripts/startup/bl_ui/properties_physics_cloth.py (+7/-23)
release/scripts/startup/bl_ui/properties_physics_common.py (+59/-28)
release/scripts/startup/bl_ui/properties_physics_dynamicpaint.py (+48/-16)
release/scripts/startup/bl_ui/properties_physics_field.py (+13/-8)
release/scripts/startup/bl_ui/properties_physics_fluid.py (+21/-12)
release/scripts/startup/bl_ui/properties_physics_rigidbody.py (+135/-0)
release/scripts/startup/bl_ui/properties_physics_rigidbody_constraint.py (+208/-0)
release/scripts/startup/bl_ui/properties_physics_smoke.py (+172/-55)
release/scripts/startup/bl_ui/properties_physics_softbody.py (+3/-29)
release/scripts/startup/bl_ui/properties_render.py (+52/-29)
release/scripts/startup/bl_ui/properties_scene.py (+175/-41)
release/scripts/startup/bl_ui/properties_texture.py (+89/-25)
release/scripts/startup/bl_ui/properties_world.py (+7/-0)
release/scripts/startup/bl_ui/space_clip.py (+359/-220)
release/scripts/startup/bl_ui/space_console.py (+17/-5)
release/scripts/startup/bl_ui/space_dopesheet.py (+11/-4)
release/scripts/startup/bl_ui/space_filebrowser.py (+1/-0)
release/scripts/startup/bl_ui/space_graph.py (+7/-4)
release/scripts/startup/bl_ui/space_image.py (+92/-36)
release/scripts/startup/bl_ui/space_info.py (+66/-50)
release/scripts/startup/bl_ui/space_logic.py (+5/-0)
release/scripts/startup/bl_ui/space_node.py (+71/-1)
release/scripts/startup/bl_ui/space_sequencer.py (+239/-154)
release/scripts/startup/bl_ui/space_text.py (+55/-34)
release/scripts/startup/bl_ui/space_time.py (+13/-6)
release/scripts/startup/bl_ui/space_userpref.py (+164/-49)
release/scripts/startup/bl_ui/space_userpref_keymap.py (+17/-14)
release/scripts/startup/bl_ui/space_view3d.py (+256/-124)
release/scripts/startup/bl_ui/space_view3d_toolbar.py (+117/-71)
release/scripts/startup/keyingsets_builtins.py (+98/-4)
release/scripts/templates/addon_add_object.py (+0/-82)
release/scripts/templates/background_job.py (+0/-122)
release/scripts/templates/batch_export.py (+0/-33)
release/scripts/templates/bmesh_simple.py (+0/-21)
release/scripts/templates/builtin_keyingset.py (+0/-37)
release/scripts/templates/driver_functions.py (+0/-35)
release/scripts/templates/gamelogic.py (+0/-73)
release/scripts/templates/gamelogic_module.py (+0/-27)
release/scripts/templates/gamelogic_simple.py (+0/-17)
release/scripts/templates/operator_file_export.py (+0/-72)
release/scripts/templates/operator_file_import.py (+0/-75)
release/scripts/templates/operator_mesh_add.py (+0/-122)
release/scripts/templates/operator_modal.py (+0/-50)
release/scripts/templates/operator_modal_draw.py (+0/-78)
release/scripts/templates/operator_modal_timer.py (+0/-45)
release/scripts/templates/operator_modal_view3d.py (+0/-71)
release/scripts/templates/operator_simple.py (+0/-35)
release/scripts/templates/operator_uv.py (+0/-56)
release/scripts/templates/ui_menu.py (+0/-49)
release/scripts/templates/ui_menu_simple.py (+0/-26)
release/scripts/templates/ui_panel_simple.py (+0/-35)
release/scripts/templates_osl/empty_shader.osl (+6/-0)
release/scripts/templates_osl/noise.osl (+18/-0)
release/scripts/templates_osl/wireframe.osl (+11/-0)
release/scripts/templates_py/addon_add_object.py (+92/-0)
release/scripts/templates_py/background_job.py (+122/-0)
release/scripts/templates_py/batch_export.py (+33/-0)
release/scripts/templates_py/bmesh_simple.py (+22/-0)
release/scripts/templates_py/bmesh_simple_editmode.py (+23/-0)
release/scripts/templates_py/builtin_keyingset.py (+37/-0)
release/scripts/templates_py/driver_functions.py (+35/-0)
release/scripts/templates_py/gamelogic.py (+73/-0)
release/scripts/templates_py/gamelogic_module.py (+27/-0)
release/scripts/templates_py/gamelogic_simple.py (+17/-0)
release/scripts/templates_py/operator_file_export.py (+72/-0)
release/scripts/templates_py/operator_file_import.py (+75/-0)
release/scripts/templates_py/operator_mesh_add.py (+122/-0)
release/scripts/templates_py/operator_modal.py (+51/-0)
release/scripts/templates_py/operator_modal_draw.py (+79/-0)
release/scripts/templates_py/operator_modal_timer.py (+45/-0)
release/scripts/templates_py/operator_modal_view3d.py (+70/-0)
release/scripts/templates_py/operator_modal_view3d_raycast.py (+110/-0)
release/scripts/templates_py/operator_node.py (+59/-0)
release/scripts/templates_py/operator_simple.py (+35/-0)
release/scripts/templates_py/operator_uv.py (+56/-0)
release/scripts/templates_py/script_stub.py (+14/-0)
release/scripts/templates_py/ui_list.py (+79/-0)
release/scripts/templates_py/ui_menu.py (+49/-0)
release/scripts/templates_py/ui_menu_simple.py (+26/-0)
release/scripts/templates_py/ui_panel.py (+73/-0)
release/scripts/templates_py/ui_panel_simple.py (+38/-0)
release/text/readme.html (+5/-5)
release/windows/contrib/vfapi/vfapi-plugin.c (+29/-26)
source/CMakeLists.txt (+1/-3)
source/SConscript (+28/-2)
source/blender/CMakeLists.txt (+11/-2)
source/blender/SConscript (+30/-2)
source/blender/avi/AVI_avi.h (+108/-109)
source/blender/avi/CMakeLists.txt (+10/-10)
source/blender/avi/SConscript (+27/-1)
source/blender/avi/intern/avi.c (+428/-420)
source/blender/avi/intern/avi_codecs.c (+148/-0)
source/blender/avi/intern/avi_endian.c (+217/-0)
source/blender/avi/intern/avi_endian.h (+48/-0)
source/blender/avi/intern/avi_intern.h (+21/-3)
source/blender/avi/intern/avi_mjpeg.c (+503/-0)
source/blender/avi/intern/avi_mjpeg.h (+38/-0)
source/blender/avi/intern/avi_options.c (+133/-0)
source/blender/avi/intern/avi_rgb.c (+149/-0)
source/blender/avi/intern/avi_rgb.h (+38/-0)
source/blender/avi/intern/avi_rgb32.c (+93/-0)
source/blender/avi/intern/avi_rgb32.h (+38/-0)
source/blender/avi/intern/avirgb.c (+0/-150)
source/blender/avi/intern/avirgb.h (+0/-35)
source/blender/avi/intern/codecs.c (+0/-147)
source/blender/avi/intern/endian.c (+0/-226)
source/blender/avi/intern/endian.h (+0/-55)
source/blender/avi/intern/mjpeg.c (+0/-481)
source/blender/avi/intern/mjpeg.h (+0/-35)
source/blender/avi/intern/options.c (+0/-134)
source/blender/avi/intern/rgb32.c (+0/-93)
source/blender/avi/intern/rgb32.h (+0/-35)
source/blender/blenfont/BLF_api.h (+15/-11)
source/blender/blenfont/BLF_translation.h (+140/-30)
source/blender/blenfont/CMakeLists.txt (+5/-10)
source/blender/blenfont/SConscript (+30/-4)
source/blender/blenfont/intern/blf.c (+84/-72)
source/blender/blenfont/intern/blf_dir.c (+8/-7)
source/blender/blenfont/intern/blf_font.c (+70/-52)
source/blender/blenfont/intern/blf_glyph.c (+51/-32)
source/blender/blenfont/intern/blf_internal.h (+3/-3)
source/blender/blenfont/intern/blf_internal_types.h (+25/-16)
source/blender/blenfont/intern/blf_lang.c (+262/-248)
source/blender/blenfont/intern/blf_translation.c (+52/-103)
source/blender/blenkernel/BKE_DerivedMesh.h (+202/-173)
source/blender/blenkernel/BKE_action.h (+44/-40)
source/blender/blenkernel/BKE_addon.h (+42/-0)
source/blender/blenkernel/BKE_anim.h (+3/-3)
source/blender/blenkernel/BKE_armature.h (+56/-53)
source/blender/blenkernel/BKE_blender.h (+29/-14)
source/blender/blenkernel/BKE_bmesh.h (+22/-22)
source/blender/blenkernel/BKE_bmfont.h (+5/-5)
source/blender/blenkernel/BKE_booleanops_mesh.h (+16/-31)
source/blender/blenkernel/BKE_bpath.h (+72/-0)
source/blender/blenkernel/BKE_brush.h (+50/-44)
source/blender/blenkernel/BKE_bullet.h (+1/-1)
source/blender/blenkernel/BKE_bvhutils.h (+11/-12)
source/blender/blenkernel/BKE_camera.h (+21/-21)
source/blender/blenkernel/BKE_ccg.h (+168/-0)
source/blender/blenkernel/BKE_cdderivedmesh.h (+8/-6)
source/blender/blenkernel/BKE_cloth.h (+15/-25)
source/blender/blenkernel/BKE_collision.h (+9/-13)
source/blender/blenkernel/BKE_colortools.h (+68/-41)
source/blender/blenkernel/BKE_constraint.h (+48/-50)
source/blender/blenkernel/BKE_context.h (+7/-5)
source/blender/blenkernel/BKE_curve.h (+88/-74)
source/blender/blenkernel/BKE_customdata.h (+48/-32)
source/blender/blenkernel/BKE_customdata_file.h (+3/-3)
source/blender/blenkernel/BKE_deform.h (+22/-12)
source/blender/blenkernel/BKE_depsgraph.h (+67/-66)
source/blender/blenkernel/BKE_displist.h (+28/-31)
source/blender/blenkernel/BKE_dynamicpaint.h (+16/-3)
source/blender/blenkernel/BKE_effect.h (+11/-11)
source/blender/blenkernel/BKE_fcurve.h (+36/-33)
source/blender/blenkernel/BKE_fluidsim.h (+4/-4)
source/blender/blenkernel/BKE_font.h (+13/-13)
source/blender/blenkernel/BKE_global.h (+65/-49)
source/blender/blenkernel/BKE_gpencil.h (+4/-3)
source/blender/blenkernel/BKE_group.h (+11/-14)
source/blender/blenkernel/BKE_icons.h (+10/-13)
source/blender/blenkernel/BKE_idprop.h (+156/-31)
source/blender/blenkernel/BKE_image.h (+104/-61)
source/blender/blenkernel/BKE_ipo.h (+1/-1)
source/blender/blenkernel/BKE_key.h (+35/-33)
source/blender/blenkernel/BKE_lamp.h (+10/-6)
source/blender/blenkernel/BKE_lattice.h (+19/-13)
source/blender/blenkernel/BKE_library.h (+32/-8)
source/blender/blenkernel/BKE_main.h (+8/-5)
source/blender/blenkernel/BKE_mask.h (+230/-0)
source/blender/blenkernel/BKE_material.h (+17/-7)
source/blender/blenkernel/BKE_mball.h (+30/-142)
source/blender/blenkernel/BKE_mesh.h (+125/-84)
source/blender/blenkernel/BKE_modifier.h (+57/-56)
source/blender/blenkernel/BKE_movieclip.h (+16/-12)
source/blender/blenkernel/BKE_multires.h (+21/-11)
source/blender/blenkernel/BKE_navmesh_conversion.h (+27/-27)
source/blender/blenkernel/BKE_nla.h (+5/-5)
source/blender/blenkernel/BKE_node.h (+198/-123)
source/blender/blenkernel/BKE_object.h (+123/-91)
source/blender/blenkernel/BKE_object_deform.h (+38/-0)
source/blender/blenkernel/BKE_ocean.h (+14/-16)
source/blender/blenkernel/BKE_packedFile.h (+11/-2)
source/blender/blenkernel/BKE_paint.h (+30/-4)
source/blender/blenkernel/BKE_particle.h (+81/-47)
source/blender/blenkernel/BKE_pbvh.h (+332/-0)
source/blender/blenkernel/BKE_plugin_types.h (+0/-68)
source/blender/blenkernel/BKE_pointcache.h (+46/-47)
source/blender/blenkernel/BKE_property.h (+14/-14)
source/blender/blenkernel/BKE_report.h (+9/-3)
source/blender/blenkernel/BKE_rigidbody.h (+97/-0)
source/blender/blenkernel/BKE_sca.h (+2/-0)
source/blender/blenkernel/BKE_scene.h (+56/-42)
source/blender/blenkernel/BKE_screen.h (+77/-56)
source/blender/blenkernel/BKE_script.h (+0/-2)
source/blender/blenkernel/BKE_sequencer.h (+222/-149)
source/blender/blenkernel/BKE_shrinkwrap.h (+33/-33)
source/blender/blenkernel/BKE_sketch.h (+32/-40)
source/blender/blenkernel/BKE_smoke.h (+9/-5)
source/blender/blenkernel/BKE_softbody.h (+8/-8)
source/blender/blenkernel/BKE_sound.h (+44/-43)
source/blender/blenkernel/BKE_speaker.h (+6/-4)
source/blender/blenkernel/BKE_subsurf.h (+24/-13)
source/blender/blenkernel/BKE_suggestions.h (+1/-1)
source/blender/blenkernel/BKE_tessmesh.h (+7/-6)
source/blender/blenkernel/BKE_text.h (+28/-42)
source/blender/blenkernel/BKE_texture.h (+7/-11)
source/blender/blenkernel/BKE_tracking.h (+180/-135)
source/blender/blenkernel/BKE_unit.h (+17/-17)
source/blender/blenkernel/BKE_utildefines.h (+7/-54)
source/blender/blenkernel/BKE_world.h (+6/-4)
source/blender/blenkernel/BKE_writeavi.h (+2/-2)
source/blender/blenkernel/BKE_writeffmpeg.h (+28/-28)
source/blender/blenkernel/BKE_writeframeserver.h (+5/-5)
source/blender/blenkernel/CMakeLists.txt (+41/-23)
source/blender/blenkernel/SConscript (+43/-6)
source/blender/blenkernel/depsgraph_private.h (+28/-32)
source/blender/blenkernel/intern/CCGSubSurf.c (+424/-314)
source/blender/blenkernel/intern/CCGSubSurf.h (+6/-1)
source/blender/blenkernel/intern/DerivedMesh.c (+587/-627)
source/blender/blenkernel/intern/action.c (+274/-721)
source/blender/blenkernel/intern/addon.c (+85/-0)
source/blender/blenkernel/intern/anim.c (+588/-490)
source/blender/blenkernel/intern/anim_sys.c (+457/-402)
source/blender/blenkernel/intern/armature.c (+326/-405)
source/blender/blenkernel/intern/blender.c (+447/-194)
source/blender/blenkernel/intern/bmfont.c (+40/-39)
source/blender/blenkernel/intern/boids.c (+35/-30)
source/blender/blenkernel/intern/booleanops_mesh.c (+41/-43)
source/blender/blenkernel/intern/bpath.c (+733/-0)
source/blender/blenkernel/intern/brush.c (+367/-823)
source/blender/blenkernel/intern/bullet.c (+2/-2)
source/blender/blenkernel/intern/bvhutils.c (+100/-99)
source/blender/blenkernel/intern/camera.c (+182/-177)
source/blender/blenkernel/intern/cdderivedmesh.c (+717/-629)
source/blender/blenkernel/intern/cloth.c (+277/-250)
source/blender/blenkernel/intern/collision.c (+229/-1889)
source/blender/blenkernel/intern/colortools.c (+690/-513)
source/blender/blenkernel/intern/constraint.c (+1170/-1240)
source/blender/blenkernel/intern/context.c (+454/-338)
source/blender/blenkernel/intern/curve.c (+1777/-1630)
source/blender/blenkernel/intern/customdata.c (+685/-417)
source/blender/blenkernel/intern/customdata_file.c (+92/-98)
source/blender/blenkernel/intern/deform.c (+181/-43)
source/blender/blenkernel/intern/depsgraph.c (+864/-649)
source/blender/blenkernel/intern/displist.c (+845/-687)
source/blender/blenkernel/intern/dynamicpaint.c (+1424/-1301)
source/blender/blenkernel/intern/editderivedmesh.c (+544/-489)
source/blender/blenkernel/intern/effect.c (+70/-42)
source/blender/blenkernel/intern/fcurve.c (+493/-477)
source/blender/blenkernel/intern/fluidsim.c (+18/-18)
source/blender/blenkernel/intern/fmodifier.c (+347/-286)
source/blender/blenkernel/intern/font.c (+455/-469)
source/blender/blenkernel/intern/gpencil.c (+96/-83)
source/blender/blenkernel/intern/group.c (+104/-171)
source/blender/blenkernel/intern/icons.c (+45/-41)
source/blender/blenkernel/intern/idcode.c (+49/-47)
source/blender/blenkernel/intern/idprop.c (+162/-124)
source/blender/blenkernel/intern/image.c (+1833/-1061)
source/blender/blenkernel/intern/image_gen.c (+134/-132)
source/blender/blenkernel/intern/implicit.c (+270/-317)
source/blender/blenkernel/intern/ipo.c (+456/-437)
source/blender/blenkernel/intern/key.c (+102/-105)
source/blender/blenkernel/intern/lamp.c (+95/-56)
source/blender/blenkernel/intern/lattice.c (+343/-277)
source/blender/blenkernel/intern/library.c (+454/-375)
source/blender/blenkernel/intern/mask.c (+1961/-0)
source/blender/blenkernel/intern/mask_evaluate.c (+863/-0)
source/blender/blenkernel/intern/mask_rasterize.c (+1398/-0)
source/blender/blenkernel/intern/material.c (+772/-669)
source/blender/blenkernel/intern/mball.c (+1104/-1012)
source/blender/blenkernel/intern/mesh.c (+1311/-1001)
source/blender/blenkernel/intern/mesh_validate.c (+328/-49)
source/blender/blenkernel/intern/modifier.c (+101/-80)
source/blender/blenkernel/intern/modifiers_bmesh.c (+84/-42)
source/blender/blenkernel/intern/movieclip.c (+301/-140)
source/blender/blenkernel/intern/multires.c (+496/-387)
source/blender/blenkernel/intern/navmesh_conversion.c (+182/-221)
source/blender/blenkernel/intern/nla.c (+240/-240)
source/blender/blenkernel/intern/node.c (+837/-483)
source/blender/blenkernel/intern/object.c (+1471/-1128)
source/blender/blenkernel/intern/object_deform.c (+156/-0)
source/blender/blenkernel/intern/ocean.c (+485/-492)
source/blender/blenkernel/intern/packedFile.c (+186/-64)
source/blender/blenkernel/intern/paint.c (+110/-31)
source/blender/blenkernel/intern/particle.c (+1260/-1210)
source/blender/blenkernel/intern/particle_system.c (+589/-248)
source/blender/blenkernel/intern/pbvh.c (+1890/-0)
source/blender/blenkernel/intern/pbvh_bmesh.c (+1423/-0)
source/blender/blenkernel/intern/pbvh_intern.h (+186/-0)
source/blender/blenkernel/intern/pointcache.c (+463/-194)
source/blender/blenkernel/intern/property.c (+132/-125)
source/blender/blenkernel/intern/report.c (+109/-58)
source/blender/blenkernel/intern/rigidbody.c (+1335/-0)
source/blender/blenkernel/intern/sca.c (+34/-18)
source/blender/blenkernel/intern/scene.c (+546/-340)
source/blender/blenkernel/intern/screen.c (+99/-83)
source/blender/blenkernel/intern/seqcache.c (+225/-29)
source/blender/blenkernel/intern/seqeffects.c (+1557/-2149)
source/blender/blenkernel/intern/seqmodifier.c (+645/-0)
source/blender/blenkernel/intern/sequencer.c (+1453/-1150)
source/blender/blenkernel/intern/shrinkwrap.c (+228/-219)
source/blender/blenkernel/intern/sketch.c (+51/-94)
source/blender/blenkernel/intern/smoke.c (+1922/-1080)
source/blender/blenkernel/intern/softbody.c (+739/-746)
source/blender/blenkernel/intern/sound.c (+143/-164)
source/blender/blenkernel/intern/speaker.c (+22/-23)
source/blender/blenkernel/intern/subsurf_ccg.c (+534/-364)
source/blender/blenkernel/intern/suggestions.c (+21/-21)
source/blender/blenkernel/intern/text.c (+1255/-1560)
source/blender/blenkernel/intern/texture.c (+464/-625)
source/blender/blenkernel/intern/tracking.c (+2471/-1635)
source/blender/blenkernel/intern/unit.c (+89/-89)
source/blender/blenkernel/intern/world.c (+61/-58)
source/blender/blenkernel/intern/writeavi.c (+70/-69)
source/blender/blenkernel/intern/writeffmpeg.c (+566/-529)
source/blender/blenkernel/intern/writeframeserver.c (+70/-62)
source/blender/blenkernel/nla_private.h (+14/-14)
source/blender/blenlib/BLI_args.h (+20/-7)
source/blender/blenlib/BLI_array.h (+103/-90)
source/blender/blenlib/BLI_bitmap.h (+4/-4)
source/blender/blenlib/BLI_blenlib.h (+0/-2)
source/blender/blenlib/BLI_boxpack2d.h (+4/-4)
source/blender/blenlib/BLI_bpath.h (+0/-67)
source/blender/blenlib/BLI_buffer.h (+90/-0)
source/blender/blenlib/BLI_callbacks.h (+6/-6)
source/blender/blenlib/BLI_dlrbTree.h (+7/-7)
source/blender/blenlib/BLI_dynlib.h (+3/-3)
source/blender/blenlib/BLI_dynstr.h (+57/-54)
source/blender/blenlib/BLI_edgehash.h (+54/-54)
source/blender/blenlib/BLI_editVert.h (+0/-191)
source/blender/blenlib/BLI_endian_switch.h (+61/-0)
source/blender/blenlib/BLI_endian_switch_inline.h (+92/-0)
source/blender/blenlib/BLI_fileops.h (+12/-4)
source/blender/blenlib/BLI_fileops_types.h (+19/-20)
source/blender/blenlib/BLI_fnmatch.h (+23/-23)
source/blender/blenlib/BLI_ghash.h (+88/-77)
source/blender/blenlib/BLI_graph.h (+45/-46)
source/blender/blenlib/BLI_gsqueue.h (+58/-58)
source/blender/blenlib/BLI_heap.h (+14/-14)
source/blender/blenlib/BLI_jitter.h (+1/-1)
source/blender/blenlib/BLI_kdopbvh.h (+38/-33)
source/blender/blenlib/BLI_kdtree.h (+5/-6)
source/blender/blenlib/BLI_lasso.h (+41/-0)
source/blender/blenlib/BLI_linklist.h (+14/-15)
source/blender/blenlib/BLI_listbase.h (+4/-2)
source/blender/blenlib/BLI_math.h (+1/-0)
source/blender/blenlib/BLI_math_base.h (+70/-13)
source/blender/blenlib/BLI_math_color.h (+33/-16)
source/blender/blenlib/BLI_math_geom.h (+86/-80)
source/blender/blenlib/BLI_math_inline.h (+3/-2)
source/blender/blenlib/BLI_math_interp.h (+44/-0)
source/blender/blenlib/BLI_math_matrix.h (+43/-28)
source/blender/blenlib/BLI_math_rotation.h (+22/-16)
source/blender/blenlib/BLI_math_vector.h (+33/-5)
source/blender/blenlib/BLI_memarena.h (+46/-17)
source/blender/blenlib/BLI_mempool.h (+64/-12)
source/blender/blenlib/BLI_noise.h (+1/-1)
source/blender/blenlib/BLI_path_util.h (+57/-32)
source/blender/blenlib/BLI_pbvh.h (+0/-253)
source/blender/blenlib/BLI_quadric.h (+56/-0)
source/blender/blenlib/BLI_rand.h (+55/-58)
source/blender/blenlib/BLI_rect.h (+52/-29)
source/blender/blenlib/BLI_scanfill.h (+32/-19)
source/blender/blenlib/BLI_smallhash.h (+10/-10)
source/blender/blenlib/BLI_stack.h (+54/-0)
source/blender/blenlib/BLI_string.h (+190/-100)
source/blender/blenlib/BLI_string_cursor_utf8.h (+2/-2)
source/blender/blenlib/BLI_string_utf8.h (+12/-9)
source/blender/blenlib/BLI_threads.h (+50/-26)
source/blender/blenlib/BLI_utildefines.h (+251/-156)
source/blender/blenlib/BLI_uvproject.h (+6/-6)
source/blender/blenlib/BLI_vfontdata.h (+7/-24)
source/blender/blenlib/BLI_voronoi.h (+70/-0)
source/blender/blenlib/BLI_voxel.h (+5/-5)
source/blender/blenlib/BLI_winstuff.h (+5/-5)
source/blender/blenlib/CMakeLists.txt (+25/-14)
source/blender/blenlib/PIL_time.h (+43/-30)
source/blender/blenlib/SConscript (+29/-3)
source/blender/blenlib/intern/BLI_args.c (+27/-22)
source/blender/blenlib/intern/BLI_array.c (+97/-0)
source/blender/blenlib/intern/BLI_dynstr.c (+44/-44)
source/blender/blenlib/intern/BLI_ghash.c (+81/-33)
source/blender/blenlib/intern/BLI_heap.c (+92/-67)
source/blender/blenlib/intern/BLI_kdopbvh.c (+533/-604)
source/blender/blenlib/intern/BLI_kdtree.c (+134/-138)
source/blender/blenlib/intern/BLI_linklist.c (+25/-25)
source/blender/blenlib/intern/BLI_memarena.c (+6/-6)
source/blender/blenlib/intern/BLI_mempool.c (+58/-23)
source/blender/blenlib/intern/DLRB_tree.c (+125/-127)
source/blender/blenlib/intern/boxpack2d.c (+79/-77)
source/blender/blenlib/intern/bpath.c (+0/-625)
source/blender/blenlib/intern/buffer.c (+81/-0)
source/blender/blenlib/intern/callbacks.c (+12/-12)
source/blender/blenlib/intern/cpu.c (+9/-11)
source/blender/blenlib/intern/dynlib.c (+12/-10)
source/blender/blenlib/intern/edgehash.c (+11/-11)
source/blender/blenlib/intern/endian_switch.c (+118/-0)
source/blender/blenlib/intern/fileops.c (+135/-162)
source/blender/blenlib/intern/fnmatch.c (+2/-2)
source/blender/blenlib/intern/freetypefont.c (+302/-312)
source/blender/blenlib/intern/graph.c (+169/-302)
source/blender/blenlib/intern/gsqueue.c (+22/-22)
source/blender/blenlib/intern/jitter.c (+72/-75)
source/blender/blenlib/intern/lasso.c (+129/-0)
source/blender/blenlib/intern/listbase.c (+136/-104)
source/blender/blenlib/intern/math_base_inline.c (+73/-11)
source/blender/blenlib/intern/math_color.c (+111/-29)
source/blender/blenlib/intern/math_color_inline.c (+144/-22)
source/blender/blenlib/intern/math_geom.c (+790/-285)
source/blender/blenlib/intern/math_geom_inline.c (+51/-3)
source/blender/blenlib/intern/math_interp.c (+351/-0)
source/blender/blenlib/intern/math_matrix.c (+297/-174)
source/blender/blenlib/intern/math_rotation.c (+403/-277)
source/blender/blenlib/intern/math_vector.c (+164/-1)
source/blender/blenlib/intern/math_vector_inline.c (+106/-17)
source/blender/blenlib/intern/md5.c (+2/-0)
source/blender/blenlib/intern/noise.c (+529/-409)
source/blender/blenlib/intern/path_util.c (+311/-316)
source/blender/blenlib/intern/pbvh.c (+0/-1875)
source/blender/blenlib/intern/quadric.c (+126/-0)
source/blender/blenlib/intern/rand.c (+71/-71)
source/blender/blenlib/intern/rct.c (+327/-131)
source/blender/blenlib/intern/scanfill.c (+273/-193)
source/blender/blenlib/intern/smallhash.c (+28/-14)
source/blender/blenlib/intern/stack.c (+110/-0)
source/blender/blenlib/intern/storage.c (+107/-108)
source/blender/blenlib/intern/string.c (+135/-106)
source/blender/blenlib/intern/string_cursor_utf8.c (+29/-25)
source/blender/blenlib/intern/string_utf8.c (+177/-114)
source/blender/blenlib/intern/threads.c (+169/-97)
source/blender/blenlib/intern/time.c (+19/-19)
source/blender/blenlib/intern/uvproject.c (+17/-17)
source/blender/blenlib/intern/voronoi.c (+832/-0)
source/blender/blenlib/intern/voxel.c (+44/-41)
source/blender/blenlib/intern/winstuff.c (+75/-75)
source/blender/blenloader/BLO_blend_defs.h (+47/-0)
source/blender/blenloader/BLO_readfile.h (+85/-70)
source/blender/blenloader/BLO_soundfile.h (+0/-41)
source/blender/blenloader/BLO_sys_types.h (+12/-12)
source/blender/blenloader/CMakeLists.txt (+8/-1)
source/blender/blenloader/SConscript (+31/-2)
source/blender/blenloader/intern/readblenentry.c (+82/-80)
source/blender/blenloader/intern/readfile.c (+4596/-8983)
source/blender/blenloader/intern/readfile.h (+39/-15)
source/blender/blenloader/intern/runtime.c (+39/-39)
source/blender/blenloader/intern/undofile.c (+23/-23)
source/blender/blenloader/intern/versioning_250.c (+2695/-0)
source/blender/blenloader/intern/versioning_legacy.c (+3651/-0)
source/blender/blenloader/intern/writefile.c (+344/-156)
source/blender/blenpluginapi/CMakeLists.txt (+0/-58)
source/blender/blenpluginapi/SConscript (+0/-23)
source/blender/blenpluginapi/documentation.h (+0/-72)
source/blender/blenpluginapi/externdef.h (+0/-49)
source/blender/blenpluginapi/floatpatch.h (+0/-92)
source/blender/blenpluginapi/iff.h (+0/-121)
source/blender/blenpluginapi/intern/pluginapi.c (+0/-305)
source/blender/blenpluginapi/plugin.DEF (+0/-40)
source/blender/blenpluginapi/plugin.h (+0/-106)
source/blender/blenpluginapi/util.h (+0/-102)
source/blender/bmesh/CMakeLists.txt (+36/-2)
source/blender/bmesh/SConscript (+38/-1)
source/blender/bmesh/bmesh.h (+12/-1)
source/blender/bmesh/bmesh_class.h (+56/-21)
source/blender/bmesh/intern/bmesh_construct.c (+114/-80)
source/blender/bmesh/intern/bmesh_construct.h (+4/-4)
source/blender/bmesh/intern/bmesh_core.c (+243/-180)
source/blender/bmesh/intern/bmesh_core.h (+27/-17)
source/blender/bmesh/intern/bmesh_error.h (+7/-6)
source/blender/bmesh/intern/bmesh_inline.h (+7/-1)
source/blender/bmesh/intern/bmesh_interp.c (+83/-117)
source/blender/bmesh/intern/bmesh_interp.h (+2/-1)
source/blender/bmesh/intern/bmesh_iterators.c (+162/-66)
source/blender/bmesh/intern/bmesh_iterators.h (+23/-7)
source/blender/bmesh/intern/bmesh_iterators_inline.h (+14/-44)
source/blender/bmesh/intern/bmesh_log.c (+984/-0)
source/blender/bmesh/intern/bmesh_log.h (+102/-0)
source/blender/bmesh/intern/bmesh_marking.c (+253/-222)
source/blender/bmesh/intern/bmesh_marking.h (+20/-20)
source/blender/bmesh/intern/bmesh_mesh.c (+195/-148)
source/blender/bmesh/intern/bmesh_mesh.h (+12/-6)
source/blender/bmesh/intern/bmesh_mesh_conv.c (+153/-83)
source/blender/bmesh/intern/bmesh_mesh_conv.h (+6/-2)
source/blender/bmesh/intern/bmesh_mesh_validate.c (+9/-7)
source/blender/bmesh/intern/bmesh_mesh_validate.h (+1/-1)
source/blender/bmesh/intern/bmesh_mods.c (+111/-102)
source/blender/bmesh/intern/bmesh_mods.h (+16/-16)
source/blender/bmesh/intern/bmesh_opdefines.c (+1086/-609)
source/blender/bmesh/intern/bmesh_operator_api.h (+179/-120)
source/blender/bmesh/intern/bmesh_operator_api_inline.h (+92/-37)
source/blender/bmesh/intern/bmesh_operators.c (+731/-438)
source/blender/bmesh/intern/bmesh_operators.h (+14/-17)
source/blender/bmesh/intern/bmesh_operators_private.h (+61/-57)
source/blender/bmesh/intern/bmesh_polygon.c (+273/-231)
source/blender/bmesh/intern/bmesh_polygon.h (+6/-4)
source/blender/bmesh/intern/bmesh_private.h (+27/-21)
source/blender/bmesh/intern/bmesh_queries.c (+666/-172)
source/blender/bmesh/intern/bmesh_queries.h (+48/-25)
source/blender/bmesh/intern/bmesh_structure.c (+55/-45)
source/blender/bmesh/intern/bmesh_structure.h (+9/-9)
source/blender/bmesh/intern/bmesh_walkers.c (+5/-6)
source/blender/bmesh/intern/bmesh_walkers.h (+3/-4)
source/blender/bmesh/intern/bmesh_walkers_impl.c (+50/-46)
source/blender/bmesh/intern/bmesh_walkers_private.h (+3/-3)
source/blender/bmesh/operators/bmo_bevel.c (+29/-855)
source/blender/bmesh/operators/bmo_connect.c (+177/-121)
source/blender/bmesh/operators/bmo_create.c (+99/-88)
source/blender/bmesh/operators/bmo_dissolve.c (+44/-214)
source/blender/bmesh/operators/bmo_dupe.c (+112/-88)
source/blender/bmesh/operators/bmo_edgesplit.c (+13/-133)
source/blender/bmesh/operators/bmo_extrude.c (+213/-168)
source/blender/bmesh/operators/bmo_hull.c (+625/-0)
source/blender/bmesh/operators/bmo_inset.c (+63/-41)
source/blender/bmesh/operators/bmo_join_triangles.c (+88/-106)
source/blender/bmesh/operators/bmo_mesh_conv.c (+13/-11)
source/blender/bmesh/operators/bmo_mirror.c (+23/-20)
source/blender/bmesh/operators/bmo_primitive.c (+284/-277)
source/blender/bmesh/operators/bmo_removedoubles.c (+125/-115)
source/blender/bmesh/operators/bmo_similar.c (+614/-0)
source/blender/bmesh/operators/bmo_slide.c (+0/-115)
source/blender/bmesh/operators/bmo_smooth_laplacian.c (+620/-0)
source/blender/bmesh/operators/bmo_subdivide.c (+196/-126)
source/blender/bmesh/operators/bmo_subdivide.h (+2/-0)
source/blender/bmesh/operators/bmo_symmetrize.c (+677/-0)
source/blender/bmesh/operators/bmo_triangulate.c (+51/-72)
source/blender/bmesh/operators/bmo_unsubdivide.c (+59/-0)
source/blender/bmesh/operators/bmo_utils.c (+142/-616)
source/blender/bmesh/operators/bmo_wireframe.c (+427/-0)
source/blender/bmesh/tools/BME_bevel.c (+72/-64)
source/blender/bmesh/tools/bmesh_bevel.c (+2087/-0)
source/blender/bmesh/tools/bmesh_bevel.h (+32/-0)
source/blender/bmesh/tools/bmesh_decimate.h (+44/-0)
source/blender/bmesh/tools/bmesh_decimate_collapse.c (+1054/-0)
source/blender/bmesh/tools/bmesh_decimate_dissolve.c (+240/-0)
source/blender/bmesh/tools/bmesh_decimate_unsubdivide.c (+346/-0)
source/blender/bmesh/tools/bmesh_edgesplit.c (+170/-0)
source/blender/bmesh/tools/bmesh_edgesplit.h (+32/-0)
source/blender/bmesh/tools/bmesh_triangulate.c (+87/-0)
source/blender/bmesh/tools/bmesh_triangulate.h (+36/-0)
source/blender/collada/AnimationExporter.cpp (+473/-258)
source/blender/collada/AnimationExporter.h (+47/-18)
source/blender/collada/AnimationImporter.cpp (+493/-394)
source/blender/collada/AnimationImporter.h (+30/-25)
source/blender/collada/ArmatureExporter.cpp (+154/-460)
source/blender/collada/ArmatureExporter.h (+14/-38)
source/blender/collada/ArmatureImporter.cpp (+179/-215)
source/blender/collada/ArmatureImporter.h (+12/-12)
source/blender/collada/CMakeLists.txt (+9/-1)
source/blender/collada/CameraExporter.cpp (+40/-33)
source/blender/collada/CameraExporter.h (+2/-0)
source/blender/collada/ControllerExporter.cpp (+616/-0)
source/blender/collada/ControllerExporter.h (+127/-0)
source/blender/collada/DocumentExporter.cpp (+81/-70)
source/blender/collada/DocumentExporter.h (+5/-1)
source/blender/collada/DocumentImporter.cpp (+450/-292)
source/blender/collada/DocumentImporter.h (+18/-8)
source/blender/collada/EffectExporter.cpp (+166/-92)
source/blender/collada/EffectExporter.h (+6/-1)
source/blender/collada/ErrorHandler.cpp (+11/-17)
source/blender/collada/ErrorHandler.h (+1/-1)
source/blender/collada/ExportSettings.h (+24/-6)
source/blender/collada/ExtraHandler.cpp (+24/-21)
source/blender/collada/ExtraHandler.h (+2/-1)
source/blender/collada/ExtraTags.cpp (+6/-6)
source/blender/collada/ExtraTags.h (+1/-1)
source/blender/collada/GeometryExporter.cpp (+250/-72)
source/blender/collada/GeometryExporter.h (+20/-12)
source/blender/collada/ImageExporter.cpp (+186/-51)
source/blender/collada/ImageExporter.h (+4/-0)
source/blender/collada/ImportSettings.cpp (+27/-0)
source/blender/collada/ImportSettings.h (+39/-0)
source/blender/collada/InstanceWriter.cpp (+16/-12)
source/blender/collada/InstanceWriter.h (+1/-1)
source/blender/collada/LightExporter.cpp (+18/-19)
source/blender/collada/MaterialExporter.cpp (+11/-12)
source/blender/collada/MaterialExporter.h (+9/-8)
source/blender/collada/MeshImporter.cpp (+573/-227)
source/blender/collada/MeshImporter.h (+31/-5)
source/blender/collada/SConscript (+4/-3)
source/blender/collada/SceneExporter.cpp (+123/-55)
source/blender/collada/SceneExporter.h (+2/-0)
source/blender/collada/SkinInfo.cpp (+39/-34)
source/blender/collada/SkinInfo.h (+2/-2)
source/blender/collada/TransformReader.cpp (+40/-34)
source/blender/collada/TransformReader.h (+6/-6)
source/blender/collada/TransformWriter.cpp (+26/-24)
source/blender/collada/TransformWriter.h (+1/-1)
source/blender/collada/collada.cpp (+90/-31)
source/blender/collada/collada.h (+43/-8)
source/blender/collada/collada_internal.cpp (+127/-105)
source/blender/collada/collada_internal.h (+18/-8)
source/blender/collada/collada_utils.cpp (+254/-11)
source/blender/collada/collada_utils.h (+40/-7)
source/blender/compositor/CMakeLists.txt (+665/-0)
source/blender/compositor/COM_compositor.h (+345/-0)
source/blender/compositor/COM_defines.h (+112/-0)
source/blender/compositor/SConscript (+43/-0)
source/blender/compositor/intern/COM_CPUDevice.cpp (+37/-0)
source/blender/compositor/intern/COM_CPUDevice.h (+41/-0)
source/blender/compositor/intern/COM_ChannelInfo.cpp (+35/-0)
source/blender/compositor/intern/COM_ChannelInfo.h (+121/-0)
source/blender/compositor/intern/COM_ChunkOrder.cpp (+51/-0)
source/blender/compositor/intern/COM_ChunkOrder.h (+45/-0)
source/blender/compositor/intern/COM_ChunkOrderHotspot.cpp (+40/-0)
source/blender/compositor/intern/COM_ChunkOrderHotspot.h (+46/-0)
source/blender/compositor/intern/COM_CompositorContext.cpp (+46/-0)
source/blender/compositor/intern/COM_CompositorContext.h (+185/-0)
source/blender/compositor/intern/COM_Converter.cpp (+553/-0)
source/blender/compositor/intern/COM_Converter.h (+74/-0)
source/blender/compositor/intern/COM_Device.cpp (+24/-0)
source/blender/compositor/intern/COM_Device.h (+63/-0)
source/blender/compositor/intern/COM_ExecutionGroup.cpp (+576/-0)
source/blender/compositor/intern/COM_ExecutionGroup.h (+403/-0)
source/blender/compositor/intern/COM_ExecutionSystem.cpp (+375/-0)
source/blender/compositor/intern/COM_ExecutionSystem.h (+257/-0)
source/blender/compositor/intern/COM_ExecutionSystemHelper.cpp (+320/-0)
source/blender/compositor/intern/COM_ExecutionSystemHelper.h (+132/-0)
source/blender/compositor/intern/COM_InputSocket.cpp (+180/-0)
source/blender/compositor/intern/COM_InputSocket.h (+151/-0)
source/blender/compositor/intern/COM_MemoryBuffer.cpp (+354/-0)
source/blender/compositor/intern/COM_MemoryBuffer.h (+254/-0)
source/blender/compositor/intern/COM_MemoryProxy.cpp (+50/-0)
source/blender/compositor/intern/COM_MemoryProxy.h (+111/-0)
source/blender/compositor/intern/COM_Node.cpp (+214/-0)
source/blender/compositor/intern/COM_Node.h (+159/-0)
source/blender/compositor/intern/COM_NodeBase.cpp (+96/-0)
source/blender/compositor/intern/COM_NodeBase.h (+169/-0)
source/blender/compositor/intern/COM_NodeOperation.cpp (+150/-0)
source/blender/compositor/intern/COM_NodeOperation.h (+288/-0)
source/blender/compositor/intern/COM_OpenCLDevice.cpp (+196/-0)
source/blender/compositor/intern/COM_OpenCLDevice.h (+109/-0)
source/blender/compositor/intern/COM_OutputSocket.cpp (+119/-0)
source/blender/compositor/intern/COM_OutputSocket.h (+84/-0)
source/blender/compositor/intern/COM_SingleThreadedNodeOperation.cpp (+60/-0)
source/blender/compositor/intern/COM_SingleThreadedNodeOperation.h (+60/-0)
source/blender/compositor/intern/COM_Socket.cpp (+43/-0)
source/blender/compositor/intern/COM_Socket.h (+95/-0)
source/blender/compositor/intern/COM_SocketConnection.cpp (+95/-0)
source/blender/compositor/intern/COM_SocketConnection.h (+127/-0)
source/blender/compositor/intern/COM_SocketReader.cpp (+25/-0)
source/blender/compositor/intern/COM_SocketReader.h (+119/-0)
source/blender/compositor/intern/COM_WorkPackage.cpp (+29/-0)
source/blender/compositor/intern/COM_WorkPackage.h (+68/-0)
source/blender/compositor/intern/COM_WorkScheduler.cpp (+423/-0)
source/blender/compositor/intern/COM_WorkScheduler.h (+121/-0)
source/blender/compositor/intern/COM_compositor.cpp (+115/-0)
source/blender/compositor/nodes/COM_AlphaOverNode.cpp (+72/-0)
source/blender/compositor/nodes/COM_AlphaOverNode.h (+38/-0)
source/blender/compositor/nodes/COM_BilateralBlurNode.cpp (+44/-0)
source/blender/compositor/nodes/COM_BilateralBlurNode.h (+38/-0)
source/blender/compositor/nodes/COM_BlurNode.cpp (+162/-0)
source/blender/compositor/nodes/COM_BlurNode.h (+38/-0)
source/blender/compositor/nodes/COM_BokehBlurNode.cpp (+80/-0)
source/blender/compositor/nodes/COM_BokehBlurNode.h (+38/-0)
source/blender/compositor/nodes/COM_BokehImageNode.cpp (+39/-0)
source/blender/compositor/nodes/COM_BokehImageNode.h (+38/-0)
source/blender/compositor/nodes/COM_BoxMaskNode.cpp (+43/-0)
source/blender/compositor/nodes/COM_BoxMaskNode.h (+38/-0)
source/blender/compositor/nodes/COM_BrightnessNode.cpp (+40/-0)
source/blender/compositor/nodes/COM_BrightnessNode.h (+38/-0)
source/blender/compositor/nodes/COM_ChannelMatteNode.cpp (+92/-0)
source/blender/compositor/nodes/COM_ChannelMatteNode.h (+37/-0)
source/blender/compositor/nodes/COM_ChromaMatteNode.cpp (+73/-0)
source/blender/compositor/nodes/COM_ChromaMatteNode.h (+37/-0)
source/blender/compositor/nodes/COM_ColorBalanceNode.cpp (+72/-0)
source/blender/compositor/nodes/COM_ColorBalanceNode.h (+38/-0)
source/blender/compositor/nodes/COM_ColorCorrectionNode.cpp (+44/-0)
source/blender/compositor/nodes/COM_ColorCorrectionNode.h (+38/-0)
source/blender/compositor/nodes/COM_ColorCurveNode.cpp (+63/-0)
source/blender/compositor/nodes/COM_ColorCurveNode.h (+38/-0)
source/blender/compositor/nodes/COM_ColorMatteNode.cpp (+70/-0)
source/blender/compositor/nodes/COM_ColorMatteNode.h (+37/-0)
source/blender/compositor/nodes/COM_ColorNode.cpp (+40/-0)
source/blender/compositor/nodes/COM_ColorNode.h (+38/-0)
source/blender/compositor/nodes/COM_ColorRampNode.cpp (+54/-0)
source/blender/compositor/nodes/COM_ColorRampNode.h (+38/-0)
source/blender/compositor/nodes/COM_ColorSpillNode.cpp (+59/-0)
source/blender/compositor/nodes/COM_ColorSpillNode.h (+38/-0)
source/blender/compositor/nodes/COM_ColorToBWNode.cpp (+42/-0)
source/blender/compositor/nodes/COM_ColorToBWNode.h (+37/-0)
source/blender/compositor/nodes/COM_CombineHSVANode.cpp (+46/-0)
source/blender/compositor/nodes/COM_CombineHSVANode.h (+38/-0)
source/blender/compositor/nodes/COM_CombineRGBANode.cpp (+64/-0)
source/blender/compositor/nodes/COM_CombineRGBANode.h (+37/-0)
source/blender/compositor/nodes/COM_CombineYCCANode.cpp (+45/-0)
source/blender/compositor/nodes/COM_CombineYCCANode.h (+37/-0)
source/blender/compositor/nodes/COM_CombineYUVANode.cpp (+40/-0)
source/blender/compositor/nodes/COM_CombineYUVANode.h (+37/-0)
source/blender/compositor/nodes/COM_CompositorNode.cpp (+50/-0)
source/blender/compositor/nodes/COM_CompositorNode.h (+37/-0)
source/blender/compositor/nodes/COM_ConvertAlphaNode.cpp (+44/-0)
source/blender/compositor/nodes/COM_ConvertAlphaNode.h (+37/-0)
source/blender/compositor/nodes/COM_CropNode.cpp (+50/-0)
source/blender/compositor/nodes/COM_CropNode.h (+40/-0)
source/blender/compositor/nodes/COM_DefocusNode.cpp (+138/-0)
source/blender/compositor/nodes/COM_DefocusNode.h (+38/-0)
source/blender/compositor/nodes/COM_DespeckleNode.cpp (+50/-0)
source/blender/compositor/nodes/COM_DespeckleNode.h (+36/-0)
source/blender/compositor/nodes/COM_DifferenceMatteNode.cpp (+55/-0)
source/blender/compositor/nodes/COM_DifferenceMatteNode.h (+38/-0)
source/blender/compositor/nodes/COM_DilateErodeNode.cpp (+151/-0)
source/blender/compositor/nodes/COM_DilateErodeNode.h (+39/-0)
source/blender/compositor/nodes/COM_DirectionalBlurNode.cpp (+43/-0)
source/blender/compositor/nodes/COM_DirectionalBlurNode.h (+38/-0)
source/blender/compositor/nodes/COM_DisplaceNode.cpp (+47/-0)
source/blender/compositor/nodes/COM_DisplaceNode.h (+36/-0)
source/blender/compositor/nodes/COM_DistanceMatteNode.cpp (+85/-0)
source/blender/compositor/nodes/COM_DistanceMatteNode.h (+37/-0)
source/blender/compositor/nodes/COM_DoubleEdgeMaskNode.cpp (+46/-0)
source/blender/compositor/nodes/COM_DoubleEdgeMaskNode.h (+38/-0)
source/blender/compositor/nodes/COM_EllipseMaskNode.cpp (+43/-0)
source/blender/compositor/nodes/COM_EllipseMaskNode.h (+38/-0)
source/blender/compositor/nodes/COM_FilterNode.cpp (+83/-0)
source/blender/compositor/nodes/COM_FilterNode.h (+38/-0)
source/blender/compositor/nodes/COM_FlipNode.cpp (+56/-0)
source/blender/compositor/nodes/COM_FlipNode.h (+38/-0)
source/blender/compositor/nodes/COM_GammaNode.cpp (+40/-0)
source/blender/compositor/nodes/COM_GammaNode.h (+38/-0)
source/blender/compositor/nodes/COM_GlareNode.cpp (+86/-0)
source/blender/compositor/nodes/COM_GlareNode.h (+38/-0)
source/blender/compositor/nodes/COM_GroupNode.cpp (+79/-0)
source/blender/compositor/nodes/COM_GroupNode.h (+57/-0)
source/blender/compositor/nodes/COM_HueSaturationValueCorrectNode.cpp (+70/-0)
source/blender/compositor/nodes/COM_HueSaturationValueCorrectNode.h (+37/-0)
source/blender/compositor/nodes/COM_HueSaturationValueNode.cpp (+71/-0)
source/blender/compositor/nodes/COM_HueSaturationValueNode.h (+37/-0)
source/blender/compositor/nodes/COM_IDMaskNode.cpp (+51/-0)
source/blender/compositor/nodes/COM_IDMaskNode.h (+38/-0)
source/blender/compositor/nodes/COM_ImageNode.cpp (+224/-0)
source/blender/compositor/nodes/COM_ImageNode.h (+43/-0)
source/blender/compositor/nodes/COM_InpaintNode.cpp (+48/-0)
source/blender/compositor/nodes/COM_InpaintNode.h (+38/-0)
source/blender/compositor/nodes/COM_InvertNode.cpp (+44/-0)
source/blender/compositor/nodes/COM_InvertNode.h (+38/-0)
source/blender/compositor/nodes/COM_KeyingNode.cpp (+345/-0)
source/blender/compositor/nodes/COM_KeyingNode.h (+47/-0)
source/blender/compositor/nodes/COM_KeyingScreenNode.cpp (+59/-0)
source/blender/compositor/nodes/COM_KeyingScreenNode.h (+36/-0)
source/blender/compositor/nodes/COM_LensDistortionNode.cpp (+68/-0)
source/blender/compositor/nodes/COM_LensDistortionNode.h (+38/-0)
source/blender/compositor/nodes/COM_LuminanceMatteNode.cpp (+63/-0)
source/blender/compositor/nodes/COM_LuminanceMatteNode.h (+37/-0)
source/blender/compositor/nodes/COM_MapRangeNode.cpp (+54/-0)
source/blender/compositor/nodes/COM_MapRangeNode.h (+38/-0)
source/blender/compositor/nodes/COM_MapUVNode.cpp (+44/-0)
source/blender/compositor/nodes/COM_MapUVNode.h (+36/-0)
source/blender/compositor/nodes/COM_MapValueNode.cpp (+43/-0)
source/blender/compositor/nodes/COM_MapValueNode.h (+38/-0)
source/blender/compositor/nodes/COM_MaskNode.cpp (+82/-0)
source/blender/compositor/nodes/COM_MaskNode.h (+41/-0)
source/blender/compositor/nodes/COM_MathNode.cpp (+96/-0)
source/blender/compositor/nodes/COM_MathNode.h (+38/-0)
source/blender/compositor/nodes/COM_MixNode.cpp (+136/-0)
source/blender/compositor/nodes/COM_MixNode.h (+37/-0)
source/blender/compositor/nodes/COM_MovieClipNode.cpp (+119/-0)
source/blender/compositor/nodes/COM_MovieClipNode.h (+39/-0)
source/blender/compositor/nodes/COM_MovieDistortionNode.cpp (+48/-0)
source/blender/compositor/nodes/COM_MovieDistortionNode.h (+38/-0)
source/blender/compositor/nodes/COM_MuteNode.cpp (+175/-0)
source/blender/compositor/nodes/COM_MuteNode.h (+51/-0)
source/blender/compositor/nodes/COM_NormalNode.cpp (+64/-0)
source/blender/compositor/nodes/COM_NormalNode.h (+38/-0)
source/blender/compositor/nodes/COM_NormalizeNode.cpp (+39/-0)
source/blender/compositor/nodes/COM_NormalizeNode.h (+37/-0)
source/blender/compositor/nodes/COM_OutputFileNode.cpp (+101/-0)
source/blender/compositor/nodes/COM_OutputFileNode.h (+40/-0)
source/blender/compositor/nodes/COM_PixelateNode.cpp (+48/-0)
source/blender/compositor/nodes/COM_PixelateNode.h (+38/-0)
source/blender/compositor/nodes/COM_RenderLayersNode.cpp (+115/-0)
source/blender/compositor/nodes/COM_RenderLayersNode.h (+37/-0)
source/blender/compositor/nodes/COM_RotateNode.cpp (+51/-0)
source/blender/compositor/nodes/COM_RotateNode.h (+38/-0)
source/blender/compositor/nodes/COM_ScaleNode.cpp (+103/-0)
source/blender/compositor/nodes/COM_ScaleNode.h (+38/-0)
source/blender/compositor/nodes/COM_SeparateHSVANode.cpp (+45/-0)
source/blender/compositor/nodes/COM_SeparateHSVANode.h (+39/-0)
source/blender/compositor/nodes/COM_SeparateRGBANode.cpp (+76/-0)
source/blender/compositor/nodes/COM_SeparateRGBANode.h (+37/-0)
source/blender/compositor/nodes/COM_SeparateYCCANode.cpp (+47/-0)
source/blender/compositor/nodes/COM_SeparateYCCANode.h (+38/-0)
source/blender/compositor/nodes/COM_SeparateYUVANode.cpp (+43/-0)
source/blender/compositor/nodes/COM_SeparateYUVANode.h (+38/-0)
source/blender/compositor/nodes/COM_SetAlphaNode.cpp (+40/-0)
source/blender/compositor/nodes/COM_SetAlphaNode.h (+38/-0)
source/blender/compositor/nodes/COM_SocketProxyNode.cpp (+104/-0)
source/blender/compositor/nodes/COM_SocketProxyNode.h (+42/-0)
source/blender/compositor/nodes/COM_SplitViewerNode.cpp (+62/-0)
source/blender/compositor/nodes/COM_SplitViewerNode.h (+37/-0)
source/blender/compositor/nodes/COM_Stabilize2dNode.cpp (+97/-0)
source/blender/compositor/nodes/COM_Stabilize2dNode.h (+39/-0)
source/blender/compositor/nodes/COM_SwitchNode.cpp (+47/-0)
source/blender/compositor/nodes/COM_SwitchNode.h (+38/-0)
source/blender/compositor/nodes/COM_TextureNode.cpp (+54/-0)
source/blender/compositor/nodes/COM_TextureNode.h (+34/-0)
source/blender/compositor/nodes/COM_TimeNode.cpp (+60/-0)
source/blender/compositor/nodes/COM_TimeNode.h (+38/-0)
source/blender/compositor/nodes/COM_TonemapNode.cpp (+41/-0)
source/blender/compositor/nodes/COM_TonemapNode.h (+38/-0)
source/blender/compositor/nodes/COM_TrackPositionNode.cpp (+71/-0)
source/blender/compositor/nodes/COM_TrackPositionNode.h (+36/-0)
source/blender/compositor/nodes/COM_TransformNode.cpp (+70/-0)
source/blender/compositor/nodes/COM_TransformNode.h (+39/-0)
source/blender/compositor/nodes/COM_TranslateNode.cpp (+69/-0)
source/blender/compositor/nodes/COM_TranslateNode.h (+38/-0)
source/blender/compositor/nodes/COM_ValueNode.cpp (+40/-0)
source/blender/compositor/nodes/COM_ValueNode.h (+38/-0)
source/blender/compositor/nodes/COM_VectorBlurNode.cpp (+45/-0)
source/blender/compositor/nodes/COM_VectorBlurNode.h (+38/-0)
source/blender/compositor/nodes/COM_VectorCurveNode.cpp (+42/-0)
source/blender/compositor/nodes/COM_VectorCurveNode.h (+38/-0)
source/blender/compositor/nodes/COM_ViewLevelsNode.cpp (+82/-0)
source/blender/compositor/nodes/COM_ViewLevelsNode.h (+38/-0)
source/blender/compositor/nodes/COM_ViewerNode.cpp (+67/-0)
source/blender/compositor/nodes/COM_ViewerNode.h (+37/-0)
source/blender/compositor/nodes/COM_ZCombineNode.cpp (+67/-0)
source/blender/compositor/nodes/COM_ZCombineNode.h (+38/-0)
source/blender/compositor/operations/COM_AlphaOverKeyOperation.cpp (+55/-0)
source/blender/compositor/operations/COM_AlphaOverKeyOperation.h (+44/-0)
source/blender/compositor/operations/COM_AlphaOverMixedOperation.cpp (+57/-0)
source/blender/compositor/operations/COM_AlphaOverMixedOperation.h (+48/-0)
source/blender/compositor/operations/COM_AlphaOverPremultiplyOperation.cpp (+56/-0)
source/blender/compositor/operations/COM_AlphaOverPremultiplyOperation.h (+45/-0)
source/blender/compositor/operations/COM_AntiAliasOperation.cpp (+106/-0)
source/blender/compositor/operations/COM_AntiAliasOperation.h (+61/-0)
source/blender/compositor/operations/COM_BilateralBlurOperation.cpp (+112/-0)
source/blender/compositor/operations/COM_BilateralBlurOperation.h (+57/-0)
source/blender/compositor/operations/COM_BlurBaseOperation.cpp (+157/-0)
source/blender/compositor/operations/COM_BlurBaseOperation.h (+67/-0)
source/blender/compositor/operations/COM_BokehBlurOperation.cpp (+228/-0)
source/blender/compositor/operations/COM_BokehBlurOperation.h (+67/-0)
source/blender/compositor/operations/COM_BokehImageOperation.cpp (+123/-0)
source/blender/compositor/operations/COM_BokehImageOperation.h (+148/-0)
source/blender/compositor/operations/COM_BoxMaskOperation.cpp (+119/-0)
source/blender/compositor/operations/COM_BoxMaskOperation.h (+65/-0)
source/blender/compositor/operations/COM_BrightnessOperation.cpp (+80/-0)
source/blender/compositor/operations/COM_BrightnessOperation.h (+56/-0)
source/blender/compositor/operations/COM_CalculateMeanOperation.cpp (+128/-0)
source/blender/compositor/operations/COM_CalculateMeanOperation.h (+69/-0)
source/blender/compositor/operations/COM_CalculateStandardDeviationOperation.cpp (+97/-0)
source/blender/compositor/operations/COM_CalculateStandardDeviationOperation.h (+47/-0)
source/blender/compositor/operations/COM_ChangeHSVOperation.cpp (+55/-0)
source/blender/compositor/operations/COM_ChangeHSVOperation.h (+59/-0)
source/blender/compositor/operations/COM_ChannelMatteOperation.cpp (+126/-0)
source/blender/compositor/operations/COM_ChannelMatteOperation.h (+76/-0)
source/blender/compositor/operations/COM_ChromaMatteOperation.cpp (+101/-0)
source/blender/compositor/operations/COM_ChromaMatteOperation.h (+52/-0)
source/blender/compositor/operations/COM_ColorBalanceASCCDLOperation.cpp (+75/-0)
source/blender/compositor/operations/COM_ColorBalanceASCCDLOperation.h (+68/-0)
source/blender/compositor/operations/COM_ColorBalanceLGGOperation.cpp (+80/-0)
source/blender/compositor/operations/COM_ColorBalanceLGGOperation.h (+69/-0)
source/blender/compositor/operations/COM_ColorCorrectionOperation.cpp (+143/-0)
source/blender/compositor/operations/COM_ColorCorrectionOperation.h (+64/-0)
source/blender/compositor/operations/COM_ColorCurveOperation.cpp (+160/-0)
source/blender/compositor/operations/COM_ColorCurveOperation.h (+89/-0)
source/blender/compositor/operations/COM_ColorMatteOperation.cpp (+85/-0)
source/blender/compositor/operations/COM_ColorMatteOperation.h (+52/-0)
source/blender/compositor/operations/COM_ColorRampOperation.cpp (+57/-0)
source/blender/compositor/operations/COM_ColorRampOperation.h (+59/-0)
source/blender/compositor/operations/COM_ColorSpillOperation.cpp (+114/-0)
source/blender/compositor/operations/COM_ColorSpillOperation.h (+64/-0)
source/blender/compositor/operations/COM_CombineChannelsOperation.cpp (+76/-0)
source/blender/compositor/operations/COM_CombineChannelsOperation.h (+42/-0)
source/blender/compositor/operations/COM_CompositorOperation.cpp (+193/-0)
source/blender/compositor/operations/COM_CompositorOperation.h (+84/-0)
source/blender/compositor/operations/COM_ConvertColorProfileOperation.cpp (+51/-0)
source/blender/compositor/operations/COM_ConvertColorProfileOperation.h (+78/-0)
source/blender/compositor/operations/COM_ConvertColorToBWOperation.cpp (+47/-0)
source/blender/compositor/operations/COM_ConvertColorToBWOperation.h (+60/-0)
source/blender/compositor/operations/COM_ConvertColorToValueProg.cpp (+47/-0)
source/blender/compositor/operations/COM_ConvertColorToValueProg.h (+59/-0)
source/blender/compositor/operations/COM_ConvertColorToVectorOperation.cpp (+45/-0)
source/blender/compositor/operations/COM_ConvertColorToVectorOperation.h (+59/-0)
source/blender/compositor/operations/COM_ConvertDepthToRadiusOperation.cpp (+107/-0)
source/blender/compositor/operations/COM_ConvertDepthToRadiusOperation.h (+76/-0)
source/blender/compositor/operations/COM_ConvertHSVToRGBOperation.cpp (+50/-0)
source/blender/compositor/operations/COM_ConvertHSVToRGBOperation.h (+59/-0)
source/blender/compositor/operations/COM_ConvertPremulToStraightOperation.cpp (+60/-0)
source/blender/compositor/operations/COM_ConvertPremulToStraightOperation.h (+48/-0)
source/blender/compositor/operations/COM_ConvertRGBToHSVOperation.cpp (+49/-0)
source/blender/compositor/operations/COM_ConvertRGBToHSVOperation.h (+60/-0)
source/blender/compositor/operations/COM_ConvertRGBToYCCOperation.cpp (+70/-0)
source/blender/compositor/operations/COM_ConvertRGBToYCCOperation.h (+68/-0)
source/blender/compositor/operations/COM_ConvertRGBToYUVOperation.cpp (+48/-0)
source/blender/compositor/operations/COM_ConvertRGBToYUVOperation.h (+59/-0)
source/blender/compositor/operations/COM_ConvertStraightToPremulOperation.cpp (+55/-0)
source/blender/compositor/operations/COM_ConvertStraightToPremulOperation.h (+49/-0)
source/blender/compositor/operations/COM_ConvertValueToColorProg.cpp (+47/-0)
source/blender/compositor/operations/COM_ConvertValueToColorProg.h (+53/-0)
source/blender/compositor/operations/COM_ConvertValueToVectorOperation.cpp (+50/-0)
source/blender/compositor/operations/COM_ConvertValueToVectorOperation.h (+59/-0)
source/blender/compositor/operations/COM_ConvertVectorToColorOperation.cpp (+46/-0)
source/blender/compositor/operations/COM_ConvertVectorToColorOperation.h (+59/-0)
source/blender/compositor/operations/COM_ConvertVectorToValueOperation.cpp (+47/-0)
source/blender/compositor/operations/COM_ConvertVectorToValueOperation.h (+59/-0)
source/blender/compositor/operations/COM_ConvertYCCToRGBOperation.cpp (+70/-0)
source/blender/compositor/operations/COM_ConvertYCCToRGBOperation.h (+68/-0)
source/blender/compositor/operations/COM_ConvertYUVToRGBOperation.cpp (+49/-0)
source/blender/compositor/operations/COM_ConvertYUVToRGBOperation.h (+58/-0)
source/blender/compositor/operations/COM_ConvolutionEdgeFilterOperation.cpp (+97/-0)
source/blender/compositor/operations/COM_ConvolutionEdgeFilterOperation.h (+34/-0)
source/blender/compositor/operations/COM_ConvolutionFilterOperation.cpp (+129/-0)
source/blender/compositor/operations/COM_ConvolutionFilterOperation.h (+48/-0)
source/blender/compositor/operations/COM_CropOperation.cpp (+128/-0)
source/blender/compositor/operations/COM_CropOperation.h (+63/-0)
source/blender/compositor/operations/COM_CurveBaseOperation.cpp (+54/-0)
source/blender/compositor/operations/COM_CurveBaseOperation.h (+45/-0)
source/blender/compositor/operations/COM_DespeckleOperation.cpp (+139/-0)
source/blender/compositor/operations/COM_DespeckleOperation.h (+49/-0)
source/blender/compositor/operations/COM_DifferenceMatteOperation.cpp (+88/-0)
source/blender/compositor/operations/COM_DifferenceMatteOperation.h (+53/-0)
source/blender/compositor/operations/COM_DilateErodeOperation.cpp (+561/-0)
source/blender/compositor/operations/COM_DilateErodeOperation.h (+163/-0)
source/blender/compositor/operations/COM_DirectionalBlurOperation.cpp (+145/-0)
source/blender/compositor/operations/COM_DirectionalBlurOperation.h (+65/-0)
source/blender/compositor/operations/COM_DisplaceOperation.cpp (+151/-0)
source/blender/compositor/operations/COM_DisplaceOperation.h (+63/-0)
source/blender/compositor/operations/COM_DisplaceSimpleOperation.cpp (+131/-0)
source/blender/compositor/operations/COM_DisplaceSimpleOperation.h (+63/-0)
source/blender/compositor/operations/COM_DistanceRGBMatteOperation.cpp (+92/-0)
source/blender/compositor/operations/COM_DistanceRGBMatteOperation.h (+55/-0)
source/blender/compositor/operations/COM_DistanceYCCMatteOperation.cpp (+35/-0)
source/blender/compositor/operations/COM_DistanceYCCMatteOperation.h (+43/-0)
source/blender/compositor/operations/COM_DotproductOperation.cpp (+55/-0)
source/blender/compositor/operations/COM_DotproductOperation.h (+41/-0)
source/blender/compositor/operations/COM_DoubleEdgeMaskOperation.cpp (+1300/-0)
source/blender/compositor/operations/COM_DoubleEdgeMaskOperation.h (+64/-0)
source/blender/compositor/operations/COM_EllipseMaskOperation.cpp (+123/-0)
source/blender/compositor/operations/COM_EllipseMaskOperation.h (+65/-0)
source/blender/compositor/operations/COM_FastGaussianBlurOperation.cpp (+308/-0)
source/blender/compositor/operations/COM_FastGaussianBlurOperation.h (+77/-0)
source/blender/compositor/operations/COM_FlipOperation.cpp (+75/-0)
source/blender/compositor/operations/COM_FlipOperation.h (+44/-0)
source/blender/compositor/operations/COM_GammaCorrectOperation.cpp (+102/-0)
source/blender/compositor/operations/COM_GammaCorrectOperation.h (+80/-0)
source/blender/compositor/operations/COM_GammaOperation.cpp (+60/-0)
source/blender/compositor/operations/COM_GammaOperation.h (+54/-0)
source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.cpp (+198/-0)
source/blender/compositor/operations/COM_GaussianAlphaXBlurOperation.h (+64/-0)
source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.cpp (+198/-0)
source/blender/compositor/operations/COM_GaussianAlphaYBlurOperation.h (+64/-0)
source/blender/compositor/operations/COM_GaussianBokehBlurOperation.cpp (+356/-0)
source/blender/compositor/operations/COM_GaussianBokehBlurOperation.h (+79/-0)
source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp (+149/-0)
source/blender/compositor/operations/COM_GaussianXBlurOperation.h (+54/-0)
source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp (+150/-0)
source/blender/compositor/operations/COM_GaussianYBlurOperation.h (+54/-0)
source/blender/compositor/operations/COM_GlareBaseOperation.cpp (+71/-0)
source/blender/compositor/operations/COM_GlareBaseOperation.h (+74/-0)
source/blender/compositor/operations/COM_GlareFogGlowOperation.cpp (+406/-0)
source/blender/compositor/operations/COM_GlareFogGlowOperation.h (+35/-0)
source/blender/compositor/operations/COM_GlareGhostOperation.cpp (+127/-0)
source/blender/compositor/operations/COM_GlareGhostOperation.h (+35/-0)
source/blender/compositor/operations/COM_GlareSimpleStarOperation.cpp (+104/-0)
source/blender/compositor/operations/COM_GlareSimpleStarOperation.h (+35/-0)
source/blender/compositor/operations/COM_GlareStreaksOperation.cpp (+96/-0)
source/blender/compositor/operations/COM_GlareStreaksOperation.h (+35/-0)
source/blender/compositor/operations/COM_GlareThresholdOperation.cpp (+64/-0)
source/blender/compositor/operations/COM_GlareThresholdOperation.h (+63/-0)
source/blender/compositor/operations/COM_HueSaturationValueCorrectOperation.cpp (+79/-0)
source/blender/compositor/operations/COM_HueSaturationValueCorrectOperation.h (+53/-0)
source/blender/compositor/operations/COM_IDMaskOperation.cpp (+49/-0)
source/blender/compositor/operations/COM_IDMaskOperation.h (+57/-0)
source/blender/compositor/operations/COM_ImageOperation.cpp (+168/-0)
source/blender/compositor/operations/COM_ImageOperation.h (+93/-0)
source/blender/compositor/operations/COM_InpaintOperation.cpp (+288/-0)
source/blender/compositor/operations/COM_InpaintOperation.h (+75/-0)
source/blender/compositor/operations/COM_InvertOperation.cpp (+73/-0)
source/blender/compositor/operations/COM_InvertOperation.h (+60/-0)
source/blender/compositor/operations/COM_KeyingBlurOperation.cpp (+109/-0)
source/blender/compositor/operations/COM_KeyingBlurOperation.h (+55/-0)
source/blender/compositor/operations/COM_KeyingClipOperation.cpp (+123/-0)
source/blender/compositor/operations/COM_KeyingClipOperation.h (+59/-0)
source/blender/compositor/operations/COM_KeyingDespillOperation.cpp (+82/-0)
source/blender/compositor/operations/COM_KeyingDespillOperation.h (+51/-0)
source/blender/compositor/operations/COM_KeyingOperation.cpp (+109/-0)
source/blender/compositor/operations/COM_KeyingOperation.h (+55/-0)
source/blender/compositor/operations/COM_KeyingScreenOperation.cpp (+340/-0)
source/blender/compositor/operations/COM_KeyingScreenOperation.h (+85/-0)
source/blender/compositor/operations/COM_LuminanceMatteOperation.cpp (+83/-0)
source/blender/compositor/operations/COM_LuminanceMatteOperation.h (+51/-0)
source/blender/compositor/operations/COM_MapRangeOperation.cpp (+96/-0)
source/blender/compositor/operations/COM_MapRangeOperation.h (+71/-0)
source/blender/compositor/operations/COM_MapUVOperation.cpp (+152/-0)
source/blender/compositor/operations/COM_MapUVOperation.h (+62/-0)
source/blender/compositor/operations/COM_MapValueOperation.cpp (+56/-0)
source/blender/compositor/operations/COM_MapValueOperation.h (+66/-0)
source/blender/compositor/operations/COM_MaskOperation.cpp (+156/-0)
source/blender/compositor/operations/COM_MaskOperation.h (+89/-0)
source/blender/compositor/operations/COM_MathBaseOperation.cpp (+320/-0)
source/blender/compositor/operations/COM_MathBaseOperation.h (+160/-0)
source/blender/compositor/operations/COM_MixAddOperation.cpp (+52/-0)
source/blender/compositor/operations/COM_MixAddOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixBaseOperation.cpp (+97/-0)
source/blender/compositor/operations/COM_MixBaseOperation.h (+80/-0)
source/blender/compositor/operations/COM_MixBlendOperation.cpp (+52/-0)
source/blender/compositor/operations/COM_MixBlendOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixBurnOperation.cpp (+89/-0)
source/blender/compositor/operations/COM_MixBurnOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixColorOperation.cpp (+67/-0)
source/blender/compositor/operations/COM_MixColorOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixDarkenOperation.cpp (+59/-0)
source/blender/compositor/operations/COM_MixDarkenOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixDifferenceOperation.cpp (+52/-0)
source/blender/compositor/operations/COM_MixDifferenceOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixDivideOperation.cpp (+62/-0)
source/blender/compositor/operations/COM_MixDivideOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixDodgeOperation.cpp (+94/-0)
source/blender/compositor/operations/COM_MixDodgeOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixGlareOperation.cpp (+53/-0)
source/blender/compositor/operations/COM_MixGlareOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixHueOperation.cpp (+63/-0)
source/blender/compositor/operations/COM_MixHueOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixLightenOperation.cpp (+57/-0)
source/blender/compositor/operations/COM_MixLightenOperation.h (+44/-0)
source/blender/compositor/operations/COM_MixLinearLightOperation.cpp (+59/-0)
source/blender/compositor/operations/COM_MixLinearLightOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixMultiplyOperation.cpp (+52/-0)
source/blender/compositor/operations/COM_MixMultiplyOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixOverlayOperation.cpp (+68/-0)
source/blender/compositor/operations/COM_MixOverlayOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixSaturationOperation.cpp (+59/-0)
source/blender/compositor/operations/COM_MixSaturationOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixScreenOperation.cpp (+53/-0)
source/blender/compositor/operations/COM_MixScreenOperation.h (+44/-0)
source/blender/compositor/operations/COM_MixSoftLightOperation.cpp (+58/-0)
source/blender/compositor/operations/COM_MixSoftLightOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixSubtractOperation.cpp (+50/-0)
source/blender/compositor/operations/COM_MixSubtractOperation.h (+45/-0)
source/blender/compositor/operations/COM_MixValueOperation.cpp (+57/-0)
source/blender/compositor/operations/COM_MixValueOperation.h (+44/-0)
source/blender/compositor/operations/COM_MovieClipAttributeOperation.cpp (+72/-0)
source/blender/compositor/operations/COM_MovieClipAttributeOperation.h (+61/-0)
source/blender/compositor/operations/COM_MovieClipOperation.cpp (+108/-0)
source/blender/compositor/operations/COM_MovieClipOperation.h (+65/-0)
source/blender/compositor/operations/COM_MovieDistortionOperation.cpp (+146/-0)
source/blender/compositor/operations/COM_MovieDistortionOperation.h (+172/-0)
source/blender/compositor/operations/COM_MultilayerImageOperation.cpp (+98/-0)
source/blender/compositor/operations/COM_MultilayerImageOperation.h (+68/-0)
source/blender/compositor/operations/COM_NormalizeOperation.cpp (+124/-0)
source/blender/compositor/operations/COM_NormalizeOperation.h (+69/-0)
source/blender/compositor/operations/COM_OpenCLKernels.cl (+248/-0)
source/blender/compositor/operations/COM_OutputFileOperation.cpp (+269/-0)
source/blender/compositor/operations/COM_OutputFileOperation.h (+95/-0)
source/blender/compositor/operations/COM_PixelateOperation.cpp (+49/-0)
source/blender/compositor/operations/COM_PixelateOperation.h (+68/-0)
source/blender/compositor/operations/COM_PreviewOperation.cpp (+144/-0)
source/blender/compositor/operations/COM_PreviewOperation.h (+57/-0)
source/blender/compositor/operations/COM_ProjectorLensDistortionOperation.cpp (+112/-0)
source/blender/compositor/operations/COM_ProjectorLensDistortionOperation.h (+67/-0)
source/blender/compositor/operations/COM_QualityStepHelper.cpp (+71/-0)
source/blender/compositor/operations/COM_QualityStepHelper.h (+53/-0)
source/blender/compositor/operations/COM_ReadBufferOperation.cpp (+89/-0)
source/blender/compositor/operations/COM_ReadBufferOperation.h (+53/-0)
source/blender/compositor/operations/COM_RenderLayersAOOperation.cpp (+29/-0)
source/blender/compositor/operations/COM_RenderLayersAOOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersAlphaProg.cpp (+49/-0)
source/blender/compositor/operations/COM_RenderLayersAlphaProg.h (+35/-0)
source/blender/compositor/operations/COM_RenderLayersBaseProg.cpp (+157/-0)
source/blender/compositor/operations/COM_RenderLayersBaseProg.h (+99/-0)
source/blender/compositor/operations/COM_RenderLayersColorOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersColorOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersCyclesOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersCyclesOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersDepthProg.cpp (+29/-0)
source/blender/compositor/operations/COM_RenderLayersDepthProg.h (+34/-0)
source/blender/compositor/operations/COM_RenderLayersDiffuseOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersDiffuseOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersEmitOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersEmitOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersEnvironmentOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersEnvironmentOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersImageProg.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersImageProg.h (+34/-0)
source/blender/compositor/operations/COM_RenderLayersIndirectOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersIndirectOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersMaterialIndexOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersMaterialIndexOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersMistOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersMistOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersNormalOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersNormalOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersObjectIndexOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersObjectIndexOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersReflectionOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersReflectionOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersRefractionOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersRefractionOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersShadowOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersShadowOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersSpecularOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersSpecularOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersSpeedOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersSpeedOperation.h (+33/-0)
source/blender/compositor/operations/COM_RenderLayersUVOperation.cpp (+28/-0)
source/blender/compositor/operations/COM_RenderLayersUVOperation.h (+33/-0)
source/blender/compositor/operations/COM_RotateOperation.cpp (+110/-0)
source/blender/compositor/operations/COM_RotateOperation.h (+49/-0)
source/blender/compositor/operations/COM_ScaleOperation.cpp (+290/-0)
source/blender/compositor/operations/COM_ScaleOperation.h (+102/-0)
source/blender/compositor/operations/COM_ScreenLensDistortionOperation.cpp (+302/-0)
source/blender/compositor/operations/COM_ScreenLensDistortionOperation.h (+88/-0)
source/blender/compositor/operations/COM_SeparateChannelOperation.cpp (+47/-0)
source/blender/compositor/operations/COM_SeparateChannelOperation.h (+42/-0)
source/blender/compositor/operations/COM_SetAlphaOperation.cpp (+55/-0)
source/blender/compositor/operations/COM_SetAlphaOperation.h (+51/-0)
source/blender/compositor/operations/COM_SetColorOperation.cpp (+39/-0)
source/blender/compositor/operations/COM_SetColorOperation.h (+64/-0)
source/blender/compositor/operations/COM_SetSamplerOperation.cpp (+43/-0)
source/blender/compositor/operations/COM_SetSamplerOperation.h (+51/-0)
source/blender/compositor/operations/COM_SetValueOperation.cpp (+39/-0)
source/blender/compositor/operations/COM_SetValueOperation.h (+54/-0)
source/blender/compositor/operations/COM_SetVectorOperation.cpp (+43/-0)
source/blender/compositor/operations/COM_SetVectorOperation.h (+68/-0)
source/blender/compositor/operations/COM_SocketProxyOperation.cpp (+47/-0)
source/blender/compositor/operations/COM_SocketProxyOperation.h (+39/-0)
source/blender/compositor/operations/COM_SplitViewerOperation.cpp (+92/-0)
source/blender/compositor/operations/COM_SplitViewerOperation.h (+44/-0)
source/blender/compositor/operations/COM_TextureOperation.cpp (+142/-0)
source/blender/compositor/operations/COM_TextureOperation.h (+84/-0)
source/blender/compositor/operations/COM_TonemapOperation.cpp (+154/-0)
source/blender/compositor/operations/COM_TonemapOperation.h (+103/-0)
source/blender/compositor/operations/COM_TrackPositionOperation.cpp (+118/-0)
source/blender/compositor/operations/COM_TrackPositionOperation.h (+83/-0)
source/blender/compositor/operations/COM_TranslateOperation.cpp (+86/-0)
source/blender/compositor/operations/COM_TranslateOperation.h (+65/-0)
source/blender/compositor/operations/COM_VariableSizeBokehBlurOperation.cpp (+376/-0)
source/blender/compositor/operations/COM_VariableSizeBokehBlurOperation.h (+108/-0)
source/blender/compositor/operations/COM_VectorBlurOperation.cpp (+121/-0)
source/blender/compositor/operations/COM_VectorBlurOperation.h (+73/-0)
source/blender/compositor/operations/COM_VectorCurveOperation.cpp (+61/-0)
source/blender/compositor/operations/COM_VectorCurveOperation.h (+52/-0)
source/blender/compositor/operations/COM_ViewerBaseOperation.cpp (+123/-0)
source/blender/compositor/operations/COM_ViewerBaseOperation.h (+74/-0)
source/blender/compositor/operations/COM_ViewerOperation.cpp (+116/-0)
source/blender/compositor/operations/COM_ViewerOperation.h (+42/-0)
source/blender/compositor/operations/COM_WrapOperation.cpp (+117/-0)
source/blender/compositor/operations/COM_WrapOperation.h (+47/-0)
source/blender/compositor/operations/COM_WriteBufferOperation.cpp (+182/-0)
source/blender/compositor/operations/COM_WriteBufferOperation.h (+54/-0)
source/blender/compositor/operations/COM_ZCombineOperation.cpp (+94/-0)
source/blender/compositor/operations/COM_ZCombineOperation.h (+57/-0)
source/blender/datatoc/CMakeLists.txt (+29/-0)
source/blender/datatoc/datatoc.c (+113/-0)
source/blender/editors/CMakeLists.txt (+2/-0)
source/blender/editors/SConscript (+29/-1)
source/blender/editors/animation/SConscript (+27/-1)
source/blender/editors/animation/anim_channels_defines.c (+998/-807)
source/blender/editors/animation/anim_channels_edit.c (+469/-383)
source/blender/editors/animation/anim_deps.c (+104/-34)
source/blender/editors/animation/anim_draw.c (+91/-85)
source/blender/editors/animation/anim_filter.c (+676/-537)
source/blender/editors/animation/anim_intern.h (+6/-3)
source/blender/editors/animation/anim_ipo_utils.c (+36/-37)
source/blender/editors/animation/anim_markers.c (+277/-253)
source/blender/editors/animation/anim_ops.c (+53/-41)
source/blender/editors/animation/drivers.c (+120/-135)
source/blender/editors/animation/fmodifier_ui.c (+206/-281)
source/blender/editors/animation/keyframes_draw.c (+286/-172)
source/blender/editors/animation/keyframes_edit.c (+116/-109)
source/blender/editors/animation/keyframes_general.c (+144/-141)
source/blender/editors/animation/keyframing.c (+689/-425)
source/blender/editors/animation/keyingsets.c (+162/-153)
source/blender/editors/armature/BIF_generate.h (+4/-3)
source/blender/editors/armature/BIF_retarget.h (+22/-23)
source/blender/editors/armature/SConscript (+27/-1)
source/blender/editors/armature/armature_intern.h (+10/-8)
source/blender/editors/armature/armature_ops.c (+72/-62)
source/blender/editors/armature/editarmature.c (+1461/-1143)
source/blender/editors/armature/editarmature_generate.c (+20/-35)
source/blender/editors/armature/editarmature_retarget.c (+396/-680)
source/blender/editors/armature/editarmature_sketch.c (+478/-716)
source/blender/editors/armature/meshlaplacian.c (+568/-560)
source/blender/editors/armature/meshlaplacian.h (+3/-3)
source/blender/editors/armature/poseSlide.c (+188/-187)
source/blender/editors/armature/poseUtils.c (+30/-30)
source/blender/editors/armature/poselib.c (+312/-312)
source/blender/editors/armature/poseobject.c (+485/-462)
source/blender/editors/armature/reeb.c (+570/-833)
source/blender/editors/armature/reeb.h (+22/-22)
source/blender/editors/curve/SConscript (+27/-1)
source/blender/editors/curve/curve_ops.c (+10/-9)
source/blender/editors/curve/editcurve.c (+2547/-2469)
source/blender/editors/curve/editfont.c (+536/-533)
source/blender/editors/curve/lorem.c (+1/-1)
source/blender/editors/datafiles/Bfont.c (+0/-1612)
source/blender/editors/datafiles/CMakeLists.txt (+77/-47)
source/blender/editors/datafiles/SConscript (+105/-5)
source/blender/editors/datafiles/add.png.c (+0/-352)
source/blender/editors/datafiles/bfont.ttf.c (+0/-5995)
source/blender/editors/datafiles/blender_icons.png.c (+0/-7089)
source/blender/editors/datafiles/blob.png.c (+0/-344)
source/blender/editors/datafiles/blur.png.c (+0/-301)
source/blender/editors/datafiles/bmonofont.ttf.c (+0/-9684)
source/blender/editors/datafiles/clay.png.c (+0/-359)
source/blender/editors/datafiles/claystrips.png.c (+0/-290)
source/blender/editors/datafiles/clone.png.c (+0/-346)
source/blender/editors/datafiles/crease.png.c (+0/-279)
source/blender/editors/datafiles/darken.png.c (+0/-311)
source/blender/editors/datafiles/draw.png.c (+0/-364)
source/blender/editors/datafiles/fill.png.c (+0/-537)
source/blender/editors/datafiles/flatten.png.c (+0/-294)
source/blender/editors/datafiles/grab.png.c (+0/-261)
source/blender/editors/datafiles/inflate.png.c (+0/-286)
source/blender/editors/datafiles/layer.png.c (+0/-353)
source/blender/editors/datafiles/lighten.png.c (+0/-304)
source/blender/editors/datafiles/mix.png.c (+0/-336)
source/blender/editors/datafiles/multiply.png.c (+0/-323)
source/blender/editors/datafiles/nudge.png.c (+0/-572)
source/blender/editors/datafiles/pinch.png.c (+0/-318)
source/blender/editors/datafiles/preview.blend.c (+0/-17982)
source/blender/editors/datafiles/prvicons.c (+0/-393)
source/blender/editors/datafiles/scrape.png.c (+0/-417)
source/blender/editors/datafiles/smear.png.c (+0/-302)
source/blender/editors/datafiles/smooth.png.c (+0/-523)
source/blender/editors/datafiles/snake_hook.png.c (+0/-313)
source/blender/editors/datafiles/soften.png.c (+0/-298)
source/blender/editors/datafiles/splash.png.c (+0/-7181)
source/blender/editors/datafiles/startup.blend.c (+0/-11202)
source/blender/editors/datafiles/subtract.png.c (+0/-327)
source/blender/editors/datafiles/texdraw.png.c (+0/-305)
source/blender/editors/datafiles/thumb.png.c (+0/-294)
source/blender/editors/datafiles/twist.png.c (+0/-350)
source/blender/editors/datafiles/vertexdraw.png.c (+0/-330)
source/blender/editors/gpencil/SConscript (+27/-1)
source/blender/editors/gpencil/drawgpencil.c (+202/-213)
source/blender/editors/gpencil/editaction_gpencil.c (+150/-152)
source/blender/editors/gpencil/gpencil_buttons.c (+79/-49)
source/blender/editors/gpencil/gpencil_edit.c (+1196/-187)
source/blender/editors/gpencil/gpencil_intern.h (+20/-20)
source/blender/editors/gpencil/gpencil_ops.c (+17/-13)
source/blender/editors/gpencil/gpencil_paint.c (+742/-672)
source/blender/editors/gpencil/gpencil_undo.c (+32/-29)
source/blender/editors/include/BIF_gl.h (+18/-8)
source/blender/editors/include/BIF_glutil.h (+132/-135)
source/blender/editors/include/ED_anim_api.h (+173/-158)
source/blender/editors/include/ED_armature.h (+42/-35)
source/blender/editors/include/ED_clip.h (+45/-16)
source/blender/editors/include/ED_curve.h (+23/-23)
source/blender/editors/include/ED_datafiles.h (+94/-7)
source/blender/editors/include/ED_fileselect.h (+9/-10)
source/blender/editors/include/ED_fluidsim.h (+3/-6)
source/blender/editors/include/ED_gpencil.h (+25/-19)
source/blender/editors/include/ED_image.h (+22/-11)
source/blender/editors/include/ED_keyframes_draw.h (+23/-18)
source/blender/editors/include/ED_keyframes_edit.h (+57/-57)
source/blender/editors/include/ED_keyframing.h (+45/-44)
source/blender/editors/include/ED_markers.h (+2/-3)
source/blender/editors/include/ED_mask.h (+96/-0)
source/blender/editors/include/ED_mball.h (+5/-3)
source/blender/editors/include/ED_mesh.h (+110/-76)
source/blender/editors/include/ED_node.h (+26/-7)
source/blender/editors/include/ED_numinput.h (+6/-5)
source/blender/editors/include/ED_object.h (+65/-41)
source/blender/editors/include/ED_particle.h (+3/-4)
source/blender/editors/include/ED_physics.h (+14/-2)
source/blender/editors/include/ED_render.h (+7/-13)
source/blender/editors/include/ED_screen.h (+115/-107)
source/blender/editors/include/ED_screen_types.h (+22/-22)
source/blender/editors/include/ED_sculpt.h (+11/-2)
source/blender/editors/include/ED_sequencer.h (+14/-1)
source/blender/editors/include/ED_space_api.h (+5/-5)
source/blender/editors/include/ED_transform.h (+30/-26)
source/blender/editors/include/ED_types.h (+2/-3)
source/blender/editors/include/ED_util.h (+28/-26)
source/blender/editors/include/ED_uvedit.h (+4/-2)
source/blender/editors/include/ED_view3d.h (+153/-152)
source/blender/editors/include/UI_icons.h (+42/-16)
source/blender/editors/include/UI_interface.h (+396/-330)
source/blender/editors/include/UI_interface_icons.h (+8/-2)
source/blender/editors/include/UI_resources.h (+66/-28)
source/blender/editors/include/UI_view2d.h (+44/-31)
source/blender/editors/interface/SConscript (+27/-1)
source/blender/editors/interface/interface.c (+868/-535)
source/blender/editors/interface/interface_anim.c (+27/-8)
source/blender/editors/interface/interface_draw.c (+337/-240)
source/blender/editors/interface/interface_handlers.c (+1474/-825)
source/blender/editors/interface/interface_icons.c (+262/-71)
source/blender/editors/interface/interface_intern.h (+132/-78)
source/blender/editors/interface/interface_layout.c (+178/-88)
source/blender/editors/interface/interface_ops.c (+374/-59)
source/blender/editors/interface/interface_panel.c (+178/-98)
source/blender/editors/interface/interface_regions.c (+535/-470)
source/blender/editors/interface/interface_style.c (+43/-17)
source/blender/editors/interface/interface_templates.c (+933/-625)
source/blender/editors/interface/interface_utils.c (+18/-9)
source/blender/editors/interface/interface_widgets.c (+537/-381)
source/blender/editors/interface/resources.c (+438/-100)
source/blender/editors/interface/view2d.c (+427/-343)
source/blender/editors/interface/view2d_ops.c (+314/-100)
source/blender/editors/io/CMakeLists.txt (+50/-0)
source/blender/editors/io/SConscript (+39/-0)
source/blender/editors/io/io_collada.c (+375/-0)
source/blender/editors/io/io_collada.h (+39/-0)
source/blender/editors/io/io_ops.c (+46/-0)
source/blender/editors/io/io_ops.h (+36/-0)
source/blender/editors/mask/CMakeLists.txt (+52/-0)
source/blender/editors/mask/SConscript (+35/-0)
source/blender/editors/mask/mask_add.c (+738/-0)
source/blender/editors/mask/mask_draw.c (+641/-0)
source/blender/editors/mask/mask_edit.c (+529/-0)
source/blender/editors/mask/mask_editaction.c (+306/-0)
source/blender/editors/mask/mask_intern.h (+111/-0)
source/blender/editors/mask/mask_ops.c (+1462/-0)
source/blender/editors/mask/mask_relationships.c (+178/-0)
source/blender/editors/mask/mask_select.c (+795/-0)
source/blender/editors/mask/mask_shapekey.c (+452/-0)
source/blender/editors/mesh/CMakeLists.txt (+9/-1)
source/blender/editors/mesh/SConscript (+34/-2)
source/blender/editors/mesh/editface.c (+76/-92)
source/blender/editors/mesh/editmesh_add.c (+128/-186)
source/blender/editors/mesh/editmesh_bvh.c (+30/-34)
source/blender/editors/mesh/editmesh_bvh.h (+4/-5)
source/blender/editors/mesh/editmesh_knife.c (+546/-357)
source/blender/editors/mesh/editmesh_loopcut.c (+117/-107)
source/blender/editors/mesh/editmesh_rip.c (+370/-78)
source/blender/editors/mesh/editmesh_select.c (+918/-443)
source/blender/editors/mesh/editmesh_slide.c (+0/-741)
source/blender/editors/mesh/editmesh_tools.c (+2396/-941)
source/blender/editors/mesh/editmesh_utils.c (+285/-157)
source/blender/editors/mesh/mesh_data.c (+240/-142)
source/blender/editors/mesh/mesh_intern.h (+16/-15)
source/blender/editors/mesh/mesh_navmesh.c (+51/-41)
source/blender/editors/mesh/mesh_ops.c (+71/-44)
source/blender/editors/mesh/meshtools.c (+342/-114)
source/blender/editors/metaball/SConscript (+27/-1)
source/blender/editors/metaball/mball_edit.c (+176/-152)
source/blender/editors/metaball/mball_ops.c (+7/-7)
source/blender/editors/object/CMakeLists.txt (+5/-0)
source/blender/editors/object/SConscript (+31/-2)
source/blender/editors/object/object_add.c (+816/-742)
source/blender/editors/object/object_bake.c (+319/-1046)
source/blender/editors/object/object_constraint.c (+540/-376)
source/blender/editors/object/object_edit.c (+525/-467)
source/blender/editors/object/object_group.c (+196/-80)
source/blender/editors/object/object_hook.c (+242/-214)
source/blender/editors/object/object_intern.h (+15/-3)
source/blender/editors/object/object_lattice.c (+373/-116)
source/blender/editors/object/object_modifier.c (+836/-284)
source/blender/editors/object/object_ops.c (+91/-70)
source/blender/editors/object/object_relations.c (+774/-514)
source/blender/editors/object/object_select.c (+451/-251)
source/blender/editors/object/object_shapekey.c (+102/-98)
source/blender/editors/object/object_transform.c (+277/-209)
source/blender/editors/object/object_vgroup.c (+1191/-545)
source/blender/editors/physics/CMakeLists.txt (+15/-0)
source/blender/editors/physics/SConscript (+36/-7)
source/blender/editors/physics/dynamicpaint_ops.c (+43/-38)
source/blender/editors/physics/particle_boids.c (+37/-65)
source/blender/editors/physics/particle_edit.c (+354/-261)
source/blender/editors/physics/particle_object.c (+43/-29)
source/blender/editors/physics/physics_fluid.c (+100/-101)
source/blender/editors/physics/physics_intern.h (+19/-1)
source/blender/editors/physics/physics_ops.c (+19/-2)
source/blender/editors/physics/physics_pointcache.c (+23/-16)
source/blender/editors/physics/rigidbody_constraint.c (+201/-0)
source/blender/editors/physics/rigidbody_object.c (+629/-0)
source/blender/editors/physics/rigidbody_world.c (+210/-0)
source/blender/editors/render/SConscript (+27/-1)
source/blender/editors/render/render_internal.c (+92/-59)
source/blender/editors/render/render_opengl.c (+129/-72)
source/blender/editors/render/render_preview.c (+243/-179)
source/blender/editors/render/render_shading.c (+33/-24)
source/blender/editors/render/render_update.c (+152/-33)
source/blender/editors/render/render_view.c (+11/-7)
source/blender/editors/screen/SConscript (+27/-1)
source/blender/editors/screen/area.c (+840/-674)
source/blender/editors/screen/glutil.c (+281/-273)
source/blender/editors/screen/screen_context.c (+51/-51)
source/blender/editors/screen/screen_edit.c (+574/-536)
source/blender/editors/screen/screen_intern.h (+24/-23)
source/blender/editors/screen/screen_ops.c (+1034/-689)
source/blender/editors/screen/screendump.c (+163/-97)
source/blender/editors/sculpt_paint/CMakeLists.txt (+3/-1)
source/blender/editors/sculpt_paint/SConscript (+27/-1)
source/blender/editors/sculpt_paint/paint_cursor.c (+98/-74)
source/blender/editors/sculpt_paint/paint_hide.c (+126/-41)
source/blender/editors/sculpt_paint/paint_image.c (+691/-382)
source/blender/editors/sculpt_paint/paint_image_2d.c (+560/-0)
source/blender/editors/sculpt_paint/paint_intern.h (+41/-23)
source/blender/editors/sculpt_paint/paint_mask.c (+147/-0)
source/blender/editors/sculpt_paint/paint_ops.c (+125/-27)
source/blender/editors/sculpt_paint/paint_stroke.c (+175/-66)
source/blender/editors/sculpt_paint/paint_undo.c (+12/-12)
source/blender/editors/sculpt_paint/paint_utils.c (+38/-76)
source/blender/editors/sculpt_paint/paint_vertex.c (+805/-526)
source/blender/editors/sculpt_paint/sculpt.c (+1845/-586)
source/blender/editors/sculpt_paint/sculpt_intern.h (+39/-15)
source/blender/editors/sculpt_paint/sculpt_undo.c (+362/-54)
source/blender/editors/sculpt_paint/sculpt_uv.c (+20/-20)
source/blender/editors/sound/SConscript (+27/-1)
source/blender/editors/sound/sound_ops.c (+213/-141)
source/blender/editors/space_action/SConscript (+27/-1)
source/blender/editors/space_action/action_draw.c (+76/-73)
source/blender/editors/space_action/action_edit.c (+298/-243)
source/blender/editors/space_action/action_intern.h (+4/-4)
source/blender/editors/space_action/action_ops.c (+47/-46)
source/blender/editors/space_action/action_select.c (+297/-212)
source/blender/editors/space_action/space_action.c (+117/-88)
source/blender/editors/space_api/CMakeLists.txt (+1/-1)
source/blender/editors/space_api/SConscript (+28/-2)
source/blender/editors/space_api/space.c (+0/-44)
source/blender/editors/space_api/spacetypes.c (+34/-25)
source/blender/editors/space_buttons/SConscript (+27/-1)
source/blender/editors/space_buttons/buttons_context.c (+198/-162)
source/blender/editors/space_buttons/buttons_header.c (+22/-21)
source/blender/editors/space_buttons/buttons_intern.h (+11/-11)
source/blender/editors/space_buttons/buttons_ops.c (+37/-25)
source/blender/editors/space_buttons/buttons_texture.c (+80/-70)
source/blender/editors/space_buttons/space_buttons.c (+71/-66)
source/blender/editors/space_clip/CMakeLists.txt (+17/-9)
source/blender/editors/space_clip/SConscript (+31/-2)
source/blender/editors/space_clip/clip_buttons.c (+151/-124)
source/blender/editors/space_clip/clip_dopesheet_draw.c (+360/-0)
source/blender/editors/space_clip/clip_dopesheet_ops.c (+163/-0)
source/blender/editors/space_clip/clip_draw.c (+471/-368)
source/blender/editors/space_clip/clip_editor.c (+490/-82)
source/blender/editors/space_clip/clip_graph_draw.c (+33/-80)
source/blender/editors/space_clip/clip_graph_ops.c (+82/-81)
source/blender/editors/space_clip/clip_intern.h (+54/-19)
source/blender/editors/space_clip/clip_ops.c (+251/-143)
source/blender/editors/space_clip/clip_toolbar.c (+34/-21)
source/blender/editors/space_clip/clip_utils.c (+125/-55)
source/blender/editors/space_clip/space_clip.c (+638/-153)
source/blender/editors/space_clip/tracking_ops.c (+928/-1110)
source/blender/editors/space_clip/tracking_select.c (+787/-0)
source/blender/editors/space_console/SConscript (+27/-1)
source/blender/editors/space_console/console_draw.c (+30/-21)
source/blender/editors/space_console/console_intern.h (+5/-1)
source/blender/editors/space_console/console_ops.c (+178/-40)
source/blender/editors/space_console/space_console.c (+22/-14)
source/blender/editors/space_file/SConscript (+27/-1)
source/blender/editors/space_file/file_draw.c (+98/-96)
source/blender/editors/space_file/file_intern.h (+10/-9)
source/blender/editors/space_file/file_ops.c (+298/-233)
source/blender/editors/space_file/file_panels.c (+67/-48)
source/blender/editors/space_file/filelist.c (+348/-324)
source/blender/editors/space_file/filelist.h (+46/-47)
source/blender/editors/space_file/filesel.c (+152/-138)
source/blender/editors/space_file/fsmenu.c (+276/-233)
source/blender/editors/space_file/fsmenu.h (+42/-32)
source/blender/editors/space_file/space_file.c (+118/-94)
source/blender/editors/space_graph/SConscript (+27/-1)
source/blender/editors/space_graph/graph_buttons.c (+297/-292)
source/blender/editors/space_graph/graph_draw.c (+236/-236)
source/blender/editors/space_graph/graph_edit.c (+444/-381)
source/blender/editors/space_graph/graph_intern.h (+5/-5)
source/blender/editors/space_graph/graph_ops.c (+95/-85)
source/blender/editors/space_graph/graph_select.c (+207/-196)
source/blender/editors/space_graph/graph_utils.c (+24/-24)
source/blender/editors/space_graph/space_graph.c (+149/-135)
source/blender/editors/space_image/CMakeLists.txt (+5/-0)
source/blender/editors/space_image/SConscript (+29/-1)
source/blender/editors/space_image/image_buttons.c (+156/-181)
source/blender/editors/space_image/image_draw.c (+242/-179)
source/blender/editors/space_image/image_edit.c (+392/-0)
source/blender/editors/space_image/image_intern.h (+3/-3)
source/blender/editors/space_image/image_ops.c (+451/-237)
source/blender/editors/space_image/space_image.c (+185/-289)
source/blender/editors/space_info/SConscript (+27/-1)
source/blender/editors/space_info/info_draw.c (+26/-22)
source/blender/editors/space_info/info_intern.h (+5/-0)
source/blender/editors/space_info/info_ops.c (+163/-21)
source/blender/editors/space_info/info_report.c (+11/-11)
source/blender/editors/space_info/info_stats.c (+68/-52)
source/blender/editors/space_info/space_info.c (+16/-6)
source/blender/editors/space_info/textview.c (+41/-30)
source/blender/editors/space_info/textview.h (+2/-1)
source/blender/editors/space_logic/CMakeLists.txt (+4/-0)
source/blender/editors/space_logic/SConscript (+31/-2)
source/blender/editors/space_logic/logic_buttons.c (+22/-21)
source/blender/editors/space_logic/logic_ops.c (+116/-71)
source/blender/editors/space_logic/logic_window.c (+370/-2971)
source/blender/editors/space_logic/space_logic.c (+64/-62)
source/blender/editors/space_nla/SConscript (+27/-1)
source/blender/editors/space_nla/nla_buttons.c (+117/-120)
source/blender/editors/space_nla/nla_channels.c (+79/-76)
source/blender/editors/space_nla/nla_draw.c (+221/-251)
source/blender/editors/space_nla/nla_edit.c (+313/-310)
source/blender/editors/space_nla/nla_intern.h (+2/-2)
source/blender/editors/space_nla/nla_ops.c (+54/-55)
source/blender/editors/space_nla/nla_select.c (+99/-93)
source/blender/editors/space_nla/space_nla.c (+100/-101)
source/blender/editors/space_node/CMakeLists.txt (+10/-1)
source/blender/editors/space_node/SConscript (+31/-2)
source/blender/editors/space_node/drawnode.c (+2046/-1016)
source/blender/editors/space_node/node_add.c (+504/-0)
source/blender/editors/space_node/node_buttons.c (+56/-39)
source/blender/editors/space_node/node_draw.c (+539/-346)
source/blender/editors/space_node/node_edit.c (+1007/-2396)
source/blender/editors/space_node/node_group.c (+1183/-0)
source/blender/editors/space_node/node_header.c (+64/-89)
source/blender/editors/space_node/node_intern.h (+109/-56)
source/blender/editors/space_node/node_ops.c (+115/-39)
source/blender/editors/space_node/node_relationships.c (+1425/-0)
source/blender/editors/space_node/node_select.c (+250/-240)
source/blender/editors/space_node/node_state.c (+0/-133)
source/blender/editors/space_node/node_templates.c (+132/-130)
source/blender/editors/space_node/node_toolbar.c (+92/-0)
source/blender/editors/space_node/node_view.c (+573/-0)
source/blender/editors/space_node/space_node.c (+270/-198)
source/blender/editors/space_outliner/SConscript (+27/-1)
source/blender/editors/space_outliner/outliner_draw.c (+595/-518)
source/blender/editors/space_outliner/outliner_edit.c (+509/-308)
source/blender/editors/space_outliner/outliner_intern.h (+61/-58)
source/blender/editors/space_outliner/outliner_ops.c (+2/-0)
source/blender/editors/space_outliner/outliner_select.c (+220/-197)
source/blender/editors/space_outliner/outliner_tools.c (+407/-312)
source/blender/editors/space_outliner/outliner_tree.c (+651/-545)
source/blender/editors/space_outliner/space_outliner.c (+161/-80)
source/blender/editors/space_script/SConscript (+27/-1)
source/blender/editors/space_script/script_edit.c (+3/-3)
source/blender/editors/space_script/script_ops.c (+1/-1)
source/blender/editors/space_script/space_script.c (+30/-30)
source/blender/editors/space_sequencer/CMakeLists.txt (+7/-0)
source/blender/editors/space_sequencer/SConscript (+35/-4)
source/blender/editors/space_sequencer/sequencer_add.c (+190/-94)
source/blender/editors/space_sequencer/sequencer_buttons.c (+27/-2)
source/blender/editors/space_sequencer/sequencer_draw.c (+407/-207)
source/blender/editors/space_sequencer/sequencer_edit.c (+525/-468)
source/blender/editors/space_sequencer/sequencer_intern.h (+19/-11)
source/blender/editors/space_sequencer/sequencer_modifier.c (+222/-0)
source/blender/editors/space_sequencer/sequencer_ops.c (+63/-28)
source/blender/editors/space_sequencer/sequencer_scopes.c (+83/-65)
source/blender/editors/space_sequencer/sequencer_select.c (+93/-74)
source/blender/editors/space_sequencer/sequencer_view.c (+234/-0)
source/blender/editors/space_sequencer/space_sequencer.c (+137/-21)
source/blender/editors/space_text/CMakeLists.txt (+10/-1)
source/blender/editors/space_text/SConscript (+30/-1)
source/blender/editors/space_text/space_text.c (+36/-18)
source/blender/editors/space_text/text_autocomplete.c (+557/-0)
source/blender/editors/space_text/text_draw.c (+139/-594)
source/blender/editors/space_text/text_format.c (+227/-0)
source/blender/editors/space_text/text_format.h (+109/-0)
source/blender/editors/space_text/text_format_lua.c (+318/-0)
source/blender/editors/space_text/text_format_osl.c (+336/-0)
source/blender/editors/space_text/text_format_py.c (+325/-0)
source/blender/editors/space_text/text_header.c (+0/-15)
source/blender/editors/space_text/text_intern.h (+13/-25)
source/blender/editors/space_text/text_ops.c (+220/-323)
source/blender/editors/space_text/text_python.c (+0/-553)
source/blender/editors/space_time/SConscript (+27/-1)
source/blender/editors/space_time/space_time.c (+160/-149)
source/blender/editors/space_time/time_ops.c (+27/-27)
source/blender/editors/space_userpref/SConscript (+27/-1)
source/blender/editors/space_userpref/space_userpref.c (+50/-48)
source/blender/editors/space_view3d/CMakeLists.txt (+2/-0)
source/blender/editors/space_view3d/SConscript (+27/-1)
source/blender/editors/space_view3d/drawanimviz.c (+70/-53)
source/blender/editors/space_view3d/drawarmature.c (+187/-147)
source/blender/editors/space_view3d/drawmesh.c (+145/-95)
source/blender/editors/space_view3d/drawobject.c (+980/-1169)
source/blender/editors/space_view3d/drawvolume.c (+308/-145)
source/blender/editors/space_view3d/space_view3d.c (+85/-46)
source/blender/editors/space_view3d/view3d_buttons.c (+412/-249)
source/blender/editors/space_view3d/view3d_draw.c (+914/-463)
source/blender/editors/space_view3d/view3d_edit.c (+1041/-395)
source/blender/editors/space_view3d/view3d_fly.c (+56/-32)
source/blender/editors/space_view3d/view3d_header.c (+43/-84)
source/blender/editors/space_view3d/view3d_intern.h (+62/-34)
source/blender/editors/space_view3d/view3d_iterators.c (+460/-0)
source/blender/editors/space_view3d/view3d_ops.c (+139/-17)
source/blender/editors/space_view3d/view3d_project.c (+527/-0)
source/blender/editors/space_view3d/view3d_select.c (+855/-768)
source/blender/editors/space_view3d/view3d_snap.c (+91/-71)
source/blender/editors/space_view3d/view3d_toolbar.c (+38/-25)
source/blender/editors/space_view3d/view3d_view.c (+284/-578)
source/blender/editors/transform/CMakeLists.txt (+1/-0)
source/blender/editors/transform/SConscript (+28/-2)
source/blender/editors/transform/transform.c (+2970/-1466)
source/blender/editors/transform/transform.h (+93/-34)
source/blender/editors/transform/transform_constraints.c (+143/-145)
source/blender/editors/transform/transform_conversions.c (+2031/-1460)
source/blender/editors/transform/transform_generics.c (+523/-439)
source/blender/editors/transform/transform_input.c (+121/-115)
source/blender/editors/transform/transform_manipulator.c (+696/-544)
source/blender/editors/transform/transform_ops.c (+237/-188)
source/blender/editors/transform/transform_orientations.c (+166/-162)
source/blender/editors/transform/transform_snap.c (+510/-488)
source/blender/editors/util/CMakeLists.txt (+1/-0)
source/blender/editors/util/SConscript (+27/-1)
source/blender/editors/util/crazyspace.c (+2/-71)
source/blender/editors/util/ed_util.c (+7/-1)
source/blender/editors/util/editmode_undo.c (+9/-13)
source/blender/editors/util/numinput.c (+17/-12)
source/blender/editors/util/undo.c (+50/-52)
source/blender/editors/uvedit/CMakeLists.txt (+5/-0)
source/blender/editors/uvedit/SConscript (+34/-3)
source/blender/editors/uvedit/uvedit_buttons.c (+15/-6)
source/blender/editors/uvedit/uvedit_draw.c (+102/-186)
source/blender/editors/uvedit/uvedit_intern.h (+9/-42)
source/blender/editors/uvedit/uvedit_ops.c (+793/-334)
source/blender/editors/uvedit/uvedit_parametrizer.c (+109/-49)
source/blender/editors/uvedit/uvedit_parametrizer.h (+33/-11)
source/blender/editors/uvedit/uvedit_smart_stitch.c (+1187/-447)
source/blender/editors/uvedit/uvedit_unwrap_ops.c (+299/-211)
source/blender/gpu/CMakeLists.txt (+13/-2)
source/blender/gpu/GPU_buffers.h (+47/-33)
source/blender/gpu/GPU_draw.h (+12/-3)
source/blender/gpu/GPU_extensions.h (+17/-3)
source/blender/gpu/GPU_material.h (+18/-5)
source/blender/gpu/SConscript (+43/-2)
source/blender/gpu/intern/gpu_buffers.c (+934/-351)
source/blender/gpu/intern/gpu_codegen.c (+76/-41)
source/blender/gpu/intern/gpu_codegen.h (+5/-1)
source/blender/gpu/intern/gpu_draw.c (+380/-123)
source/blender/gpu/intern/gpu_extensions.c (+224/-22)
source/blender/gpu/intern/gpu_material.c (+351/-124)
source/blender/gpu/intern/gpu_shader_material.glsl (+0/-2153)
source/blender/gpu/intern/gpu_shader_material.glsl.c (+0/-1550)
source/blender/gpu/intern/gpu_shader_vertex.glsl (+0/-12)
source/blender/gpu/intern/gpu_shader_vertex.glsl.c (+0/-17)
source/blender/gpu/shaders/gpu_shader_material.glsl (+2284/-0)
source/blender/gpu/shaders/gpu_shader_sep_gaussian_blur_frag.glsl (+16/-0)
source/blender/gpu/shaders/gpu_shader_sep_gaussian_blur_vert.glsl (+6/-0)
source/blender/gpu/shaders/gpu_shader_vertex.glsl (+20/-0)
source/blender/gpu/shaders/gpu_shader_vsm_store_frag.glsl (+21/-0)
source/blender/gpu/shaders/gpu_shader_vsm_store_vert.glsl (+7/-0)
source/blender/ikplugin/BIK_api.h (+5/-6)
source/blender/ikplugin/CMakeLists.txt (+15/-9)
source/blender/ikplugin/SConscript (+28/-4)
source/blender/ikplugin/intern/ikplugin_api.c (+13/-5)
source/blender/ikplugin/intern/ikplugin_api.h (+1/-2)
source/blender/ikplugin/intern/iksolver_plugin.c (+187/-186)
source/blender/ikplugin/intern/iksolver_plugin.h (+1/-2)
source/blender/ikplugin/intern/itasc_plugin.cpp (+642/-591)
source/blender/ikplugin/intern/itasc_plugin.h (+1/-2)
source/blender/imbuf/CMakeLists.txt (+15/-20)
source/blender/imbuf/IMB_colormanagement.h (+159/-0)
source/blender/imbuf/IMB_imbuf.h (+34/-19)
source/blender/imbuf/IMB_imbuf_types.h (+80/-30)
source/blender/imbuf/IMB_moviecache.h (+15/-3)
source/blender/imbuf/IMB_thumbs.h (+5/-5)
source/blender/imbuf/SConscript (+29/-3)
source/blender/imbuf/intern/IMB_allocimbuf.h (+0/-3)
source/blender/imbuf/intern/IMB_anim.h (+24/-25)
source/blender/imbuf/intern/IMB_colormanagement_intern.h (+97/-0)
source/blender/imbuf/intern/IMB_filetype.h (+14/-13)
source/blender/imbuf/intern/IMB_filter.h (+4/-3)
source/blender/imbuf/intern/IMB_indexer.h (+13/-14)
source/blender/imbuf/intern/IMB_metadata.h (+6/-6)
source/blender/imbuf/intern/allocimbuf.c (+79/-66)
source/blender/imbuf/intern/anim_movie.c (+358/-282)
source/blender/imbuf/intern/bmp.c (+68/-54)
source/blender/imbuf/intern/cache.c (+65/-65)
source/blender/imbuf/intern/cineon/CMakeLists.txt (+13/-1)
source/blender/imbuf/intern/cineon/SConscript (+30/-1)
source/blender/imbuf/intern/cineon/cin_debug_stuff.h (+0/-4)
source/blender/imbuf/intern/cineon/cineon_dpx.c (+137/-145)
source/blender/imbuf/intern/cineon/cineonfile.h (+0/-133)
source/blender/imbuf/intern/cineon/cineonlib.c (+339/-780)
source/blender/imbuf/intern/cineon/cineonlib.h (+129/-54)
source/blender/imbuf/intern/cineon/dpxfile.h (+0/-127)
source/blender/imbuf/intern/cineon/dpxlib.c (+427/-667)
source/blender/imbuf/intern/cineon/dpxlib.h (+145/-44)
source/blender/imbuf/intern/cineon/logImageCore.c (+1425/-238)
source/blender/imbuf/intern/cineon/logImageCore.h (+260/-99)
source/blender/imbuf/intern/cineon/logImageLib.c (+0/-181)
source/blender/imbuf/intern/cineon/logImageLib.h (+0/-86)
source/blender/imbuf/intern/cineon/logmemfile.c (+117/-75)
source/blender/imbuf/intern/cineon/logmemfile.h (+37/-26)
source/blender/imbuf/intern/colormanagement.c (+2666/-0)
source/blender/imbuf/intern/dds/BlockDXT.cpp (+2/-2)
source/blender/imbuf/intern/dds/BlockDXT.h (+21/-21)
source/blender/imbuf/intern/dds/CMakeLists.txt (+14/-1)
source/blender/imbuf/intern/dds/Color.h (+1/-1)
source/blender/imbuf/intern/dds/ColorBlock.cpp (+10/-18)
source/blender/imbuf/intern/dds/ColorBlock.h (+5/-5)
source/blender/imbuf/intern/dds/Common.h (+3/-3)
source/blender/imbuf/intern/dds/DirectDrawSurface.cpp (+162/-135)
source/blender/imbuf/intern/dds/DirectDrawSurface.h (+13/-11)
source/blender/imbuf/intern/dds/FlipDXT.cpp (+255/-0)
source/blender/imbuf/intern/dds/FlipDXT.h (+32/-0)
source/blender/imbuf/intern/dds/Image.h (+1/-1)
source/blender/imbuf/intern/dds/PixelFormat.h (+38/-42)
source/blender/imbuf/intern/dds/SConscript (+34/-6)
source/blender/imbuf/intern/dds/Stream.cpp (+5/-5)
source/blender/imbuf/intern/dds/Stream.h (+2/-3)
source/blender/imbuf/intern/dds/dds_api.cpp (+42/-7)
source/blender/imbuf/intern/dds/dds_api.h (+3/-1)
source/blender/imbuf/intern/divers.c (+228/-272)
source/blender/imbuf/intern/filetype.c (+34/-26)
source/blender/imbuf/intern/filter.c (+282/-213)
source/blender/imbuf/intern/imageprocess.c (+223/-300)
source/blender/imbuf/intern/imbuf.h (+3/-7)
source/blender/imbuf/intern/imbuf_cocoa.m (+0/-386)
source/blender/imbuf/intern/indexer.c (+372/-315)
source/blender/imbuf/intern/indexer_dv.c (+51/-47)
source/blender/imbuf/intern/iris.c (+230/-226)
source/blender/imbuf/intern/jp2.c (+612/-330)
source/blender/imbuf/intern/jpeg.c (+107/-115)
source/blender/imbuf/intern/metadata.c (+12/-11)
source/blender/imbuf/intern/module.c (+3/-0)
source/blender/imbuf/intern/moviecache.c (+164/-29)
source/blender/imbuf/intern/openexr/CMakeLists.txt (+5/-1)
source/blender/imbuf/intern/openexr/SConscript (+30/-2)
source/blender/imbuf/intern/openexr/openexr_api.cpp (+620/-473)
source/blender/imbuf/intern/openexr/openexr_api.h (+1/-1)
source/blender/imbuf/intern/openexr/openexr_multi.h (+25/-25)
source/blender/imbuf/intern/openexr/openexr_stub.cpp (+22/-22)
source/blender/imbuf/intern/png.c (+431/-174)
source/blender/imbuf/intern/radiance_hdr.c (+89/-80)
source/blender/imbuf/intern/readimage.c (+85/-34)
source/blender/imbuf/intern/rectop.c (+222/-202)
source/blender/imbuf/intern/rotate.c (+27/-30)
source/blender/imbuf/intern/scaling.c (+413/-388)
source/blender/imbuf/intern/targa.c (+157/-151)
source/blender/imbuf/intern/thumbs.c (+61/-63)
source/blender/imbuf/intern/thumbs_blend.c (+36/-34)
source/blender/imbuf/intern/tiff.c (+170/-134)
source/blender/imbuf/intern/util.c (+129/-89)
source/blender/imbuf/intern/writeimage.c (+32/-6)
source/blender/makesdna/DNA_ID.h (+24/-15)
source/blender/makesdna/DNA_action_types.h (+376/-373)
source/blender/makesdna/DNA_actuator_types.h (+22/-20)
source/blender/makesdna/DNA_anim_types.h (+123/-123)
source/blender/makesdna/DNA_armature_types.h (+106/-103)
source/blender/makesdna/DNA_boid_types.h (+30/-31)
source/blender/makesdna/DNA_brush_types.h (+84/-77)
source/blender/makesdna/DNA_camera_types.h (+4/-3)
source/blender/makesdna/DNA_cloth_types.h (+7/-6)
source/blender/makesdna/DNA_color_types.h (+53/-17)
source/blender/makesdna/DNA_constraint_types.h (+94/-81)
source/blender/makesdna/DNA_curve_types.h (+42/-33)
source/blender/makesdna/DNA_customdata_types.h (+15/-11)
source/blender/makesdna/DNA_defs.h (+0/-3)
source/blender/makesdna/DNA_dynamicpaint_types.h (+1/-1)
source/blender/makesdna/DNA_genfile.h (+3/-3)
source/blender/makesdna/DNA_gpencil_types.h (+10/-7)
source/blender/makesdna/DNA_group_types.h (+1/-6)
source/blender/makesdna/DNA_image_types.h (+23/-6)
source/blender/makesdna/DNA_ipo_types.h (+4/-4)
source/blender/makesdna/DNA_key_types.h (+1/-1)
source/blender/makesdna/DNA_lamp_types.h (+8/-4)
source/blender/makesdna/DNA_listBase.h (+4/-7)
source/blender/makesdna/DNA_mask_types.h (+214/-0)
source/blender/makesdna/DNA_material_types.h (+16/-7)
source/blender/makesdna/DNA_mesh_types.h (+18/-11)
source/blender/makesdna/DNA_meshdata_types.h (+55/-24)
source/blender/makesdna/DNA_meta_types.h (+3/-1)
source/blender/makesdna/DNA_modifier_types.h (+230/-74)
source/blender/makesdna/DNA_movieclip_types.h (+89/-59)
source/blender/makesdna/DNA_nla_types.h (+1/-1)
source/blender/makesdna/DNA_node_types.h (+284/-22)
source/blender/makesdna/DNA_object_fluidsim.h (+6/-8)
source/blender/makesdna/DNA_object_force.h (+26/-23)
source/blender/makesdna/DNA_object_types.h (+80/-36)
source/blender/makesdna/DNA_packedFile_types.h (+15/-15)
source/blender/makesdna/DNA_particle_types.h (+15/-4)
source/blender/makesdna/DNA_property_types.h (+0/-3)
source/blender/makesdna/DNA_rigidbody_types.h (+278/-0)
source/blender/makesdna/DNA_scene_types.h (+165/-94)
source/blender/makesdna/DNA_screen_types.h (+42/-27)
source/blender/makesdna/DNA_sdna_types.h (+2/-7)
source/blender/makesdna/DNA_sequence_types.h (+197/-123)
source/blender/makesdna/DNA_smoke_types.h (+87/-28)
source/blender/makesdna/DNA_sound_types.h (+2/-2)
source/blender/makesdna/DNA_space_types.h (+818/-629)
source/blender/makesdna/DNA_text_types.h (+0/-19)
source/blender/makesdna/DNA_texture_types.h (+16/-32)
source/blender/makesdna/DNA_tracking_types.h (+256/-123)
source/blender/makesdna/DNA_userdef_types.h (+329/-222)
source/blender/makesdna/DNA_vfont_types.h (+5/-1)
source/blender/makesdna/DNA_view2d_types.h (+10/-4)
source/blender/makesdna/DNA_view3d_types.h (+32/-17)
source/blender/makesdna/DNA_windowmanager_types.h (+12/-10)
source/blender/makesdna/DNA_world_types.h (+3/-3)
source/blender/makesdna/SConscript (+27/-1)
source/blender/makesdna/intern/CMakeLists.txt (+0/-1)
source/blender/makesdna/intern/SConscript (+27/-1)
source/blender/makesdna/intern/dna_genfile.c (+438/-440)
source/blender/makesdna/intern/makesdna.c (+342/-318)
source/blender/makesrna/RNA_access.h (+61/-17)
source/blender/makesrna/RNA_define.h (+13/-2)
source/blender/makesrna/RNA_enum_types.h (+25/-1)
source/blender/makesrna/RNA_types.h (+82/-58)
source/blender/makesrna/SConscript (+35/-2)
source/blender/makesrna/intern/CMakeLists.txt (+15/-1)
source/blender/makesrna/intern/SConscript (+35/-1)
source/blender/makesrna/intern/makesrna.c (+1442/-558)
source/blender/makesrna/intern/rna_ID.c (+92/-61)
source/blender/makesrna/intern/rna_access.c (+1193/-671)
source/blender/makesrna/intern/rna_action.c (+127/-109)
source/blender/makesrna/intern/rna_action_api.c (+5/-1)
source/blender/makesrna/intern/rna_actuator.c (+155/-132)
source/blender/makesrna/intern/rna_actuator_api.c (+2/-0)
source/blender/makesrna/intern/rna_animation.c (+167/-97)
source/blender/makesrna/intern/rna_animation_api.c (+4/-3)
source/blender/makesrna/intern/rna_animviz.c (+43/-40)
source/blender/makesrna/intern/rna_armature.c (+136/-104)
source/blender/makesrna/intern/rna_armature_api.c (+5/-3)
source/blender/makesrna/intern/rna_boid.c (+35/-33)
source/blender/makesrna/intern/rna_brush.c (+187/-100)
source/blender/makesrna/intern/rna_camera.c (+45/-46)
source/blender/makesrna/intern/rna_camera_api.c (+5/-5)
source/blender/makesrna/intern/rna_cloth.c (+86/-53)
source/blender/makesrna/intern/rna_color.c (+446/-53)
source/blender/makesrna/intern/rna_constraint.c (+359/-318)
source/blender/makesrna/intern/rna_context.c (+17/-16)
source/blender/makesrna/intern/rna_controller.c (+38/-36)
source/blender/makesrna/intern/rna_controller_api.c (+2/-0)
source/blender/makesrna/intern/rna_curve.c (+202/-189)
source/blender/makesrna/intern/rna_define.c (+506/-218)
source/blender/makesrna/intern/rna_dynamicpaint.c (+155/-120)
source/blender/makesrna/intern/rna_fcurve.c (+278/-149)
source/blender/makesrna/intern/rna_fcurve_api.c (+5/-1)
source/blender/makesrna/intern/rna_fluidsim.c (+32/-26)
source/blender/makesrna/intern/rna_gpencil.c (+320/-42)
source/blender/makesrna/intern/rna_group.c (+9/-9)
source/blender/makesrna/intern/rna_image.c (+217/-113)
source/blender/makesrna/intern/rna_image_api.c (+91/-29)
source/blender/makesrna/intern/rna_internal.h (+29/-4)
source/blender/makesrna/intern/rna_internal_types.h (+49/-7)
source/blender/makesrna/intern/rna_key.c (+60/-59)
source/blender/makesrna/intern/rna_lamp.c (+200/-135)
source/blender/makesrna/intern/rna_lattice.c (+45/-40)
source/blender/makesrna/intern/rna_main.c (+58/-58)
source/blender/makesrna/intern/rna_main_api.c (+700/-309)
source/blender/makesrna/intern/rna_mask.c (+778/-0)
source/blender/makesrna/intern/rna_material.c (+153/-104)
source/blender/makesrna/intern/rna_material_api.c (+5/-4)
source/blender/makesrna/intern/rna_mesh.c (+419/-213)
source/blender/makesrna/intern/rna_mesh_api.c (+8/-4)
source/blender/makesrna/intern/rna_meta.c (+27/-24)
source/blender/makesrna/intern/rna_meta_api.c (+60/-0)
source/blender/makesrna/intern/rna_modifier.c (+717/-235)
source/blender/makesrna/intern/rna_movieclip.c (+47/-18)
source/blender/makesrna/intern/rna_nla.c (+117/-74)
source/blender/makesrna/intern/rna_nodetree.c (+2133/-598)
source/blender/makesrna/intern/rna_nodetree_types.h (+64/-36)
source/blender/makesrna/intern/rna_object.c (+602/-372)
source/blender/makesrna/intern/rna_object_api.c (+140/-231)
source/blender/makesrna/intern/rna_object_force.c (+108/-74)
source/blender/makesrna/intern/rna_packedfile.c (+2/-1)
source/blender/makesrna/intern/rna_particle.c (+570/-112)
source/blender/makesrna/intern/rna_pose.c (+249/-264)
source/blender/makesrna/intern/rna_pose_api.c (+6/-3)
source/blender/makesrna/intern/rna_property.c (+15/-14)
source/blender/makesrna/intern/rna_render.c (+86/-36)
source/blender/makesrna/intern/rna_rigidbody.c (+1022/-0)
source/blender/makesrna/intern/rna_rna.c (+194/-138)
source/blender/makesrna/intern/rna_scene.c (+836/-551)
source/blender/makesrna/intern/rna_scene_api.c (+64/-18)
source/blender/makesrna/intern/rna_screen.c (+129/-22)
source/blender/makesrna/intern/rna_sculpt_paint.c (+148/-28)
source/blender/makesrna/intern/rna_sensor.c (+33/-18)
source/blender/makesrna/intern/rna_sensor_api.c (+2/-0)
source/blender/makesrna/intern/rna_sequencer.c (+1020/-518)
source/blender/makesrna/intern/rna_sequencer_api.c (+548/-8)
source/blender/makesrna/intern/rna_smoke.c (+317/-48)
source/blender/makesrna/intern/rna_sound.c (+4/-4)
source/blender/makesrna/intern/rna_space.c (+861/-457)
source/blender/makesrna/intern/rna_speaker.c (+5/-1)
source/blender/makesrna/intern/rna_test.c (+2/-2)
source/blender/makesrna/intern/rna_text.c (+12/-57)
source/blender/makesrna/intern/rna_text_api.c (+6/-4)
source/blender/makesrna/intern/rna_texture.c (+146/-118)
source/blender/makesrna/intern/rna_texture_api.c (+15/-14)
source/blender/makesrna/intern/rna_timeline.c (+3/-3)
source/blender/makesrna/intern/rna_tracking.c (+476/-311)
source/blender/makesrna/intern/rna_ui.c (+225/-64)
source/blender/makesrna/intern/rna_ui_api.c (+472/-118)
source/blender/makesrna/intern/rna_userdef.c (+660/-194)
source/blender/makesrna/intern/rna_vfont.c (+31/-3)
source/blender/makesrna/intern/rna_wm.c (+222/-153)
source/blender/makesrna/intern/rna_wm_api.c (+90/-44)
source/blender/makesrna/intern/rna_world.c (+30/-23)
source/blender/makesrna/rna_cleanup/rna_cleaner.py (+8/-8)
source/blender/makesrna/rna_cleanup/rna_cleaner_merge.py (+1/-1)
source/blender/modifiers/CMakeLists.txt (+10/-8)
source/blender/modifiers/MOD_modifiertypes.h (+6/-1)
source/blender/modifiers/SConscript (+53/-17)
source/blender/modifiers/intern/MOD_armature.c (+36/-37)
source/blender/modifiers/intern/MOD_array.c (+146/-106)
source/blender/modifiers/intern/MOD_bevel.c (+50/-57)
source/blender/modifiers/intern/MOD_boolean.c (+41/-25)
source/blender/modifiers/intern/MOD_boolean_util.c (+146/-145)
source/blender/modifiers/intern/MOD_boolean_util.h (+3/-2)
source/blender/modifiers/intern/MOD_build.c (+36/-32)
source/blender/modifiers/intern/MOD_cast.c (+52/-48)
source/blender/modifiers/intern/MOD_cloth.c (+22/-22)
source/blender/modifiers/intern/MOD_collision.c (+37/-44)
source/blender/modifiers/intern/MOD_curve.c (+25/-26)
source/blender/modifiers/intern/MOD_decimate.c (+142/-144)
source/blender/modifiers/intern/MOD_displace.c (+56/-45)
source/blender/modifiers/intern/MOD_dynamicpaint.c (+30/-28)
source/blender/modifiers/intern/MOD_edgesplit.c (+38/-52)
source/blender/modifiers/intern/MOD_explode.c (+299/-299)
source/blender/modifiers/intern/MOD_fluidsim.c (+20/-20)
source/blender/modifiers/intern/MOD_fluidsim_util.c (+134/-143)
source/blender/modifiers/intern/MOD_hook.c (+35/-35)
source/blender/modifiers/intern/MOD_laplaciansmooth.c (+719/-0)
source/blender/modifiers/intern/MOD_lattice.c (+23/-24)
source/blender/modifiers/intern/MOD_mask.c (+88/-97)
source/blender/modifiers/intern/MOD_meshcache.c (+344/-0)
source/blender/modifiers/intern/MOD_meshcache_mdd.c (+301/-0)
source/blender/modifiers/intern/MOD_meshcache_pc2.c (+277/-0)
source/blender/modifiers/intern/MOD_meshcache_util.c (+71/-0)
source/blender/modifiers/intern/MOD_meshcache_util.h (+67/-0)
source/blender/modifiers/intern/MOD_meshdeform.c (+115/-116)
source/blender/modifiers/intern/MOD_mirror.c (+26/-27)
source/blender/modifiers/intern/MOD_multires.c (+47/-23)
source/blender/modifiers/intern/MOD_none.c (+2/-2)
source/blender/modifiers/intern/MOD_ocean.c (+103/-102)
source/blender/modifiers/intern/MOD_particleinstance.c (+257/-188)
source/blender/modifiers/intern/MOD_particlesystem.c (+43/-41)
source/blender/modifiers/intern/MOD_remesh.c (+48/-35)
source/blender/modifiers/intern/MOD_screw.c (+245/-243)
source/blender/modifiers/intern/MOD_shapekey.c (+35/-32)
source/blender/modifiers/intern/MOD_shrinkwrap.c (+46/-35)
source/blender/modifiers/intern/MOD_simpledeform.c (+123/-123)
source/blender/modifiers/intern/MOD_skin.c (+1908/-0)
source/blender/modifiers/intern/MOD_smoke.c (+64/-42)
source/blender/modifiers/intern/MOD_smooth.c (+38/-32)
source/blender/modifiers/intern/MOD_softbody.c (+7/-8)
source/blender/modifiers/intern/MOD_solidify.c (+300/-258)
source/blender/modifiers/intern/MOD_subsurf.c (+17/-7)
source/blender/modifiers/intern/MOD_surface.c (+18/-15)
source/blender/modifiers/intern/MOD_triangulate.c (+136/-0)
source/blender/modifiers/intern/MOD_util.c (+41/-35)
source/blender/modifiers/intern/MOD_util.h (+8/-4)
source/blender/modifiers/intern/MOD_uvproject.c (+76/-111)
source/blender/modifiers/intern/MOD_uvwarp.c (+268/-0)
source/blender/modifiers/intern/MOD_warp.c (+60/-55)
source/blender/modifiers/intern/MOD_wave.c (+75/-78)
source/blender/modifiers/intern/MOD_weightvg_util.c (+62/-56)
source/blender/modifiers/intern/MOD_weightvgedit.c (+25/-25)
source/blender/modifiers/intern/MOD_weightvgmix.c (+106/-106)
source/blender/modifiers/intern/MOD_weightvgproximity.c (+56/-56)
source/blender/nodes/CMakeLists.txt (+47/-16)
source/blender/nodes/NOD_composite.h (+19/-4)
source/blender/nodes/NOD_shader.h (+12/-2)
source/blender/nodes/NOD_socket.h (+1/-0)
source/blender/nodes/NOD_texture.h (+0/-2)
source/blender/nodes/SConscript (+31/-1)
source/blender/nodes/composite/node_composite_tree.c (+147/-552)
source/blender/nodes/composite/node_composite_util.c (+0/-1383)
source/blender/nodes/composite/node_composite_util.h (+4/-166)
source/blender/nodes/composite/nodes/node_composite_alphaOver.c (+14/-111)
source/blender/nodes/composite/nodes/node_composite_bilateralblur.c (+17/-229)
source/blender/nodes/composite/nodes/node_composite_blur.c (+16/-688)
source/blender/nodes/composite/nodes/node_composite_bokehblur.c (+68/-0)
source/blender/nodes/composite/nodes/node_composite_bokehimage.c (+66/-0)
source/blender/nodes/composite/nodes/node_composite_boxmask.c (+73/-0)
source/blender/nodes/composite/nodes/node_composite_brightness.c (+12/-57)
source/blender/nodes/composite/nodes/node_composite_channelMatte.c (+12/-153)
source/blender/nodes/composite/nodes/node_composite_chromaMatte.c (+40/-168)
source/blender/nodes/composite/nodes/node_composite_colorMatte.c (+13/-81)
source/blender/nodes/composite/nodes/node_composite_colorSpill.c (+13/-290)
source/blender/nodes/composite/nodes/node_composite_colorbalance.c (+12/-141)
source/blender/nodes/composite/nodes/node_composite_colorcorrection.c (+89/-0)
source/blender/nodes/composite/nodes/node_composite_common.c (+6/-328)
source/blender/nodes/composite/nodes/node_composite_composite.c (+7/-65)
source/blender/nodes/composite/nodes/node_composite_crop.c (+10/-69)
source/blender/nodes/composite/nodes/node_composite_curves.c (+28/-106)
source/blender/nodes/composite/nodes/node_composite_defocus.c (+14/-829)
source/blender/nodes/composite/nodes/node_composite_despeckle.c (+61/-0)
source/blender/nodes/composite/nodes/node_composite_diffMatte.c (+40/-122)
source/blender/nodes/composite/nodes/node_composite_dilate.c (+17/-111)
source/blender/nodes/composite/nodes/node_composite_directionalblur.c (+16/-97)
source/blender/nodes/composite/nodes/node_composite_displace.c (+11/-147)
source/blender/nodes/composite/nodes/node_composite_distanceMatte.c (+40/-178)
source/blender/nodes/composite/nodes/node_composite_doubleEdgeMask.c (+2/-1232)
source/blender/nodes/composite/nodes/node_composite_ellipsemask.c (+73/-0)
source/blender/nodes/composite/nodes/node_composite_filter.c (+9/-187)
source/blender/nodes/composite/nodes/node_composite_flip.c (+9/-55)
source/blender/nodes/composite/nodes/node_composite_gamma.c (+10/-41)
source/blender/nodes/composite/nodes/node_composite_glare.c (+10/-444)
source/blender/nodes/composite/nodes/node_composite_hueSatVal.c (+11/-61)
source/blender/nodes/composite/nodes/node_composite_huecorrect.c (+12/-105)
source/blender/nodes/composite/nodes/node_composite_idMask.c (+8/-72)
source/blender/nodes/composite/nodes/node_composite_image.c (+72/-406)
source/blender/nodes/composite/nodes/node_composite_inpaint.c (+56/-0)
source/blender/nodes/composite/nodes/node_composite_invert.c (+12/-85)
source/blender/nodes/composite/nodes/node_composite_keying.c (+92/-0)
source/blender/nodes/composite/nodes/node_composite_keyingscreen.c (+73/-0)
source/blender/nodes/composite/nodes/node_composite_lensdist.c (+12/-152)
source/blender/nodes/composite/nodes/node_composite_levels.c (+7/-278)
source/blender/nodes/composite/nodes/node_composite_lummaMatte.c (+12/-64)
source/blender/nodes/composite/nodes/node_composite_mapRange.c (+58/-0)
source/blender/nodes/composite/nodes/node_composite_mapUV.c (+9/-128)
source/blender/nodes/composite/nodes/node_composite_mapValue.c (+10/-46)
source/blender/nodes/composite/nodes/node_composite_mask.c (+70/-0)
source/blender/nodes/composite/nodes/node_composite_math.c (+11/-163)
source/blender/nodes/composite/nodes/node_composite_mixrgb.c (+10/-49)
source/blender/nodes/composite/nodes/node_composite_movieclip.c (+9/-105)
source/blender/nodes/composite/nodes/node_composite_moviedistortion.c (+15/-76)
source/blender/nodes/composite/nodes/node_composite_normal.c (+10/-47)
source/blender/nodes/composite/nodes/node_composite_normalize.c (+8/-68)
source/blender/nodes/composite/nodes/node_composite_outputFile.c (+88/-186)
source/blender/nodes/composite/nodes/node_composite_pixelate.c (+57/-0)
source/blender/nodes/composite/nodes/node_composite_premulkey.c (+8/-26)
source/blender/nodes/composite/nodes/node_composite_rgb.c (+2/-11)
source/blender/nodes/composite/nodes/node_composite_rotate.c (+11/-89)
source/blender/nodes/composite/nodes/node_composite_scale.c (+11/-97)
source/blender/nodes/composite/nodes/node_composite_sepcombHSVA.c (+22/-120)
source/blender/nodes/composite/nodes/node_composite_sepcombRGBA.c (+22/-97)
source/blender/nodes/composite/nodes/node_composite_sepcombYCCA.c (+23/-246)
source/blender/nodes/composite/nodes/node_composite_sepcombYUVA.c (+23/-121)
source/blender/nodes/composite/nodes/node_composite_setalpha.c (+9/-40)
source/blender/nodes/composite/nodes/node_composite_splitViewer.c (+7/-107)
source/blender/nodes/composite/nodes/node_composite_stabilize2d.c (+9/-31)
source/blender/nodes/composite/nodes/node_composite_switch.c (+58/-0)
source/blender/nodes/composite/nodes/node_composite_texture.c (+10/-109)
source/blender/nodes/composite/nodes/node_composite_tonemap.c (+10/-116)
source/blender/nodes/composite/nodes/node_composite_trackpos.c (+60/-0)
source/blender/nodes/composite/nodes/node_composite_transform.c (+14/-94)
source/blender/nodes/composite/nodes/node_composite_translate.c (+11/-17)
source/blender/nodes/composite/nodes/node_composite_valToRgb.c (+19/-83)
source/blender/nodes/composite/nodes/node_composite_value.c (+2/-11)
source/blender/nodes/composite/nodes/node_composite_vecBlur.c (+17/-58)
source/blender/nodes/composite/nodes/node_composite_viewer.c (+17/-96)
source/blender/nodes/composite/nodes/node_composite_zcombine.c (+12/-187)
source/blender/nodes/intern/node_common.c (+140/-467)
source/blender/nodes/intern/node_common.h (+1/-13)
source/blender/nodes/intern/node_exec.c (+50/-45)
source/blender/nodes/intern/node_exec.h (+1/-5)
source/blender/nodes/intern/node_socket.c (+79/-38)
source/blender/nodes/intern/node_util.c (+53/-33)
source/blender/nodes/intern/node_util.h (+4/-13)
source/blender/nodes/shader/node_shader_tree.c (+49/-40)
source/blender/nodes/shader/node_shader_util.c (+43/-42)
source/blender/nodes/shader/node_shader_util.h (+7/-5)
source/blender/nodes/shader/nodes/node_shader_add_shader.c (+5/-5)
source/blender/nodes/shader/nodes/node_shader_ambient_occlusion.c (+63/-0)
source/blender/nodes/shader/nodes/node_shader_attribute.c (+5/-5)
source/blender/nodes/shader/nodes/node_shader_background.c (+5/-5)
source/blender/nodes/shader/nodes/node_shader_brightness.c (+17/-12)
source/blender/nodes/shader/nodes/node_shader_bsdf_anisotropic.c (+14/-8)
source/blender/nodes/shader/nodes/node_shader_bsdf_diffuse.c (+10/-6)
source/blender/nodes/shader/nodes/node_shader_bsdf_glass.c (+11/-7)
source/blender/nodes/shader/nodes/node_shader_bsdf_glossy.c (+10/-7)
source/blender/nodes/shader/nodes/node_shader_bsdf_refraction.c (+68/-0)
source/blender/nodes/shader/nodes/node_shader_bsdf_translucent.c (+9/-5)
source/blender/nodes/shader/nodes/node_shader_bsdf_transparent.c (+4/-4)
source/blender/nodes/shader/nodes/node_shader_bsdf_velvet.c (+10/-6)
source/blender/nodes/shader/nodes/node_shader_bump.c (+68/-0)
source/blender/nodes/shader/nodes/node_shader_camera.c (+6/-6)
source/blender/nodes/shader/nodes/node_shader_common.c (+6/-129)
source/blender/nodes/shader/nodes/node_shader_curves.c (+18/-14)
source/blender/nodes/shader/nodes/node_shader_dynamic.c (+0/-798)
source/blender/nodes/shader/nodes/node_shader_emission.c (+5/-5)
source/blender/nodes/shader/nodes/node_shader_fresnel.c (+4/-4)
source/blender/nodes/shader/nodes/node_shader_gamma.c (+6/-6)
source/blender/nodes/shader/nodes/node_shader_geom.c (+15/-15)
source/blender/nodes/shader/nodes/node_shader_geometry.c (+8/-8)
source/blender/nodes/shader/nodes/node_shader_hair_info.c (+53/-0)
source/blender/nodes/shader/nodes/node_shader_holdout.c (+3/-3)
source/blender/nodes/shader/nodes/node_shader_hueSatVal.c (+11/-11)
source/blender/nodes/shader/nodes/node_shader_invert.c (+7/-7)
source/blender/nodes/shader/nodes/node_shader_layer_weight.c (+5/-5)
source/blender/nodes/shader/nodes/node_shader_light_falloff.c (+68/-0)
source/blender/nodes/shader/nodes/node_shader_light_path.c (+9/-8)
source/blender/nodes/shader/nodes/node_shader_mapping.c (+12/-12)
source/blender/nodes/shader/nodes/node_shader_material.c (+47/-39)
source/blender/nodes/shader/nodes/node_shader_math.c (+75/-55)
source/blender/nodes/shader/nodes/node_shader_mixRgb.c (+6/-6)
source/blender/nodes/shader/nodes/node_shader_mix_shader.c (+6/-6)
source/blender/nodes/shader/nodes/node_shader_normal.c (+6/-6)
source/blender/nodes/shader/nodes/node_shader_normal_map.c (+70/-0)
source/blender/nodes/shader/nodes/node_shader_object_info.c (+61/-0)
source/blender/nodes/shader/nodes/node_shader_output.c (+5/-5)
source/blender/nodes/shader/nodes/node_shader_output_lamp.c (+3/-3)
source/blender/nodes/shader/nodes/node_shader_output_material.c (+5/-5)
source/blender/nodes/shader/nodes/node_shader_output_world.c (+4/-4)
source/blender/nodes/shader/nodes/node_shader_particle_info.c (+56/-0)
source/blender/nodes/shader/nodes/node_shader_rgb.c (+2/-2)
source/blender/nodes/shader/nodes/node_shader_script.c (+86/-0)
source/blender/nodes/shader/nodes/node_shader_sepcombRGB.c (+12/-12)
source/blender/nodes/shader/nodes/node_shader_squeeze.c (+14/-15)
source/blender/nodes/shader/nodes/node_shader_tangent.c (+60/-0)
source/blender/nodes/shader/nodes/node_shader_tex_brick.c (+90/-0)
source/blender/nodes/shader/nodes/node_shader_tex_checker.c (+15/-15)
source/blender/nodes/shader/nodes/node_shader_tex_coord.c (+10/-9)
source/blender/nodes/shader/nodes/node_shader_tex_environment.c (+35/-17)
source/blender/nodes/shader/nodes/node_shader_tex_gradient.c (+12/-12)
source/blender/nodes/shader/nodes/node_shader_tex_image.c (+36/-18)
source/blender/nodes/shader/nodes/node_shader_tex_magic.c (+14/-14)
source/blender/nodes/shader/nodes/node_shader_tex_musgrave.c (+18/-18)
source/blender/nodes/shader/nodes/node_shader_tex_noise.c (+15/-15)
source/blender/nodes/shader/nodes/node_shader_tex_sky.c (+11/-11)
source/blender/nodes/shader/nodes/node_shader_tex_voronoi.c (+13/-13)
source/blender/nodes/shader/nodes/node_shader_tex_wave.c (+16/-16)
source/blender/nodes/shader/nodes/node_shader_texture.c (+35/-25)
source/blender/nodes/shader/nodes/node_shader_valToRgb.c (+14/-14)
source/blender/nodes/shader/nodes/node_shader_value.c (+3/-3)
source/blender/nodes/shader/nodes/node_shader_vectMath.c (+47/-38)
source/blender/nodes/shader/nodes/node_shader_volume_isotropic.c (+5/-5)
source/blender/nodes/shader/nodes/node_shader_volume_transparent.c (+5/-5)
source/blender/nodes/texture/node_texture_tree.c (+64/-58)
source/blender/nodes/texture/node_texture_util.c (+28/-30)
source/blender/nodes/texture/node_texture_util.h (+14/-9)
source/blender/nodes/texture/nodes/node_texture_at.c (+5/-5)
source/blender/nodes/texture/nodes/node_texture_bricks.c (+20/-19)
source/blender/nodes/texture/nodes/node_texture_checker.c (+7/-7)
source/blender/nodes/texture/nodes/node_texture_common.c (+2/-125)
source/blender/nodes/texture/nodes/node_texture_compose.c (+8/-8)
source/blender/nodes/texture/nodes/node_texture_coord.c (+3/-5)
source/blender/nodes/texture/nodes/node_texture_curves.c (+11/-8)
source/blender/nodes/texture/nodes/node_texture_decompose.c (+8/-8)
source/blender/nodes/texture/nodes/node_texture_distance.c (+6/-6)
source/blender/nodes/texture/nodes/node_texture_hueSatVal.c (+14/-14)
source/blender/nodes/texture/nodes/node_texture_image.c (+7/-5)
source/blender/nodes/texture/nodes/node_texture_invert.c (+6/-6)
source/blender/nodes/texture/nodes/node_texture_math.c (+10/-10)
source/blender/nodes/texture/nodes/node_texture_mixRgb.c (+6/-6)
source/blender/nodes/texture/nodes/node_texture_output.c (+13/-13)
source/blender/nodes/texture/nodes/node_texture_proc.c (+44/-44)
source/blender/nodes/texture/nodes/node_texture_rotate.c (+13/-13)
source/blender/nodes/texture/nodes/node_texture_scale.c (+7/-7)
source/blender/nodes/texture/nodes/node_texture_texture.c (+10/-10)
source/blender/nodes/texture/nodes/node_texture_translate.c (+7/-7)
source/blender/nodes/texture/nodes/node_texture_valToNor.c (+9/-9)
source/blender/nodes/texture/nodes/node_texture_valToRgb.c (+10/-11)
source/blender/nodes/texture/nodes/node_texture_viewer.c (+4/-4)
source/blender/python/BPY_extern.h (+8/-1)
source/blender/python/SConscript (+120/-8)
source/blender/python/bmesh/CMakeLists.txt (+4/-0)
source/blender/python/bmesh/bmesh_py_api.c (+60/-12)
source/blender/python/bmesh/bmesh_py_ops.c (+289/-0)
source/blender/python/bmesh/bmesh_py_ops.h (+35/-0)
source/blender/python/bmesh/bmesh_py_ops_call.c (+788/-0)
source/blender/python/bmesh/bmesh_py_ops_call.h (+41/-0)
source/blender/python/bmesh/bmesh_py_types.c (+739/-339)
source/blender/python/bmesh/bmesh_py_types.h (+29/-10)
source/blender/python/bmesh/bmesh_py_types_customdata.c (+82/-81)
source/blender/python/bmesh/bmesh_py_types_meshdata.c (+40/-40)
source/blender/python/bmesh/bmesh_py_types_select.c (+32/-40)
source/blender/python/bmesh/bmesh_py_utils.c (+41/-48)
source/blender/python/generic/CMakeLists.txt (+2/-0)
source/blender/python/generic/bgl.c (+133/-9)
source/blender/python/generic/bgl.h (+17/-1)
source/blender/python/generic/bpy_internal_import.c (+61/-9)
source/blender/python/generic/bpy_internal_import.h (+7/-6)
source/blender/python/generic/idprop_py_api.c (+127/-67)
source/blender/python/generic/idprop_py_api.h (+11/-0)
source/blender/python/generic/py_capi_utils.c (+114/-12)
source/blender/python/generic/py_capi_utils.h (+8/-4)
source/blender/python/intern/CMakeLists.txt (+130/-7)
source/blender/python/intern/bpy.c (+29/-24)
source/blender/python/intern/bpy.h (+4/-1)
source/blender/python/intern/bpy_app.c (+13/-5)
source/blender/python/intern/bpy_app.h (+1/-1)
source/blender/python/intern/bpy_app_build_options.c (+303/-0)
source/blender/python/intern/bpy_app_build_options.h (+32/-0)
source/blender/python/intern/bpy_app_ffmpeg.c (+10/-11)
source/blender/python/intern/bpy_app_ffmpeg.h (+1/-1)
source/blender/python/intern/bpy_app_handlers.c (+4/-2)
source/blender/python/intern/bpy_app_handlers.h (+1/-1)
source/blender/python/intern/bpy_app_translations.c (+808/-0)
source/blender/python/intern/bpy_app_translations.h (+32/-0)
source/blender/python/intern/bpy_driver.c (+4/-4)
source/blender/python/intern/bpy_driver.h (+1/-1)
source/blender/python/intern/bpy_interface.c (+164/-41)
source/blender/python/intern/bpy_interface_atexit.c (+3/-2)
source/blender/python/intern/bpy_intern_string.c (+9/-0)
source/blender/python/intern/bpy_intern_string.h (+3/-0)
source/blender/python/intern/bpy_library.c (+25/-22)
source/blender/python/intern/bpy_library.h (+32/-0)
source/blender/python/intern/bpy_operator.c (+20/-16)
source/blender/python/intern/bpy_operator_wrap.c (+64/-16)
source/blender/python/intern/bpy_path.c (+67/-0)
source/blender/python/intern/bpy_path.h (+33/-0)
source/blender/python/intern/bpy_props.c (+1700/-377)
source/blender/python/intern/bpy_rna.c (+399/-241)
source/blender/python/intern/bpy_rna.h (+10/-4)
source/blender/python/intern/bpy_rna_anim.c (+33/-20)
source/blender/python/intern/bpy_rna_array.c (+8/-5)
source/blender/python/intern/bpy_rna_callback.c (+175/-12)
source/blender/python/intern/bpy_rna_callback.h (+5/-0)
source/blender/python/intern/bpy_traceback.c (+40/-30)
source/blender/python/intern/bpy_traceback.h (+1/-1)
source/blender/python/intern/bpy_util.c (+20/-13)
source/blender/python/intern/bpy_util.h (+5/-8)
source/blender/python/intern/gpu.c (+4/-5)
source/blender/python/intern/gpu.h (+1/-1)
source/blender/python/intern/stubs.c (+7/-4)
source/blender/python/mathutils/mathutils.c (+18/-5)
source/blender/python/mathutils/mathutils.h (+8/-8)
source/blender/python/mathutils/mathutils_Color.c (+89/-81)
source/blender/python/mathutils/mathutils_Color.h (+2/-3)
source/blender/python/mathutils/mathutils_Euler.c (+85/-77)
source/blender/python/mathutils/mathutils_Euler.h (+7/-9)
source/blender/python/mathutils/mathutils_Matrix.c (+213/-67)
source/blender/python/mathutils/mathutils_Quaternion.c (+97/-92)
source/blender/python/mathutils/mathutils_Quaternion.h (+5/-8)
source/blender/python/mathutils/mathutils_Vector.c (+68/-58)
source/blender/python/mathutils/mathutils_Vector.h (+0/-1)
source/blender/python/mathutils/mathutils_geometry.c (+215/-33)
source/blender/python/mathutils/mathutils_geometry.h (+4/-7)
source/blender/python/mathutils/mathutils_noise.c (+3/-2)
source/blender/python/mathutils/mathutils_noise.h (+1/-1)
source/blender/python/rna_dump.py (+2/-2)
source/blender/quicktime/SConscript (+27/-1)
source/blender/quicktime/apple/qtkit_export.m (+62/-59)
source/blender/quicktime/apple/qtkit_import.m (+41/-39)
source/blender/quicktime/apple/quicktime_export.c (+248/-250)
source/blender/quicktime/apple/quicktime_import.c (+174/-172)
source/blender/quicktime/quicktime_export.h (+6/-6)
source/blender/quicktime/quicktime_import.h (+18/-20)
source/blender/render/CMakeLists.txt (+3/-0)
source/blender/render/SConscript (+27/-1)
source/blender/render/extern/include/RE_engine.h (+20/-2)
source/blender/render/extern/include/RE_multires_bake.h (+62/-0)
source/blender/render/extern/include/RE_pipeline.h (+18/-13)
source/blender/render/extern/include/RE_render_ext.h (+9/-7)
source/blender/render/extern/include/RE_shader_ext.h (+13/-10)
source/blender/render/intern/include/envmap.h (+2/-1)
source/blender/render/intern/include/gammaCorrectionTables.h (+3/-7)
source/blender/render/intern/include/initrender.h (+3/-5)
source/blender/render/intern/include/occlusion.h (+1/-2)
source/blender/render/intern/include/pixelblending.h (+7/-7)
source/blender/render/intern/include/pixelshading.h (+5/-3)
source/blender/render/intern/include/pointdensity.h (+1/-1)
source/blender/render/intern/include/rayobject.h (+12/-11)
source/blender/render/intern/include/render_result.h (+12/-6)
source/blender/render/intern/include/render_types.h (+30/-24)
source/blender/render/intern/include/rendercore.h (+9/-19)
source/blender/render/intern/include/renderdatabase.h (+16/-7)
source/blender/render/intern/include/shadbuf.h (+12/-16)
source/blender/render/intern/include/shading.h (+2/-2)
source/blender/render/intern/include/sss.h (+4/-4)
source/blender/render/intern/include/strand.h (+3/-3)
source/blender/render/intern/include/sunsky.h (+5/-9)
source/blender/render/intern/include/texture.h (+5/-9)
source/blender/render/intern/include/texture_ocean.h (+6/-1)
source/blender/render/intern/include/volume_precache.h (+2/-2)
source/blender/render/intern/include/volumetric.h (+0/-3)
source/blender/render/intern/include/voxeldata.h (+1/-2)
source/blender/render/intern/include/zbuf.h (+25/-18)
source/blender/render/intern/raytrace/bvh.h (+129/-157)
source/blender/render/intern/raytrace/rayobject.cpp (+102/-119)
source/blender/render/intern/raytrace/rayobject_blibvh.cpp (+21/-24)
source/blender/render/intern/raytrace/rayobject_hint.h (+6/-8)
source/blender/render/intern/raytrace/rayobject_instance.cpp (+39/-46)
source/blender/render/intern/raytrace/rayobject_internal.h (+35/-9)
source/blender/render/intern/raytrace/rayobject_octree.cpp (+574/-573)
source/blender/render/intern/raytrace/rayobject_qbvh.cpp (+24/-26)
source/blender/render/intern/raytrace/rayobject_raycounter.cpp (+2/-2)
source/blender/render/intern/raytrace/rayobject_rtbuild.cpp (+125/-142)
source/blender/render/intern/raytrace/rayobject_rtbuild.h (+14/-16)
source/blender/render/intern/raytrace/rayobject_svbvh.cpp (+31/-37)
source/blender/render/intern/raytrace/rayobject_vbvh.cpp (+37/-41)
source/blender/render/intern/raytrace/reorganize.h (+132/-171)
source/blender/render/intern/raytrace/svbvh.h (+93/-110)
source/blender/render/intern/raytrace/vbvh.h (+32/-42)
source/blender/render/intern/source/bake.c (+1117/-0)
source/blender/render/intern/source/convertblender.c (+404/-456)
source/blender/render/intern/source/envmap.c (+239/-245)
source/blender/render/intern/source/external_engine.c (+225/-68)
source/blender/render/intern/source/gammaCorrectionTables.c (+8/-13)
source/blender/render/intern/source/imagetexture.c (+340/-273)
source/blender/render/intern/source/initrender.c (+246/-259)
source/blender/render/intern/source/multires_bake.c (+1298/-0)
source/blender/render/intern/source/occlusion.c (+536/-527)
source/blender/render/intern/source/pipeline.c (+724/-589)
source/blender/render/intern/source/pixelblending.c (+200/-194)
source/blender/render/intern/source/pixelshading.c (+9/-9)
source/blender/render/intern/source/pointdensity.c (+13/-12)
source/blender/render/intern/source/rayshade.c (+131/-153)
source/blender/render/intern/source/render_result.c (+442/-395)
source/blender/render/intern/source/render_texture.c (+520/-542)
source/blender/render/intern/source/rendercore.c (+82/-797)
source/blender/render/intern/source/renderdatabase.c (+160/-115)
source/blender/render/intern/source/shadbuf.c (+96/-92)
source/blender/render/intern/source/shadeinput.c (+540/-558)
source/blender/render/intern/source/shadeoutput.c (+119/-81)
source/blender/render/intern/source/sss.c (+22/-22)
source/blender/render/intern/source/strand.c (+32/-38)
source/blender/render/intern/source/sunsky.c (+100/-102)
source/blender/render/intern/source/texture_ocean.c (+12/-11)
source/blender/render/intern/source/volume_precache.c (+46/-56)
source/blender/render/intern/source/volumetric.c (+90/-99)
source/blender/render/intern/source/voxeldata.c (+177/-112)
source/blender/render/intern/source/zbuf.c (+188/-158)
source/blender/windowmanager/CMakeLists.txt (+7/-0)
source/blender/windowmanager/SConscript (+31/-2)
source/blender/windowmanager/WM_api.h (+121/-58)
source/blender/windowmanager/WM_keymap.h (+7/-6)
source/blender/windowmanager/WM_types.h (+128/-27)
source/blender/windowmanager/intern/wm.c (+85/-4)
source/blender/windowmanager/intern/wm_apple.c (+4/-4)
source/blender/windowmanager/intern/wm_cursors.c (+33/-16)
source/blender/windowmanager/intern/wm_dragdrop.c (+1/-1)
source/blender/windowmanager/intern/wm_draw.c (+93/-38)
source/blender/windowmanager/intern/wm_event_system.c (+648/-413)
source/blender/windowmanager/intern/wm_files.c (+137/-61)
source/blender/windowmanager/intern/wm_gesture.c (+33/-28)
source/blender/windowmanager/intern/wm_init_exit.c (+104/-42)
source/blender/windowmanager/intern/wm_jobs.c (+258/-197)
source/blender/windowmanager/intern/wm_keymap.c (+96/-41)
source/blender/windowmanager/intern/wm_operators.c (+723/-361)
source/blender/windowmanager/intern/wm_playanim.c (+1159/-0)
source/blender/windowmanager/intern/wm_subwindow.c (+28/-34)
source/blender/windowmanager/intern/wm_window.c (+316/-145)
source/blender/windowmanager/wm_cursors.h (+5/-5)
source/blender/windowmanager/wm_event_system.h (+45/-45)
source/blender/windowmanager/wm_event_types.h (+26/-14)
source/blender/windowmanager/wm_files.h (+7/-1)
source/blender/windowmanager/wm_subwindow.h (+1/-1)
source/blender/windowmanager/wm_window.h (+7/-2)
source/blenderplayer/CMakeLists.txt (+19/-21)
source/blenderplayer/bad_level_call_stubs/SConscript (+27/-1)
source/blenderplayer/bad_level_call_stubs/stubs.c (+334/-299)
source/creator/CMakeLists.txt (+129/-65)
source/creator/SConscript (+0/-3)
source/creator/blender.map (+16/-0)
source/creator/buildinfo.c (+13/-13)
source/creator/creator.c (+351/-83)
source/creator/osx_locals.map (+3/-0)
source/darwin/blender.app/Contents/Info.plist (+0/-52)
source/darwin/blender.app/Contents/MacOS/blender (+0/-1)
source/darwin/blender.app/Contents/PkgInfo (+0/-1)
source/darwin/blenderplayer.app/Contents/Info.plist (+0/-53)
source/darwin/blenderplayer.app/Contents/MacOS/blenderplayer (+0/-1)
source/darwin/blenderplayer.app/Contents/PkgInfo (+0/-1)
source/darwin/set_simulation_threads.app/Contents/Info.plist (+0/-44)
source/darwin/set_simulation_threads.app/Contents/PkgInfo (+0/-1)
source/darwin/set_simulation_threads.app/Contents/Resources/description.rtfd/TXT.rtf (+0/-4)
source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp (+162/-105)
source/gameengine/BlenderRoutines/CMakeLists.txt (+10/-2)
source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp (+47/-11)
source/gameengine/BlenderRoutines/KX_BlenderCanvas.h (+17/-9)
source/gameengine/BlenderRoutines/KX_BlenderGL.cpp (+64/-20)
source/gameengine/BlenderRoutines/KX_BlenderGL.h (+5/-5)
source/gameengine/BlenderRoutines/KX_BlenderInputDevice.h (+7/-8)
source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.cpp (+15/-17)
source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.h (+3/-6)
source/gameengine/BlenderRoutines/KX_BlenderMouseDevice.cpp (+16/-19)
source/gameengine/BlenderRoutines/KX_BlenderMouseDevice.h (+2/-5)
source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp (+30/-20)
source/gameengine/BlenderRoutines/KX_BlenderRenderTools.h (+30/-28)
source/gameengine/BlenderRoutines/KX_BlenderSystem.cpp (+3/-3)
source/gameengine/BlenderRoutines/KX_BlenderSystem.h (+2/-5)
source/gameengine/BlenderRoutines/SConscript (+28/-1)
source/gameengine/CMakeLists.txt (+1/-2)
source/gameengine/Converter/BL_ActionActuator.cpp (+42/-32)
source/gameengine/Converter/BL_ActionActuator.h (+1/-1)
source/gameengine/Converter/BL_ArmatureActuator.cpp (+6/-6)
source/gameengine/Converter/BL_ArmatureActuator.h (+11/-13)
source/gameengine/Converter/BL_ArmatureChannel.cpp (+15/-15)
source/gameengine/Converter/BL_ArmatureChannel.h (+5/-7)
source/gameengine/Converter/BL_ArmatureConstraint.cpp (+14/-14)
source/gameengine/Converter/BL_ArmatureConstraint.h (+4/-5)
source/gameengine/Converter/BL_ArmatureObject.cpp (+23/-20)
source/gameengine/Converter/BL_ArmatureObject.h (+6/-8)
source/gameengine/Converter/BL_BlenderDataConversion.cpp (+554/-507)
source/gameengine/Converter/BL_BlenderDataConversion.h (+4/-4)
source/gameengine/Converter/BL_DeformableGameObject.cpp (+1/-1)
source/gameengine/Converter/BL_DeformableGameObject.h (+6/-9)
source/gameengine/Converter/BL_MeshDeformer.cpp (+22/-22)
source/gameengine/Converter/BL_MeshDeformer.h (+10/-12)
source/gameengine/Converter/BL_ModifierDeformer.cpp (+5/-8)
source/gameengine/Converter/BL_ModifierDeformer.h (+27/-29)
source/gameengine/Converter/BL_ShapeActionActuator.cpp (+6/-6)
source/gameengine/Converter/BL_ShapeActionActuator.h (+2/-3)
source/gameengine/Converter/BL_ShapeDeformer.cpp (+7/-10)
source/gameengine/Converter/BL_ShapeDeformer.h (+5/-7)
source/gameengine/Converter/BL_SkinDeformer.cpp (+48/-27)
source/gameengine/Converter/BL_SkinDeformer.h (+15/-17)
source/gameengine/Converter/BlenderWorldInfo.cpp (+3/-3)
source/gameengine/Converter/BlenderWorldInfo.h (+7/-10)
source/gameengine/Converter/CMakeLists.txt (+11/-9)
source/gameengine/Converter/KX_BlenderScalarInterpolator.cpp (+2/-2)
source/gameengine/Converter/KX_BlenderScalarInterpolator.h (+4/-9)
source/gameengine/Converter/KX_BlenderSceneConverter.cpp (+271/-105)
source/gameengine/Converter/KX_BlenderSceneConverter.h (+40/-14)
source/gameengine/Converter/KX_ConvertActuators.cpp (+207/-199)
source/gameengine/Converter/KX_ConvertActuators.h (+11/-13)
source/gameengine/Converter/KX_ConvertControllers.cpp (+7/-4)
source/gameengine/Converter/KX_ConvertControllers.h (+1/-3)
source/gameengine/Converter/KX_ConvertProperties.cpp (+6/-7)
source/gameengine/Converter/KX_ConvertProperties.h (+6/-7)
source/gameengine/Converter/KX_ConvertSensors.cpp (+37/-37)
source/gameengine/Converter/KX_ConvertSensors.h (+1/-2)
source/gameengine/Converter/KX_IpoConvert.cpp (+0/-485)
source/gameengine/Converter/KX_IpoConvert.h (+0/-70)
source/gameengine/Converter/KX_LibLoadStatus.cpp (+251/-0)
source/gameengine/Converter/KX_LibLoadStatus.h (+85/-0)
source/gameengine/Converter/KX_SoftBodyDeformer.cpp (+3/-3)
source/gameengine/Converter/KX_SoftBodyDeformer.h (+4/-6)
source/gameengine/Converter/SConscript (+30/-3)
source/gameengine/Expressions/BoolValue.cpp (+18/-21)
source/gameengine/Expressions/BoolValue.h (+3/-7)
source/gameengine/Expressions/ConstExpr.h (+2/-5)
source/gameengine/Expressions/EXP_C-Api.cpp (+2/-2)
source/gameengine/Expressions/EXP_C-Api.h (+2/-3)
source/gameengine/Expressions/EmptyValue.cpp (+14/-14)
source/gameengine/Expressions/EmptyValue.h (+2/-5)
source/gameengine/Expressions/ErrorValue.h (+2/-5)
source/gameengine/Expressions/Expression.h (+3/-8)
source/gameengine/Expressions/FloatValue.cpp (+129/-133)
source/gameengine/Expressions/FloatValue.h (+2/-5)
source/gameengine/Expressions/IdentifierExpr.h (+2/-5)
source/gameengine/Expressions/IfExpr.h (+4/-11)
source/gameengine/Expressions/InputParser.cpp (+104/-100)
source/gameengine/Expressions/InputParser.h (+2/-4)
source/gameengine/Expressions/IntValue.cpp (+151/-159)
source/gameengine/Expressions/IntValue.h (+2/-5)
source/gameengine/Expressions/KX_HashedPtr.h (+3/-6)
source/gameengine/Expressions/KX_Python.h (+1/-2)
source/gameengine/Expressions/ListValue.cpp (+73/-65)
source/gameengine/Expressions/ListValue.h (+3/-3)
source/gameengine/Expressions/Operator1Expr.h (+4/-7)
source/gameengine/Expressions/Operator2Expr.cpp (+50/-49)
source/gameengine/Expressions/Operator2Expr.h (+2/-4)
source/gameengine/Expressions/PyObjectPlus.cpp (+50/-51)
source/gameengine/Expressions/PyObjectPlus.h (+146/-156)
source/gameengine/Expressions/SConscript (+27/-1)
source/gameengine/Expressions/StringValue.cpp (+26/-25)
source/gameengine/Expressions/StringValue.h (+5/-8)
source/gameengine/Expressions/Value.cpp (+7/-7)
source/gameengine/Expressions/Value.h (+24/-38)
source/gameengine/Expressions/VectorValue.cpp (+27/-28)
source/gameengine/Expressions/VectorValue.h (+2/-5)
source/gameengine/Expressions/VoidValue.h (+13/-9)
source/gameengine/GameLogic/CMakeLists.txt (+3/-0)
source/gameengine/GameLogic/Joystick/SCA_Joystick.cpp (+47/-35)
source/gameengine/GameLogic/Joystick/SCA_Joystick.h (+13/-8)
source/gameengine/GameLogic/Joystick/SCA_JoystickDefines.h (+3/-3)
source/gameengine/GameLogic/Joystick/SCA_JoystickEvents.cpp (+22/-24)
source/gameengine/GameLogic/SCA_2DFilterActuator.cpp (+5/-0)
source/gameengine/GameLogic/SCA_2DFilterActuator.h (+2/-0)
source/gameengine/GameLogic/SCA_ANDController.h (+1/-2)
source/gameengine/GameLogic/SCA_ActuatorEventManager.h (+2/-5)
source/gameengine/GameLogic/SCA_ActuatorSensor.h (+5/-9)
source/gameengine/GameLogic/SCA_AlwaysEventManager.h (+2/-5)
source/gameengine/GameLogic/SCA_AlwaysSensor.cpp (+4/-5)
source/gameengine/GameLogic/SCA_AlwaysSensor.h (+1/-2)
source/gameengine/GameLogic/SCA_BasicEventManager.h (+2/-5)
source/gameengine/GameLogic/SCA_DelaySensor.cpp (+4/-5)
source/gameengine/GameLogic/SCA_DelaySensor.h (+1/-2)
source/gameengine/GameLogic/SCA_EventManager.h (+1/-3)
source/gameengine/GameLogic/SCA_ExpressionController.h (+2/-5)
source/gameengine/GameLogic/SCA_IActuator.h (+2/-5)
source/gameengine/GameLogic/SCA_IController.cpp (+14/-14)
source/gameengine/GameLogic/SCA_IController.h (+4/-5)
source/gameengine/GameLogic/SCA_IInputDevice.cpp (+2/-2)
source/gameengine/GameLogic/SCA_IInputDevice.h (+35/-36)
source/gameengine/GameLogic/SCA_ILogicBrick.cpp (+5/-5)
source/gameengine/GameLogic/SCA_ILogicBrick.h (+6/-8)
source/gameengine/GameLogic/SCA_IObject.cpp (+2/-2)
source/gameengine/GameLogic/SCA_IObject.h (+4/-5)
source/gameengine/GameLogic/SCA_IScene.h (+2/-5)
source/gameengine/GameLogic/SCA_ISensor.cpp (+26/-25)
source/gameengine/GameLogic/SCA_ISensor.h (+2/-3)
source/gameengine/GameLogic/SCA_JoystickManager.cpp (+5/-3)
source/gameengine/GameLogic/SCA_JoystickManager.h (+1/-3)
source/gameengine/GameLogic/SCA_JoystickSensor.cpp (+86/-80)
source/gameengine/GameLogic/SCA_JoystickSensor.h (+6/-6)
source/gameengine/GameLogic/SCA_KeyboardManager.h (+3/-6)
source/gameengine/GameLogic/SCA_KeyboardSensor.cpp (+51/-48)
source/gameengine/GameLogic/SCA_KeyboardSensor.h (+5/-7)
source/gameengine/GameLogic/SCA_LogicManager.cpp (+2/-2)
source/gameengine/GameLogic/SCA_LogicManager.h (+8/-11)
source/gameengine/GameLogic/SCA_MouseManager.cpp (+4/-4)
source/gameengine/GameLogic/SCA_MouseManager.h (+3/-6)
source/gameengine/GameLogic/SCA_MouseSensor.cpp (+11/-10)
source/gameengine/GameLogic/SCA_MouseSensor.h (+1/-2)
source/gameengine/GameLogic/SCA_NANDController.h (+1/-2)
source/gameengine/GameLogic/SCA_NORController.h (+1/-2)
source/gameengine/GameLogic/SCA_ORController.h (+1/-2)
source/gameengine/GameLogic/SCA_PropertyActuator.cpp (+1/-1)
source/gameengine/GameLogic/SCA_PropertyActuator.h (+1/-2)
source/gameengine/GameLogic/SCA_PropertyEventManager.h (+2/-5)
source/gameengine/GameLogic/SCA_PropertySensor.cpp (+28/-112)
source/gameengine/GameLogic/SCA_PropertySensor.h (+1/-18)
source/gameengine/GameLogic/SCA_PythonController.cpp (+83/-81)
source/gameengine/GameLogic/SCA_PythonController.h (+8/-9)
source/gameengine/GameLogic/SCA_PythonJoystick.cpp (+188/-0)
source/gameengine/GameLogic/SCA_PythonJoystick.h (+56/-0)
source/gameengine/GameLogic/SCA_PythonKeyboard.cpp (+25/-4)
source/gameengine/GameLogic/SCA_PythonKeyboard.h (+2/-3)
source/gameengine/GameLogic/SCA_PythonMouse.cpp (+8/-8)
source/gameengine/GameLogic/SCA_PythonMouse.h (+8/-9)
source/gameengine/GameLogic/SCA_RandomActuator.cpp (+57/-71)
source/gameengine/GameLogic/SCA_RandomActuator.h (+4/-4)
source/gameengine/GameLogic/SCA_RandomEventManager.h (+2/-5)
source/gameengine/GameLogic/SCA_RandomNumberGenerator.h (+2/-4)
source/gameengine/GameLogic/SCA_RandomSensor.cpp (+5/-5)
source/gameengine/GameLogic/SCA_RandomSensor.h (+1/-2)
source/gameengine/GameLogic/SCA_TimeEventManager.cpp (+5/-6)
source/gameengine/GameLogic/SCA_TimeEventManager.h (+2/-5)
source/gameengine/GameLogic/SCA_XNORController.h (+1/-2)
source/gameengine/GameLogic/SCA_XORController.h (+1/-2)
source/gameengine/GameLogic/SConscript (+28/-2)
source/gameengine/GamePlayer/CMakeLists.txt (+1/-1)
source/gameengine/GamePlayer/SConscript (+27/-1)
source/gameengine/GamePlayer/common/GPC_Canvas.cpp (+33/-3)
source/gameengine/GamePlayer/common/GPC_Canvas.h (+10/-7)
source/gameengine/GamePlayer/common/GPC_Engine.h (+1/-2)
source/gameengine/GamePlayer/common/GPC_KeyboardDevice.h (+3/-4)
source/gameengine/GamePlayer/common/GPC_MouseDevice.cpp (+4/-2)
source/gameengine/GamePlayer/common/GPC_MouseDevice.h (+3/-4)
source/gameengine/GamePlayer/common/GPC_RawImage.cpp (+1/-2)
source/gameengine/GamePlayer/common/GPC_RawImage.h (+1/-2)
source/gameengine/GamePlayer/common/GPC_RawLoadDotBlendArray.cpp (+2/-1)
source/gameengine/GamePlayer/common/GPC_RawLoadDotBlendArray.h (+1/-2)
source/gameengine/GamePlayer/common/GPC_RawLogoArrays.cpp (+4/-2)
source/gameengine/GamePlayer/common/GPC_RawLogoArrays.h (+1/-2)
source/gameengine/GamePlayer/common/GPC_RenderTools.cpp (+91/-18)
source/gameengine/GamePlayer/common/GPC_RenderTools.h (+8/-5)
source/gameengine/GamePlayer/common/GPC_System.h (+1/-2)
source/gameengine/GamePlayer/common/SConscript (+27/-2)
source/gameengine/GamePlayer/common/bmfont.cpp (+2/-5)
source/gameengine/GamePlayer/ghost/GPG_Application.cpp (+61/-39)
source/gameengine/GamePlayer/ghost/GPG_Application.h (+1/-0)
source/gameengine/GamePlayer/ghost/GPG_Canvas.h (+3/-4)
source/gameengine/GamePlayer/ghost/GPG_KeyboardDevice.cpp (+20/-20)
source/gameengine/GamePlayer/ghost/GPG_KeyboardDevice.h (+3/-4)
source/gameengine/GamePlayer/ghost/GPG_System.h (+2/-3)
source/gameengine/GamePlayer/ghost/GPG_ghost.cpp (+101/-33)
source/gameengine/GamePlayer/ghost/SConscript (+27/-2)
source/gameengine/GamePlayer/xembed/CMakeLists.txt (+1/-2)
source/gameengine/GamePlayer/xembed/UnixShell.c (+29/-31)
source/gameengine/GamePlayer/xembed/blender_plugin_types.h (+1/-2)
source/gameengine/GamePlayer/xembed/blenderplayer-wrapper.c (+11/-10)
source/gameengine/Ketsji/BL_Action.cpp (+108/-53)
source/gameengine/Ketsji/BL_Action.h (+2/-5)
source/gameengine/Ketsji/BL_ActionManager.h (+2/-5)
source/gameengine/Ketsji/BL_BlenderShader.cpp (+8/-12)
source/gameengine/Ketsji/BL_BlenderShader.h (+2/-4)
source/gameengine/Ketsji/BL_Material.cpp (+1/-65)
source/gameengine/Ketsji/BL_Material.h (+1/-18)
source/gameengine/Ketsji/BL_Shader.cpp (+98/-82)
source/gameengine/Ketsji/BL_Shader.h (+34/-40)
source/gameengine/Ketsji/BL_Texture.cpp (+61/-20)
source/gameengine/Ketsji/BL_Texture.h (+3/-4)
source/gameengine/Ketsji/CMakeLists.txt (+15/-4)
source/gameengine/Ketsji/KXNetwork/KX_NetworkEventManager.h (+1/-2)
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageActuator.h (+1/-2)
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.cpp (+3/-3)
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.h (+3/-4)
source/gameengine/Ketsji/KXNetwork/SConscript (+27/-1)
source/gameengine/Ketsji/KX_ArmatureSensor.cpp (+3/-3)
source/gameengine/Ketsji/KX_ArmatureSensor.h (+2/-2)
source/gameengine/Ketsji/KX_BlenderMaterial.cpp (+74/-58)
source/gameengine/Ketsji/KX_BlenderMaterial.h (+19/-22)
source/gameengine/Ketsji/KX_BulletPhysicsController.cpp (+24/-6)
source/gameengine/Ketsji/KX_BulletPhysicsController.h (+10/-10)
source/gameengine/Ketsji/KX_Camera.cpp (+64/-62)
source/gameengine/Ketsji/KX_Camera.h (+6/-7)
source/gameengine/Ketsji/KX_CameraActuator.cpp (+49/-77)
source/gameengine/Ketsji/KX_CameraActuator.h (+2/-3)
source/gameengine/Ketsji/KX_CameraIpoSGController.h (+5/-8)
source/gameengine/Ketsji/KX_CharacterWrapper.cpp (+154/-0)
source/gameengine/Ketsji/KX_CharacterWrapper.h (+40/-0)
source/gameengine/Ketsji/KX_ClientObjectInfo.h (+2/-5)
source/gameengine/Ketsji/KX_ConstraintActuator.cpp (+3/-3)
source/gameengine/Ketsji/KX_ConstraintActuator.h (+2/-3)
source/gameengine/Ketsji/KX_ConstraintWrapper.cpp (+6/-6)
source/gameengine/Ketsji/KX_ConstraintWrapper.h (+2/-3)
source/gameengine/Ketsji/KX_ConvertPhysicsObject.h (+3/-2)
source/gameengine/Ketsji/KX_ConvertPhysicsObjects.cpp (+25/-18)
source/gameengine/Ketsji/KX_Dome.cpp (+79/-71)
source/gameengine/Ketsji/KX_Dome.h (+29/-28)
source/gameengine/Ketsji/KX_EmptyObject.h (+2/-5)
source/gameengine/Ketsji/KX_FontObject.cpp (+16/-16)
source/gameengine/Ketsji/KX_FontObject.h (+5/-13)
source/gameengine/Ketsji/KX_GameActuator.h (+26/-26)
source/gameengine/Ketsji/KX_GameObject.cpp (+308/-205)
source/gameengine/Ketsji/KX_GameObject.h (+93/-48)
source/gameengine/Ketsji/KX_IInterpolator.h (+2/-4)
source/gameengine/Ketsji/KX_IPOTransform.h (+2/-2)
source/gameengine/Ketsji/KX_IPO_SGController.cpp (+5/-5)
source/gameengine/Ketsji/KX_IPO_SGController.h (+4/-7)
source/gameengine/Ketsji/KX_IPhysicsController.cpp (+2/-1)
source/gameengine/Ketsji/KX_IPhysicsController.h (+15/-6)
source/gameengine/Ketsji/KX_IScalarInterpolator.h (+2/-4)
source/gameengine/Ketsji/KX_ISceneConverter.h (+11/-6)
source/gameengine/Ketsji/KX_ISystem.h (+1/-3)
source/gameengine/Ketsji/KX_IpoActuator.cpp (+11/-11)
source/gameengine/Ketsji/KX_IpoActuator.h (+1/-2)
source/gameengine/Ketsji/KX_IpoConvert.cpp (+413/-0)
source/gameengine/Ketsji/KX_IpoConvert.h (+68/-0)
source/gameengine/Ketsji/KX_KetsjiEngine.cpp (+179/-148)
source/gameengine/Ketsji/KX_KetsjiEngine.h (+8/-13)
source/gameengine/Ketsji/KX_Light.cpp (+70/-37)
source/gameengine/Ketsji/KX_Light.h (+5/-5)
source/gameengine/Ketsji/KX_LightIpoSGController.h (+6/-9)
source/gameengine/Ketsji/KX_MaterialIpoController.h (+3/-8)
source/gameengine/Ketsji/KX_MeshProxy.cpp (+181/-25)
source/gameengine/Ketsji/KX_MeshProxy.h (+9/-8)
source/gameengine/Ketsji/KX_MotionState.h (+2/-4)
source/gameengine/Ketsji/KX_MouseFocusSensor.cpp (+29/-31)
source/gameengine/Ketsji/KX_MouseFocusSensor.h (+8/-9)
source/gameengine/Ketsji/KX_NavMeshObject.cpp (+11/-11)
source/gameengine/Ketsji/KX_NavMeshObject.h (+2/-3)
source/gameengine/Ketsji/KX_NearSensor.h (+3/-4)
source/gameengine/Ketsji/KX_ObColorIpoSGController.cpp (+4/-7)
source/gameengine/Ketsji/KX_ObColorIpoSGController.h (+3/-6)
source/gameengine/Ketsji/KX_ObjectActuator.cpp (+71/-27)
source/gameengine/Ketsji/KX_ObjectActuator.h (+10/-3)
source/gameengine/Ketsji/KX_ObstacleSimulation.cpp (+24/-13)
source/gameengine/Ketsji/KX_ObstacleSimulation.h (+4/-4)
source/gameengine/Ketsji/KX_OrientationInterpolator.h (+1/-3)
source/gameengine/Ketsji/KX_ParentActuator.cpp (+3/-3)
source/gameengine/Ketsji/KX_ParentActuator.h (+3/-4)
source/gameengine/Ketsji/KX_PhysicsEngineEnums.h (+1/-2)
source/gameengine/Ketsji/KX_PhysicsObjectWrapper.cpp (+0/-145)
source/gameengine/Ketsji/KX_PhysicsObjectWrapper.h (+0/-60)
source/gameengine/Ketsji/KX_PhysicsPropertiesobsolete.h (+1/-2)
source/gameengine/Ketsji/KX_PolyProxy.cpp (+45/-45)
source/gameengine/Ketsji/KX_PolyProxy.h (+13/-14)
source/gameengine/Ketsji/KX_PolygonMaterial.cpp (+19/-21)
source/gameengine/Ketsji/KX_PolygonMaterial.h (+4/-5)
source/gameengine/Ketsji/KX_PositionInterpolator.h (+1/-3)
source/gameengine/Ketsji/KX_PyConstraintBinding.cpp (+107/-73)
source/gameengine/Ketsji/KX_PyConstraintBinding.h (+3/-4)
source/gameengine/Ketsji/KX_PyMath.cpp (+17/-17)
source/gameengine/Ketsji/KX_PyMath.h (+33/-34)
source/gameengine/Ketsji/KX_PythonInit.cpp (+319/-244)
source/gameengine/Ketsji/KX_PythonInit.h (+20/-6)
source/gameengine/Ketsji/KX_PythonInitTypes.cpp (+13/-11)
source/gameengine/Ketsji/KX_PythonInitTypes.h (+3/-3)
source/gameengine/Ketsji/KX_PythonMain.cpp (+71/-0)
source/gameengine/Ketsji/KX_PythonMain.h (+40/-0)
source/gameengine/Ketsji/KX_PythonSeq.cpp (+30/-30)
source/gameengine/Ketsji/KX_PythonSeq.h (+5/-5)
source/gameengine/Ketsji/KX_RadarSensor.cpp (+18/-8)
source/gameengine/Ketsji/KX_RadarSensor.h (+5/-4)
source/gameengine/Ketsji/KX_RayCast.cpp (+3/-3)
source/gameengine/Ketsji/KX_RayCast.h (+2/-6)
source/gameengine/Ketsji/KX_RayEventManager.h (+2/-5)
source/gameengine/Ketsji/KX_RaySensor.cpp (+1/-1)
source/gameengine/Ketsji/KX_RaySensor.h (+3/-4)
source/gameengine/Ketsji/KX_SCA_AddObjectActuator.cpp (+42/-43)
source/gameengine/Ketsji/KX_SCA_AddObjectActuator.h (+33/-34)
source/gameengine/Ketsji/KX_SCA_DynamicActuator.cpp (+35/-38)
source/gameengine/Ketsji/KX_SCA_DynamicActuator.h (+26/-26)
source/gameengine/Ketsji/KX_SCA_EndObjectActuator.cpp (+1/-1)
source/gameengine/Ketsji/KX_SCA_EndObjectActuator.h (+27/-27)
source/gameengine/Ketsji/KX_SCA_ReplaceMeshActuator.cpp (+30/-29)
source/gameengine/Ketsji/KX_SCA_ReplaceMeshActuator.h (+30/-31)
source/gameengine/Ketsji/KX_SG_BoneParentNodeRelationship.cpp (+3/-3)
source/gameengine/Ketsji/KX_SG_BoneParentNodeRelationship.h (+2/-4)
source/gameengine/Ketsji/KX_SG_NodeRelationships.cpp (+8/-8)
source/gameengine/Ketsji/KX_SG_NodeRelationships.h (+9/-15)
source/gameengine/Ketsji/KX_ScalarInterpolator.h (+1/-3)
source/gameengine/Ketsji/KX_ScalingInterpolator.h (+1/-3)
source/gameengine/Ketsji/KX_Scene.cpp (+181/-94)
source/gameengine/Ketsji/KX_Scene.h (+31/-29)
source/gameengine/Ketsji/KX_SceneActuator.cpp (+2/-2)
source/gameengine/Ketsji/KX_SceneActuator.h (+28/-29)
source/gameengine/Ketsji/KX_SoundActuator.cpp (+61/-59)
source/gameengine/Ketsji/KX_SoundActuator.h (+13/-15)
source/gameengine/Ketsji/KX_SteeringActuator.cpp (+16/-16)
source/gameengine/Ketsji/KX_SteeringActuator.h (+8/-9)
source/gameengine/Ketsji/KX_TimeCategoryLogger.h (+4/-7)
source/gameengine/Ketsji/KX_TimeLogger.h (+5/-8)
source/gameengine/Ketsji/KX_TouchEventManager.h (+2/-5)
source/gameengine/Ketsji/KX_TouchSensor.cpp (+4/-4)
source/gameengine/Ketsji/KX_TouchSensor.h (+6/-5)
source/gameengine/Ketsji/KX_TrackToActuator.cpp (+69/-71)
source/gameengine/Ketsji/KX_TrackToActuator.h (+30/-31)
source/gameengine/Ketsji/KX_VehicleWrapper.cpp (+29/-29)
source/gameengine/Ketsji/KX_VehicleWrapper.h (+2/-2)
source/gameengine/Ketsji/KX_VertexProxy.cpp (+150/-119)
source/gameengine/Ketsji/KX_VertexProxy.h (+22/-21)
source/gameengine/Ketsji/KX_WorldInfo.h (+3/-6)
source/gameengine/Ketsji/KX_WorldIpoController.h (+6/-9)
source/gameengine/Ketsji/SConscript (+29/-2)
source/gameengine/Network/LoopBackNetwork/NG_LoopBackNetworkDeviceInterface.h (+8/-7)
source/gameengine/Network/LoopBackNetwork/SConscript (+27/-1)
source/gameengine/Network/NG_NetworkDeviceInterface.h (+13/-16)
source/gameengine/Network/NG_NetworkMessage.h (+4/-7)
source/gameengine/Network/NG_NetworkObject.h (+2/-5)
source/gameengine/Network/NG_NetworkScene.h (+4/-7)
source/gameengine/Network/SConscript (+27/-1)
source/gameengine/Physics/Bullet/CMakeLists.txt (+4/-2)
source/gameengine/Physics/Bullet/CcdGraphicController.h (+3/-5)
source/gameengine/Physics/Bullet/CcdPhysicsController.cpp (+241/-92)
source/gameengine/Physics/Bullet/CcdPhysicsController.h (+55/-18)
source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.cpp (+182/-83)
source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.h (+13/-8)
source/gameengine/Physics/Bullet/SConscript (+28/-2)
source/gameengine/Physics/Dummy/DummyPhysicsEnvironment.cpp (+3/-2)
source/gameengine/Physics/Dummy/DummyPhysicsEnvironment.h (+17/-13)
source/gameengine/Physics/Dummy/SConscript (+27/-1)
source/gameengine/Physics/common/CMakeLists.txt (+1/-0)
source/gameengine/Physics/common/PHY_DynamicTypes.h (+19/-19)
source/gameengine/Physics/common/PHY_ICharacter.h (+39/-0)
source/gameengine/Physics/common/PHY_IController.h (+7/-10)
source/gameengine/Physics/common/PHY_IGraphicController.h (+7/-9)
source/gameengine/Physics/common/PHY_IMotionState.h (+6/-9)
source/gameengine/Physics/common/PHY_IPhysicsController.h (+10/-12)
source/gameengine/Physics/common/PHY_IPhysicsEnvironment.cpp (+4/-3)
source/gameengine/Physics/common/PHY_IPhysicsEnvironment.h (+21/-18)
source/gameengine/Physics/common/PHY_IVehicle.h (+2/-4)
source/gameengine/Physics/common/PHY_Pro.h (+4/-2)
source/gameengine/Physics/common/SConscript (+27/-1)
source/gameengine/Rasterizer/RAS_2DFilterManager.cpp (+34/-31)
source/gameengine/Rasterizer/RAS_2DFilterManager.h (+5/-9)
source/gameengine/Rasterizer/RAS_BucketManager.cpp (+29/-13)
source/gameengine/Rasterizer/RAS_BucketManager.h (+3/-6)
source/gameengine/Rasterizer/RAS_CameraData.h (+1/-2)
source/gameengine/Rasterizer/RAS_Deformer.h (+8/-9)
source/gameengine/Rasterizer/RAS_FramingManager.cpp (+7/-7)
source/gameengine/Rasterizer/RAS_FramingManager.h (+8/-13)
source/gameengine/Rasterizer/RAS_ICanvas.h (+30/-13)
source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp (+11/-5)
source/gameengine/Rasterizer/RAS_IPolygonMaterial.h (+8/-11)
source/gameengine/Rasterizer/RAS_IRasterizer.h (+22/-24)
source/gameengine/Rasterizer/RAS_IRenderTools.h (+43/-32)
source/gameengine/Rasterizer/RAS_LightObject.h (+2/-3)
source/gameengine/Rasterizer/RAS_MaterialBucket.cpp (+14/-17)
source/gameengine/Rasterizer/RAS_MaterialBucket.h (+9/-14)
source/gameengine/Rasterizer/RAS_MeshObject.cpp (+9/-10)
source/gameengine/Rasterizer/RAS_MeshObject.h (+10/-14)
source/gameengine/Rasterizer/RAS_ObjectColor.h (+1/-2)
source/gameengine/Rasterizer/RAS_OpenGLFilters/RAS_Erosion2DFilter.h (+1/-1)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/CMakeLists.txt (+7/-2)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_IStorage.h (+62/-0)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_ListRasterizer.cpp (+10/-32)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_ListRasterizer.h (+7/-10)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp (+89/-273)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h (+24/-18)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_StorageIM.cpp (+310/-0)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_StorageIM.h (+69/-0)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_StorageVA.cpp (+320/-0)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_StorageVA.h (+78/-0)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_StorageVBO.cpp (+258/-0)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_StorageVBO.h (+101/-0)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_VAOpenGLRasterizer.cpp (+0/-384)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_VAOpenGLRasterizer.h (+0/-73)
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/SConscript (+1/-1)
source/gameengine/Rasterizer/RAS_Polygon.cpp (+3/-4)
source/gameengine/Rasterizer/RAS_Polygon.h (+3/-4)
source/gameengine/Rasterizer/RAS_Rect.h (+4/-6)
source/gameengine/Rasterizer/RAS_TexMatrix.h (+1/-2)
source/gameengine/Rasterizer/RAS_TexVert.cpp (+34/-25)
source/gameengine/Rasterizer/RAS_TexVert.h (+16/-24)
source/gameengine/Rasterizer/RAS_texmatrix.cpp (+5/-5)
source/gameengine/Rasterizer/SConscript (+27/-1)
source/gameengine/SConscript (+27/-1)
source/gameengine/SceneGraph/SConscript (+26/-1)
source/gameengine/SceneGraph/SG_BBox.cpp (+7/-5)
source/gameengine/SceneGraph/SG_BBox.h (+1/-3)
source/gameengine/SceneGraph/SG_Controller.h (+8/-12)
source/gameengine/SceneGraph/SG_DList.h (+2/-5)
source/gameengine/SceneGraph/SG_IObject.cpp (+1/-1)
source/gameengine/SceneGraph/SG_IObject.h (+11/-14)
source/gameengine/SceneGraph/SG_Node.cpp (+1/-1)
source/gameengine/SceneGraph/SG_Node.h (+11/-14)
source/gameengine/SceneGraph/SG_ParentRelation.h (+6/-9)
source/gameengine/SceneGraph/SG_QList.h (+2/-5)
source/gameengine/SceneGraph/SG_Spatial.cpp (+9/-7)
source/gameengine/SceneGraph/SG_Spatial.h (+8/-11)
source/gameengine/SceneGraph/SG_Tree.cpp (+3/-2)
source/gameengine/SceneGraph/SG_Tree.h (+3/-7)
source/gameengine/VideoTexture/BlendType.h (+32/-27)
source/gameengine/VideoTexture/CMakeLists.txt (+4/-0)
source/gameengine/VideoTexture/Common.h (+25/-21)
source/gameengine/VideoTexture/Exception.cpp (+25/-21)
source/gameengine/VideoTexture/Exception.h (+25/-22)
source/gameengine/VideoTexture/FilterBase.cpp (+30/-26)
source/gameengine/VideoTexture/FilterBase.h (+36/-28)
source/gameengine/VideoTexture/FilterBlueScreen.cpp (+56/-46)
source/gameengine/VideoTexture/FilterBlueScreen.h (+25/-21)
source/gameengine/VideoTexture/FilterColor.cpp (+33/-29)
source/gameengine/VideoTexture/FilterColor.h (+28/-24)
source/gameengine/VideoTexture/FilterNormal.cpp (+31/-27)
source/gameengine/VideoTexture/FilterNormal.h (+25/-21)
source/gameengine/VideoTexture/FilterSource.cpp (+25/-21)
source/gameengine/VideoTexture/FilterSource.h (+84/-22)
source/gameengine/VideoTexture/ImageBase.cpp (+114/-49)
source/gameengine/VideoTexture/ImageBase.h (+65/-41)
source/gameengine/VideoTexture/ImageBuff.cpp (+34/-30)
source/gameengine/VideoTexture/ImageBuff.h (+26/-22)
source/gameengine/VideoTexture/ImageMix.cpp (+28/-24)
source/gameengine/VideoTexture/ImageMix.h (+25/-21)
source/gameengine/VideoTexture/ImageRender.cpp (+63/-55)
source/gameengine/VideoTexture/ImageRender.h (+31/-27)
source/gameengine/VideoTexture/ImageViewport.cpp (+110/-68)
source/gameengine/VideoTexture/ImageViewport.h (+33/-29)
source/gameengine/VideoTexture/PyTypeList.cpp (+29/-25)
source/gameengine/VideoTexture/PyTypeList.h (+33/-29)
source/gameengine/VideoTexture/SConscript (+28/-2)
source/gameengine/VideoTexture/Texture.cpp (+76/-54)
source/gameengine/VideoTexture/Texture.h (+33/-29)
source/gameengine/VideoTexture/VideoBase.cpp (+40/-35)
source/gameengine/VideoTexture/VideoBase.h (+41/-37)
source/gameengine/VideoTexture/VideoFFmpeg.cpp (+71/-68)
source/gameengine/VideoTexture/VideoFFmpeg.h (+29/-29)
source/gameengine/VideoTexture/blendVideoTex.cpp (+36/-30)
source/icons/SConscript (+27/-1)
source/tests/CMakeLists.txt (+8/-5)
source/tests/batch_import.py (+8/-9)
source/tests/bl_load_addons.py (+41/-8)
source/tests/bl_load_py_modules.py (+19/-7)
source/tests/bl_mesh_modifiers.py (+4/-4)
source/tests/bl_mesh_validate.py (+2/-2)
source/tests/bl_rna_wiki_reference.py (+104/-0)
source/tests/bl_rst_completeness.py (+159/-0)
source/tests/bl_run_operators.py (+254/-26)
source/tests/bl_test.py (+1/-1)
source/tests/check_deprecated.py (+2/-2)
source/tests/pep8.py (+5/-5)
source/tests/rna_array.py (+6/-6)
source/tests/rna_info_dump.py (+2/-2)
source/tests/rst_to_doctree_mini.py (+91/-0)
source/tools/CTS/FBlender.py (+0/-1)
source/tools/GL/README.txt (+72/-0)
source/tools/GL/agl.gl (+231/-0)
source/tools/GL/cgl.gl (+244/-0)
source/tools/GL/core.gl (+1450/-0)
source/tools/GL/deprecated.gl (+426/-0)
source/tools/GL/egl.gl (+368/-0)
source/tools/GL/es11.gl (+962/-0)
source/tools/GL/es20.gl (+956/-0)
source/tools/GL/extensions.gl (+6003/-0)
source/tools/GL/glX.gl (+640/-0)
source/tools/GL/glreport.py (+431/-0)
source/tools/GL/libraries.gl (+128/-0)
source/tools/GL/wgl.gl (+545/-0)
source/tools/MakeCursor.py (+2/-2)
source/tools/MakeGLStipple.py (+1/-1)
source/tools/check_style_c.py (+820/-0)
source/tools/check_style_c_config.py (+46/-0)
source/tools/codereview_upload.py (+2342/-0)
source/tools/spell_check_source.py (+38/-14)
source/tools/spell_check_source_config.py (+66/-4)
source/tools/tag_release.py (+8/-8)
source/tools/uncrustify.cfg (+5/-14)
To merge this branch: bzr merge lp:~smartboyhw/ubuntu/raring/blender/2.66a-3ubuntu1-merge
Reviewer Review Type Date Requested Status
Andrew Starr-Bochicchio (community) Disapprove
Ubuntu branches Pending
Review via email: mp+152894@code.launchpad.net

Description of the change

powerpc builds failed for 2.66a-2ubuntu1 in raring-proposed. Micah Gersten contacted Debian and they made a patch immediately to fix the bugs. Since the debian build in https://buildd.debian.org/status/package.php?p=blender&suite=experimental for 2.66a-3 works now, the Ubuntu build should work too. Henceforth I merged it and proposed to get this in to Raring. Especially the Ubuntu Studio team wants it in for Beta 1.

To post a comment you must log in.
Revision history for this message
Andrew Starr-Bochicchio (andrewsomething) wrote :

It looks like Jeremy Bicha beat you to this. The same version is in raring and it builds on PPC.

https://launchpad.net/ubuntu/+source/blender/2.66a-3ubuntu1

review: Disapprove

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== removed directory '.pc/0001-blender_thumbnailer.patch'
=== removed directory '.pc/0001-blender_thumbnailer.patch/release'
=== removed directory '.pc/0001-blender_thumbnailer.patch/release/bin'
=== removed file '.pc/0001-blender_thumbnailer.patch/release/bin/blender-thumbnailer.py'
--- .pc/0001-blender_thumbnailer.patch/release/bin/blender-thumbnailer.py 2012-01-27 00:39:28 +0000
+++ .pc/0001-blender_thumbnailer.patch/release/bin/blender-thumbnailer.py 1970-01-01 00:00:00 +0000
@@ -1,155 +0,0 @@
1#!/usr/bin/python
2
3# ##### BEGIN GPL LICENSE BLOCK #####
4#
5# This program is free software; you can redistribute it and/or
6# modify it under the terms of the GNU General Public License
7# as published by the Free Software Foundation; either version 2
8# of the License, or (at your option) any later version.
9#
10# This program is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY; without even the implied warranty of
12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13# GNU General Public License for more details.
14#
15# You should have received a copy of the GNU General Public License
16# along with this program; if not, write to the Free Software Foundation,
17# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18#
19# ##### END GPL LICENSE BLOCK #####
20
21# <pep8 compliant>
22
23"""
24Thumbnailer runs with python 2.6 and 3.x.
25To run automatically with nautilus:
26 gconftool --type boolean --set /desktop/gnome/thumbnailers/application@x-blender/enable true
27 gconftool --type string --set /desktop/gnome/thumbnailers/application@x-blender/command "blender-thumbnailer.py %u %o"
28"""
29
30import struct
31
32
33def open_wrapper_get():
34 """ wrap OS spesific read functionality here, fallback to 'open()'
35 """
36
37 def open_gio(path, mode):
38 g_file = gio.File(path).read()
39 g_file.orig_seek = g_file.seek
40
41 def new_seek(offset, whence=0):
42 return g_file.orig_seek(offset, [1, 0, 2][whence])
43
44 g_file.seek = new_seek
45 return g_file
46
47 try:
48 import gio
49 return open_gio
50 except ImportError:
51 return open
52
53
54def blend_extract_thumb(path):
55 import os
56 open_wrapper = open_wrapper_get()
57
58 # def MAKE_ID(tag): ord(tag[0])<<24 | ord(tag[1])<<16 | ord(tag[2])<<8 | ord(tag[3])
59 REND = 1145980242 # MAKE_ID(b'REND')
60 TEST = 1414743380 # MAKE_ID(b'TEST')
61
62 blendfile = open_wrapper(path, 'rb')
63
64 head = blendfile.read(12)
65
66 if head[0:2] == b'\x1f\x8b': # gzip magic
67 import gzip
68 blendfile.close()
69 blendfile = gzip.GzipFile('', 'rb', 0, open_wrapper(path, 'rb'))
70 head = blendfile.read(12)
71
72 if not head.startswith(b'BLENDER'):
73 blendfile.close()
74 return None, 0, 0
75
76 is_64_bit = (head[7] == b'-'[0])
77
78 # true for PPC, false for X86
79 is_big_endian = (head[8] == b'V'[0])
80
81 # blender pre 2.5 had no thumbs
82 if head[9:11] <= b'24':
83 return None, 0, 0
84
85 sizeof_bhead = 24 if is_64_bit else 20
86 int_endian_pair = '>ii' if is_big_endian else '<ii'
87
88 while True:
89 bhead = blendfile.read(sizeof_bhead)
90
91 if len(bhead) < sizeof_bhead:
92 return None, 0, 0
93
94 code, length = struct.unpack(int_endian_pair, bhead[0:8]) # 8 == sizeof(int) * 2
95
96 if code == REND:
97 blendfile.seek(length, os.SEEK_CUR)
98 else:
99 break
100
101 if code != TEST:
102 return None, 0, 0
103
104 try:
105 x, y = struct.unpack(int_endian_pair, blendfile.read(8)) # 8 == sizeof(int) * 2
106 except struct.error:
107 return None, 0, 0
108
109 length -= 8 # sizeof(int) * 2
110
111 if length != x * y * 4:
112 return None, 0, 0
113
114 image_buffer = blendfile.read(length)
115
116 if len(image_buffer) != length:
117 return None, 0, 0
118
119 return image_buffer, x, y
120
121
122def write_png(buf, width, height):
123 import zlib
124
125 # reverse the vertical line order and add null bytes at the start
126 width_byte_4 = width * 4
127 raw_data = b"".join(b'\x00' + buf[span:span + width_byte_4] for span in range((height - 1) * width * 4, -1, - width_byte_4))
128
129 def png_pack(png_tag, data):
130 chunk_head = png_tag + data
131 return struct.pack("!I", len(data)) + chunk_head + struct.pack("!I", 0xFFFFFFFF & zlib.crc32(chunk_head))
132
133 return b"".join([
134 b'\x89PNG\r\n\x1a\n',
135 png_pack(b'IHDR', struct.pack("!2I5B", width, height, 8, 6, 0, 0, 0)),
136 png_pack(b'IDAT', zlib.compress(raw_data, 9)),
137 png_pack(b'IEND', b'')])
138
139
140if __name__ == '__main__':
141 import sys
142
143 if len(sys.argv) < 3:
144 print("Expected 2 arguments <input.blend> <output.png>")
145 else:
146 file_in = sys.argv[-2]
147
148 buf, width, height = blend_extract_thumb(file_in)
149
150 if buf:
151 file_out = sys.argv[-1]
152
153 f = open(file_out, "wb")
154 f.write(write_png(buf, width, height))
155 f.close()
1560
=== removed directory '.pc/0001-blender_thumbnailer.patch/source'
=== removed directory '.pc/0001-blender_thumbnailer.patch/source/creator'
=== removed file '.pc/0001-blender_thumbnailer.patch/source/creator/CMakeLists.txt'
--- .pc/0001-blender_thumbnailer.patch/source/creator/CMakeLists.txt 2012-04-28 12:11:12 +0000
+++ .pc/0001-blender_thumbnailer.patch/source/creator/CMakeLists.txt 1970-01-01 00:00:00 +0000
@@ -1,946 +0,0 @@
1# -*- mode: cmake; indent-tabs-mode: t; -*-
2# ***** BEGIN GPL LICENSE BLOCK *****
3#
4# This program is free software; you can redistribute it and/or
5# modify it under the terms of the GNU General Public License
6# as published by the Free Software Foundation; either version 2
7# of the License, or (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program; if not, write to the Free Software Foundation,
16# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17#
18# The Original Code is Copyright (C) 2006, Blender Foundation
19# All rights reserved.
20#
21# The Original Code is: all of this file.
22#
23# Contributor(s): Jacques Beaurain.
24#
25# ***** END GPL LICENSE BLOCK *****
26
27setup_libdirs()
28
29blender_include_dirs(
30 ../../intern/guardedalloc
31 ../blender/blenlib
32 ../blender/blenkernel
33 ../blender/blenloader
34 ../blender/editors/include
35 ../blender/makesrna
36 ../blender/imbuf
37 ../blender/render/extern/include
38 ../blender/makesdna
39 ../blender/gpu
40 ../blender/windowmanager
41)
42
43if(WIN32)
44 blender_include_dirs(../../intern/utfconv)
45endif()
46
47if(WITH_LIBMV)
48 blender_include_dirs(../../extern/libmv)
49 add_definitions(-DWITH_LIBMV)
50endif()
51
52if(WITH_CODEC_FFMPEG)
53 add_definitions(-DWITH_FFMPEG)
54endif()
55
56if(WITH_PYTHON)
57 blender_include_dirs(../blender/python)
58 add_definitions(-DWITH_PYTHON)
59
60 if(WITH_PYTHON_SECURITY)
61 add_definitions(-DWITH_PYTHON_SECURITY)
62 endif()
63endif()
64
65if(WITH_HEADLESS)
66 add_definitions(-DWITH_HEADLESS)
67endif()
68
69if(WITH_GAMEENGINE)
70 blender_include_dirs(../gameengine/BlenderRoutines)
71
72 add_definitions(-DWITH_GAMEENGINE)
73endif()
74
75if(WITH_SDL)
76 add_definitions(-DWITH_SDL)
77endif()
78
79if(WITH_BINRELOC)
80 add_definitions(-DWITH_BINRELOC)
81 blender_include_dirs(${BINRELOC_INCLUDE_DIRS})
82endif()
83
84# Setup the exe sources and buildinfo
85set(SRC
86 creator.c
87)
88
89# MSVC 2010 gives linking errors with the manifest
90if(WIN32 AND NOT UNIX)
91 string(SUBSTRING ${BLENDER_VERSION} 0 1 bver1)
92 string(SUBSTRING ${BLENDER_VERSION} 2 1 bver2)
93 string(SUBSTRING ${BLENDER_VERSION} 3 1 bver3)
94 if(MINGW)
95 add_definitions(
96 -DWINDRES
97 -DBLEN_VER_RC_STR_M=${BLENDER_VERSION}
98 -DBLEN_VER_RC_1=${bver1}
99 -DBLEN_VER_RC_2=${bver2}
100 -DBLEN_VER_RC_3=${bver3}
101 -DBLEN_VER_RC_4=0
102 )
103 else()
104 add_definitions(
105 -DBLEN_VER_RC_STR=${BLENDER_VERSION}
106 -DBLEN_VER_RC_1=${bver1}
107 -DBLEN_VER_RC_2=${bver2}
108 -DBLEN_VER_RC_3=${bver3}
109 -DBLEN_VER_RC_4=0
110 )
111 endif()
112
113
114 list(APPEND SRC
115 ../icons/winblender.rc
116 )
117endif()
118
119if(WITH_BUILDINFO)
120 add_definitions(-DWITH_BUILDINFO)
121 # --------------------------------------------------------------------------
122 # These defines could all be moved into the header below
123 string(REPLACE " " "\ " BUILDINFO_CFLAGS "${CMAKE_C_FLAGS}")
124 string(REPLACE " " "\ " BUILDINFO_CXXFLAGS "${CMAKE_CXX_FLAGS}")
125 string(REPLACE " " "\ " BUILDINFO_LINKFLAGS "${PLATFORM_LINKFLAGS}")
126 add_definitions(
127 # # define in header now, else these get out of date on rebuilds.
128 # -DBUILD_DATE="${BUILD_DATE}"
129 # -DBUILD_TIME="${BUILD_TIME}"
130 # -DBUILD_REV="${BUILD_REV}"
131 -DWITH_BUILDINFO_HEADER # alternative to lines above
132 -DBUILD_PLATFORM="${CMAKE_SYSTEM_NAME}"
133 -DBUILD_TYPE="${CMAKE_BUILD_TYPE}"
134 -DBUILD_CFLAGS="${BUILDINFO_CFLAGS}"
135 -DBUILD_CXXFLAGS="${BUILDINFO_CXXFLAGS}"
136 -DBUILD_LINKFLAGS="${BUILDINFO_LINKFLAGS}"
137 -DBUILD_SYSTEM="CMake"
138 )
139
140 # --------------------------------------------------------------------------
141 # write header for values that change each build
142 # note, generaed file is in build dir's source/creator
143 # except when used as an include path.
144
145 # include the output directory, where the buildinfo.h file is generated
146 include_directories(${CMAKE_BINARY_DIR}/source/creator)
147
148 # a custom target that is always built
149 add_custom_target(buildinfo ALL
150 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h)
151
152 # creates svnheader.h using cmake script
153 add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h
154 COMMAND ${CMAKE_COMMAND}
155 -DSOURCE_DIR=${CMAKE_SOURCE_DIR}
156 -P ${CMAKE_SOURCE_DIR}/build_files/cmake/buildinfo.cmake)
157
158 # buildinfo.h is a generated file
159 set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h
160 PROPERTIES GENERATED TRUE
161 HEADER_FILE_ONLY TRUE)
162
163 # add deps below, after adding blender
164 # -------------- done with header values.
165
166 list(APPEND SRC
167 buildinfo.c
168 )
169endif()
170
171# message(STATUS "Configuring blender")
172if(WITH_PYTHON_MODULE)
173 add_definitions(-DWITH_PYTHON_MODULE)
174
175 # creates ./bin/bpy.so which can be imported as a python module.
176 #
177 # note that 'SHARED' works on Linux and Windows,
178 # but not OSX which _must_ be 'MODULE'
179 add_library(blender MODULE ${SRC})
180 set_target_properties(
181 blender
182 PROPERTIES
183 PREFIX ""
184 OUTPUT_NAME bpy
185 LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
186 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin # only needed on windows
187 )
188
189 if(APPLE)
190 set_target_properties(
191 blender
192 PROPERTIES
193 LINK_FLAGS_RELEASE "${PLATFORM_LINKFLAGS}"
194 LINK_FLAGS_DEBUG "${PLATFORM_LINKFLAGS_DEBUG}"
195 )
196 endif()
197
198 if(WIN32)
199 # python modules use this
200 set_target_properties(
201 blender
202 PROPERTIES
203 SUFFIX ".pyd"
204 )
205 endif()
206
207else()
208 add_executable(blender ${EXETYPE} ${SRC})
209endif()
210
211if(WITH_BUILDINFO)
212 # explicitly say that the executable depends on the buildinfo
213 add_dependencies(blender buildinfo)
214endif()
215
216# Post build steps for bundling/packaging.
217
218
219if(MSVC_IDE)
220 # ${CMAKE_CFG_INTDIR} should replace \${BUILD_TYPE} when using add_command
221 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE})
222elseif(APPLE)
223 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE})
224else()
225 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH})
226endif()
227
228set(BLENDER_TEXT_FILES
229 ${CMAKE_SOURCE_DIR}/release/text/GPL-license.txt
230 ${CMAKE_SOURCE_DIR}/release/text/Python-license.txt
231 ${CMAKE_SOURCE_DIR}/release/text/copyright.txt
232 ${CMAKE_SOURCE_DIR}/release/text/readme.html
233)
234
235
236# -----------------------------------------------------------------------------
237# Platform Specific Var: TARGETDIR_VER
238
239if(UNIX AND NOT APPLE)
240 if(WITH_INSTALL_PORTABLE)
241 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
242 else()
243 if(WITH_PYTHON_MODULE)
244 set(TARGETDIR_VER ${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${BLENDER_VERSION})
245 else()
246 set(TARGETDIR_VER ${CMAKE_INSTALL_PREFIX}/share/blender/${BLENDER_VERSION})
247 endif()
248 endif()
249
250elseif(WIN32)
251 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
252
253elseif(APPLE)
254 if(WITH_PYTHON_MODULE)
255 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
256 else()
257 set(TARGETDIR_VER ${TARGETDIR}/blender.app/Contents/MacOS/${BLENDER_VERSION})
258 endif()
259
260endif()
261
262
263# -----------------------------------------------------------------------------
264# Install Targets (Generic, All Platforms)
265
266
267# important to make a clean install each time, else old scripts get loaded.
268install(
269 CODE
270 "file(REMOVE_RECURSE ${TARGETDIR_VER})"
271)
272
273if(WITH_PYTHON)
274 # install(CODE "message(\"copying blender scripts...\")")
275
276 # exclude addons_contrib if release
277 if("${BLENDER_VERSION_CYCLE}" STREQUAL "release")
278 set(ADDON_EXCLUDE_CONDITIONAL "addons_contrib/*")
279 else()
280 set(ADDON_EXCLUDE_CONDITIONAL "_addons_contrib/*") # dummy, wont do anything
281 endif()
282
283 install(
284 DIRECTORY ${CMAKE_SOURCE_DIR}/release/scripts
285 DESTINATION ${TARGETDIR_VER}
286 PATTERN ".svn" EXCLUDE
287 PATTERN "__pycache__" EXCLUDE
288 PATTERN "${ADDON_EXCLUDE_CONDITIONAL}" EXCLUDE
289 )
290
291 unset(ADDON_EXCLUDE_CONDITIONAL)
292endif()
293
294# localization
295if(WITH_INTERNATIONAL)
296 install(
297 DIRECTORY
298 ${CMAKE_SOURCE_DIR}/release/datafiles/locale
299 ${CMAKE_SOURCE_DIR}/release/datafiles/fonts
300 DESTINATION ${TARGETDIR_VER}/datafiles
301 PATTERN ".svn" EXCLUDE
302 )
303endif()
304
305# helpful tip when using make
306if("${CMAKE_GENERATOR}" MATCHES ".*Makefiles.*")
307 # message after building.
308 add_custom_command(
309 TARGET blender POST_BUILD MAIN_DEPENDENCY blender
310 COMMAND ${CMAKE_COMMAND} -E echo 'now run: \"make install\" to copy runtime files and scripts to ${TARGETDIR_VER}'
311 )
312endif()
313
314
315# -----------------------------------------------------------------------------
316# Install Targets (Platform Specific)
317
318if(UNIX AND NOT APPLE)
319
320 # there are a few differences between portable and system install
321 if(WITH_INSTALL_PORTABLE)
322 install(
323 FILES
324 ${CMAKE_SOURCE_DIR}/release/freedesktop/blender.desktop
325 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/scalable/apps/blender.svg
326 ${CMAKE_SOURCE_DIR}/doc/manpage/blender.1
327 DESTINATION ${TARGETDIR}
328 )
329
330 install(
331 PROGRAMS
332 ${CMAKE_SOURCE_DIR}/release/bin/blender-thumbnailer.py
333 DESTINATION ${TARGETDIR}
334 )
335
336 install(
337 FILES ${BLENDER_TEXT_FILES}
338 DESTINATION ${TARGETDIR}
339 )
340
341 else()
342 # main blender binary
343 if(WITH_PYTHON_MODULE)
344 install(
345 TARGETS blender
346 LIBRARY
347 DESTINATION ${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages
348 )
349 else()
350 install(
351 PROGRAMS ${TARGETDIR}/blender
352 DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
353 )
354 endif()
355
356
357 if(WITH_GAMEENGINE AND WITH_PLAYER)
358 install(
359 PROGRAMS ${TARGETDIR}/blenderplayer
360 DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
361 )
362 endif()
363
364 # misc files
365 install(
366 FILES ${CMAKE_SOURCE_DIR}/release/freedesktop/blender.desktop
367 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications
368 )
369 install(
370 DIRECTORY
371 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/16x16
372 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/22x22
373 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/24x24
374 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/32x32
375 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/48x48
376 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/256x256
377 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor
378 PATTERN ".svn" EXCLUDE
379 PATTERN "*.svg" EXCLUDE
380 )
381 install(
382 FILES ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/scalable/apps/blender.svg
383 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/apps
384 )
385 install(
386 PROGRAMS ${CMAKE_SOURCE_DIR}/release/bin/blender-thumbnailer.py
387 DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
388 )
389 install(
390 FILES ${CMAKE_SOURCE_DIR}/doc/manpage/blender.1
391 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man/man1
392 )
393 install(
394 FILES ${BLENDER_TEXT_FILES}
395 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/doc/blender
396 )
397 endif()
398
399 # plugins in blender 2.6 don't work at the moment.
400 #
401 # install(
402 # DIRECTORY ${CMAKE_SOURCE_DIR}/release/plugins
403 # DESTINATION ${TARGETDIR_VER}
404 # PATTERN ".svn" EXCLUDE
405 # )
406
407 if(WITH_PYTHON)
408 if(WITH_PYTHON_INSTALL)
409 # on some platforms (like openSUSE) Python is linked
410 # to be used from lib64 folder.
411 # determine this from Python's libraries path
412 if(${PYTHON_LIBPATH} MATCHES "lib64$")
413 set(_target_LIB "lib64")
414 else()
415 set(_target_LIB "lib")
416 endif()
417
418 # Copy the systems python into the install directory
419 # Scons copy in tools/Blender.py
420 # install(CODE "message(\"copying a subset of the systems python...\")")
421 install(
422 DIRECTORY ${PYTHON_LIBPATH}/python${PYTHON_VERSION}
423 DESTINATION ${TARGETDIR_VER}/python/${_target_LIB}
424 PATTERN ".svn" EXCLUDE
425 PATTERN "__pycache__" EXCLUDE # * any cache *
426 PATTERN "distutils" EXCLUDE # ./distutils
427 PATTERN "lib2to3" EXCLUDE # ./lib2to3
428 PATTERN "config" EXCLUDE # ./config
429 PATTERN "config-*" EXCLUDE # ./config-*
430 PATTERN "site-packages/*" EXCLUDE # ./site-packages/*
431 PATTERN "tkinter" EXCLUDE # ./tkinter
432 PATTERN "lib-dynload/_tkinter.*" EXCLUDE # ./lib-dynload/_tkinter.co
433 PATTERN "idlelib" EXCLUDE # ./idlelib
434 PATTERN "test" EXCLUDE # ./test
435 PATTERN "turtledemo" EXCLUDE # ./turtledemo
436 PATTERN "turtle.py" EXCLUDE # ./turtle.py
437 )
438
439 # # doesnt work, todo
440 # install(CODE "execute_process(COMMAND find ${TARGETDIR}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')")
441 unset(_target_LIB)
442 endif()
443 endif()
444elseif(WIN32)
445
446 install(
447 FILES ${BLENDER_TEXT_FILES}
448 DESTINATION ${TARGETDIR}
449 )
450
451 if(WITH_INTERNATIONAL AND (NOT WITH_MINGW64))
452 install(
453 FILES ${LIBDIR}/gettext/lib/gnu_gettext.dll
454 DESTINATION ${TARGETDIR}
455 )
456
457 if(NOT CMAKE_CL_64)
458 install(
459 FILES ${LIBDIR}/iconv/lib/iconv.dll
460 DESTINATION ${TARGETDIR}
461 )
462 endif()
463 endif()
464
465 # plugins in blender 2.6 don't work at the moment.
466 #
467 # install(
468 # DIRECTORY ${CMAKE_SOURCE_DIR}/release/plugins
469 # DESTINATION ${TARGETDIR_VER}
470 # PATTERN ".svn" EXCLUDE
471 # )
472
473 if(WITH_PYTHON)
474 set_lib_path(PYLIB "python/lib")
475 install(
476 FILES ${PYLIB}/python32.dll
477 DESTINATION ${TARGETDIR}
478 CONFIGURATIONS Release;RelWithDebInfo;MinSizeRel
479 )
480
481 install(
482 FILES ${PYLIB}/python32_d.dll
483 DESTINATION ${TARGETDIR}
484 CONFIGURATIONS Debug
485 )
486
487 if(WITH_PYTHON_INSTALL)
488 # note, as far as python is concerned 'RelWithDebInfo' is not debug since its without debug flags.
489
490 # create the directory in multiple steps, so it actually gets created when it doesn't exist yet
491 install(
492 CODE
493 "
494 message(\"creating ${TARGETDIR_VER}/python/lib\")
495 file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python\")
496 file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python/lib\")
497 message(\"done creating dir\")
498 "
499 )
500
501 install(
502 CODE
503 "
504 if(\"\${CMAKE_INSTALL_CONFIG_NAME}\" STREQUAL \"Debug\")
505 execute_process(COMMAND \"${CMAKE_COMMAND}\" -E chdir \"${TARGETDIR_VER}/python/lib\"
506 \"${CMAKE_COMMAND}\" -E tar xzfv \"${LIBDIR}/release/python32_d.tar.gz\")
507 else()
508 execute_process(COMMAND \"${CMAKE_COMMAND}\" -E chdir \"${TARGETDIR_VER}/python/lib\"
509 \"${CMAKE_COMMAND}\" -E tar xzfv \"${LIBDIR}/release/python32.tar.gz\")
510 endif()
511 "
512 )
513
514 # doesnt work, todo
515 # install(CODE "execute_process(COMMAND find ${TARGETDIR}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')")
516 endif()
517 endif()
518
519 if(CMAKE_CL_64)
520 # gettext and png are statically linked on win64
521 install(
522 FILES ${LIBDIR}/zlib/lib/zlib.dll
523 DESTINATION ${TARGETDIR}
524 )
525 else()
526 #not needed since we link statically, maybe also unneeded for MinGW?
527 if(NOT WITH_MINGW64)
528 install(
529 FILES
530 ${LIBDIR}/zlib/lib/zlib.dll
531 DESTINATION ${TARGETDIR}
532 )
533 endif()
534 endif()
535
536 if(MSVC)
537 install(
538 FILES ${LIBDIR}/pthreads/lib/pthreadVC2.dll
539 DESTINATION ${TARGETDIR}
540 )
541 else()
542 #MinGW64 comes with own version. For portable builds it will probaly have to be copied to work
543 if(NOT WITH_MINGW64)
544 install(
545 FILES ${LIBDIR}/pthreads/lib/pthreadGC2.dll
546 DESTINATION ${TARGETDIR}
547 )
548 endif()
549 endif()
550
551 if(WITH_CODEC_FFMPEG)
552 install(
553 FILES
554 ${LIBDIR}/ffmpeg/lib/avcodec-53.dll
555 ${LIBDIR}/ffmpeg/lib/avformat-53.dll
556 ${LIBDIR}/ffmpeg/lib/avdevice-53.dll
557 ${LIBDIR}/ffmpeg/lib/avutil-51.dll
558 ${LIBDIR}/ffmpeg/lib/swscale-2.dll
559 DESTINATION ${TARGETDIR}
560 )
561
562 endif()
563
564 if(WITH_CODEC_SNDFILE)
565 install(
566 FILES ${LIBDIR}/sndfile/lib/libsndfile-1.dll
567 DESTINATION ${TARGETDIR}
568 )
569 endif()
570
571 if(WITH_OPENAL)
572 install(
573 FILES
574 ${LIBDIR}/openal/lib/OpenAL32.dll
575 ${LIBDIR}/openal/lib/wrap_oal.dll
576 DESTINATION ${TARGETDIR}
577 )
578 endif()
579
580 if(WITH_SDL)
581 if(NOT CMAKE_CL_64)
582 install(
583 FILES ${LIBDIR}/sdl/lib/SDL.dll
584 DESTINATION ${TARGETDIR}
585 )
586 endif()
587 endif()
588
589 if(NOT CMAKE_CL_64)
590 install(
591 FILES ${LIBDIR}/thumbhandler/lib/BlendThumb.dll
592 DESTINATION ${TARGETDIR}
593 )
594 endif()
595
596 install( # x86 builds can run on x64 Windows, so this is required at all times
597 FILES ${LIBDIR}/thumbhandler/lib/BlendThumb64.dll
598 DESTINATION ${TARGETDIR}
599 )
600
601 if(WITH_OPENIMAGEIO)
602 if(NOT MINGW)
603 set_lib_path(OIIOBIN "openimageio/bin")
604 install(
605 FILES
606 ${OIIOBIN}/OpenImageIO.dll
607 DESTINATION ${TARGETDIR}
608 )
609 endif()
610 endif()
611
612elseif(APPLE)
613
614 # handy install macro to exclude files, we use \$ escape for the "to"
615 # argument when calling so ${BUILD_TYPE} does not get expanded
616 macro(install_dir from to)
617 install(
618 DIRECTORY ${from}
619 DESTINATION ${to}
620 PATTERN ".svn" EXCLUDE
621 PATTERN "*.pyc" EXCLUDE
622 PATTERN "*.pyo" EXCLUDE
623 PATTERN "*.orig" EXCLUDE
624 PATTERN "*.rej" EXCLUDE
625 PATTERN "__pycache__" EXCLUDE
626 PATTERN "__MACOSX" EXCLUDE
627 PATTERN ".DS_Store" EXCLUDE
628 )
629 endmacro()
630
631 set(OSX_APP_SOURCEDIR ${CMAKE_SOURCE_DIR}/source/darwin/blender.app)
632
633 # setup Info.plist
634 execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BLENDER_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
635
636 set_target_properties(blender PROPERTIES
637 MACOSX_BUNDLE_INFO_PLIST ${OSX_APP_SOURCEDIR}/Contents/Info.plist
638 MACOSX_BUNDLE_SHORT_VERSION_STRING ${BLENDER_VERSION}
639 MACOSX_BUNDLE_LONG_VERSION_STRING "${BLENDER_VERSION} ${BLENDER_DATE}")
640
641
642 # install release and app files
643 install(
644 FILES ${BLENDER_TEXT_FILES}
645 DESTINATION ${TARGETDIR}
646 )
647
648 install(
649 FILES ${OSX_APP_SOURCEDIR}/Contents/PkgInfo
650 DESTINATION ${TARGETDIR}/blender.app/Contents
651 )
652
653 install_dir(
654 ${OSX_APP_SOURCEDIR}/Contents/Resources
655 \${TARGETDIR}/blender.app/Contents/
656 )
657
658 # python
659 if(WITH_PYTHON AND NOT WITH_PYTHON_MODULE)
660 # the python zip is first extract as part of the build process,
661 # and then later installed as part of make install. this is much
662 # quicker, and means we can easily exclude files on copy
663 # Not needed for PYTHON_MODULE or WEB_PLUGIN due uses Pyhon framework
664 add_custom_target(
665 extractpyzip
666 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/python)
667
668 set(PYTHON_ZIP "python_${CMAKE_OSX_ARCHITECTURES}.zip")
669
670 add_custom_command(
671 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python
672 COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/python/
673 COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python/
674 COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP} -d ${CMAKE_CURRENT_BINARY_DIR}/python/
675 DEPENDS ${LIBDIR}/release/${PYTHON_ZIP})
676
677 add_dependencies(blender extractpyzip)
678
679 # copy extracted python files
680 install_dir(
681 ${CMAKE_CURRENT_BINARY_DIR}/python
682 \${TARGETDIR_VER}
683 )
684
685 endif()
686
687 # install blenderplayer bundle - copy of blender.app above. re-using macros et al
688 # note we are using OSX Bundle as base and copying Blender dummy bundle on top of it
689 if(WITH_GAMEENGINE AND WITH_PLAYER)
690 set(OSX_APP_PLAYER_SOURCEDIR ${CMAKE_SOURCE_DIR}/source/darwin/blenderplayer.app)
691 set(PLAYER_SOURCEINFO ${OSX_APP_PLAYER_SOURCEDIR}/Contents/Info.plist)
692 set(PLAYER_TARGETDIR_VER ${TARGETDIR}/blenderplayer.app/Contents/MacOS/${BLENDER_VERSION})
693
694
695 # important to make a clean install each time else old scripts get loaded.
696 install(
697 CODE
698 "file(REMOVE_RECURSE ${PLAYER_TARGETDIR_VER})"
699 )
700
701 install(
702 FILES ${OSX_APP_PLAYER_SOURCEDIR}/Contents/PkgInfo
703 DESTINATION ${TARGETDIR}/blenderplayer.app/Contents
704 )
705
706 install_dir(
707 ${OSX_APP_PLAYER_SOURCEDIR}/Contents/Resources
708 \${TARGETDIR}/blenderplayer.app/Contents/
709 )
710
711 # python
712 if(WITH_PYTHON)
713 add_custom_command(
714 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python
715 COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/python/
716 COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python/
717 COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP} -d ${CMAKE_CURRENT_BINARY_DIR}/python/
718 DEPENDS ${LIBDIR}/release/${PYTHON_ZIP})
719
720 # copy extracted python files
721 install_dir(
722 ${CMAKE_CURRENT_BINARY_DIR}/python
723 \${PLAYER_TARGETDIR_VER}
724 )
725 endif()
726
727 endif()
728endif()
729
730# -----------------------------------------------------------------------------
731# Generic Install, for all targets
732
733
734
735# install more files specified elsewhere
736delayed_do_install(${TARGETDIR_VER})
737
738unset(BLENDER_TEXT_FILES)
739
740
741# -----------------------------------------------------------------------------
742# Setup link libs
743
744add_dependencies(blender makesdna)
745
746get_property(BLENDER_LINK_LIBS GLOBAL PROPERTY BLENDER_LINK_LIBS)
747
748set(BLENDER_LINK_LIBS
749 ${BLENDER_LINK_LIBS}
750 bf_windowmanager
751 bf_render
752)
753
754if(WITH_MOD_FLUID)
755 list(APPEND BLENDER_LINK_LIBS bf_intern_elbeem)
756endif()
757
758if(WITH_CYCLES)
759 list(APPEND BLENDER_LINK_LIBS
760 cycles_render
761 cycles_bvh
762 cycles_device
763 cycles_kernel
764 cycles_util
765 cycles_subd)
766endif()
767
768#if(UNIX)
769 # Sort libraries
770 set(BLENDER_SORTED_LIBS
771 bf_windowmanager
772
773 bf_editor_space_api
774 bf_editor_space_action
775 bf_editor_space_buttons
776 bf_editor_space_console
777 bf_editor_space_file
778 bf_editor_space_graph
779 bf_editor_space_image
780 bf_editor_space_info
781 bf_editor_space_logic
782 bf_editor_space_nla
783 bf_editor_space_node
784 bf_editor_space_outliner
785 bf_editor_space_script
786 bf_editor_space_sequencer
787 bf_editor_space_time
788 bf_editor_space_userpref
789 bf_editor_space_view3d
790 bf_editor_space_clip
791
792 bf_editor_text
793 bf_editor_transform
794 bf_editor_util
795 bf_editor_uvedit
796 bf_editor_curve
797 bf_editor_armature
798 bf_editor_gpencil
799 bf_editor_interface
800 bf_editor_mesh
801 bf_editor_metaball
802 bf_editor_object
803 bf_editor_physics
804 bf_editor_render
805 bf_editor_screen
806 bf_editor_sculpt_paint
807 bf_editor_sound
808 bf_editor_animation
809 bf_editor_datafiles
810
811 bf_render
812 bf_intern_opennl
813 bf_python
814 bf_python_ext
815 bf_python_mathutils
816 bf_python_bmesh
817 bf_ikplugin
818 bf_modifiers
819 bf_bmesh
820 bf_blenkernel
821 bf_nodes
822 bf_gpu
823 bf_blenloader
824 bf_imbuf
825 bf_blenlib
826 bf_intern_ghost
827 bf_intern_string
828 bf_blenpluginapi
829 bf_avi
830 bf_imbuf_cineon
831 bf_imbuf_openexr
832 bf_imbuf_dds
833 bf_collada
834 bf_intern_bsp
835 bf_intern_bop
836 bf_intern_decimate
837 bf_intern_elbeem
838 bf_intern_ik
839 bf_intern_memutil
840 bf_intern_guardedalloc
841 bf_intern_ctr
842 bf_intern_utfconv
843 ge_blen_routines
844 ge_converter
845 ge_phys_dummy
846 ge_phys_bullet
847 bf_intern_smoke
848 extern_minilzo
849 extern_lzma
850 extern_colamd
851 ge_logic_ketsji
852 extern_recastnavigation
853 ge_phys_common
854 ge_logic
855 ge_rasterizer
856 ge_oglrasterizer
857 ge_logic_expressions
858 ge_scenegraph
859 ge_logic_network
860 ge_logic_ngnetwork
861 extern_bullet
862 ge_logic_loopbacknetwork
863 bf_intern_moto
864 extern_openjpeg
865 extern_redcode
866 ge_videotex
867 bf_rna
868 bf_dna
869 bf_blenfont
870 bf_intern_audaspace
871 bf_intern_mikktspace
872 bf_intern_dualcon
873 bf_intern_cycles
874 cycles_render
875 cycles_bvh
876 cycles_device
877 cycles_kernel
878 cycles_util
879 cycles_subd
880 )
881
882 if(WITH_LIBMV)
883 list(APPEND BLENDER_SORTED_LIBS extern_libmv)
884 endif()
885
886 if(WITH_MOD_CLOTH_ELTOPO)
887 list(APPEND BLENDER_SORTED_LIBS extern_eltopo)
888 endif()
889
890 if(WITH_BUILTIN_GLEW)
891 list(APPEND BLENDER_SORTED_LIBS extern_glew)
892 endif()
893
894 if(WITH_BINRELOC)
895 list(APPEND BLENDER_SORTED_LIBS extern_binreloc)
896 endif()
897
898 if(WITH_CXX_GUARDEDALLOC)
899 list(APPEND BLENDER_SORTED_LIBS bf_intern_guardedalloc_cpp)
900 endif()
901
902 if(WITH_IK_ITASC)
903 list(APPEND BLENDER_SORTED_LIBS bf_intern_itasc)
904 endif()
905
906 if(WITH_CODEC_QUICKTIME)
907 list(APPEND BLENDER_SORTED_LIBS bf_quicktime)
908 endif()
909
910 if(WITH_CARVE)
911 list(APPEND BLENDER_SORTED_LIBS extern_carve)
912 endif()
913
914 if(WITH_GHOST_XDND)
915 list(APPEND BLENDER_SORTED_LIBS extern_xdnd)
916 endif()
917
918 foreach(SORTLIB ${BLENDER_SORTED_LIBS})
919 set(REMLIB ${SORTLIB})
920 foreach(SEARCHLIB ${BLENDER_LINK_LIBS})
921 if(${SEARCHLIB} STREQUAL ${SORTLIB})
922 set(REMLIB "")
923 endif()
924 endforeach()
925 if(REMLIB)
926 # message(STATUS "Removing library ${REMLIB} from blender linking because: not configured")
927 list(APPEND REM_MSG ${REMLIB})
928 list(REMOVE_ITEM BLENDER_SORTED_LIBS ${REMLIB})
929 endif()
930 endforeach()
931 if(REM_MSG)
932 list(SORT REM_MSG)
933 message(STATUS "Blender Skipping: (${REM_MSG})")
934 endif()
935 target_link_libraries(blender ${BLENDER_SORTED_LIBS})
936
937 unset(SEARCHLIB)
938 unset(SORTLIB)
939 unset(REMLIB)
940 unset(REM_MSG)
941
942#else()
943# target_link_libraries(blender ${BLENDER_LINK_LIBS})
944#endif()
945
946setup_liblinks(blender)
9470
=== removed directory '.pc/0002-disable_tests.patch'
=== removed directory '.pc/0002-disable_tests.patch/source'
=== removed file '.pc/0002-disable_tests.patch/source/CMakeLists.txt'
--- .pc/0002-disable_tests.patch/source/CMakeLists.txt 2012-03-12 19:04:53 +0000
+++ .pc/0002-disable_tests.patch/source/CMakeLists.txt 1970-01-01 00:00:00 +0000
@@ -1,36 +0,0 @@
1# ***** BEGIN GPL LICENSE BLOCK *****
2#
3# This program is free software; you can redistribute it and/or
4# modify it under the terms of the GNU General Public License
5# as published by the Free Software Foundation; either version 2
6# of the License, or (at your option) any later version.
7#
8# This program is distributed in the hope that it will be useful,
9# but WITHOUT ANY WARRANTY; without even the implied warranty of
10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11# GNU General Public License for more details.
12#
13# You should have received a copy of the GNU General Public License
14# along with this program; if not, write to the Free Software Foundation,
15# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16#
17# The Original Code is Copyright (C) 2006, Blender Foundation
18# All rights reserved.
19#
20# The Original Code is: all of this file.
21#
22# Contributor(s): Jacques Beaurain.
23#
24# ***** END GPL LICENSE BLOCK *****
25
26add_subdirectory(blender)
27
28if(WITH_GAMEENGINE)
29 add_subdirectory(gameengine)
30endif()
31
32if(WINDOWS)
33 add_subdirectory(icons)
34endif()
35
36add_subdirectory(tests)
370
=== removed directory '.pc/0003-install_in_usr_lib.patch'
=== removed directory '.pc/0003-install_in_usr_lib.patch/intern'
=== removed directory '.pc/0003-install_in_usr_lib.patch/intern/ghost'
=== removed directory '.pc/0003-install_in_usr_lib.patch/intern/ghost/intern'
=== removed file '.pc/0003-install_in_usr_lib.patch/intern/ghost/intern/GHOST_SystemPathsX11.cpp'
--- .pc/0003-install_in_usr_lib.patch/intern/ghost/intern/GHOST_SystemPathsX11.cpp 2012-04-28 12:11:12 +0000
+++ .pc/0003-install_in_usr_lib.patch/intern/ghost/intern/GHOST_SystemPathsX11.cpp 1970-01-01 00:00:00 +0000
@@ -1,103 +0,0 @@
1/*
2 * ***** BEGIN GPL LICENSE BLOCK *****
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; either version 2
7 * of the License, or (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software Foundation,
16 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17 *
18 * The Original Code is Copyright (C) 2010 Blender Foundation.
19 * All rights reserved.
20 *
21 *
22 * Contributor(s): Blender Foundation
23 *
24 * ***** END GPL LICENSE BLOCK *****
25 */
26
27/** \file ghost/intern/GHOST_SystemPathsX11.cpp
28 * \ingroup GHOST
29 */
30
31
32#include "GHOST_SystemPathsX11.h"
33
34#include "GHOST_Debug.h"
35
36// For timing
37
38#include <sys/time.h>
39#include <unistd.h>
40
41#include <stdio.h> // for fprintf only
42#include <cstdlib> // for exit
43
44#ifdef WITH_XDG_USER_DIRS
45# include <pwd.h> // for get home without use getenv()
46# include <limits.h> // for PATH_MAX
47#endif
48
49#ifdef PREFIX
50static const char *static_path= PREFIX "/share";
51#else
52static const char *static_path= NULL;
53#endif
54
55GHOST_SystemPathsX11::GHOST_SystemPathsX11()
56{
57}
58
59GHOST_SystemPathsX11::~GHOST_SystemPathsX11()
60{
61}
62
63const GHOST_TUns8* GHOST_SystemPathsX11::getSystemDir() const
64{
65 /* no prefix assumes a portable build which only uses bundled scripts */
66 return (const GHOST_TUns8 *)static_path;
67}
68
69const GHOST_TUns8* GHOST_SystemPathsX11::getUserDir() const
70{
71#ifndef WITH_XDG_USER_DIRS
72 return (const GHOST_TUns8 *)getenv("HOME");
73#else /* WITH_XDG_USER_DIRS */
74 const char *home= getenv("XDG_CONFIG_HOME");
75
76 if (home) {
77 return (const GHOST_TUns8 *)home;
78 }
79 else {
80 static char user_path[PATH_MAX];
81
82 home= getenv("HOME");
83
84 if (home == NULL) {
85 home= getpwuid(getuid())->pw_dir;
86 }
87
88 snprintf(user_path, sizeof(user_path), "%s/.config", home);
89 return (const GHOST_TUns8 *)user_path;
90 }
91#endif /* WITH_XDG_USER_DIRS */
92}
93
94const GHOST_TUns8* GHOST_SystemPathsX11::getBinaryDir() const
95{
96 return NULL;
97}
98
99void GHOST_SystemPathsX11::addToSystemRecentFiles(const char* filename) const
100{
101 /* XXXXX TODO: Implementation for X11 if possible */
102
103}
1040
=== removed directory '.pc/0003-install_in_usr_lib.patch/source'
=== removed directory '.pc/0003-install_in_usr_lib.patch/source/creator'
=== removed file '.pc/0003-install_in_usr_lib.patch/source/creator/CMakeLists.txt'
--- .pc/0003-install_in_usr_lib.patch/source/creator/CMakeLists.txt 2012-04-28 12:11:12 +0000
+++ .pc/0003-install_in_usr_lib.patch/source/creator/CMakeLists.txt 1970-01-01 00:00:00 +0000
@@ -1,946 +0,0 @@
1# -*- mode: cmake; indent-tabs-mode: t; -*-
2# ***** BEGIN GPL LICENSE BLOCK *****
3#
4# This program is free software; you can redistribute it and/or
5# modify it under the terms of the GNU General Public License
6# as published by the Free Software Foundation; either version 2
7# of the License, or (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program; if not, write to the Free Software Foundation,
16# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17#
18# The Original Code is Copyright (C) 2006, Blender Foundation
19# All rights reserved.
20#
21# The Original Code is: all of this file.
22#
23# Contributor(s): Jacques Beaurain.
24#
25# ***** END GPL LICENSE BLOCK *****
26
27setup_libdirs()
28
29blender_include_dirs(
30 ../../intern/guardedalloc
31 ../blender/blenlib
32 ../blender/blenkernel
33 ../blender/blenloader
34 ../blender/editors/include
35 ../blender/makesrna
36 ../blender/imbuf
37 ../blender/render/extern/include
38 ../blender/makesdna
39 ../blender/gpu
40 ../blender/windowmanager
41)
42
43if(WIN32)
44 blender_include_dirs(../../intern/utfconv)
45endif()
46
47if(WITH_LIBMV)
48 blender_include_dirs(../../extern/libmv)
49 add_definitions(-DWITH_LIBMV)
50endif()
51
52if(WITH_CODEC_FFMPEG)
53 add_definitions(-DWITH_FFMPEG)
54endif()
55
56if(WITH_PYTHON)
57 blender_include_dirs(../blender/python)
58 add_definitions(-DWITH_PYTHON)
59
60 if(WITH_PYTHON_SECURITY)
61 add_definitions(-DWITH_PYTHON_SECURITY)
62 endif()
63endif()
64
65if(WITH_HEADLESS)
66 add_definitions(-DWITH_HEADLESS)
67endif()
68
69if(WITH_GAMEENGINE)
70 blender_include_dirs(../gameengine/BlenderRoutines)
71
72 add_definitions(-DWITH_GAMEENGINE)
73endif()
74
75if(WITH_SDL)
76 add_definitions(-DWITH_SDL)
77endif()
78
79if(WITH_BINRELOC)
80 add_definitions(-DWITH_BINRELOC)
81 blender_include_dirs(${BINRELOC_INCLUDE_DIRS})
82endif()
83
84# Setup the exe sources and buildinfo
85set(SRC
86 creator.c
87)
88
89# MSVC 2010 gives linking errors with the manifest
90if(WIN32 AND NOT UNIX)
91 string(SUBSTRING ${BLENDER_VERSION} 0 1 bver1)
92 string(SUBSTRING ${BLENDER_VERSION} 2 1 bver2)
93 string(SUBSTRING ${BLENDER_VERSION} 3 1 bver3)
94 if(MINGW)
95 add_definitions(
96 -DWINDRES
97 -DBLEN_VER_RC_STR_M=${BLENDER_VERSION}
98 -DBLEN_VER_RC_1=${bver1}
99 -DBLEN_VER_RC_2=${bver2}
100 -DBLEN_VER_RC_3=${bver3}
101 -DBLEN_VER_RC_4=0
102 )
103 else()
104 add_definitions(
105 -DBLEN_VER_RC_STR=${BLENDER_VERSION}
106 -DBLEN_VER_RC_1=${bver1}
107 -DBLEN_VER_RC_2=${bver2}
108 -DBLEN_VER_RC_3=${bver3}
109 -DBLEN_VER_RC_4=0
110 )
111 endif()
112
113
114 list(APPEND SRC
115 ../icons/winblender.rc
116 )
117endif()
118
119if(WITH_BUILDINFO)
120 add_definitions(-DWITH_BUILDINFO)
121 # --------------------------------------------------------------------------
122 # These defines could all be moved into the header below
123 string(REPLACE " " "\ " BUILDINFO_CFLAGS "${CMAKE_C_FLAGS}")
124 string(REPLACE " " "\ " BUILDINFO_CXXFLAGS "${CMAKE_CXX_FLAGS}")
125 string(REPLACE " " "\ " BUILDINFO_LINKFLAGS "${PLATFORM_LINKFLAGS}")
126 add_definitions(
127 # # define in header now, else these get out of date on rebuilds.
128 # -DBUILD_DATE="${BUILD_DATE}"
129 # -DBUILD_TIME="${BUILD_TIME}"
130 # -DBUILD_REV="${BUILD_REV}"
131 -DWITH_BUILDINFO_HEADER # alternative to lines above
132 -DBUILD_PLATFORM="${CMAKE_SYSTEM_NAME}"
133 -DBUILD_TYPE="${CMAKE_BUILD_TYPE}"
134 -DBUILD_CFLAGS="${BUILDINFO_CFLAGS}"
135 -DBUILD_CXXFLAGS="${BUILDINFO_CXXFLAGS}"
136 -DBUILD_LINKFLAGS="${BUILDINFO_LINKFLAGS}"
137 -DBUILD_SYSTEM="CMake"
138 )
139
140 # --------------------------------------------------------------------------
141 # write header for values that change each build
142 # note, generaed file is in build dir's source/creator
143 # except when used as an include path.
144
145 # include the output directory, where the buildinfo.h file is generated
146 include_directories(${CMAKE_BINARY_DIR}/source/creator)
147
148 # a custom target that is always built
149 add_custom_target(buildinfo ALL
150 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h)
151
152 # creates svnheader.h using cmake script
153 add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h
154 COMMAND ${CMAKE_COMMAND}
155 -DSOURCE_DIR=${CMAKE_SOURCE_DIR}
156 -P ${CMAKE_SOURCE_DIR}/build_files/cmake/buildinfo.cmake)
157
158 # buildinfo.h is a generated file
159 set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h
160 PROPERTIES GENERATED TRUE
161 HEADER_FILE_ONLY TRUE)
162
163 # add deps below, after adding blender
164 # -------------- done with header values.
165
166 list(APPEND SRC
167 buildinfo.c
168 )
169endif()
170
171# message(STATUS "Configuring blender")
172if(WITH_PYTHON_MODULE)
173 add_definitions(-DWITH_PYTHON_MODULE)
174
175 # creates ./bin/bpy.so which can be imported as a python module.
176 #
177 # note that 'SHARED' works on Linux and Windows,
178 # but not OSX which _must_ be 'MODULE'
179 add_library(blender MODULE ${SRC})
180 set_target_properties(
181 blender
182 PROPERTIES
183 PREFIX ""
184 OUTPUT_NAME bpy
185 LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
186 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin # only needed on windows
187 )
188
189 if(APPLE)
190 set_target_properties(
191 blender
192 PROPERTIES
193 LINK_FLAGS_RELEASE "${PLATFORM_LINKFLAGS}"
194 LINK_FLAGS_DEBUG "${PLATFORM_LINKFLAGS_DEBUG}"
195 )
196 endif()
197
198 if(WIN32)
199 # python modules use this
200 set_target_properties(
201 blender
202 PROPERTIES
203 SUFFIX ".pyd"
204 )
205 endif()
206
207else()
208 add_executable(blender ${EXETYPE} ${SRC})
209endif()
210
211if(WITH_BUILDINFO)
212 # explicitly say that the executable depends on the buildinfo
213 add_dependencies(blender buildinfo)
214endif()
215
216# Post build steps for bundling/packaging.
217
218
219if(MSVC_IDE)
220 # ${CMAKE_CFG_INTDIR} should replace \${BUILD_TYPE} when using add_command
221 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE})
222elseif(APPLE)
223 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE})
224else()
225 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH})
226endif()
227
228set(BLENDER_TEXT_FILES
229 ${CMAKE_SOURCE_DIR}/release/text/GPL-license.txt
230 ${CMAKE_SOURCE_DIR}/release/text/Python-license.txt
231 ${CMAKE_SOURCE_DIR}/release/text/copyright.txt
232 ${CMAKE_SOURCE_DIR}/release/text/readme.html
233)
234
235
236# -----------------------------------------------------------------------------
237# Platform Specific Var: TARGETDIR_VER
238
239if(UNIX AND NOT APPLE)
240 if(WITH_INSTALL_PORTABLE)
241 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
242 else()
243 if(WITH_PYTHON_MODULE)
244 set(TARGETDIR_VER ${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${BLENDER_VERSION})
245 else()
246 set(TARGETDIR_VER ${CMAKE_INSTALL_PREFIX}/share/blender/${BLENDER_VERSION})
247 endif()
248 endif()
249
250elseif(WIN32)
251 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
252
253elseif(APPLE)
254 if(WITH_PYTHON_MODULE)
255 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
256 else()
257 set(TARGETDIR_VER ${TARGETDIR}/blender.app/Contents/MacOS/${BLENDER_VERSION})
258 endif()
259
260endif()
261
262
263# -----------------------------------------------------------------------------
264# Install Targets (Generic, All Platforms)
265
266
267# important to make a clean install each time, else old scripts get loaded.
268install(
269 CODE
270 "file(REMOVE_RECURSE ${TARGETDIR_VER})"
271)
272
273if(WITH_PYTHON)
274 # install(CODE "message(\"copying blender scripts...\")")
275
276 # exclude addons_contrib if release
277 if("${BLENDER_VERSION_CYCLE}" STREQUAL "release")
278 set(ADDON_EXCLUDE_CONDITIONAL "addons_contrib/*")
279 else()
280 set(ADDON_EXCLUDE_CONDITIONAL "_addons_contrib/*") # dummy, wont do anything
281 endif()
282
283 install(
284 DIRECTORY ${CMAKE_SOURCE_DIR}/release/scripts
285 DESTINATION ${TARGETDIR_VER}
286 PATTERN ".svn" EXCLUDE
287 PATTERN "__pycache__" EXCLUDE
288 PATTERN "${ADDON_EXCLUDE_CONDITIONAL}" EXCLUDE
289 )
290
291 unset(ADDON_EXCLUDE_CONDITIONAL)
292endif()
293
294# localization
295if(WITH_INTERNATIONAL)
296 install(
297 DIRECTORY
298 ${CMAKE_SOURCE_DIR}/release/datafiles/locale
299 ${CMAKE_SOURCE_DIR}/release/datafiles/fonts
300 DESTINATION ${TARGETDIR_VER}/datafiles
301 PATTERN ".svn" EXCLUDE
302 )
303endif()
304
305# helpful tip when using make
306if("${CMAKE_GENERATOR}" MATCHES ".*Makefiles.*")
307 # message after building.
308 add_custom_command(
309 TARGET blender POST_BUILD MAIN_DEPENDENCY blender
310 COMMAND ${CMAKE_COMMAND} -E echo 'now run: \"make install\" to copy runtime files and scripts to ${TARGETDIR_VER}'
311 )
312endif()
313
314
315# -----------------------------------------------------------------------------
316# Install Targets (Platform Specific)
317
318if(UNIX AND NOT APPLE)
319
320 # there are a few differences between portable and system install
321 if(WITH_INSTALL_PORTABLE)
322 install(
323 FILES
324 ${CMAKE_SOURCE_DIR}/release/freedesktop/blender.desktop
325 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/scalable/apps/blender.svg
326 ${CMAKE_SOURCE_DIR}/doc/manpage/blender.1
327 DESTINATION ${TARGETDIR}
328 )
329
330 install(
331 PROGRAMS
332 ${CMAKE_SOURCE_DIR}/release/bin/blender-thumbnailer.py
333 DESTINATION ${TARGETDIR}
334 )
335
336 install(
337 FILES ${BLENDER_TEXT_FILES}
338 DESTINATION ${TARGETDIR}
339 )
340
341 else()
342 # main blender binary
343 if(WITH_PYTHON_MODULE)
344 install(
345 TARGETS blender
346 LIBRARY
347 DESTINATION ${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages
348 )
349 else()
350 install(
351 PROGRAMS ${TARGETDIR}/blender
352 DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
353 )
354 endif()
355
356
357 if(WITH_GAMEENGINE AND WITH_PLAYER)
358 install(
359 PROGRAMS ${TARGETDIR}/blenderplayer
360 DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
361 )
362 endif()
363
364 # misc files
365 install(
366 FILES ${CMAKE_SOURCE_DIR}/release/freedesktop/blender.desktop
367 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications
368 )
369 install(
370 DIRECTORY
371 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/16x16
372 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/22x22
373 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/24x24
374 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/32x32
375 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/48x48
376 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/256x256
377 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor
378 PATTERN ".svn" EXCLUDE
379 PATTERN "*.svg" EXCLUDE
380 )
381 install(
382 FILES ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/scalable/apps/blender.svg
383 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/apps
384 )
385 install(
386 PROGRAMS ${CMAKE_SOURCE_DIR}/release/bin/blender-thumbnailer.py
387 DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/blender/scripts
388 )
389 install(
390 FILES ${CMAKE_SOURCE_DIR}/doc/manpage/blender.1
391 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man/man1
392 )
393 install(
394 FILES ${BLENDER_TEXT_FILES}
395 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/doc/blender
396 )
397 endif()
398
399 # plugins in blender 2.6 don't work at the moment.
400 #
401 # install(
402 # DIRECTORY ${CMAKE_SOURCE_DIR}/release/plugins
403 # DESTINATION ${TARGETDIR_VER}
404 # PATTERN ".svn" EXCLUDE
405 # )
406
407 if(WITH_PYTHON)
408 if(WITH_PYTHON_INSTALL)
409 # on some platforms (like openSUSE) Python is linked
410 # to be used from lib64 folder.
411 # determine this from Python's libraries path
412 if(${PYTHON_LIBPATH} MATCHES "lib64$")
413 set(_target_LIB "lib64")
414 else()
415 set(_target_LIB "lib")
416 endif()
417
418 # Copy the systems python into the install directory
419 # Scons copy in tools/Blender.py
420 # install(CODE "message(\"copying a subset of the systems python...\")")
421 install(
422 DIRECTORY ${PYTHON_LIBPATH}/python${PYTHON_VERSION}
423 DESTINATION ${TARGETDIR_VER}/python/${_target_LIB}
424 PATTERN ".svn" EXCLUDE
425 PATTERN "__pycache__" EXCLUDE # * any cache *
426 PATTERN "distutils" EXCLUDE # ./distutils
427 PATTERN "lib2to3" EXCLUDE # ./lib2to3
428 PATTERN "config" EXCLUDE # ./config
429 PATTERN "config-*" EXCLUDE # ./config-*
430 PATTERN "site-packages/*" EXCLUDE # ./site-packages/*
431 PATTERN "tkinter" EXCLUDE # ./tkinter
432 PATTERN "lib-dynload/_tkinter.*" EXCLUDE # ./lib-dynload/_tkinter.co
433 PATTERN "idlelib" EXCLUDE # ./idlelib
434 PATTERN "test" EXCLUDE # ./test
435 PATTERN "turtledemo" EXCLUDE # ./turtledemo
436 PATTERN "turtle.py" EXCLUDE # ./turtle.py
437 )
438
439 # # doesnt work, todo
440 # install(CODE "execute_process(COMMAND find ${TARGETDIR}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')")
441 unset(_target_LIB)
442 endif()
443 endif()
444elseif(WIN32)
445
446 install(
447 FILES ${BLENDER_TEXT_FILES}
448 DESTINATION ${TARGETDIR}
449 )
450
451 if(WITH_INTERNATIONAL AND (NOT WITH_MINGW64))
452 install(
453 FILES ${LIBDIR}/gettext/lib/gnu_gettext.dll
454 DESTINATION ${TARGETDIR}
455 )
456
457 if(NOT CMAKE_CL_64)
458 install(
459 FILES ${LIBDIR}/iconv/lib/iconv.dll
460 DESTINATION ${TARGETDIR}
461 )
462 endif()
463 endif()
464
465 # plugins in blender 2.6 don't work at the moment.
466 #
467 # install(
468 # DIRECTORY ${CMAKE_SOURCE_DIR}/release/plugins
469 # DESTINATION ${TARGETDIR_VER}
470 # PATTERN ".svn" EXCLUDE
471 # )
472
473 if(WITH_PYTHON)
474 set_lib_path(PYLIB "python/lib")
475 install(
476 FILES ${PYLIB}/python32.dll
477 DESTINATION ${TARGETDIR}
478 CONFIGURATIONS Release;RelWithDebInfo;MinSizeRel
479 )
480
481 install(
482 FILES ${PYLIB}/python32_d.dll
483 DESTINATION ${TARGETDIR}
484 CONFIGURATIONS Debug
485 )
486
487 if(WITH_PYTHON_INSTALL)
488 # note, as far as python is concerned 'RelWithDebInfo' is not debug since its without debug flags.
489
490 # create the directory in multiple steps, so it actually gets created when it doesn't exist yet
491 install(
492 CODE
493 "
494 message(\"creating ${TARGETDIR_VER}/python/lib\")
495 file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python\")
496 file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python/lib\")
497 message(\"done creating dir\")
498 "
499 )
500
501 install(
502 CODE
503 "
504 if(\"\${CMAKE_INSTALL_CONFIG_NAME}\" STREQUAL \"Debug\")
505 execute_process(COMMAND \"${CMAKE_COMMAND}\" -E chdir \"${TARGETDIR_VER}/python/lib\"
506 \"${CMAKE_COMMAND}\" -E tar xzfv \"${LIBDIR}/release/python32_d.tar.gz\")
507 else()
508 execute_process(COMMAND \"${CMAKE_COMMAND}\" -E chdir \"${TARGETDIR_VER}/python/lib\"
509 \"${CMAKE_COMMAND}\" -E tar xzfv \"${LIBDIR}/release/python32.tar.gz\")
510 endif()
511 "
512 )
513
514 # doesnt work, todo
515 # install(CODE "execute_process(COMMAND find ${TARGETDIR}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')")
516 endif()
517 endif()
518
519 if(CMAKE_CL_64)
520 # gettext and png are statically linked on win64
521 install(
522 FILES ${LIBDIR}/zlib/lib/zlib.dll
523 DESTINATION ${TARGETDIR}
524 )
525 else()
526 #not needed since we link statically, maybe also unneeded for MinGW?
527 if(NOT WITH_MINGW64)
528 install(
529 FILES
530 ${LIBDIR}/zlib/lib/zlib.dll
531 DESTINATION ${TARGETDIR}
532 )
533 endif()
534 endif()
535
536 if(MSVC)
537 install(
538 FILES ${LIBDIR}/pthreads/lib/pthreadVC2.dll
539 DESTINATION ${TARGETDIR}
540 )
541 else()
542 #MinGW64 comes with own version. For portable builds it will probaly have to be copied to work
543 if(NOT WITH_MINGW64)
544 install(
545 FILES ${LIBDIR}/pthreads/lib/pthreadGC2.dll
546 DESTINATION ${TARGETDIR}
547 )
548 endif()
549 endif()
550
551 if(WITH_CODEC_FFMPEG)
552 install(
553 FILES
554 ${LIBDIR}/ffmpeg/lib/avcodec-53.dll
555 ${LIBDIR}/ffmpeg/lib/avformat-53.dll
556 ${LIBDIR}/ffmpeg/lib/avdevice-53.dll
557 ${LIBDIR}/ffmpeg/lib/avutil-51.dll
558 ${LIBDIR}/ffmpeg/lib/swscale-2.dll
559 DESTINATION ${TARGETDIR}
560 )
561
562 endif()
563
564 if(WITH_CODEC_SNDFILE)
565 install(
566 FILES ${LIBDIR}/sndfile/lib/libsndfile-1.dll
567 DESTINATION ${TARGETDIR}
568 )
569 endif()
570
571 if(WITH_OPENAL)
572 install(
573 FILES
574 ${LIBDIR}/openal/lib/OpenAL32.dll
575 ${LIBDIR}/openal/lib/wrap_oal.dll
576 DESTINATION ${TARGETDIR}
577 )
578 endif()
579
580 if(WITH_SDL)
581 if(NOT CMAKE_CL_64)
582 install(
583 FILES ${LIBDIR}/sdl/lib/SDL.dll
584 DESTINATION ${TARGETDIR}
585 )
586 endif()
587 endif()
588
589 if(NOT CMAKE_CL_64)
590 install(
591 FILES ${LIBDIR}/thumbhandler/lib/BlendThumb.dll
592 DESTINATION ${TARGETDIR}
593 )
594 endif()
595
596 install( # x86 builds can run on x64 Windows, so this is required at all times
597 FILES ${LIBDIR}/thumbhandler/lib/BlendThumb64.dll
598 DESTINATION ${TARGETDIR}
599 )
600
601 if(WITH_OPENIMAGEIO)
602 if(NOT MINGW)
603 set_lib_path(OIIOBIN "openimageio/bin")
604 install(
605 FILES
606 ${OIIOBIN}/OpenImageIO.dll
607 DESTINATION ${TARGETDIR}
608 )
609 endif()
610 endif()
611
612elseif(APPLE)
613
614 # handy install macro to exclude files, we use \$ escape for the "to"
615 # argument when calling so ${BUILD_TYPE} does not get expanded
616 macro(install_dir from to)
617 install(
618 DIRECTORY ${from}
619 DESTINATION ${to}
620 PATTERN ".svn" EXCLUDE
621 PATTERN "*.pyc" EXCLUDE
622 PATTERN "*.pyo" EXCLUDE
623 PATTERN "*.orig" EXCLUDE
624 PATTERN "*.rej" EXCLUDE
625 PATTERN "__pycache__" EXCLUDE
626 PATTERN "__MACOSX" EXCLUDE
627 PATTERN ".DS_Store" EXCLUDE
628 )
629 endmacro()
630
631 set(OSX_APP_SOURCEDIR ${CMAKE_SOURCE_DIR}/source/darwin/blender.app)
632
633 # setup Info.plist
634 execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BLENDER_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
635
636 set_target_properties(blender PROPERTIES
637 MACOSX_BUNDLE_INFO_PLIST ${OSX_APP_SOURCEDIR}/Contents/Info.plist
638 MACOSX_BUNDLE_SHORT_VERSION_STRING ${BLENDER_VERSION}
639 MACOSX_BUNDLE_LONG_VERSION_STRING "${BLENDER_VERSION} ${BLENDER_DATE}")
640
641
642 # install release and app files
643 install(
644 FILES ${BLENDER_TEXT_FILES}
645 DESTINATION ${TARGETDIR}
646 )
647
648 install(
649 FILES ${OSX_APP_SOURCEDIR}/Contents/PkgInfo
650 DESTINATION ${TARGETDIR}/blender.app/Contents
651 )
652
653 install_dir(
654 ${OSX_APP_SOURCEDIR}/Contents/Resources
655 \${TARGETDIR}/blender.app/Contents/
656 )
657
658 # python
659 if(WITH_PYTHON AND NOT WITH_PYTHON_MODULE)
660 # the python zip is first extract as part of the build process,
661 # and then later installed as part of make install. this is much
662 # quicker, and means we can easily exclude files on copy
663 # Not needed for PYTHON_MODULE or WEB_PLUGIN due uses Pyhon framework
664 add_custom_target(
665 extractpyzip
666 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/python)
667
668 set(PYTHON_ZIP "python_${CMAKE_OSX_ARCHITECTURES}.zip")
669
670 add_custom_command(
671 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python
672 COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/python/
673 COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python/
674 COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP} -d ${CMAKE_CURRENT_BINARY_DIR}/python/
675 DEPENDS ${LIBDIR}/release/${PYTHON_ZIP})
676
677 add_dependencies(blender extractpyzip)
678
679 # copy extracted python files
680 install_dir(
681 ${CMAKE_CURRENT_BINARY_DIR}/python
682 \${TARGETDIR_VER}
683 )
684
685 endif()
686
687 # install blenderplayer bundle - copy of blender.app above. re-using macros et al
688 # note we are using OSX Bundle as base and copying Blender dummy bundle on top of it
689 if(WITH_GAMEENGINE AND WITH_PLAYER)
690 set(OSX_APP_PLAYER_SOURCEDIR ${CMAKE_SOURCE_DIR}/source/darwin/blenderplayer.app)
691 set(PLAYER_SOURCEINFO ${OSX_APP_PLAYER_SOURCEDIR}/Contents/Info.plist)
692 set(PLAYER_TARGETDIR_VER ${TARGETDIR}/blenderplayer.app/Contents/MacOS/${BLENDER_VERSION})
693
694
695 # important to make a clean install each time else old scripts get loaded.
696 install(
697 CODE
698 "file(REMOVE_RECURSE ${PLAYER_TARGETDIR_VER})"
699 )
700
701 install(
702 FILES ${OSX_APP_PLAYER_SOURCEDIR}/Contents/PkgInfo
703 DESTINATION ${TARGETDIR}/blenderplayer.app/Contents
704 )
705
706 install_dir(
707 ${OSX_APP_PLAYER_SOURCEDIR}/Contents/Resources
708 \${TARGETDIR}/blenderplayer.app/Contents/
709 )
710
711 # python
712 if(WITH_PYTHON)
713 add_custom_command(
714 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python
715 COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/python/
716 COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python/
717 COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP} -d ${CMAKE_CURRENT_BINARY_DIR}/python/
718 DEPENDS ${LIBDIR}/release/${PYTHON_ZIP})
719
720 # copy extracted python files
721 install_dir(
722 ${CMAKE_CURRENT_BINARY_DIR}/python
723 \${PLAYER_TARGETDIR_VER}
724 )
725 endif()
726
727 endif()
728endif()
729
730# -----------------------------------------------------------------------------
731# Generic Install, for all targets
732
733
734
735# install more files specified elsewhere
736delayed_do_install(${TARGETDIR_VER})
737
738unset(BLENDER_TEXT_FILES)
739
740
741# -----------------------------------------------------------------------------
742# Setup link libs
743
744add_dependencies(blender makesdna)
745
746get_property(BLENDER_LINK_LIBS GLOBAL PROPERTY BLENDER_LINK_LIBS)
747
748set(BLENDER_LINK_LIBS
749 ${BLENDER_LINK_LIBS}
750 bf_windowmanager
751 bf_render
752)
753
754if(WITH_MOD_FLUID)
755 list(APPEND BLENDER_LINK_LIBS bf_intern_elbeem)
756endif()
757
758if(WITH_CYCLES)
759 list(APPEND BLENDER_LINK_LIBS
760 cycles_render
761 cycles_bvh
762 cycles_device
763 cycles_kernel
764 cycles_util
765 cycles_subd)
766endif()
767
768#if(UNIX)
769 # Sort libraries
770 set(BLENDER_SORTED_LIBS
771 bf_windowmanager
772
773 bf_editor_space_api
774 bf_editor_space_action
775 bf_editor_space_buttons
776 bf_editor_space_console
777 bf_editor_space_file
778 bf_editor_space_graph
779 bf_editor_space_image
780 bf_editor_space_info
781 bf_editor_space_logic
782 bf_editor_space_nla
783 bf_editor_space_node
784 bf_editor_space_outliner
785 bf_editor_space_script
786 bf_editor_space_sequencer
787 bf_editor_space_time
788 bf_editor_space_userpref
789 bf_editor_space_view3d
790 bf_editor_space_clip
791
792 bf_editor_text
793 bf_editor_transform
794 bf_editor_util
795 bf_editor_uvedit
796 bf_editor_curve
797 bf_editor_armature
798 bf_editor_gpencil
799 bf_editor_interface
800 bf_editor_mesh
801 bf_editor_metaball
802 bf_editor_object
803 bf_editor_physics
804 bf_editor_render
805 bf_editor_screen
806 bf_editor_sculpt_paint
807 bf_editor_sound
808 bf_editor_animation
809 bf_editor_datafiles
810
811 bf_render
812 bf_intern_opennl
813 bf_python
814 bf_python_ext
815 bf_python_mathutils
816 bf_python_bmesh
817 bf_ikplugin
818 bf_modifiers
819 bf_bmesh
820 bf_blenkernel
821 bf_nodes
822 bf_gpu
823 bf_blenloader
824 bf_imbuf
825 bf_blenlib
826 bf_intern_ghost
827 bf_intern_string
828 bf_blenpluginapi
829 bf_avi
830 bf_imbuf_cineon
831 bf_imbuf_openexr
832 bf_imbuf_dds
833 bf_collada
834 bf_intern_bsp
835 bf_intern_bop
836 bf_intern_decimate
837 bf_intern_elbeem
838 bf_intern_ik
839 bf_intern_memutil
840 bf_intern_guardedalloc
841 bf_intern_ctr
842 bf_intern_utfconv
843 ge_blen_routines
844 ge_converter
845 ge_phys_dummy
846 ge_phys_bullet
847 bf_intern_smoke
848 extern_minilzo
849 extern_lzma
850 extern_colamd
851 ge_logic_ketsji
852 extern_recastnavigation
853 ge_phys_common
854 ge_logic
855 ge_rasterizer
856 ge_oglrasterizer
857 ge_logic_expressions
858 ge_scenegraph
859 ge_logic_network
860 ge_logic_ngnetwork
861 extern_bullet
862 ge_logic_loopbacknetwork
863 bf_intern_moto
864 extern_openjpeg
865 extern_redcode
866 ge_videotex
867 bf_rna
868 bf_dna
869 bf_blenfont
870 bf_intern_audaspace
871 bf_intern_mikktspace
872 bf_intern_dualcon
873 bf_intern_cycles
874 cycles_render
875 cycles_bvh
876 cycles_device
877 cycles_kernel
878 cycles_util
879 cycles_subd
880 )
881
882 if(WITH_LIBMV)
883 list(APPEND BLENDER_SORTED_LIBS extern_libmv)
884 endif()
885
886 if(WITH_MOD_CLOTH_ELTOPO)
887 list(APPEND BLENDER_SORTED_LIBS extern_eltopo)
888 endif()
889
890 if(WITH_BUILTIN_GLEW)
891 list(APPEND BLENDER_SORTED_LIBS extern_glew)
892 endif()
893
894 if(WITH_BINRELOC)
895 list(APPEND BLENDER_SORTED_LIBS extern_binreloc)
896 endif()
897
898 if(WITH_CXX_GUARDEDALLOC)
899 list(APPEND BLENDER_SORTED_LIBS bf_intern_guardedalloc_cpp)
900 endif()
901
902 if(WITH_IK_ITASC)
903 list(APPEND BLENDER_SORTED_LIBS bf_intern_itasc)
904 endif()
905
906 if(WITH_CODEC_QUICKTIME)
907 list(APPEND BLENDER_SORTED_LIBS bf_quicktime)
908 endif()
909
910 if(WITH_CARVE)
911 list(APPEND BLENDER_SORTED_LIBS extern_carve)
912 endif()
913
914 if(WITH_GHOST_XDND)
915 list(APPEND BLENDER_SORTED_LIBS extern_xdnd)
916 endif()
917
918 foreach(SORTLIB ${BLENDER_SORTED_LIBS})
919 set(REMLIB ${SORTLIB})
920 foreach(SEARCHLIB ${BLENDER_LINK_LIBS})
921 if(${SEARCHLIB} STREQUAL ${SORTLIB})
922 set(REMLIB "")
923 endif()
924 endforeach()
925 if(REMLIB)
926 # message(STATUS "Removing library ${REMLIB} from blender linking because: not configured")
927 list(APPEND REM_MSG ${REMLIB})
928 list(REMOVE_ITEM BLENDER_SORTED_LIBS ${REMLIB})
929 endif()
930 endforeach()
931 if(REM_MSG)
932 list(SORT REM_MSG)
933 message(STATUS "Blender Skipping: (${REM_MSG})")
934 endif()
935 target_link_libraries(blender ${BLENDER_SORTED_LIBS})
936
937 unset(SEARCHLIB)
938 unset(SORTLIB)
939 unset(REMLIB)
940 unset(REM_MSG)
941
942#else()
943# target_link_libraries(blender ${BLENDER_LINK_LIBS})
944#endif()
945
946setup_liblinks(blender)
9470
=== removed directory '.pc/0004-filter_docs_to_install.patch'
=== removed directory '.pc/0004-filter_docs_to_install.patch/source'
=== removed directory '.pc/0004-filter_docs_to_install.patch/source/creator'
=== removed file '.pc/0004-filter_docs_to_install.patch/source/creator/CMakeLists.txt'
--- .pc/0004-filter_docs_to_install.patch/source/creator/CMakeLists.txt 2012-04-28 12:11:12 +0000
+++ .pc/0004-filter_docs_to_install.patch/source/creator/CMakeLists.txt 1970-01-01 00:00:00 +0000
@@ -1,946 +0,0 @@
1# -*- mode: cmake; indent-tabs-mode: t; -*-
2# ***** BEGIN GPL LICENSE BLOCK *****
3#
4# This program is free software; you can redistribute it and/or
5# modify it under the terms of the GNU General Public License
6# as published by the Free Software Foundation; either version 2
7# of the License, or (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program; if not, write to the Free Software Foundation,
16# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17#
18# The Original Code is Copyright (C) 2006, Blender Foundation
19# All rights reserved.
20#
21# The Original Code is: all of this file.
22#
23# Contributor(s): Jacques Beaurain.
24#
25# ***** END GPL LICENSE BLOCK *****
26
27setup_libdirs()
28
29blender_include_dirs(
30 ../../intern/guardedalloc
31 ../blender/blenlib
32 ../blender/blenkernel
33 ../blender/blenloader
34 ../blender/editors/include
35 ../blender/makesrna
36 ../blender/imbuf
37 ../blender/render/extern/include
38 ../blender/makesdna
39 ../blender/gpu
40 ../blender/windowmanager
41)
42
43if(WIN32)
44 blender_include_dirs(../../intern/utfconv)
45endif()
46
47if(WITH_LIBMV)
48 blender_include_dirs(../../extern/libmv)
49 add_definitions(-DWITH_LIBMV)
50endif()
51
52if(WITH_CODEC_FFMPEG)
53 add_definitions(-DWITH_FFMPEG)
54endif()
55
56if(WITH_PYTHON)
57 blender_include_dirs(../blender/python)
58 add_definitions(-DWITH_PYTHON)
59
60 if(WITH_PYTHON_SECURITY)
61 add_definitions(-DWITH_PYTHON_SECURITY)
62 endif()
63endif()
64
65if(WITH_HEADLESS)
66 add_definitions(-DWITH_HEADLESS)
67endif()
68
69if(WITH_GAMEENGINE)
70 blender_include_dirs(../gameengine/BlenderRoutines)
71
72 add_definitions(-DWITH_GAMEENGINE)
73endif()
74
75if(WITH_SDL)
76 add_definitions(-DWITH_SDL)
77endif()
78
79if(WITH_BINRELOC)
80 add_definitions(-DWITH_BINRELOC)
81 blender_include_dirs(${BINRELOC_INCLUDE_DIRS})
82endif()
83
84# Setup the exe sources and buildinfo
85set(SRC
86 creator.c
87)
88
89# MSVC 2010 gives linking errors with the manifest
90if(WIN32 AND NOT UNIX)
91 string(SUBSTRING ${BLENDER_VERSION} 0 1 bver1)
92 string(SUBSTRING ${BLENDER_VERSION} 2 1 bver2)
93 string(SUBSTRING ${BLENDER_VERSION} 3 1 bver3)
94 if(MINGW)
95 add_definitions(
96 -DWINDRES
97 -DBLEN_VER_RC_STR_M=${BLENDER_VERSION}
98 -DBLEN_VER_RC_1=${bver1}
99 -DBLEN_VER_RC_2=${bver2}
100 -DBLEN_VER_RC_3=${bver3}
101 -DBLEN_VER_RC_4=0
102 )
103 else()
104 add_definitions(
105 -DBLEN_VER_RC_STR=${BLENDER_VERSION}
106 -DBLEN_VER_RC_1=${bver1}
107 -DBLEN_VER_RC_2=${bver2}
108 -DBLEN_VER_RC_3=${bver3}
109 -DBLEN_VER_RC_4=0
110 )
111 endif()
112
113
114 list(APPEND SRC
115 ../icons/winblender.rc
116 )
117endif()
118
119if(WITH_BUILDINFO)
120 add_definitions(-DWITH_BUILDINFO)
121 # --------------------------------------------------------------------------
122 # These defines could all be moved into the header below
123 string(REPLACE " " "\ " BUILDINFO_CFLAGS "${CMAKE_C_FLAGS}")
124 string(REPLACE " " "\ " BUILDINFO_CXXFLAGS "${CMAKE_CXX_FLAGS}")
125 string(REPLACE " " "\ " BUILDINFO_LINKFLAGS "${PLATFORM_LINKFLAGS}")
126 add_definitions(
127 # # define in header now, else these get out of date on rebuilds.
128 # -DBUILD_DATE="${BUILD_DATE}"
129 # -DBUILD_TIME="${BUILD_TIME}"
130 # -DBUILD_REV="${BUILD_REV}"
131 -DWITH_BUILDINFO_HEADER # alternative to lines above
132 -DBUILD_PLATFORM="${CMAKE_SYSTEM_NAME}"
133 -DBUILD_TYPE="${CMAKE_BUILD_TYPE}"
134 -DBUILD_CFLAGS="${BUILDINFO_CFLAGS}"
135 -DBUILD_CXXFLAGS="${BUILDINFO_CXXFLAGS}"
136 -DBUILD_LINKFLAGS="${BUILDINFO_LINKFLAGS}"
137 -DBUILD_SYSTEM="CMake"
138 )
139
140 # --------------------------------------------------------------------------
141 # write header for values that change each build
142 # note, generaed file is in build dir's source/creator
143 # except when used as an include path.
144
145 # include the output directory, where the buildinfo.h file is generated
146 include_directories(${CMAKE_BINARY_DIR}/source/creator)
147
148 # a custom target that is always built
149 add_custom_target(buildinfo ALL
150 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h)
151
152 # creates svnheader.h using cmake script
153 add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h
154 COMMAND ${CMAKE_COMMAND}
155 -DSOURCE_DIR=${CMAKE_SOURCE_DIR}
156 -P ${CMAKE_SOURCE_DIR}/build_files/cmake/buildinfo.cmake)
157
158 # buildinfo.h is a generated file
159 set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/buildinfo.h
160 PROPERTIES GENERATED TRUE
161 HEADER_FILE_ONLY TRUE)
162
163 # add deps below, after adding blender
164 # -------------- done with header values.
165
166 list(APPEND SRC
167 buildinfo.c
168 )
169endif()
170
171# message(STATUS "Configuring blender")
172if(WITH_PYTHON_MODULE)
173 add_definitions(-DWITH_PYTHON_MODULE)
174
175 # creates ./bin/bpy.so which can be imported as a python module.
176 #
177 # note that 'SHARED' works on Linux and Windows,
178 # but not OSX which _must_ be 'MODULE'
179 add_library(blender MODULE ${SRC})
180 set_target_properties(
181 blender
182 PROPERTIES
183 PREFIX ""
184 OUTPUT_NAME bpy
185 LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
186 RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin # only needed on windows
187 )
188
189 if(APPLE)
190 set_target_properties(
191 blender
192 PROPERTIES
193 LINK_FLAGS_RELEASE "${PLATFORM_LINKFLAGS}"
194 LINK_FLAGS_DEBUG "${PLATFORM_LINKFLAGS_DEBUG}"
195 )
196 endif()
197
198 if(WIN32)
199 # python modules use this
200 set_target_properties(
201 blender
202 PROPERTIES
203 SUFFIX ".pyd"
204 )
205 endif()
206
207else()
208 add_executable(blender ${EXETYPE} ${SRC})
209endif()
210
211if(WITH_BUILDINFO)
212 # explicitly say that the executable depends on the buildinfo
213 add_dependencies(blender buildinfo)
214endif()
215
216# Post build steps for bundling/packaging.
217
218
219if(MSVC_IDE)
220 # ${CMAKE_CFG_INTDIR} should replace \${BUILD_TYPE} when using add_command
221 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE})
222elseif(APPLE)
223 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH}/\${BUILD_TYPE})
224else()
225 set(TARGETDIR ${EXECUTABLE_OUTPUT_PATH})
226endif()
227
228set(BLENDER_TEXT_FILES
229 ${CMAKE_SOURCE_DIR}/release/text/GPL-license.txt
230 ${CMAKE_SOURCE_DIR}/release/text/Python-license.txt
231 ${CMAKE_SOURCE_DIR}/release/text/copyright.txt
232 ${CMAKE_SOURCE_DIR}/release/text/readme.html
233)
234
235
236# -----------------------------------------------------------------------------
237# Platform Specific Var: TARGETDIR_VER
238
239if(UNIX AND NOT APPLE)
240 if(WITH_INSTALL_PORTABLE)
241 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
242 else()
243 if(WITH_PYTHON_MODULE)
244 set(TARGETDIR_VER ${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages/${BLENDER_VERSION})
245 else()
246 set(TARGETDIR_VER ${CMAKE_INSTALL_PREFIX}/share/blender/${BLENDER_VERSION})
247 endif()
248 endif()
249
250elseif(WIN32)
251 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
252
253elseif(APPLE)
254 if(WITH_PYTHON_MODULE)
255 set(TARGETDIR_VER ${TARGETDIR}/${BLENDER_VERSION})
256 else()
257 set(TARGETDIR_VER ${TARGETDIR}/blender.app/Contents/MacOS/${BLENDER_VERSION})
258 endif()
259
260endif()
261
262
263# -----------------------------------------------------------------------------
264# Install Targets (Generic, All Platforms)
265
266
267# important to make a clean install each time, else old scripts get loaded.
268install(
269 CODE
270 "file(REMOVE_RECURSE ${TARGETDIR_VER})"
271)
272
273if(WITH_PYTHON)
274 # install(CODE "message(\"copying blender scripts...\")")
275
276 # exclude addons_contrib if release
277 if("${BLENDER_VERSION_CYCLE}" STREQUAL "release")
278 set(ADDON_EXCLUDE_CONDITIONAL "addons_contrib/*")
279 else()
280 set(ADDON_EXCLUDE_CONDITIONAL "_addons_contrib/*") # dummy, wont do anything
281 endif()
282
283 install(
284 DIRECTORY ${CMAKE_SOURCE_DIR}/release/scripts/
285 DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/blender/scripts/
286 PATTERN ".svn" EXCLUDE
287 PATTERN "__pycache__" EXCLUDE
288 PATTERN "${ADDON_EXCLUDE_CONDITIONAL}" EXCLUDE
289 )
290
291 unset(ADDON_EXCLUDE_CONDITIONAL)
292endif()
293
294# localization
295if(WITH_INTERNATIONAL)
296 install(
297 DIRECTORY
298 ${CMAKE_SOURCE_DIR}/release/datafiles/locale
299 ${CMAKE_SOURCE_DIR}/release/datafiles/fonts
300 DESTINATION ${TARGETDIR_VER}/datafiles
301 PATTERN ".svn" EXCLUDE
302 )
303endif()
304
305# helpful tip when using make
306if("${CMAKE_GENERATOR}" MATCHES ".*Makefiles.*")
307 # message after building.
308 add_custom_command(
309 TARGET blender POST_BUILD MAIN_DEPENDENCY blender
310 COMMAND ${CMAKE_COMMAND} -E echo 'now run: \"make install\" to copy runtime files and scripts to ${TARGETDIR_VER}'
311 )
312endif()
313
314
315# -----------------------------------------------------------------------------
316# Install Targets (Platform Specific)
317
318if(UNIX AND NOT APPLE)
319
320 # there are a few differences between portable and system install
321 if(WITH_INSTALL_PORTABLE)
322 install(
323 FILES
324 ${CMAKE_SOURCE_DIR}/release/freedesktop/blender.desktop
325 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/scalable/apps/blender.svg
326 ${CMAKE_SOURCE_DIR}/doc/manpage/blender.1
327 DESTINATION ${TARGETDIR}
328 )
329
330 install(
331 PROGRAMS
332 ${CMAKE_SOURCE_DIR}/release/bin/blender-thumbnailer.py
333 DESTINATION ${TARGETDIR}
334 )
335
336 install(
337 FILES ${BLENDER_TEXT_FILES}
338 DESTINATION ${TARGETDIR}
339 )
340
341 else()
342 # main blender binary
343 if(WITH_PYTHON_MODULE)
344 install(
345 TARGETS blender
346 LIBRARY
347 DESTINATION ${PYTHON_LIBPATH}/python${PYTHON_VERSION}/site-packages
348 )
349 else()
350 install(
351 PROGRAMS ${TARGETDIR}/blender
352 DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
353 )
354 endif()
355
356
357 if(WITH_GAMEENGINE AND WITH_PLAYER)
358 install(
359 PROGRAMS ${TARGETDIR}/blenderplayer
360 DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
361 )
362 endif()
363
364 # misc files
365 install(
366 FILES ${CMAKE_SOURCE_DIR}/release/freedesktop/blender.desktop
367 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications
368 )
369 install(
370 DIRECTORY
371 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/16x16
372 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/22x22
373 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/24x24
374 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/32x32
375 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/48x48
376 ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/256x256
377 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor
378 PATTERN ".svn" EXCLUDE
379 PATTERN "*.svg" EXCLUDE
380 )
381 install(
382 FILES ${CMAKE_SOURCE_DIR}/release/freedesktop/icons/scalable/apps/blender.svg
383 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/scalable/apps
384 )
385 install(
386 PROGRAMS ${CMAKE_SOURCE_DIR}/release/bin/blender-thumbnailer.py
387 DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/blender/scripts
388 )
389 install(
390 FILES ${CMAKE_SOURCE_DIR}/doc/manpage/blender.1
391 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man/man1
392 )
393 install(
394 FILES ${BLENDER_TEXT_FILES}
395 DESTINATION ${CMAKE_INSTALL_PREFIX}/share/doc/blender
396 )
397 endif()
398
399 # plugins in blender 2.6 don't work at the moment.
400 #
401 # install(
402 # DIRECTORY ${CMAKE_SOURCE_DIR}/release/plugins
403 # DESTINATION ${TARGETDIR_VER}
404 # PATTERN ".svn" EXCLUDE
405 # )
406
407 if(WITH_PYTHON)
408 if(WITH_PYTHON_INSTALL)
409 # on some platforms (like openSUSE) Python is linked
410 # to be used from lib64 folder.
411 # determine this from Python's libraries path
412 if(${PYTHON_LIBPATH} MATCHES "lib64$")
413 set(_target_LIB "lib64")
414 else()
415 set(_target_LIB "lib")
416 endif()
417
418 # Copy the systems python into the install directory
419 # Scons copy in tools/Blender.py
420 # install(CODE "message(\"copying a subset of the systems python...\")")
421 install(
422 DIRECTORY ${PYTHON_LIBPATH}/python${PYTHON_VERSION}
423 DESTINATION ${TARGETDIR_VER}/python/${_target_LIB}
424 PATTERN ".svn" EXCLUDE
425 PATTERN "__pycache__" EXCLUDE # * any cache *
426 PATTERN "distutils" EXCLUDE # ./distutils
427 PATTERN "lib2to3" EXCLUDE # ./lib2to3
428 PATTERN "config" EXCLUDE # ./config
429 PATTERN "config-*" EXCLUDE # ./config-*
430 PATTERN "site-packages/*" EXCLUDE # ./site-packages/*
431 PATTERN "tkinter" EXCLUDE # ./tkinter
432 PATTERN "lib-dynload/_tkinter.*" EXCLUDE # ./lib-dynload/_tkinter.co
433 PATTERN "idlelib" EXCLUDE # ./idlelib
434 PATTERN "test" EXCLUDE # ./test
435 PATTERN "turtledemo" EXCLUDE # ./turtledemo
436 PATTERN "turtle.py" EXCLUDE # ./turtle.py
437 )
438
439 # # doesnt work, todo
440 # install(CODE "execute_process(COMMAND find ${TARGETDIR}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')")
441 unset(_target_LIB)
442 endif()
443 endif()
444elseif(WIN32)
445
446 install(
447 FILES ${BLENDER_TEXT_FILES}
448 DESTINATION ${TARGETDIR}
449 )
450
451 if(WITH_INTERNATIONAL AND (NOT WITH_MINGW64))
452 install(
453 FILES ${LIBDIR}/gettext/lib/gnu_gettext.dll
454 DESTINATION ${TARGETDIR}
455 )
456
457 if(NOT CMAKE_CL_64)
458 install(
459 FILES ${LIBDIR}/iconv/lib/iconv.dll
460 DESTINATION ${TARGETDIR}
461 )
462 endif()
463 endif()
464
465 # plugins in blender 2.6 don't work at the moment.
466 #
467 # install(
468 # DIRECTORY ${CMAKE_SOURCE_DIR}/release/plugins
469 # DESTINATION ${TARGETDIR_VER}
470 # PATTERN ".svn" EXCLUDE
471 # )
472
473 if(WITH_PYTHON)
474 set_lib_path(PYLIB "python/lib")
475 install(
476 FILES ${PYLIB}/python32.dll
477 DESTINATION ${TARGETDIR}
478 CONFIGURATIONS Release;RelWithDebInfo;MinSizeRel
479 )
480
481 install(
482 FILES ${PYLIB}/python32_d.dll
483 DESTINATION ${TARGETDIR}
484 CONFIGURATIONS Debug
485 )
486
487 if(WITH_PYTHON_INSTALL)
488 # note, as far as python is concerned 'RelWithDebInfo' is not debug since its without debug flags.
489
490 # create the directory in multiple steps, so it actually gets created when it doesn't exist yet
491 install(
492 CODE
493 "
494 message(\"creating ${TARGETDIR_VER}/python/lib\")
495 file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python\")
496 file(MAKE_DIRECTORY \"${TARGETDIR_VER}/python/lib\")
497 message(\"done creating dir\")
498 "
499 )
500
501 install(
502 CODE
503 "
504 if(\"\${CMAKE_INSTALL_CONFIG_NAME}\" STREQUAL \"Debug\")
505 execute_process(COMMAND \"${CMAKE_COMMAND}\" -E chdir \"${TARGETDIR_VER}/python/lib\"
506 \"${CMAKE_COMMAND}\" -E tar xzfv \"${LIBDIR}/release/python32_d.tar.gz\")
507 else()
508 execute_process(COMMAND \"${CMAKE_COMMAND}\" -E chdir \"${TARGETDIR_VER}/python/lib\"
509 \"${CMAKE_COMMAND}\" -E tar xzfv \"${LIBDIR}/release/python32.tar.gz\")
510 endif()
511 "
512 )
513
514 # doesnt work, todo
515 # install(CODE "execute_process(COMMAND find ${TARGETDIR}/${BLENDER_VERSION}/python/lib/ -name '*.so' -exec strip -s {} '\;')")
516 endif()
517 endif()
518
519 if(CMAKE_CL_64)
520 # gettext and png are statically linked on win64
521 install(
522 FILES ${LIBDIR}/zlib/lib/zlib.dll
523 DESTINATION ${TARGETDIR}
524 )
525 else()
526 #not needed since we link statically, maybe also unneeded for MinGW?
527 if(NOT WITH_MINGW64)
528 install(
529 FILES
530 ${LIBDIR}/zlib/lib/zlib.dll
531 DESTINATION ${TARGETDIR}
532 )
533 endif()
534 endif()
535
536 if(MSVC)
537 install(
538 FILES ${LIBDIR}/pthreads/lib/pthreadVC2.dll
539 DESTINATION ${TARGETDIR}
540 )
541 else()
542 #MinGW64 comes with own version. For portable builds it will probaly have to be copied to work
543 if(NOT WITH_MINGW64)
544 install(
545 FILES ${LIBDIR}/pthreads/lib/pthreadGC2.dll
546 DESTINATION ${TARGETDIR}
547 )
548 endif()
549 endif()
550
551 if(WITH_CODEC_FFMPEG)
552 install(
553 FILES
554 ${LIBDIR}/ffmpeg/lib/avcodec-53.dll
555 ${LIBDIR}/ffmpeg/lib/avformat-53.dll
556 ${LIBDIR}/ffmpeg/lib/avdevice-53.dll
557 ${LIBDIR}/ffmpeg/lib/avutil-51.dll
558 ${LIBDIR}/ffmpeg/lib/swscale-2.dll
559 DESTINATION ${TARGETDIR}
560 )
561
562 endif()
563
564 if(WITH_CODEC_SNDFILE)
565 install(
566 FILES ${LIBDIR}/sndfile/lib/libsndfile-1.dll
567 DESTINATION ${TARGETDIR}
568 )
569 endif()
570
571 if(WITH_OPENAL)
572 install(
573 FILES
574 ${LIBDIR}/openal/lib/OpenAL32.dll
575 ${LIBDIR}/openal/lib/wrap_oal.dll
576 DESTINATION ${TARGETDIR}
577 )
578 endif()
579
580 if(WITH_SDL)
581 if(NOT CMAKE_CL_64)
582 install(
583 FILES ${LIBDIR}/sdl/lib/SDL.dll
584 DESTINATION ${TARGETDIR}
585 )
586 endif()
587 endif()
588
589 if(NOT CMAKE_CL_64)
590 install(
591 FILES ${LIBDIR}/thumbhandler/lib/BlendThumb.dll
592 DESTINATION ${TARGETDIR}
593 )
594 endif()
595
596 install( # x86 builds can run on x64 Windows, so this is required at all times
597 FILES ${LIBDIR}/thumbhandler/lib/BlendThumb64.dll
598 DESTINATION ${TARGETDIR}
599 )
600
601 if(WITH_OPENIMAGEIO)
602 if(NOT MINGW)
603 set_lib_path(OIIOBIN "openimageio/bin")
604 install(
605 FILES
606 ${OIIOBIN}/OpenImageIO.dll
607 DESTINATION ${TARGETDIR}
608 )
609 endif()
610 endif()
611
612elseif(APPLE)
613
614 # handy install macro to exclude files, we use \$ escape for the "to"
615 # argument when calling so ${BUILD_TYPE} does not get expanded
616 macro(install_dir from to)
617 install(
618 DIRECTORY ${from}
619 DESTINATION ${to}
620 PATTERN ".svn" EXCLUDE
621 PATTERN "*.pyc" EXCLUDE
622 PATTERN "*.pyo" EXCLUDE
623 PATTERN "*.orig" EXCLUDE
624 PATTERN "*.rej" EXCLUDE
625 PATTERN "__pycache__" EXCLUDE
626 PATTERN "__MACOSX" EXCLUDE
627 PATTERN ".DS_Store" EXCLUDE
628 )
629 endmacro()
630
631 set(OSX_APP_SOURCEDIR ${CMAKE_SOURCE_DIR}/source/darwin/blender.app)
632
633 # setup Info.plist
634 execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BLENDER_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
635
636 set_target_properties(blender PROPERTIES
637 MACOSX_BUNDLE_INFO_PLIST ${OSX_APP_SOURCEDIR}/Contents/Info.plist
638 MACOSX_BUNDLE_SHORT_VERSION_STRING ${BLENDER_VERSION}
639 MACOSX_BUNDLE_LONG_VERSION_STRING "${BLENDER_VERSION} ${BLENDER_DATE}")
640
641
642 # install release and app files
643 install(
644 FILES ${BLENDER_TEXT_FILES}
645 DESTINATION ${TARGETDIR}
646 )
647
648 install(
649 FILES ${OSX_APP_SOURCEDIR}/Contents/PkgInfo
650 DESTINATION ${TARGETDIR}/blender.app/Contents
651 )
652
653 install_dir(
654 ${OSX_APP_SOURCEDIR}/Contents/Resources
655 \${TARGETDIR}/blender.app/Contents/
656 )
657
658 # python
659 if(WITH_PYTHON AND NOT WITH_PYTHON_MODULE)
660 # the python zip is first extract as part of the build process,
661 # and then later installed as part of make install. this is much
662 # quicker, and means we can easily exclude files on copy
663 # Not needed for PYTHON_MODULE or WEB_PLUGIN due uses Pyhon framework
664 add_custom_target(
665 extractpyzip
666 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/python)
667
668 set(PYTHON_ZIP "python_${CMAKE_OSX_ARCHITECTURES}.zip")
669
670 add_custom_command(
671 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python
672 COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/python/
673 COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python/
674 COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP} -d ${CMAKE_CURRENT_BINARY_DIR}/python/
675 DEPENDS ${LIBDIR}/release/${PYTHON_ZIP})
676
677 add_dependencies(blender extractpyzip)
678
679 # copy extracted python files
680 install_dir(
681 ${CMAKE_CURRENT_BINARY_DIR}/python
682 \${TARGETDIR_VER}
683 )
684
685 endif()
686
687 # install blenderplayer bundle - copy of blender.app above. re-using macros et al
688 # note we are using OSX Bundle as base and copying Blender dummy bundle on top of it
689 if(WITH_GAMEENGINE AND WITH_PLAYER)
690 set(OSX_APP_PLAYER_SOURCEDIR ${CMAKE_SOURCE_DIR}/source/darwin/blenderplayer.app)
691 set(PLAYER_SOURCEINFO ${OSX_APP_PLAYER_SOURCEDIR}/Contents/Info.plist)
692 set(PLAYER_TARGETDIR_VER ${TARGETDIR}/blenderplayer.app/Contents/MacOS/${BLENDER_VERSION})
693
694
695 # important to make a clean install each time else old scripts get loaded.
696 install(
697 CODE
698 "file(REMOVE_RECURSE ${PLAYER_TARGETDIR_VER})"
699 )
700
701 install(
702 FILES ${OSX_APP_PLAYER_SOURCEDIR}/Contents/PkgInfo
703 DESTINATION ${TARGETDIR}/blenderplayer.app/Contents
704 )
705
706 install_dir(
707 ${OSX_APP_PLAYER_SOURCEDIR}/Contents/Resources
708 \${TARGETDIR}/blenderplayer.app/Contents/
709 )
710
711 # python
712 if(WITH_PYTHON)
713 add_custom_command(
714 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/python
715 COMMAND rm -rf ${CMAKE_CURRENT_BINARY_DIR}/python/
716 COMMAND mkdir ${CMAKE_CURRENT_BINARY_DIR}/python/
717 COMMAND unzip -q ${LIBDIR}/release/${PYTHON_ZIP} -d ${CMAKE_CURRENT_BINARY_DIR}/python/
718 DEPENDS ${LIBDIR}/release/${PYTHON_ZIP})
719
720 # copy extracted python files
721 install_dir(
722 ${CMAKE_CURRENT_BINARY_DIR}/python
723 \${PLAYER_TARGETDIR_VER}
724 )
725 endif()
726
727 endif()
728endif()
729
730# -----------------------------------------------------------------------------
731# Generic Install, for all targets
732
733
734
735# install more files specified elsewhere
736delayed_do_install(${TARGETDIR_VER})
737
738unset(BLENDER_TEXT_FILES)
739
740
741# -----------------------------------------------------------------------------
742# Setup link libs
743
744add_dependencies(blender makesdna)
745
746get_property(BLENDER_LINK_LIBS GLOBAL PROPERTY BLENDER_LINK_LIBS)
747
748set(BLENDER_LINK_LIBS
749 ${BLENDER_LINK_LIBS}
750 bf_windowmanager
751 bf_render
752)
753
754if(WITH_MOD_FLUID)
755 list(APPEND BLENDER_LINK_LIBS bf_intern_elbeem)
756endif()
757
758if(WITH_CYCLES)
759 list(APPEND BLENDER_LINK_LIBS
760 cycles_render
761 cycles_bvh
762 cycles_device
763 cycles_kernel
764 cycles_util
765 cycles_subd)
766endif()
767
768#if(UNIX)
769 # Sort libraries
770 set(BLENDER_SORTED_LIBS
771 bf_windowmanager
772
773 bf_editor_space_api
774 bf_editor_space_action
775 bf_editor_space_buttons
776 bf_editor_space_console
777 bf_editor_space_file
778 bf_editor_space_graph
779 bf_editor_space_image
780 bf_editor_space_info
781 bf_editor_space_logic
782 bf_editor_space_nla
783 bf_editor_space_node
784 bf_editor_space_outliner
785 bf_editor_space_script
786 bf_editor_space_sequencer
787 bf_editor_space_time
788 bf_editor_space_userpref
789 bf_editor_space_view3d
790 bf_editor_space_clip
791
792 bf_editor_text
793 bf_editor_transform
794 bf_editor_util
795 bf_editor_uvedit
796 bf_editor_curve
797 bf_editor_armature
798 bf_editor_gpencil
799 bf_editor_interface
800 bf_editor_mesh
801 bf_editor_metaball
802 bf_editor_object
803 bf_editor_physics
804 bf_editor_render
805 bf_editor_screen
806 bf_editor_sculpt_paint
807 bf_editor_sound
808 bf_editor_animation
809 bf_editor_datafiles
810
811 bf_render
812 bf_intern_opennl
813 bf_python
814 bf_python_ext
815 bf_python_mathutils
816 bf_python_bmesh
817 bf_ikplugin
818 bf_modifiers
819 bf_bmesh
820 bf_blenkernel
821 bf_nodes
822 bf_gpu
823 bf_blenloader
824 bf_imbuf
825 bf_blenlib
826 bf_intern_ghost
827 bf_intern_string
828 bf_blenpluginapi
829 bf_avi
830 bf_imbuf_cineon
831 bf_imbuf_openexr
832 bf_imbuf_dds
833 bf_collada
834 bf_intern_bsp
835 bf_intern_bop
836 bf_intern_decimate
837 bf_intern_elbeem
838 bf_intern_ik
839 bf_intern_memutil
840 bf_intern_guardedalloc
841 bf_intern_ctr
842 bf_intern_utfconv
843 ge_blen_routines
844 ge_converter
845 ge_phys_dummy
846 ge_phys_bullet
847 bf_intern_smoke
848 extern_minilzo
849 extern_lzma
850 extern_colamd
851 ge_logic_ketsji
852 extern_recastnavigation
853 ge_phys_common
854 ge_logic
855 ge_rasterizer
856 ge_oglrasterizer
857 ge_logic_expressions
858 ge_scenegraph
859 ge_logic_network
860 ge_logic_ngnetwork
861 extern_bullet
862 ge_logic_loopbacknetwork
863 bf_intern_moto
864 extern_openjpeg
865 extern_redcode
866 ge_videotex
867 bf_rna
868 bf_dna
869 bf_blenfont
870 bf_intern_audaspace
871 bf_intern_mikktspace
872 bf_intern_dualcon
873 bf_intern_cycles
874 cycles_render
875 cycles_bvh
876 cycles_device
877 cycles_kernel
878 cycles_util
879 cycles_subd
880 )
881
882 if(WITH_LIBMV)
883 list(APPEND BLENDER_SORTED_LIBS extern_libmv)
884 endif()
885
886 if(WITH_MOD_CLOTH_ELTOPO)
887 list(APPEND BLENDER_SORTED_LIBS extern_eltopo)
888 endif()
889
890 if(WITH_BUILTIN_GLEW)
891 list(APPEND BLENDER_SORTED_LIBS extern_glew)
892 endif()
893
894 if(WITH_BINRELOC)
895 list(APPEND BLENDER_SORTED_LIBS extern_binreloc)
896 endif()
897
898 if(WITH_CXX_GUARDEDALLOC)
899 list(APPEND BLENDER_SORTED_LIBS bf_intern_guardedalloc_cpp)
900 endif()
901
902 if(WITH_IK_ITASC)
903 list(APPEND BLENDER_SORTED_LIBS bf_intern_itasc)
904 endif()
905
906 if(WITH_CODEC_QUICKTIME)
907 list(APPEND BLENDER_SORTED_LIBS bf_quicktime)
908 endif()
909
910 if(WITH_CARVE)
911 list(APPEND BLENDER_SORTED_LIBS extern_carve)
912 endif()
913
914 if(WITH_GHOST_XDND)
915 list(APPEND BLENDER_SORTED_LIBS extern_xdnd)
916 endif()
917
918 foreach(SORTLIB ${BLENDER_SORTED_LIBS})
919 set(REMLIB ${SORTLIB})
920 foreach(SEARCHLIB ${BLENDER_LINK_LIBS})
921 if(${SEARCHLIB} STREQUAL ${SORTLIB})
922 set(REMLIB "")
923 endif()
924 endforeach()
925 if(REMLIB)
926 # message(STATUS "Removing library ${REMLIB} from blender linking because: not configured")
927 list(APPEND REM_MSG ${REMLIB})
928 list(REMOVE_ITEM BLENDER_SORTED_LIBS ${REMLIB})
929 endif()
930 endforeach()
931 if(REM_MSG)
932 list(SORT REM_MSG)
933 message(STATUS "Blender Skipping: (${REM_MSG})")
934 endif()
935 target_link_libraries(blender ${BLENDER_SORTED_LIBS})
936
937 unset(SEARCHLIB)
938 unset(SORTLIB)
939 unset(REMLIB)
940 unset(REM_MSG)
941
942#else()
943# target_link_libraries(blender ${BLENDER_LINK_LIBS})
944#endif()
945
946setup_liblinks(blender)
9470
=== removed directory '.pc/0005-locales_directory_install.patch'
=== removed directory '.pc/0005-locales_directory_install.patch/source'
=== removed directory '.pc/0005-locales_directory_install.patch/source/blender'
=== removed directory '.pc/0005-locales_directory_install.patch/source/blender/blenfont'
=== removed directory '.pc/0005-locales_directory_install.patch/source/blender/blenfont/intern'
=== removed file '.pc/0005-locales_directory_install.patch/source/blender/blenfont/intern/blf_lang.c'
--- .pc/0005-locales_directory_install.patch/source/blender/blenfont/intern/blf_lang.c 2012-04-28 12:11:12 +0000
+++ .pc/0005-locales_directory_install.patch/source/blender/blenfont/intern/blf_lang.c 1970-01-01 00:00:00 +0000
@@ -1,303 +0,0 @@
1/*
2 * ***** BEGIN GPL LICENSE BLOCK *****
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; either version 2
7 * of the License, or (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software Foundation,
16 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17 *
18 * The Original Code is Copyright (C) 2008 Blender Foundation.
19 * All rights reserved.
20 *
21 * Contributor(s): Blender Foundation.
22 *
23 * ***** END GPL LICENSE BLOCK *****
24 */
25
26/** \file blender/blenfont/intern/blf_lang.c
27 * \ingroup blf
28 */
29
30
31#include <stdio.h>
32#include <stdlib.h>
33#include <string.h>
34
35#include "BKE_global.h"
36
37#include "BLF_api.h"
38
39#include "BLF_translation.h" /* own include */
40
41#ifdef WITH_INTERNATIONAL
42
43#include <locale.h>
44
45#if defined (_WIN32)
46#include <windows.h>
47#endif
48
49#include "libintl.h"
50
51#include "DNA_userdef_types.h"
52
53#include "DNA_listBase.h"
54#include "DNA_vec_types.h"
55
56#include "MEM_guardedalloc.h"
57
58#include "BLI_linklist.h" /* linknode */
59#include "BLI_string.h"
60#include "BLI_utildefines.h"
61#include "BLI_path_util.h"
62
63#define SYSTEM_ENCODING_DEFAULT "UTF-8"
64#define FONT_SIZE_DEFAULT 12
65
66/* locale options. */
67static char global_messagepath[1024];
68static char global_language[32];
69static char global_encoding_name[32];
70
71/* map from the rna_userdef.c:rna_def_userdef_system(BlenderRNA *brna):language_items */
72static const char *locales[] = {
73 "", "",
74 "english", "en_US",
75 "japanese", "ja_JP",
76 "dutch", "nl_NL",
77 "italian", "it_IT",
78 "german", "de_DE",
79 "finnish", "fi_FI",
80 "swedish", "sv_SE",
81 "french", "fr_FR",
82 "spanish", "es",
83 "catalan", "ca_AD",
84 "czech", "cs_CZ",
85 "ptb", "pt",
86#if defined (_WIN32) && !defined(FREE_WINDOWS)
87 "Chinese (Simplified)_China.1252", "zh_CN",
88 "Chinese (Traditional)_China.1252", "zh_TW",
89#else
90 "chs", "zh_CN",
91 "cht", "zh_TW",
92#endif
93 "russian", "ru_RU",
94 "croatian", "hr_HR",
95 "serbian", "sr_RS",
96 "ukrainian", "uk_UA",
97 "polish", "pl_PL",
98 "romanian", "ro_RO",
99 "arabic", "ar_EG",
100 "bulgarian", "bg_BG",
101 "greek", "el_GR",
102 "korean", "ko_KR",
103 "nepali", "ne_NP",
104 "persian", "fa_IR",
105 "indonesian", "id_ID",
106 "serbian (latin)", "sr_RS@latin",
107 "kyrgyz", "ky_KG",
108 "turkish", "tr_TR",
109};
110
111void BLF_lang_init(void)
112{
113 char *messagepath = BLI_get_folder(BLENDER_DATAFILES, "locale");
114
115 BLI_strncpy(global_encoding_name, SYSTEM_ENCODING_DEFAULT, sizeof(global_encoding_name));
116
117 if (messagepath) {
118 BLI_strncpy(global_messagepath, messagepath, sizeof(global_messagepath));
119 }
120 else {
121 printf("%s: 'locale' data path for translations not found, continuing\n", __func__);
122 global_messagepath[0] = '\0';
123 }
124
125}
126
127/* get LANG/LANGUAGE environment variable */
128static void get_language_variable(const char *varname, char *var, int maxlen)
129{
130 char *env = getenv(varname);
131
132 if (env) {
133 char *s;
134
135 /* store defaul locale */
136 BLI_strncpy(var, env, maxlen);
137
138 /* use first language as default */
139 s = strchr(var, ':');
140 if (s)
141 s[0] = 0;
142 }
143}
144
145/* get language to be used based on locale(which might be empty when using default language) and
146 * LANG environment variable
147 */
148static void get_language(const char *locale, const char *lang, char *language, int maxlen)
149{
150 if (locale[0]) {
151 BLI_strncpy(language, locale, maxlen);
152 }
153 else {
154 char *s;
155
156 BLI_strncpy(language, lang, maxlen);
157
158 s = strchr(language, '.');
159 if (s)
160 s[0] = 0;
161 }
162}
163
164/* XXX WARNING!!! IN osx somehow the previous function call jumps in this one??? (ton, ppc) */
165void BLF_lang_set(const char *str)
166{
167 char *locreturn;
168 const char *short_locale;
169 int ok = 1;
170 const char *long_locale = locales[2 * U.language];
171
172 if ((U.transopts&USER_DOTRANSLATE) == 0)
173 return;
174
175 if (str)
176 short_locale = str;
177 else
178 short_locale = locales[ 2 * U.language + 1];
179
180#if defined (_WIN32) && !defined(FREE_WINDOWS)
181 if (short_locale) {
182 char *envStr;
183
184 if (U.language == 0)/* use system setting */
185 envStr = BLI_sprintfN( "LANG=%s", getenv("LANG") );
186 else
187 envStr = BLI_sprintfN( "LANG=%s", short_locale );
188
189 gettext_putenv(envStr);
190 MEM_freeN(envStr);
191 }
192
193 locreturn = setlocale(LC_ALL, long_locale);
194
195 if (locreturn == NULL) {
196 if (G.debug & G_DEBUG)
197 printf("Could not change locale to %s\n", long_locale);
198
199 ok = 0;
200 }
201#else
202 {
203 static char default_lang[64] ="\0";
204 static char default_language[64] ="\0";
205
206 if (default_lang[0] == 0)
207 get_language_variable("LANG", default_lang, sizeof(default_lang));
208
209 if (default_language[0] == 0)
210 get_language_variable("LANGUAGE", default_language, sizeof(default_language));
211
212 if (short_locale[0]) {
213 if (G.debug & G_DEBUG)
214 printf("Setting LANG= and LANGUAGE to %s\n", short_locale);
215
216 BLI_setenv("LANG", short_locale);
217 BLI_setenv("LANGUAGE", short_locale);
218 }
219 else {
220 if (G.debug & G_DEBUG)
221 printf("Setting LANG=%s and LANGUAGE=%s\n", default_lang, default_language);
222
223 BLI_setenv("LANG", default_lang);
224 BLI_setenv("LANGUAGE", default_language);
225 }
226
227 locreturn = setlocale(LC_ALL, short_locale);
228
229 if (locreturn == NULL) {
230 char *short_locale_utf8 = NULL;
231
232 if (short_locale[0]) {
233 short_locale_utf8 = BLI_sprintfN("%s.UTF-8", short_locale);
234 locreturn = setlocale(LC_ALL, short_locale_utf8);
235 }
236
237 if (locreturn == NULL) {
238 char language[65];
239
240 get_language(long_locale, default_lang, language, sizeof(language));
241
242 if (G.debug & G_DEBUG) {
243 if (short_locale[0])
244 printf("Could not change locale to %s nor %s\n", short_locale, short_locale_utf8);
245 else
246 printf("Could not reset locale\n");
247
248 printf("Fallback to LANG=%s and LANGUAGE=%s\n", default_lang, language);
249 }
250
251 /* fallback to default settings */
252 BLI_setenv("LANG", default_lang);
253 BLI_setenv("LANGUAGE", language);
254
255 locreturn = setlocale(LC_ALL, "");
256
257 ok = 0;
258 }
259
260 if (short_locale_utf8)
261 MEM_freeN(short_locale_utf8);
262 }
263 }
264#endif
265
266 if (ok) {
267 /*printf("Change locale to %s\n", locreturn ); */
268 BLI_strncpy(global_language, locreturn, sizeof(global_language));
269 }
270
271 setlocale(LC_NUMERIC, "C");
272
273 textdomain(TEXT_DOMAIN_NAME);
274 bindtextdomain(TEXT_DOMAIN_NAME, global_messagepath);
275 bind_textdomain_codeset(TEXT_DOMAIN_NAME, global_encoding_name);
276}
277
278void BLF_lang_encoding(const char *str)
279{
280 BLI_strncpy(global_encoding_name, str, sizeof(global_encoding_name));
281 /* bind_textdomain_codeset(TEXT_DOMAIN_NAME, encoding_name); */
282}
283
284#else /* ! WITH_INTERNATIONAL */
285
286void BLF_lang_init(void)
287{
288 return;
289}
290
291void BLF_lang_encoding(const char *str)
292{
293 (void)str;
294 return;
295}
296
297void BLF_lang_set(const char *str)
298{
299 (void)str;
300 return;
301}
302
303#endif /* WITH_INTERNATIONAL */
3040
=== removed directory '.pc/0005-locales_directory_install.patch/source/blender/blenlib'
=== removed file '.pc/0005-locales_directory_install.patch/source/blender/blenlib/BLI_path_util.h'
--- .pc/0005-locales_directory_install.patch/source/blender/blenlib/BLI_path_util.h 2012-04-28 12:11:12 +0000
+++ .pc/0005-locales_directory_install.patch/source/blender/blenlib/BLI_path_util.h 1970-01-01 00:00:00 +0000
@@ -1,192 +0,0 @@
1/*
2 * ***** BEGIN GPL LICENSE BLOCK *****
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; either version 2
7 * of the License, or (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software Foundation,
16 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17 *
18 * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
19 * All rights reserved.
20 *
21 * The Original Code is: all of this file.
22 *
23 * Contributor(s): none yet.
24 *
25 * ***** END GPL LICENSE BLOCK *****
26 */
27#ifndef __BLI_PATH_UTIL_H__
28#define __BLI_PATH_UTIL_H__
29
30/** \file BLI_path_util.h
31 * \ingroup bli
32 */
33
34#ifdef __cplusplus
35extern "C" {
36#endif
37
38struct ListBase;
39struct direntry;
40
41const char *BLI_getDefaultDocumentFolder(void);
42
43char *BLI_get_folder(int folder_id, const char *subfolder);
44char *BLI_get_folder_create(int folder_id, const char *subfolder);
45char *BLI_get_user_folder_notest(int folder_id, const char *subfolder);
46char *BLI_get_folder_version(const int id, const int ver, const int do_check);
47
48/* folder_id */
49
50/* general, will find based on user/local/system priority */
51#define BLENDER_DATAFILES 2
52
53/* user-specific */
54#define BLENDER_USER_CONFIG 31
55#define BLENDER_USER_DATAFILES 32
56#define BLENDER_USER_SCRIPTS 33
57#define BLENDER_USER_PLUGINS 34
58#define BLENDER_USER_AUTOSAVE 35
59
60/* system */
61#define BLENDER_SYSTEM_DATAFILES 52
62#define BLENDER_SYSTEM_SCRIPTS 53
63#define BLENDER_SYSTEM_PLUGINS 54
64#define BLENDER_SYSTEM_PYTHON 54
65
66/* for BLI_get_folder_version only */
67#define BLENDER_RESOURCE_PATH_USER 0
68#define BLENDER_RESOURCE_PATH_LOCAL 1
69#define BLENDER_RESOURCE_PATH_SYSTEM 2
70
71#define BLENDER_STARTUP_FILE "startup.blend"
72#define BLENDER_BOOKMARK_FILE "bookmarks.txt"
73#define BLENDER_HISTORY_FILE "recent-files.txt"
74
75#ifdef WIN32
76#define SEP '\\'
77#define ALTSEP '/'
78#else
79#define SEP '/'
80#define ALTSEP '\\'
81#endif
82
83void BLI_setenv(const char *env, const char *val);
84void BLI_setenv_if_new(const char *env, const char* val);
85
86void BLI_make_file_string(const char *relabase, char *string, const char *dir, const char *file);
87void BLI_make_exist(char *dir);
88void BLI_make_existing_file(const char *name);
89void BLI_split_dirfile(const char *string, char *dir, char *file, const size_t dirlen, const size_t filelen);
90void BLI_split_dir_part(const char *string, char *dir, const size_t dirlen);
91void BLI_split_file_part(const char *string, char *file, const size_t filelen);
92void BLI_join_dirfile(char *string, const size_t maxlen, const char *dir, const char *file);
93char *BLI_path_basename(char *path);
94int BKE_rebase_path(char *abs, size_t abs_len, char *rel, size_t rel_len, const char *base_dir, const char *src_dir, const char *dest_dir);
95char *BLI_last_slash(const char *string);
96int BLI_add_slash(char *string);
97void BLI_del_slash(char *string);
98char *BLI_first_slash(char *string);
99
100void BLI_getlastdir(const char* dir, char *last, const size_t maxlen);
101int BLI_testextensie(const char *str, const char *ext);
102int BLI_testextensie_array(const char *str, const char **ext_array);
103int BLI_testextensie_glob(const char *str, const char *ext_fnmatch);
104int BLI_replace_extension(char *path, size_t maxlen, const char *ext);
105int BLI_ensure_extension(char *path, size_t maxlen, const char *ext);
106void BLI_uniquename(struct ListBase *list, void *vlink, const char defname[], char delim, short name_offs, short len);
107int BLI_uniquename_cb(int (*unique_check)(void *, const char *), void *arg, const char defname[], char delim, char *name, short name_len);
108void BLI_newname(char * name, int add);
109int BLI_stringdec(const char *string, char *head, char *start, unsigned short *numlen);
110void BLI_stringenc(char *string, const char *head, const char *tail, unsigned short numlen, int pic);
111int BLI_split_name_num(char *left, int *nr, const char *name, const char delim);
112void BLI_splitdirstring(char *di,char *fi);
113
114/* make sure path separators conform to system one */
115void BLI_clean(char *path);
116
117/**
118 * dir can be any input, like from buttons, and this function
119 * converts it to a regular full path.
120 * Also removes garbage from directory paths, like /../ or double slashes etc
121 */
122void BLI_cleanup_file(const char *relabase, char *dir); /* removes trailing slash */
123void BLI_cleanup_dir(const char *relabase, char *dir); /* same as above but adds a trailing slash */
124void BLI_cleanup_path(const char *relabase, char *dir); /* doesn't touch trailing slash */
125
126/* go back one directory */
127int BLI_parent_dir(char *path);
128
129/* return whether directory is root and thus has no parent dir */
130int BLI_has_parent(char *path);
131
132/**
133 * Blender's path code replacement function.
134 * Bases \a path strings leading with "//" by the
135 * directory \a basepath, and replaces instances of
136 * '#' with the \a framenum. Results are written
137 * back into \a path.
138 *
139 * \a path The path to convert
140 * \a basepath The directory to base relative paths with.
141 * \a framenum The framenumber to replace the frame code with.
142 * \retval Returns true if the path was relative (started with "//").
143 */
144int BLI_path_abs(char *path, const char *basepath);
145int BLI_path_frame(char *path, int frame, int digits);
146int BLI_path_frame_range(char *path, int sta, int end, int digits);
147int BLI_path_cwd(char *path);
148void BLI_path_rel(char *file, const char *relfile);
149
150#ifdef WIN32
151# define BLI_path_cmp BLI_strcasecmp
152# define BLI_path_ncmp BLI_strncasecmp
153#else
154# define BLI_path_cmp strcmp
155# define BLI_path_ncmp strncmp
156#endif
157
158/**
159 * Change every \a from in \a string into \a to. The
160 * result will be in \a string
161 *
162 * \a string The string to work on
163 * \a from The character to replace
164 * \a to The character to replace with
165 */
166void BLI_char_switch(char *string, char from, char to);
167
168 /* Initialize path to program executable */
169void BLI_init_program_path(const char *argv0);
170 /* Initialize path to temporary directory.
171 * NOTE: On Window userdir will be set to the temporary directory! */
172void BLI_init_temporary_dir(char *userdir);
173
174 /* Path to executable */
175const char *BLI_program_path(void);
176 /* Path to directory of executable */
177const char *BLI_program_dir(void);
178 /* Path to temporary directory (with trailing slash) */
179const char *BLI_temporary_dir(void);
180 /* Path to the system temporary directory (with trailing slash) */
181void BLI_system_temporary_dir(char *dir);
182
183#ifdef WITH_ICONV
184void BLI_string_to_utf8(char *original, char *utf_8, const char *code);
185#endif
186
187#ifdef __cplusplus
188}
189#endif
190
191#endif
192
1930
=== removed directory '.pc/0005-locales_directory_install.patch/source/blender/blenlib/intern'
=== removed file '.pc/0005-locales_directory_install.patch/source/blender/blenlib/intern/path_util.c'
--- .pc/0005-locales_directory_install.patch/source/blender/blenlib/intern/path_util.c 2012-04-28 12:11:12 +0000
+++ .pc/0005-locales_directory_install.patch/source/blender/blenlib/intern/path_util.c 1970-01-01 00:00:00 +0000
@@ -1,1981 +0,0 @@
1/*
2 * ***** BEGIN GPL LICENSE BLOCK *****
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; either version 2
7 * of the License, or (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software Foundation,
16 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17 *
18 * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
19 * All rights reserved.
20 *
21 * The Original Code is: all of this file.
22 *
23 * Contributor(s): none yet.
24 *
25 * ***** END GPL LICENSE BLOCK *****
26 *
27 * various string, file, list operations.
28 */
29
30/** \file blender/blenlib/intern/path_util.c
31 * \ingroup bli
32 */
33
34
35#include <ctype.h>
36#include <string.h>
37#include <stdlib.h>
38#include <assert.h>
39
40#include "MEM_guardedalloc.h"
41
42#include "DNA_listBase.h"
43
44#include "BLI_fileops.h"
45#include "BLI_path_util.h"
46#include "BLI_string.h"
47#include "BLI_string_utf8.h"
48#include "BLI_utildefines.h"
49
50#include "BKE_utildefines.h"
51#include "BKE_blender.h" // BLENDER_VERSION
52
53#include "GHOST_Path-api.h"
54
55#if defined WIN32 && !defined _LIBC || defined __sun
56# include "BLI_fnmatch.h" /* use fnmatch included in blenlib */
57#else
58# ifndef _GNU_SOURCE
59# define _GNU_SOURCE
60# endif
61# include <fnmatch.h>
62#endif
63
64#ifdef WIN32
65#include "utf_winfunc.h"
66# include <io.h>
67# ifdef _WIN32_IE
68# undef _WIN32_IE
69# endif
70# define _WIN32_IE 0x0501
71# include <windows.h>
72# include <shlobj.h>
73# include "BLI_winstuff.h"
74#else /* non windows */
75# ifdef WITH_BINRELOC
76# include "binreloc.h"
77# endif
78#endif /* WIN32 */
79
80/* standard paths */
81#ifdef WIN32
82# define BLENDER_USER_FORMAT "%s\\Blender Foundation\\Blender\\%s"
83# define BLENDER_SYSTEM_FORMAT "%s\\Blender Foundation\\Blender\\%s"
84#elif defined(__APPLE__)
85# define BLENDER_USER_FORMAT "%s/Blender/%s"
86# define BLENDER_SYSTEM_FORMAT "%s/Blender/%s"
87#else /* UNIX */
88# ifndef WITH_XDG_USER_DIRS /* oldschool unix ~/.blender/ */
89# define BLENDER_USER_FORMAT "%s/.blender/%s"
90# else /* new XDG ~/blender/.config/ */
91# define BLENDER_USER_FORMAT "%s/blender/%s"
92# endif // WITH_XDG_USER_DIRS
93# define BLENDER_SYSTEM_FORMAT "%s/blender/%s"
94#endif
95
96/* local */
97#define UNIQUE_NAME_MAX 128
98
99static char bprogname[FILE_MAX]; /* path to program executable */
100static char bprogdir[FILE_MAX]; /* path in which executable is located */
101static char btempdir[FILE_MAX]; /* temporary directory */
102
103static int add_win32_extension(char *name);
104static char *blender_version_decimal(const int ver);
105
106/* implementation */
107
108int BLI_stringdec(const char *string, char *head, char *tail, unsigned short *numlen)
109{
110 unsigned short len, len2, lenlslash = 0, nums = 0, nume = 0;
111 short i, found = 0;
112 char *lslash = BLI_last_slash(string);
113 len2 = len = strlen(string);
114 if (lslash)
115 lenlslash= (int)(lslash - string);
116
117 while (len > lenlslash && string[--len] != '.') {};
118 if (len == lenlslash && string[len] != '.') len = len2;
119
120 for (i = len - 1; i >= lenlslash; i--) {
121 if (isdigit(string[i])) {
122 if (found) {
123 nums = i;
124 }
125 else {
126 nume = i;
127 nums = i;
128 found = 1;
129 }
130 }
131 else {
132 if (found) break;
133 }
134 }
135 if (found) {
136 if (tail) strcpy(tail, &string[nume+1]);
137 if (head) {
138 strcpy(head,string);
139 head[nums]=0;
140 }
141 if (numlen) *numlen = nume-nums+1;
142 return ((int)atoi(&(string[nums])));
143 }
144 if (tail) strcpy(tail, string + len);
145 if (head) {
146 strncpy(head, string, len);
147 head[len] = '\0';
148 }
149 if (numlen) *numlen=0;
150 return 0;
151}
152
153
154void BLI_stringenc(char *string, const char *head, const char *tail, unsigned short numlen, int pic)
155{
156 char fmtstr[16]="";
157 if (pic < 0) pic= 0;
158 sprintf(fmtstr, "%%s%%.%dd%%s", numlen);
159 sprintf(string, fmtstr, head, pic, tail);
160}
161
162/* Foo.001 -> "Foo", 1
163 * Returns the length of "Foo" */
164int BLI_split_name_num(char *left, int *nr, const char *name, const char delim)
165{
166 int a;
167
168 *nr= 0;
169 a= strlen(name);
170 memcpy(left, name, (a + 1) * sizeof(char));
171
172 if (a>1 && name[a-1]==delim) return a;
173
174 while (a--) {
175 if ( name[a]==delim ) {
176 left[a]= 0;
177 *nr= atol(name+a+1);
178 /* casting down to an int, can overflow for large numbers */
179 if (*nr < 0)
180 *nr= 0;
181 return a;
182 }
183 if ( isdigit(name[a])==0 ) break;
184
185 left[a]= 0;
186 }
187
188 for (a= 0; name[a]; a++)
189 left[a]= name[a];
190
191 return a;
192}
193
194void BLI_newname(char *name, int add)
195{
196 char head[UNIQUE_NAME_MAX], tail[UNIQUE_NAME_MAX];
197 int pic;
198 unsigned short digits;
199
200 pic = BLI_stringdec(name, head, tail, &digits);
201
202 /* are we going from 100 -> 99 or from 10 -> 9 */
203 if (add < 0 && digits < 4 && digits > 0) {
204 int i, exp;
205 exp = 1;
206 for (i = digits; i > 1; i--) exp *= 10;
207 if (pic >= exp && (pic + add) < exp) digits--;
208 }
209
210 pic += add;
211
212 if (digits==4 && pic<0) pic= 0;
213 BLI_stringenc(name, head, tail, digits, pic);
214}
215
216
217
218int BLI_uniquename_cb(int (*unique_check)(void *, const char *), void *arg, const char defname[], char delim, char *name, short name_len)
219{
220 if (name[0] == '\0') {
221 BLI_strncpy(name, defname, name_len);
222 }
223
224 if (unique_check(arg, name)) {
225 char numstr[16];
226 char tempname[UNIQUE_NAME_MAX];
227 char left[UNIQUE_NAME_MAX];
228 int number;
229 int len= BLI_split_name_num(left, &number, name, delim);
230 do {
231 int numlen= BLI_snprintf(numstr, sizeof(numstr), "%c%03d", delim, ++number);
232
233 /* highly unlikely the string only has enough room for the number
234 * but support anyway */
235 if ((len == 0) || (numlen >= name_len)) {
236 /* number is know not to be utf-8 */
237 BLI_strncpy(tempname, numstr, name_len);
238 }
239 else {
240 char *tempname_buf;
241 tempname[0]= '\0';
242 tempname_buf = BLI_strncat_utf8(tempname, left, name_len - numlen);
243 memcpy(tempname_buf, numstr, numlen + 1);
244 }
245 } while (unique_check(arg, tempname));
246
247 BLI_strncpy(name, tempname, name_len);
248
249 return 1;
250 }
251
252 return 0;
253}
254
255/* little helper macro for BLI_uniquename */
256#ifndef GIVE_STRADDR
257 #define GIVE_STRADDR(data, offset) ( ((char *)data) + offset )
258#endif
259
260/* Generic function to set a unique name. It is only designed to be used in situations
261 * where the name is part of the struct, and also that the name is at most UNIQUE_NAME_MAX chars long.
262 *
263 * For places where this is used, see constraint.c for example...
264 *
265 * name_offs: should be calculated using offsetof(structname, membername) macro from stddef.h
266 * len: maximum length of string (to prevent overflows, etc.)
267 * defname: the name that should be used by default if none is specified already
268 * delim: the character which acts as a delimiter between parts of the name
269 */
270static int uniquename_find_dupe(ListBase *list, void *vlink, const char *name, short name_offs)
271{
272 Link *link;
273
274 for (link = list->first; link; link= link->next) {
275 if (link != vlink) {
276 if (!strcmp(GIVE_STRADDR(link, name_offs), name)) {
277 return 1;
278 }
279 }
280 }
281
282 return 0;
283}
284
285static int uniquename_unique_check(void *arg, const char *name)
286{
287 struct {ListBase *lb; void *vlink; short name_offs;} *data= arg;
288 return uniquename_find_dupe(data->lb, data->vlink, name, data->name_offs);
289}
290
291void BLI_uniquename(ListBase *list, void *vlink, const char defname[], char delim, short name_offs, short name_len)
292{
293 struct {ListBase *lb; void *vlink; short name_offs;} data;
294 data.lb= list;
295 data.vlink= vlink;
296 data.name_offs= name_offs;
297
298 assert((name_len > 1) && (name_len <= UNIQUE_NAME_MAX));
299
300 /* See if we are given an empty string */
301 if (ELEM(NULL, vlink, defname))
302 return;
303
304 BLI_uniquename_cb(uniquename_unique_check, &data, defname, delim, GIVE_STRADDR(vlink, name_offs), name_len);
305}
306
307
308
309/* ******************** string encoding ***************** */
310
311/* This is quite an ugly function... its purpose is to
312 * take the dir name, make it absolute, and clean it up, replacing
313 * excess file entry stuff (like /tmp/../tmp/../)
314 * note that dir isn't protected for max string names...
315 *
316 * If relbase is NULL then its ignored
317 */
318
319void BLI_cleanup_path(const char *relabase, char *dir)
320{
321 ptrdiff_t a;
322 char *start, *eind;
323 if (relabase) {
324 BLI_path_abs(dir, relabase);
325 }
326 else {
327 if (dir[0]=='/' && dir[1]=='/') {
328 if (dir[2]== '\0') {
329 return; /* path is "//" - cant clean it */
330 }
331 dir = dir+2; /* skip the first // */
332 }
333 }
334
335 /* Note
336 * memmove(start, eind, strlen(eind) + 1);
337 * is the same as
338 * strcpy( start, eind );
339 * except strcpy should not be used because there is overlap,
340 * so use memmove's slightly more obscure syntax - Campbell
341 */
342
343#ifdef WIN32
344
345 /* Note, this should really be moved to the file selector,
346 * since this function is used in many areas */
347 if (strcmp(dir, ".")==0) { /* happens for example in FILE_MAIN */
348 get_default_root(dir);
349 return;
350 }
351
352 while ( (start = strstr(dir, "\\..\\")) ) {
353 eind = start + strlen("\\..\\") - 1;
354 a = start-dir-1;
355 while (a>0) {
356 if (dir[a] == '\\') break;
357 a--;
358 }
359 if (a<0) {
360 break;
361 }
362 else {
363 memmove(dir + a, eind, strlen(eind) + 1);
364 }
365 }
366
367 while ( (start = strstr(dir,"\\.\\")) ) {
368 eind = start + strlen("\\.\\") - 1;
369 memmove(start, eind, strlen(eind) + 1);
370 }
371
372 while ( (start = strstr(dir,"\\\\" )) ) {
373 eind = start + strlen("\\\\") - 1;
374 memmove(start, eind, strlen(eind) + 1);
375 }
376#else
377 if (dir[0]=='.') { /* happens, for example in FILE_MAIN */
378 dir[0]= '/';
379 dir[1]= 0;
380 return;
381 }
382
383 /* support for odd paths: eg /../home/me --> /home/me
384 * this is a valid path in blender but we cant handle this the usual way below
385 * simply strip this prefix then evaluate the path as usual. pythons os.path.normpath() does this */
386 while ((strncmp(dir, "/../", 4)==0)) {
387 memmove(dir, dir + 4, strlen(dir + 4) + 1);
388 }
389
390 while ( (start = strstr(dir, "/../")) ) {
391 eind = start + (4 - 1) /* strlen("/../") - 1 */;
392 a = start-dir-1;
393 while (a>0) {
394 if (dir[a] == '/') break;
395 a--;
396 }
397 if (a<0) {
398 break;
399 }
400 else {
401 memmove(dir+a, eind, strlen(eind) + 1);
402 }
403 }
404
405 while ( (start = strstr(dir,"/./")) ) {
406 eind = start + (3 - 1) /* strlen("/./") - 1 */;
407 memmove(start, eind, strlen(eind) + 1);
408 }
409
410 while ( (start = strstr(dir,"//" )) ) {
411 eind = start + (2 - 1) /* strlen("//") - 1 */;
412 memmove(start, eind, strlen(eind) + 1);
413 }
414#endif
415}
416
417void BLI_cleanup_dir(const char *relabase, char *dir)
418{
419 BLI_cleanup_path(relabase, dir);
420 BLI_add_slash(dir);
421
422}
423
424void BLI_cleanup_file(const char *relabase, char *dir)
425{
426 BLI_cleanup_path(relabase, dir);
427 BLI_del_slash(dir);
428}
429
430void BLI_path_rel(char *file, const char *relfile)
431{
432 char * lslash;
433 char temp[FILE_MAX];
434 char res[FILE_MAX];
435
436 /* if file is already relative, bail out */
437 if (file[0]=='/' && file[1]=='/') return;
438
439 /* also bail out if relative path is not set */
440 if (relfile[0] == 0) return;
441
442#ifdef WIN32
443 if (BLI_strnlen(relfile, 3) > 2 && relfile[1] != ':') {
444 char* ptemp;
445 /* fix missing volume name in relative base,
446 * can happen with old recent-files.txt files */
447 get_default_root(temp);
448 ptemp = &temp[2];
449 if (relfile[0] != '\\' && relfile[0] != '/') {
450 ptemp++;
451 }
452 BLI_strncpy(ptemp, relfile, FILE_MAX-3);
453 }
454 else {
455 BLI_strncpy(temp, relfile, FILE_MAX);
456 }
457
458 if (BLI_strnlen(file, 3) > 2) {
459 if ( temp[1] == ':' && file[1] == ':' && temp[0] != file[0] )
460 return;
461 }
462#else
463 BLI_strncpy(temp, relfile, FILE_MAX);
464#endif
465
466 BLI_char_switch(temp, '\\', '/');
467 BLI_char_switch(file, '\\', '/');
468
469 /* remove /./ which confuse the following slash counting... */
470 BLI_cleanup_path(NULL, file);
471 BLI_cleanup_path(NULL, temp);
472
473 /* the last slash in the file indicates where the path part ends */
474 lslash = BLI_last_slash(temp);
475
476 if (lslash) {
477 /* find the prefix of the filename that is equal for both filenames.
478 * This is replaced by the two slashes at the beginning */
479 char *p= temp;
480 char *q= file;
481
482#ifdef WIN32
483 while (tolower(*p) == tolower(*q))
484#else
485 while (*p == *q)
486#endif
487 {
488 ++p; ++q;
489 /* don't search beyond the end of the string
490 * in the rare case they match */
491 if ((*p=='\0') || (*q=='\0')) {
492 break;
493 }
494 }
495
496 /* we might have passed the slash when the beginning of a dir matches
497 * so we rewind. Only check on the actual filename
498 */
499 if (*q != '/') {
500 while ( (q >= file) && (*q != '/') ) { --q; --p; }
501 }
502 else if (*p != '/') {
503 while ( (p >= temp) && (*p != '/') ) { --p; --q; }
504 }
505
506 strcpy(res, "//");
507
508 /* p now points to the slash that is at the beginning of the part
509 * where the path is different from the relative path.
510 * We count the number of directories we need to go up in the
511 * hierarchy to arrive at the common 'prefix' of the path
512 */
513 while (p && p < lslash) {
514 if (*p == '/')
515 strcat(res, "../");
516 ++p;
517 }
518
519 strcat(res, q+1); /* don't copy the slash at the beginning */
520
521#ifdef WIN32
522 BLI_char_switch(res+2, '/', '\\');
523#endif
524 strcpy(file, res);
525 }
526}
527
528int BLI_has_parent(char *path)
529{
530 int len;
531 int slashes = 0;
532 BLI_clean(path);
533 len = BLI_add_slash(path) - 1;
534
535 while (len>=0) {
536 if ((path[len] == '\\') || (path[len] == '/'))
537 slashes++;
538 len--;
539 }
540 return slashes > 1;
541}
542
543int BLI_parent_dir(char *path)
544{
545 static char parent_dir[]= {'.', '.', SEP, '\0'}; /* "../" or "..\\" */
546 char tmp[FILE_MAX+4];
547 BLI_strncpy(tmp, path, sizeof(tmp)-4);
548 BLI_add_slash(tmp);
549 strcat(tmp, parent_dir);
550 BLI_cleanup_dir(NULL, tmp);
551
552 if (!BLI_testextensie(tmp, parent_dir)) {
553 BLI_strncpy(path, tmp, sizeof(tmp));
554 return 1;
555 }
556 else {
557 return 0;
558 }
559}
560
561static int stringframe_chars(char *path, int *char_start, int *char_end)
562{
563 int ch_sta, ch_end, i;
564 /* Insert current frame: file### -> file001 */
565 ch_sta = ch_end = 0;
566 for (i = 0; path[i] != '\0'; i++) {
567 if (path[i] == '\\' || path[i] == '/') {
568 ch_end = 0; /* this is a directory name, don't use any hashes we found */
569 }
570 else if (path[i] == '#') {
571 ch_sta = i;
572 ch_end = ch_sta+1;
573 while (path[ch_end] == '#') {
574 ch_end++;
575 }
576 i = ch_end-1; /* keep searching */
577
578 /* don't break, there may be a slash after this that invalidates the previous #'s */
579 }
580 }
581
582 if (ch_end) {
583 *char_start= ch_sta;
584 *char_end= ch_end;
585 return 1;
586 }
587 else {
588 *char_start= -1;
589 *char_end= -1;
590 return 0;
591 }
592}
593
594static void ensure_digits(char *path, int digits)
595{
596 char *file= BLI_last_slash(path);
597
598 if (file==NULL)
599 file= path;
600
601 if (strrchr(file, '#') == NULL) {
602 int len= strlen(file);
603
604 while (digits--) {
605 file[len++]= '#';
606 }
607 file[len]= '\0';
608 }
609}
610
611int BLI_path_frame(char *path, int frame, int digits)
612{
613 int ch_sta, ch_end;
614
615 if (digits)
616 ensure_digits(path, digits);
617
618 if (stringframe_chars(path, &ch_sta, &ch_end)) { /* warning, ch_end is the last # +1 */
619 char tmp[FILE_MAX];
620 sprintf(tmp, "%.*s%.*d%s", ch_sta, path, ch_end-ch_sta, frame, path+ch_end);
621 strcpy(path, tmp);
622 return 1;
623 }
624 return 0;
625}
626
627int BLI_path_frame_range(char *path, int sta, int end, int digits)
628{
629 int ch_sta, ch_end;
630
631 if (digits)
632 ensure_digits(path, digits);
633
634 if (stringframe_chars(path, &ch_sta, &ch_end)) { /* warning, ch_end is the last # +1 */
635 char tmp[FILE_MAX];
636 BLI_snprintf(tmp, sizeof(tmp),
637 "%.*s%.*d-%.*d%s",
638 ch_sta, path, ch_end-ch_sta, sta, ch_end-ch_sta, end, path+ch_end);
639 BLI_strncpy(path, tmp, FILE_MAX);
640 return 1;
641 }
642 return 0;
643}
644
645int BLI_path_abs(char *path, const char *basepath)
646{
647 int wasrelative = (strncmp(path, "//", 2)==0);
648 char tmp[FILE_MAX];
649 char base[FILE_MAX];
650#ifdef WIN32
651 char vol[3] = {'\0', '\0', '\0'};
652
653 BLI_strncpy(vol, path, 3);
654 /* we are checking here if we have an absolute path that is not in the current
655 * blend file as a lib main - we are basically checking for the case that a
656 * UNIX root '/' is passed.
657 */
658 if (!wasrelative && (vol[1] != ':' && (vol[0] == '\0' || vol[0] == '/' || vol[0] == '\\'))) {
659 char *p = path;
660 get_default_root(tmp);
661 // get rid of the slashes at the beginning of the path
662 while (*p == '\\' || *p == '/') {
663 p++;
664 }
665 strcat(tmp, p);
666 }
667 else {
668 BLI_strncpy(tmp, path, FILE_MAX);
669 }
670#else
671 BLI_strncpy(tmp, path, sizeof(tmp));
672
673 /* Check for loading a windows path on a posix system
674 * in this case, there is no use in trying C:/ since it
675 * will never exist on a unix os.
676 *
677 * Add a / prefix and lowercase the driveletter, remove the :
678 * C:\foo.JPG -> /c/foo.JPG */
679
680 if (isalpha(tmp[0]) && tmp[1] == ':' && (tmp[2]=='\\' || tmp[2]=='/') ) {
681 tmp[1] = tolower(tmp[0]); /* replace ':' with driveletter */
682 tmp[0] = '/';
683 /* '\' the slash will be converted later */
684 }
685
686#endif
687
688 BLI_strncpy(base, basepath, sizeof(base));
689
690 /* file component is ignored, so don't bother with the trailing slash */
691 BLI_cleanup_path(NULL, base);
692
693 /* push slashes into unix mode - strings entering this part are
694 * potentially messed up: having both back- and forward slashes.
695 * Here we push into one conform direction, and at the end we
696 * push them into the system specific dir. This ensures uniformity
697 * of paths and solving some problems (and prevent potential future
698 * ones) -jesterKing. */
699 BLI_char_switch(tmp, '\\', '/');
700 BLI_char_switch(base, '\\', '/');
701
702 /* Paths starting with // will get the blend file as their base,
703 * this isn't standard in any os but is used in blender all over the place */
704 if (wasrelative) {
705 char *lslash= BLI_last_slash(base);
706 if (lslash) {
707 int baselen= (int) (lslash-base) + 1;
708 /* use path for temp storage here, we copy back over it right away */
709 BLI_strncpy(path, tmp+2, FILE_MAX);
710
711 memcpy(tmp, base, baselen);
712 BLI_strncpy(tmp+baselen, path, sizeof(tmp)-baselen);
713 BLI_strncpy(path, tmp, FILE_MAX);
714 }
715 else {
716 BLI_strncpy(path, tmp+2, FILE_MAX);
717 }
718 }
719 else {
720 BLI_strncpy(path, tmp, FILE_MAX);
721 }
722
723 BLI_cleanup_path(NULL, path);
724
725#ifdef WIN32
726 /* skip first two chars, which in case of
727 * absolute path will be drive:/blabla and
728 * in case of relpath //blabla/. So relpath
729 * // will be retained, rest will be nice and
730 * shiny win32 backward slashes :) -jesterKing
731 */
732 BLI_char_switch(path+2, '/', '\\');
733#endif
734
735 return wasrelative;
736}
737
738
739/*
740 * Should only be done with command line paths.
741 * this is NOT something blenders internal paths support like the // prefix
742 */
743int BLI_path_cwd(char *path)
744{
745 int wasrelative = 1;
746 int filelen = strlen(path);
747
748#ifdef WIN32
749 if (filelen >= 3 && path[1] == ':' && (path[2] == '\\' || path[2] == '/'))
750 wasrelative = 0;
751#else
752 if (filelen >= 2 && path[0] == '/')
753 wasrelative = 0;
754#endif
755
756 if (wasrelative==1) {
757 char cwd[FILE_MAX]= "";
758 BLI_current_working_dir(cwd, sizeof(cwd)); /* in case the full path to the blend isn't used */
759
760 if (cwd[0] == '\0') {
761 printf( "Could not get the current working directory - $PWD for an unknown reason.");
762 }
763 else {
764 /* uses the blend path relative to cwd important for loading relative linked files.
765 *
766 * cwd should contain c:\ etc on win32 so the relbase can be NULL
767 * relbase being NULL also prevents // being misunderstood as relative to the current
768 * blend file which isn't a feature we want to use in this case since were dealing
769 * with a path from the command line, rather than from inside Blender */
770
771 char origpath[FILE_MAX];
772 BLI_strncpy(origpath, path, FILE_MAX);
773
774 BLI_make_file_string(NULL, path, cwd, origpath);
775 }
776 }
777
778 return wasrelative;
779}
780
781
782/* 'di's filename component is moved into 'fi', di is made a dir path */
783void BLI_splitdirstring(char *di, char *fi)
784{
785 char *lslash= BLI_last_slash(di);
786
787 if (lslash) {
788 BLI_strncpy(fi, lslash+1, FILE_MAXFILE);
789 *(lslash+1)=0;
790 }
791 else {
792 BLI_strncpy(fi, di, FILE_MAXFILE);
793 di[0]= 0;
794 }
795}
796
797void BLI_getlastdir(const char* dir, char *last, const size_t maxlen)
798{
799 const char *s = dir;
800 const char *lslash = NULL;
801 const char *prevslash = NULL;
802 while (*s) {
803 if ((*s == '\\') || (*s == '/')) {
804 prevslash = lslash;
805 lslash = s;
806 }
807 s++;
808 }
809 if (prevslash) {
810 BLI_strncpy(last, prevslash+1, maxlen);
811 }
812 else {
813 BLI_strncpy(last, dir, maxlen);
814 }
815}
816
817/* This is now only used to really get the user's default document folder */
818/* On Windows I chose the 'Users/<MyUserName>/Documents' since it's used
819 * as default location to save documents */
820const char *BLI_getDefaultDocumentFolder(void)
821{
822#ifndef WIN32
823
824#ifdef WITH_XDG_USER_DIRS
825 const char *xdg_documents_dir= getenv("XDG_DOCUMENTS_DIR");
826 if (xdg_documents_dir) {
827 return xdg_documents_dir;
828 }
829#endif
830
831 return getenv("HOME");
832
833#else /* Windows */
834 static char documentfolder[MAXPATHLEN];
835 HRESULT hResult;
836
837 /* Check for %HOME% env var */
838 if (uput_getenv("HOME",documentfolder,MAXPATHLEN)) {
839 if (BLI_is_dir(documentfolder)) return documentfolder;
840 }
841
842 /* add user profile support for WIN 2K / NT.
843 * This is %APPDATA%, which translates to either
844 * %USERPROFILE%\Application Data or since Vista
845 * to %USERPROFILE%\AppData\Roaming
846 */
847 hResult = SHGetFolderPath(NULL, CSIDL_PERSONAL, NULL, SHGFP_TYPE_CURRENT, documentfolder);
848
849 if (hResult == S_OK) {
850 if (BLI_is_dir(documentfolder)) return documentfolder;
851 }
852
853 return NULL;
854#endif /* WIN32 */
855}
856
857/* NEW stuff, to be cleaned up when fully migrated */
858/* ************************************************************* */
859/* ************************************************************* */
860
861// #define PATH_DEBUG2
862
863static char *blender_version_decimal(const int ver)
864{
865 static char version_str[5];
866 sprintf(version_str, "%d.%02d", ver/100, ver%100);
867 return version_str;
868}
869
870static int test_path(char *targetpath, const char *path_base, const char *path_sep, const char *folder_name)
871{
872 char tmppath[FILE_MAX];
873
874 if (path_sep) BLI_join_dirfile(tmppath, sizeof(tmppath), path_base, path_sep);
875 else BLI_strncpy(tmppath, path_base, sizeof(tmppath));
876
877 /* rare cases folder_name is omitted (when looking for ~/.blender/2.xx dir only) */
878 if (folder_name)
879 BLI_make_file_string("/", targetpath, tmppath, folder_name);
880 else
881 BLI_strncpy(targetpath, tmppath, sizeof(tmppath));
882
883 if (BLI_is_dir(targetpath)) {
884#ifdef PATH_DEBUG2
885 printf("\tpath found: %s\n", targetpath);
886#endif
887 return 1;
888 }
889 else {
890#ifdef PATH_DEBUG2
891 printf("\tpath missing: %s\n", targetpath);
892#endif
893 //targetpath[0] = '\0';
894 return 0;
895 }
896}
897
898static int test_env_path(char *path, const char *envvar)
899{
900 const char *env = envvar?getenv(envvar):NULL;
901 if (!env) return 0;
902
903 if (BLI_is_dir(env)) {
904 BLI_strncpy(path, env, FILE_MAX);
905 return 1;
906 }
907 else {
908 path[0] = '\0';
909 return 0;
910 }
911}
912
913static int get_path_local(char *targetpath, const char *folder_name, const char *subfolder_name, const int ver)
914{
915 char relfolder[FILE_MAX];
916
917#ifdef PATH_DEBUG2
918 printf("get_path_local...\n");
919#endif
920
921 if (folder_name) {
922 if (subfolder_name) {
923 BLI_join_dirfile(relfolder, sizeof(relfolder), folder_name, subfolder_name);
924 }
925 else {
926 BLI_strncpy(relfolder, folder_name, sizeof(relfolder));
927 }
928 }
929 else {
930 relfolder[0]= '\0';
931 }
932
933 /* try EXECUTABLE_DIR/2.5x/folder_name - new default directory for local blender installed files */
934 if (test_path(targetpath, bprogdir, blender_version_decimal(ver), relfolder))
935 return 1;
936
937 return 0;
938}
939
940static int is_portable_install(void)
941{
942 /* detect portable install by the existance of config folder */
943 const int ver= BLENDER_VERSION;
944 char path[FILE_MAX];
945
946 return get_path_local(path, "config", NULL, ver);
947}
948
949static int get_path_user(char *targetpath, const char *folder_name, const char *subfolder_name, const char *envvar, const int ver)
950{
951 char user_path[FILE_MAX];
952 const char *user_base_path;
953
954 /* for portable install, user path is always local */
955 if (is_portable_install())
956 return get_path_local(targetpath, folder_name, subfolder_name, ver);
957
958 user_path[0] = '\0';
959
960 if (test_env_path(user_path, envvar)) {
961 if (subfolder_name) {
962 return test_path(targetpath, user_path, NULL, subfolder_name);
963 }
964 else {
965 BLI_strncpy(targetpath, user_path, FILE_MAX);
966 return 1;
967 }
968 }
969
970 user_base_path = (const char *)GHOST_getUserDir();
971 if (user_base_path) {
972 BLI_snprintf(user_path, FILE_MAX, BLENDER_USER_FORMAT, user_base_path, blender_version_decimal(ver));
973 }
974
975 if (!user_path[0])
976 return 0;
977
978#ifdef PATH_DEBUG2
979 printf("get_path_user: %s\n", user_path);
980#endif
981
982 if (subfolder_name) {
983 /* try $HOME/folder_name/subfolder_name */
984 return test_path(targetpath, user_path, folder_name, subfolder_name);
985 }
986 else {
987 /* try $HOME/folder_name */
988 return test_path(targetpath, user_path, NULL, folder_name);
989 }
990}
991
992static int get_path_system(char *targetpath, const char *folder_name, const char *subfolder_name, const char *envvar, const int ver)
993{
994 char system_path[FILE_MAX];
995 const char *system_base_path;
996
997
998 /* first allow developer only overrides to the system path
999 * these are only used when running blender from source */
1000 char cwd[FILE_MAX];
1001 char relfolder[FILE_MAX];
1002
1003 if (folder_name) {
1004 if (subfolder_name) {
1005 BLI_join_dirfile(relfolder, sizeof(relfolder), folder_name, subfolder_name);
1006 }
1007 else {
1008 BLI_strncpy(relfolder, folder_name, sizeof(relfolder));
1009 }
1010 }
1011 else {
1012 relfolder[0]= '\0';
1013 }
1014
1015 /* try CWD/release/folder_name */
1016 if (BLI_current_working_dir(cwd, sizeof(cwd))) {
1017 if (test_path(targetpath, cwd, "release", relfolder)) {
1018 return 1;
1019 }
1020 }
1021
1022 /* try EXECUTABLE_DIR/release/folder_name */
1023 if (test_path(targetpath, bprogdir, "release", relfolder))
1024 return 1;
1025 /* end developer overrides */
1026
1027
1028
1029 system_path[0] = '\0';
1030
1031 if (test_env_path(system_path, envvar)) {
1032 if (subfolder_name) {
1033 return test_path(targetpath, system_path, NULL, subfolder_name);
1034 }
1035 else {
1036 BLI_strncpy(targetpath, system_path, FILE_MAX);
1037 return 1;
1038 }
1039 }
1040
1041 system_base_path = (const char *)GHOST_getSystemDir();
1042 if (system_base_path) {
1043 BLI_snprintf(system_path, FILE_MAX, BLENDER_SYSTEM_FORMAT, system_base_path, blender_version_decimal(ver));
1044 }
1045
1046 if (!system_path[0])
1047 return 0;
1048
1049#ifdef PATH_DEBUG2
1050 printf("get_path_system: %s\n", system_path);
1051#endif
1052
1053 if (subfolder_name) {
1054 /* try $BLENDERPATH/folder_name/subfolder_name */
1055 return test_path(targetpath, system_path, folder_name, subfolder_name);
1056 }
1057 else {
1058 /* try $BLENDERPATH/folder_name */
1059 return test_path(targetpath, system_path, NULL, folder_name);
1060 }
1061}
1062
1063/* get a folder out of the 'folder_id' presets for paths */
1064/* returns the path if found, NULL string if not */
1065char *BLI_get_folder(int folder_id, const char *subfolder)
1066{
1067 const int ver= BLENDER_VERSION;
1068 static char path[FILE_MAX] = "";
1069
1070 switch (folder_id) {
1071 case BLENDER_DATAFILES: /* general case */
1072 if (get_path_user(path, "datafiles", subfolder, "BLENDER_USER_DATAFILES", ver)) break;
1073 if (get_path_local(path, "datafiles", subfolder, ver)) break;
1074 if (get_path_system(path, "datafiles", subfolder, "BLENDER_SYSTEM_DATAFILES", ver)) break;
1075 return NULL;
1076
1077 case BLENDER_USER_DATAFILES:
1078 if (get_path_user(path, "datafiles", subfolder, "BLENDER_USER_DATAFILES", ver)) break;
1079 return NULL;
1080
1081 case BLENDER_SYSTEM_DATAFILES:
1082 if (get_path_local(path, "datafiles", subfolder, ver)) break;
1083 if (get_path_system(path, "datafiles", subfolder, "BLENDER_SYSTEM_DATAFILES", ver)) break;
1084 return NULL;
1085
1086 case BLENDER_USER_AUTOSAVE:
1087 if (get_path_user(path, "autosave", subfolder, "BLENDER_USER_DATAFILES", ver)) break;
1088 return NULL;
1089
1090 case BLENDER_USER_CONFIG:
1091 if (get_path_user(path, "config", subfolder, "BLENDER_USER_CONFIG", ver)) break;
1092 return NULL;
1093
1094 case BLENDER_USER_SCRIPTS:
1095 if (get_path_user(path, "scripts", subfolder, "BLENDER_USER_SCRIPTS", ver)) break;
1096 return NULL;
1097
1098 case BLENDER_SYSTEM_SCRIPTS:
1099 if (get_path_local(path, "scripts", subfolder, ver)) break;
1100 if (get_path_system(path, "scripts", subfolder, "BLENDER_SYSTEM_SCRIPTS", ver)) break;
1101 return NULL;
1102
1103 case BLENDER_SYSTEM_PYTHON:
1104 if (get_path_local(path, "python", subfolder, ver)) break;
1105 if (get_path_system(path, "python", subfolder, "BLENDER_SYSTEM_PYTHON", ver)) break;
1106 return NULL;
1107 }
1108
1109 return path;
1110}
1111
1112char *BLI_get_user_folder_notest(int folder_id, const char *subfolder)
1113{
1114 const int ver= BLENDER_VERSION;
1115 static char path[FILE_MAX] = "";
1116
1117 switch (folder_id) {
1118 case BLENDER_USER_DATAFILES:
1119 get_path_user(path, "datafiles", subfolder, "BLENDER_USER_DATAFILES", ver);
1120 break;
1121 case BLENDER_USER_CONFIG:
1122 get_path_user(path, "config", subfolder, "BLENDER_USER_CONFIG", ver);
1123 break;
1124 case BLENDER_USER_AUTOSAVE:
1125 get_path_user(path, "autosave", subfolder, "BLENDER_USER_AUTOSAVE", ver);
1126 break;
1127 case BLENDER_USER_SCRIPTS:
1128 get_path_user(path, "scripts", subfolder, "BLENDER_USER_SCRIPTS", ver);
1129 break;
1130 }
1131 if ('\0' == path[0]) {
1132 return NULL;
1133 }
1134 return path;
1135}
1136
1137char *BLI_get_folder_create(int folder_id, const char *subfolder)
1138{
1139 char *path;
1140
1141 /* only for user folders */
1142 if (!ELEM4(folder_id, BLENDER_USER_DATAFILES, BLENDER_USER_CONFIG, BLENDER_USER_SCRIPTS, BLENDER_USER_AUTOSAVE))
1143 return NULL;
1144
1145 path = BLI_get_folder(folder_id, subfolder);
1146
1147 if (!path) {
1148 path = BLI_get_user_folder_notest(folder_id, subfolder);
1149 if (path) BLI_dir_create_recursive(path);
1150 }
1151
1152 return path;
1153}
1154
1155char *BLI_get_folder_version(const int id, const int ver, const int do_check)
1156{
1157 static char path[FILE_MAX] = "";
1158 int ok;
1159 switch(id) {
1160 case BLENDER_RESOURCE_PATH_USER:
1161 ok= get_path_user(path, NULL, NULL, NULL, ver);
1162 break;
1163 case BLENDER_RESOURCE_PATH_LOCAL:
1164 ok= get_path_local(path, NULL, NULL, ver);
1165 break;
1166 case BLENDER_RESOURCE_PATH_SYSTEM:
1167 ok= get_path_system(path, NULL, NULL, NULL, ver);
1168 break;
1169 default:
1170 path[0]= '\0'; /* in case do_check is false */
1171 ok= FALSE;
1172 BLI_assert(!"incorrect ID");
1173 }
1174
1175 if ((ok == FALSE) && do_check) {
1176 return NULL;
1177 }
1178
1179 return path;
1180}
1181
1182/* End new stuff */
1183/* ************************************************************* */
1184/* ************************************************************* */
1185
1186
1187
1188#ifdef PATH_DEBUG
1189#undef PATH_DEBUG
1190#endif
1191
1192void BLI_setenv(const char *env, const char*val)
1193{
1194 /* free windows */
1195#if (defined(WIN32) || defined(WIN64)) && defined(FREE_WINDOWS)
1196 char *envstr= MEM_mallocN(sizeof(char) * (strlen(env) + strlen(val) + 2), "envstr"); /* one for = another for \0 */
1197
1198 sprintf(envstr, "%s=%s", env, val);
1199 putenv(envstr);
1200 MEM_freeN(envstr);
1201
1202 /* non-free windows */
1203#elif (defined(WIN32) || defined(WIN64)) /* not free windows */
1204 uputenv(env, val);
1205
1206
1207#else
1208 /* linux/osx/bsd */
1209 setenv(env, val, 1);
1210#endif
1211}
1212
1213
1214/**
1215 * Only set an env var if already not there.
1216 * Like Unix setenv(env, val, 0);
1217 */
1218void BLI_setenv_if_new(const char *env, const char* val)
1219{
1220 if (getenv(env) == NULL)
1221 BLI_setenv(env, val);
1222}
1223
1224
1225void BLI_clean(char *path)
1226{
1227 if (path==NULL) return;
1228
1229#ifdef WIN32
1230 if (path && BLI_strnlen(path, 3) > 2) {
1231 BLI_char_switch(path+2, '/', '\\');
1232 }
1233#else
1234 BLI_char_switch(path, '\\', '/');
1235#endif
1236}
1237
1238void BLI_char_switch(char *string, char from, char to)
1239{
1240 if (string==NULL) return;
1241 while (*string != 0) {
1242 if (*string == from) *string = to;
1243 string++;
1244 }
1245}
1246
1247void BLI_make_exist(char *dir)
1248{
1249 int a;
1250
1251 BLI_char_switch(dir, ALTSEP, SEP);
1252
1253 a = strlen(dir);
1254
1255 while (BLI_is_dir(dir) == 0) {
1256 a --;
1257 while (dir[a] != SEP) {
1258 a--;
1259 if (a <= 0) break;
1260 }
1261 if (a >= 0) {
1262 dir[a+1] = '\0';
1263 }
1264 else {
1265#ifdef WIN32
1266 get_default_root(dir);
1267#else
1268 strcpy(dir,"/");
1269#endif
1270 break;
1271 }
1272 }
1273}
1274
1275void BLI_make_existing_file(const char *name)
1276{
1277 char di[FILE_MAX], fi[FILE_MAXFILE];
1278
1279 BLI_strncpy(di, name, sizeof(di));
1280 BLI_splitdirstring(di, fi);
1281
1282 /* test exist */
1283 if (BLI_exists(di) == 0) {
1284 BLI_dir_create_recursive(di);
1285 }
1286}
1287
1288
1289void BLI_make_file_string(const char *relabase, char *string, const char *dir, const char *file)
1290{
1291 int sl;
1292
1293 if (string) {
1294 /* ensure this is always set even if dir/file are NULL */
1295 string[0]= '\0';
1296
1297 if (ELEM(NULL, dir, file)) {
1298 return; /* We don't want any NULLs */
1299 }
1300 }
1301 else {
1302 return; /* string is NULL, probably shouldnt happen but return anyway */
1303 }
1304
1305
1306 /* we first push all slashes into unix mode, just to make sure we don't get
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches

to all changes: