Manual merge of soc-2009-kazanbas branch:
authorArystanbek Dyussenov <arystan.d@gmail.com>
Tue, 22 Sep 2009 16:35:07 +0000 (16:35 +0000)
committerArystanbek Dyussenov <arystan.d@gmail.com>
Tue, 22 Sep 2009 16:35:07 +0000 (16:35 +0000)
* copied I/O scripts
* copied, modified rna_*_api.c and rna_*.c

I/O scripts not working yet due to slight BPY differences and RNA changes. Will fix them later.

Not merged changes:

* C unit testing integration, because it is clumsy
* scons cross-compiling, can be merged easily later

953 files changed:
CMake/macros.cmake
CMakeLists.txt
SConstruct
blenderplayer/CMakeLists.txt [deleted file]
config/darwin-config.py
config/irix6-config.py
config/linux2-config.py
config/linuxcross-config.py
config/openbsd3-config.py
config/sunos5-config.py
config/win32-mingw-config.py
config/win32-vc-config.py
config/win64-vc-config.py
extern/CMakeLists.txt
extern/Makefile
extern/SConscript
extern/binreloc/SConscript
extern/bullet2/CMakeLists.txt
extern/bullet2/src/BulletCollision/CMakeLists.txt
extern/bullet2/src/BulletSoftBody/CMakeLists.txt
extern/bullet2/src/SConscript
extern/glew/CMakeLists.txt
extern/glew/SConscript
extern/libopenjpeg/SConscript
extern/libredcode/SConscript
extern/lzma/Alloc.c [new file with mode: 0644]
extern/lzma/Alloc.h [new file with mode: 0644]
extern/lzma/CMakeLists.txt [new file with mode: 0644]
extern/lzma/LzFind.c [new file with mode: 0644]
extern/lzma/LzFind.h [new file with mode: 0644]
extern/lzma/LzHash.h [new file with mode: 0644]
extern/lzma/LzmaDec.c [new file with mode: 0644]
extern/lzma/LzmaDec.h [new file with mode: 0644]
extern/lzma/LzmaEnc.c [new file with mode: 0644]
extern/lzma/LzmaEnc.h [new file with mode: 0644]
extern/lzma/LzmaLib.c [new file with mode: 0644]
extern/lzma/LzmaLib.h [new file with mode: 0644]
extern/lzma/Makefile [new file with mode: 0644]
extern/lzma/SConscript [new file with mode: 0644]
extern/lzma/Types.h [new file with mode: 0644]
extern/lzma/history.txt [new file with mode: 0644]
extern/lzma/lzma.txt [new file with mode: 0644]
extern/lzma/make/msvc_9_0/lzma.vcproj [new file with mode: 0644]
extern/lzo/CMakeLists.txt [new file with mode: 0644]
extern/lzo/SConscript [new file with mode: 0644]
extern/lzo/make/msvc_9_0/lzo.vcproj [new file with mode: 0644]
extern/lzo/minilzo/COPYING [new file with mode: 0644]
extern/lzo/minilzo/Makefile [new file with mode: 0644]
extern/lzo/minilzo/README.LZO [new file with mode: 0644]
extern/lzo/minilzo/lzoconf.h [new file with mode: 0644]
extern/lzo/minilzo/lzodefs.h [new file with mode: 0644]
extern/lzo/minilzo/minilzo.c [new file with mode: 0644]
extern/lzo/minilzo/minilzo.h [new file with mode: 0644]
intern/CMakeLists.txt
intern/audaspace/CMakeLists.txt
intern/audaspace/FX/AUD_DoubleReader.cpp
intern/audaspace/FX/AUD_PingPongFactory.cpp
intern/audaspace/Makefile
intern/audaspace/OpenAL/AUD_OpenALDevice.cpp
intern/audaspace/OpenAL/Makefile [new file with mode: 0644]
intern/audaspace/SConscript
intern/audaspace/SDL/AUD_SDLMixerReader.cpp
intern/audaspace/SDL/Makefile
intern/audaspace/ffmpeg/AUD_FFMPEGFactory.cpp
intern/audaspace/ffmpeg/AUD_FFMPEGFactory.h
intern/audaspace/ffmpeg/AUD_FFMPEGReader.cpp
intern/audaspace/ffmpeg/AUD_FFMPEGReader.h
intern/audaspace/ffmpeg/Makefile
intern/audaspace/intern/AUD_C-API.cpp
intern/audaspace/intern/AUD_C-API.h
intern/audaspace/intern/AUD_FileFactory.cpp [new file with mode: 0644]
intern/audaspace/intern/AUD_FileFactory.h [new file with mode: 0644]
intern/audaspace/intern/Makefile
intern/audaspace/jack/AUD_JackDevice.cpp
intern/audaspace/jack/AUD_JackDevice.h
intern/audaspace/jack/Makefile
intern/audaspace/make/msvc_9_0/audaspace.vcproj
intern/audaspace/sndfile/AUD_SndFileFactory.cpp [new file with mode: 0644]
intern/audaspace/sndfile/AUD_SndFileFactory.h [new file with mode: 0644]
intern/audaspace/sndfile/AUD_SndFileReader.cpp [new file with mode: 0644]
intern/audaspace/sndfile/AUD_SndFileReader.h [new file with mode: 0644]
intern/audaspace/sndfile/Makefile [new file with mode: 0644]
intern/elbeem/CMakeLists.txt
intern/ghost/CMakeLists.txt
intern/ghost/GHOST_Types.h
intern/ghost/SConscript
intern/ghost/intern/GHOST_System.cpp
intern/ghost/intern/GHOST_SystemCarbon.cpp
intern/ghost/intern/GHOST_SystemWin32.cpp
intern/ghost/intern/GHOST_SystemX11.cpp
intern/ghost/intern/GHOST_WindowCarbon.cpp
intern/ghost/intern/GHOST_WindowWin32.cpp
intern/ghost/intern/GHOST_WindowX11.cpp
intern/guardedalloc/CMakeLists.txt
intern/guardedalloc/SConscript
intern/iksolver/SConscript
intern/iksolver/intern/TNT/tntmath.h
intern/memutil/SConscript
intern/moto/SConscript
intern/smoke/CMakeLists.txt
intern/smoke/extern/smoke_API.h
intern/smoke/intern/FLUID_3D.cpp
intern/smoke/intern/FLUID_3D.h
intern/smoke/intern/FLUID_3D_SOLVERS.cpp
intern/smoke/intern/FLUID_3D_STATIC.cpp
intern/smoke/intern/WTURBULENCE.cpp
intern/smoke/intern/WTURBULENCE.h
intern/smoke/intern/smoke_API.cpp
intern/smoke/intern/tnt/tnt_math_utils.h
intern/string/SConscript
intern/string/STR_String.h
po/Makefile
projectfiles_vc9/blender/BPY_python/BPY_python.vcproj
projectfiles_vc9/blender/blender.sln
projectfiles_vc9/blender/blender.vcproj
projectfiles_vc9/blender/blenkernel/BKE_blenkernel.vcproj
projectfiles_vc9/blender/blenlib/BLI_blenlib.vcproj
projectfiles_vc9/blender/editors/ED_editors.vcproj
projectfiles_vc9/blender/gpu/BL_gpu.vcproj
projectfiles_vc9/blender/imbuf/BL_imbuf.vcproj
projectfiles_vc9/blender/loader/BLO_loader.vcproj
projectfiles_vc9/blender/makesrna/RNA_makesrna.vcproj
projectfiles_vc9/blender/makesrna/RNA_rna.vcproj
projectfiles_vc9/blender/nodes/nodes.vcproj
projectfiles_vc9/blender/render/BRE_render.vcproj
projectfiles_vc9/gameengine/videotexture/TEX_Video.vcproj
release/datafiles/blenderbuttons
release/datafiles/datatoc.c [deleted file]
release/datafiles/datatoc.py [new file with mode: 0755]
release/datafiles/splash.jpg [deleted file]
release/datafiles/splash.png [new file with mode: 0644]
release/io/engine_render_pov.py
release/io/export_ply.py
release/io/export_x3d.py
release/io/netrender/__init__.py [new file with mode: 0644]
release/io/netrender/balancing.py [new file with mode: 0644]
release/io/netrender/client.py [new file with mode: 0644]
release/io/netrender/master.py [new file with mode: 0644]
release/io/netrender/model.py [new file with mode: 0644]
release/io/netrender/operators.py [new file with mode: 0644]
release/io/netrender/slave.py [new file with mode: 0644]
release/io/netrender/ui.py [new file with mode: 0644]
release/io/netrender/utils.py [new file with mode: 0644]
release/scripts/3ds_export.py
release/scripts/export_fbx.py
release/scripts/export_map.py
release/scripts/help_getting_started.py [deleted file]
release/scripts/help_manual.py [deleted file]
release/scripts/help_release_notes.py [deleted file]
release/scripts/help_tutorials.py [deleted file]
release/scripts/help_web_blender.py [deleted file]
release/scripts/help_web_devcomm.py [deleted file]
release/scripts/help_web_eshop.py [deleted file]
release/scripts/help_web_usercomm.py [deleted file]
release/scripts/import_edl.py [new file with mode: 0644]
release/test/rna_array.py [new file with mode: 0644]
release/ui/bpy_ops.py
release/ui/buttons_data_armature.py
release/ui/buttons_data_bone.py
release/ui/buttons_data_camera.py
release/ui/buttons_data_curve.py
release/ui/buttons_data_empty.py
release/ui/buttons_data_lamp.py
release/ui/buttons_data_lattice.py
release/ui/buttons_data_mesh.py
release/ui/buttons_data_metaball.py
release/ui/buttons_data_modifier.py
release/ui/buttons_data_text.py
release/ui/buttons_game.py
release/ui/buttons_material.py
release/ui/buttons_object.py
release/ui/buttons_object_constraint.py
release/ui/buttons_particle.py [new file with mode: 0644]
release/ui/buttons_physics_cloth.py
release/ui/buttons_physics_field.py
release/ui/buttons_physics_fluid.py
release/ui/buttons_physics_smoke.py
release/ui/buttons_physics_softbody.py
release/ui/buttons_scene.py
release/ui/buttons_texture.py
release/ui/buttons_world.py
release/ui/space_buttons.py
release/ui/space_console.py
release/ui/space_filebrowser.py
release/ui/space_image.py
release/ui/space_info.py
release/ui/space_logic.py
release/ui/space_node.py
release/ui/space_outliner.py
release/ui/space_script.py [deleted file]
release/ui/space_sequencer.py
release/ui/space_text.py
release/ui/space_time.py
release/ui/space_userpref.py
release/ui/space_view3d.py
release/ui/space_view3d_toolbar.py
release/windows/inno/blender.iss [new file with mode: 0644]
release/windows/inno/copyright.txt [new file with mode: 0644]
release/windows/inno/header.bmp [new file with mode: 0644]
release/windows/inno/installer.bmp [new file with mode: 0644]
release/windows/inno/installer.ico [new file with mode: 0644]
source/CMakeLists.txt
source/Makefile
source/SConscript
source/blender/CMakeLists.txt
source/blender/avi/CMakeLists.txt
source/blender/avi/SConscript
source/blender/blenfont/CMakeLists.txt
source/blender/blenfont/SConscript
source/blender/blenfont/intern/blf.c
source/blender/blenfont/intern/blf_dir.c
source/blender/blenfont/intern/blf_font.c
source/blender/blenfont/intern/blf_glyph.c
source/blender/blenkernel/BKE_action.h
source/blender/blenkernel/BKE_anim.h
source/blender/blenkernel/BKE_animsys.h
source/blender/blenkernel/BKE_armature.h
source/blender/blenkernel/BKE_blender.h
source/blender/blenkernel/BKE_boids.h
source/blender/blenkernel/BKE_brush.h
source/blender/blenkernel/BKE_cloth.h
source/blender/blenkernel/BKE_collision.h
source/blender/blenkernel/BKE_constraint.h
source/blender/blenkernel/BKE_curve.h
source/blender/blenkernel/BKE_depsgraph.h
source/blender/blenkernel/BKE_fcurve.h
source/blender/blenkernel/BKE_global.h
source/blender/blenkernel/BKE_group.h
source/blender/blenkernel/BKE_image.h
source/blender/blenkernel/BKE_key.h
source/blender/blenkernel/BKE_library.h
source/blender/blenkernel/BKE_modifier.h
source/blender/blenkernel/BKE_multires.h
source/blender/blenkernel/BKE_node.h
source/blender/blenkernel/BKE_object.h
source/blender/blenkernel/BKE_paint.h
source/blender/blenkernel/BKE_particle.h
source/blender/blenkernel/BKE_pointcache.h
source/blender/blenkernel/BKE_sca.h
source/blender/blenkernel/BKE_scene.h
source/blender/blenkernel/BKE_screen.h
source/blender/blenkernel/BKE_sculpt.h [deleted file]
source/blender/blenkernel/BKE_shrinkwrap.h
source/blender/blenkernel/BKE_smoke.h
source/blender/blenkernel/BKE_sound.h
source/blender/blenkernel/BKE_text.h
source/blender/blenkernel/BKE_texture.h
source/blender/blenkernel/BKE_utildefines.h
source/blender/blenkernel/CMakeLists.txt
source/blender/blenkernel/SConscript
source/blender/blenkernel/intern/DerivedMesh.c
source/blender/blenkernel/intern/Makefile
source/blender/blenkernel/intern/action.c
source/blender/blenkernel/intern/anim.c
source/blender/blenkernel/intern/anim_sys.c
source/blender/blenkernel/intern/armature.c
source/blender/blenkernel/intern/blender.c
source/blender/blenkernel/intern/boids.c
source/blender/blenkernel/intern/booleanops.c
source/blender/blenkernel/intern/brush.c
source/blender/blenkernel/intern/cdderivedmesh.c
source/blender/blenkernel/intern/cloth.c
source/blender/blenkernel/intern/collision.c
source/blender/blenkernel/intern/colortools.c
source/blender/blenkernel/intern/constraint.c
source/blender/blenkernel/intern/curve.c
source/blender/blenkernel/intern/depsgraph.c
source/blender/blenkernel/intern/displist.c
source/blender/blenkernel/intern/effect.c
source/blender/blenkernel/intern/fcurve.c
source/blender/blenkernel/intern/fluidsim.c
source/blender/blenkernel/intern/font.c
source/blender/blenkernel/intern/gpencil.c
source/blender/blenkernel/intern/group.c
source/blender/blenkernel/intern/image.c
source/blender/blenkernel/intern/implicit.c
source/blender/blenkernel/intern/ipo.c
source/blender/blenkernel/intern/key.c
source/blender/blenkernel/intern/lattice.c
source/blender/blenkernel/intern/library.c
source/blender/blenkernel/intern/material.c
source/blender/blenkernel/intern/mesh.c
source/blender/blenkernel/intern/modifier.c
source/blender/blenkernel/intern/multires.c
source/blender/blenkernel/intern/nla.c
source/blender/blenkernel/intern/node.c
source/blender/blenkernel/intern/object.c
source/blender/blenkernel/intern/packedFile.c
source/blender/blenkernel/intern/paint.c
source/blender/blenkernel/intern/particle.c
source/blender/blenkernel/intern/particle_system.c
source/blender/blenkernel/intern/pointcache.c
source/blender/blenkernel/intern/report.c
source/blender/blenkernel/intern/sca.c
source/blender/blenkernel/intern/scene.c
source/blender/blenkernel/intern/screen.c
source/blender/blenkernel/intern/seqeffects.c
source/blender/blenkernel/intern/sequence.c
source/blender/blenkernel/intern/shrinkwrap.c
source/blender/blenkernel/intern/smoke.c
source/blender/blenkernel/intern/softbody.c
source/blender/blenkernel/intern/sound.c
source/blender/blenkernel/intern/text.c
source/blender/blenkernel/intern/texture.c
source/blender/blenkernel/intern/writeffmpeg.c
source/blender/blenlib/BLI_arithb.h
source/blender/blenlib/BLI_fileops.h
source/blender/blenlib/BLI_kdopbvh.h
source/blender/blenlib/BLI_listbase.h
source/blender/blenlib/BLI_util.h
source/blender/blenlib/BLI_voxel.h [new file with mode: 0644]
source/blender/blenlib/BLI_winstuff.h
source/blender/blenlib/CMakeLists.txt
source/blender/blenlib/MTC_matrixops.h [deleted file]
source/blender/blenlib/SConscript
source/blender/blenlib/intern/BLI_kdopbvh.c
source/blender/blenlib/intern/BLI_kdtree.c
source/blender/blenlib/intern/BLI_mempool.c
source/blender/blenlib/intern/arithb.c
source/blender/blenlib/intern/bpath.c
source/blender/blenlib/intern/fileops.c
source/blender/blenlib/intern/freetypefont.c
source/blender/blenlib/intern/graph.c
source/blender/blenlib/intern/listbase.c
source/blender/blenlib/intern/matrixops.c [deleted file]
source/blender/blenlib/intern/noise.c
source/blender/blenlib/intern/storage.c
source/blender/blenlib/intern/threads.c
source/blender/blenlib/intern/util.c
source/blender/blenlib/intern/vectorops.c [deleted file]
source/blender/blenlib/intern/voxel.c [new file with mode: 0644]
source/blender/blenloader/BLO_readfile.h
source/blender/blenloader/CMakeLists.txt
source/blender/blenloader/SConscript
source/blender/blenloader/intern/readblenentry.c
source/blender/blenloader/intern/readfile.c
source/blender/blenloader/intern/readfile.h
source/blender/blenloader/intern/writefile.c
source/blender/blenpluginapi/CMakeLists.txt
source/blender/blenpluginapi/SConscript
source/blender/editors/CMakeLists.txt
source/blender/editors/Makefile
source/blender/editors/SConscript
source/blender/editors/animation/anim_channels_defines.c
source/blender/editors/animation/anim_channels_edit.c
source/blender/editors/animation/anim_deps.c
source/blender/editors/animation/anim_filter.c
source/blender/editors/animation/anim_intern.h
source/blender/editors/animation/anim_ipo_utils.c
source/blender/editors/animation/anim_markers.c
source/blender/editors/animation/anim_ops.c
source/blender/editors/animation/drivers.c
source/blender/editors/animation/fmodifier_ui.c
source/blender/editors/animation/keyframes_draw.c
source/blender/editors/animation/keyframes_edit.c
source/blender/editors/animation/keyframes_general.c
source/blender/editors/animation/keyframing.c
source/blender/editors/animation/keyingsets.c
source/blender/editors/armature/armature_intern.h
source/blender/editors/armature/armature_ops.c
source/blender/editors/armature/editarmature.c
source/blender/editors/armature/editarmature_generate.c
source/blender/editors/armature/editarmature_retarget.c
source/blender/editors/armature/editarmature_sketch.c
source/blender/editors/armature/meshlaplacian.c
source/blender/editors/armature/poseSlide.c [new file with mode: 0644]
source/blender/editors/armature/poselib.c
source/blender/editors/armature/poseobject.c
source/blender/editors/curve/curve_ops.c
source/blender/editors/curve/editcurve.c
source/blender/editors/curve/editfont.c
source/blender/editors/datafiles/B.blend.c
source/blender/editors/datafiles/blenderbuttons.c
source/blender/editors/datafiles/splash.png.c [moved from source/blender/editors/datafiles/splash.jpg.c with 99% similarity]
source/blender/editors/gpencil/drawgpencil.c
source/blender/editors/gpencil/gpencil_buttons.c [new file with mode: 0644]
source/blender/editors/gpencil/gpencil_edit.c
source/blender/editors/gpencil/gpencil_intern.h
source/blender/editors/gpencil/gpencil_ops.c [new file with mode: 0644]
source/blender/editors/gpencil/gpencil_paint.c [new file with mode: 0644]
source/blender/editors/include/ED_anim_api.h
source/blender/editors/include/ED_armature.h
source/blender/editors/include/ED_datafiles.h
source/blender/editors/include/ED_fileselect.h
source/blender/editors/include/ED_gpencil.h
source/blender/editors/include/ED_image.h
source/blender/editors/include/ED_info.h [new file with mode: 0644]
source/blender/editors/include/ED_keyframes_draw.h
source/blender/editors/include/ED_keyframes_edit.h
source/blender/editors/include/ED_keyframing.h
source/blender/editors/include/ED_mball.h
source/blender/editors/include/ED_mesh.h
source/blender/editors/include/ED_node.h
source/blender/editors/include/ED_object.h
source/blender/editors/include/ED_particle.h
source/blender/editors/include/ED_screen.h
source/blender/editors/include/ED_screen_types.h
source/blender/editors/include/ED_sculpt.h
source/blender/editors/include/ED_sound.h [new file with mode: 0644]
source/blender/editors/include/ED_transform.h
source/blender/editors/include/ED_view3d.h
source/blender/editors/include/UI_icons.h
source/blender/editors/include/UI_interface.h
source/blender/editors/interface/interface.c
source/blender/editors/interface/interface_anim.c
source/blender/editors/interface/interface_handlers.c
source/blender/editors/interface/interface_icons.c
source/blender/editors/interface/interface_intern.h
source/blender/editors/interface/interface_layout.c
source/blender/editors/interface/interface_panel.c
source/blender/editors/interface/interface_regions.c
source/blender/editors/interface/interface_templates.c
source/blender/editors/interface/interface_utils.c
source/blender/editors/interface/interface_widgets.c
source/blender/editors/interface/resources.c
source/blender/editors/interface/view2d_ops.c
source/blender/editors/mesh/editmesh.c
source/blender/editors/mesh/editmesh_add.c
source/blender/editors/mesh/editmesh_loop.c
source/blender/editors/mesh/editmesh_mods.c
source/blender/editors/mesh/editmesh_tools.c
source/blender/editors/mesh/loopcut.c [new file with mode: 0644]
source/blender/editors/mesh/mesh_intern.h
source/blender/editors/mesh/mesh_layers.c
source/blender/editors/mesh/mesh_ops.c
source/blender/editors/mesh/meshtools.c
source/blender/editors/metaball/mball_edit.c [moved from source/blender/editors/metaball/editmball.c with 93% similarity]
source/blender/editors/metaball/mball_ops.c
source/blender/editors/object/object_add.c [new file with mode: 0644]
source/blender/editors/object/object_constraint.c [moved from source/blender/editors/object/editconstraint.c with 96% similarity]
source/blender/editors/object/object_edit.c
source/blender/editors/object/object_group.c [moved from source/blender/editors/object/editgroup.c with 60% similarity]
source/blender/editors/object/object_hook.c [new file with mode: 0644]
source/blender/editors/object/object_intern.h
source/blender/editors/object/object_lattice.c [moved from source/blender/editors/object/editlattice.c with 95% similarity]
source/blender/editors/object/object_modifier.c
source/blender/editors/object/object_ops.c
source/blender/editors/object/object_relations.c [new file with mode: 0644]
source/blender/editors/object/object_select.c [new file with mode: 0644]
source/blender/editors/object/object_shapekey.c [moved from source/blender/editors/object/editkey.c with 85% similarity]
source/blender/editors/object/object_transform.c [new file with mode: 0644]
source/blender/editors/object/object_vgroup.c
source/blender/editors/physics/ed_fluidsim.c
source/blender/editors/physics/ed_pointcache.c
source/blender/editors/physics/editparticle.c
source/blender/editors/preview/previewrender.c
source/blender/editors/screen/CMakeLists.txt
source/blender/editors/screen/area.c
source/blender/editors/screen/screen_context.c
source/blender/editors/screen/screen_edit.c
source/blender/editors/screen/screen_ops.c
source/blender/editors/screen/screendump.c
source/blender/editors/sculpt_paint/paint_image.c
source/blender/editors/sculpt_paint/paint_intern.h
source/blender/editors/sculpt_paint/paint_ops.c
source/blender/editors/sculpt_paint/paint_stroke.c [new file with mode: 0644]
source/blender/editors/sculpt_paint/paint_utils.c
source/blender/editors/sculpt_paint/paint_vertex.c
source/blender/editors/sculpt_paint/sculpt.c
source/blender/editors/sculpt_paint/sculpt_intern.h
source/blender/editors/sculpt_paint/sculpt_stroke.c [deleted file]
source/blender/editors/sound/Makefile [new file with mode: 0644]
source/blender/editors/sound/SConscript [new file with mode: 0644]
source/blender/editors/sound/sound_intern.h [new file with mode: 0644]
source/blender/editors/sound/sound_ops.c [new file with mode: 0644]
source/blender/editors/space_action/action_draw.c
source/blender/editors/space_action/action_edit.c
source/blender/editors/space_action/action_header.c
source/blender/editors/space_action/action_intern.h
source/blender/editors/space_action/action_ops.c
source/blender/editors/space_action/space_action.c
source/blender/editors/space_api/spacetypes.c
source/blender/editors/space_buttons/buttons_context.c
source/blender/editors/space_buttons/buttons_header.c
source/blender/editors/space_buttons/buttons_intern.h
source/blender/editors/space_buttons/buttons_ops.c
source/blender/editors/space_buttons/space_buttons.c
source/blender/editors/space_console/console_ops.c
source/blender/editors/space_console/console_report.c
source/blender/editors/space_console/space_console.c
source/blender/editors/space_file/file_draw.c
source/blender/editors/space_file/file_intern.h
source/blender/editors/space_file/file_ops.c
source/blender/editors/space_file/file_panels.c
source/blender/editors/space_file/filelist.c
source/blender/editors/space_file/filelist.h
source/blender/editors/space_file/filesel.c
source/blender/editors/space_file/space_file.c
source/blender/editors/space_graph/graph_buttons.c
source/blender/editors/space_graph/graph_draw.c
source/blender/editors/space_graph/graph_edit.c
source/blender/editors/space_graph/graph_header.c
source/blender/editors/space_graph/graph_ops.c
source/blender/editors/space_graph/graph_select.c
source/blender/editors/space_graph/space_graph.c
source/blender/editors/space_image/image_buttons.c
source/blender/editors/space_image/image_draw.c
source/blender/editors/space_image/image_intern.h
source/blender/editors/space_image/image_ops.c
source/blender/editors/space_image/space_image.c
source/blender/editors/space_info/info_ops.c
source/blender/editors/space_info/info_stats.c [new file with mode: 0644]
source/blender/editors/space_info/space_info.c
source/blender/editors/space_logic/logic_buttons.c
source/blender/editors/space_logic/logic_window.c
source/blender/editors/space_logic/space_logic.c
source/blender/editors/space_nla/nla_buttons.c
source/blender/editors/space_nla/nla_channels.c
source/blender/editors/space_nla/nla_draw.c
source/blender/editors/space_nla/nla_edit.c
source/blender/editors/space_nla/nla_header.c
source/blender/editors/space_nla/nla_ops.c
source/blender/editors/space_nla/space_nla.c
source/blender/editors/space_node/drawnode.c
source/blender/editors/space_node/node_draw.c
source/blender/editors/space_node/node_edit.c
source/blender/editors/space_node/node_intern.h
source/blender/editors/space_node/node_ops.c
source/blender/editors/space_node/node_select.c
source/blender/editors/space_node/space_node.c
source/blender/editors/space_outliner/outliner.c
source/blender/editors/space_outliner/outliner_ops.c
source/blender/editors/space_outliner/space_outliner.c
source/blender/editors/space_script/script_edit.c
source/blender/editors/space_script/script_ops.c
source/blender/editors/space_script/space_script.c
source/blender/editors/space_sequencer/sequencer_add.c
source/blender/editors/space_sequencer/sequencer_buttons.c
source/blender/editors/space_sequencer/sequencer_draw.c
source/blender/editors/space_sequencer/sequencer_edit.c
source/blender/editors/space_sequencer/sequencer_ops.c
source/blender/editors/space_sequencer/sequencer_select.c
source/blender/editors/space_sequencer/space_sequencer.c
source/blender/editors/space_sound/space_sound.c
source/blender/editors/space_text/space_text.c
source/blender/editors/space_text/text_draw.c
source/blender/editors/space_text/text_header.c
source/blender/editors/space_text/text_intern.h
source/blender/editors/space_text/text_ops.c
source/blender/editors/space_time/space_time.c
source/blender/editors/space_time/time_header.c [deleted file]
source/blender/editors/space_time/time_ops.c
source/blender/editors/space_view3d/Makefile
source/blender/editors/space_view3d/SConscript
source/blender/editors/space_view3d/drawarmature.c
source/blender/editors/space_view3d/drawobject.c
source/blender/editors/space_view3d/drawvolume.c [new file with mode: 0644]
source/blender/editors/space_view3d/space_view3d.c
source/blender/editors/space_view3d/view3d_buttons.c
source/blender/editors/space_view3d/view3d_draw.c
source/blender/editors/space_view3d/view3d_edit.c
source/blender/editors/space_view3d/view3d_header.c
source/blender/editors/space_view3d/view3d_intern.h
source/blender/editors/space_view3d/view3d_ops.c
source/blender/editors/space_view3d/view3d_select.c
source/blender/editors/space_view3d/view3d_snap.c
source/blender/editors/space_view3d/view3d_toolbar.c
source/blender/editors/space_view3d/view3d_view.c
source/blender/editors/transform/transform.c
source/blender/editors/transform/transform.h
source/blender/editors/transform/transform_conversions.c
source/blender/editors/transform/transform_generics.c
source/blender/editors/transform/transform_input.c
source/blender/editors/transform/transform_manipulator.c
source/blender/editors/transform/transform_ops.c
source/blender/editors/transform/transform_orientations.c
source/blender/editors/util/editmode_undo.c
source/blender/editors/util/undo.c
source/blender/editors/uvedit/uvedit_draw.c
source/blender/editors/uvedit/uvedit_ops.c
source/blender/editors/uvedit/uvedit_unwrap_ops.c
source/blender/gpu/CMakeLists.txt
source/blender/gpu/GPU_draw.h
source/blender/gpu/GPU_extensions.h
source/blender/gpu/SConscript
source/blender/gpu/intern/Makefile
source/blender/gpu/intern/gpu_draw.c
source/blender/gpu/intern/gpu_extensions.c
source/blender/imbuf/CMakeLists.txt
source/blender/imbuf/SConscript
source/blender/imbuf/intern/anim.c
source/blender/imbuf/intern/anim5.c
source/blender/imbuf/intern/cineon/CMakeLists.txt
source/blender/imbuf/intern/cineon/SConscript
source/blender/imbuf/intern/dds/CMakeLists.txt
source/blender/imbuf/intern/dds/SConscript
source/blender/imbuf/intern/hamx.c
source/blender/imbuf/intern/iff.c
source/blender/imbuf/intern/jp2.c
source/blender/imbuf/intern/openexr/CMakeLists.txt
source/blender/imbuf/intern/openexr/Makefile
source/blender/imbuf/intern/openexr/SConscript
source/blender/imbuf/intern/openexr/openexr_api.cpp
source/blender/imbuf/intern/thumbs.c
source/blender/imbuf/intern/writeimage.c
source/blender/makesdna/DNA_ID.h
source/blender/makesdna/DNA_action_types.h
source/blender/makesdna/DNA_armature_types.h
source/blender/makesdna/DNA_brush_types.h
source/blender/makesdna/DNA_cloth_types.h
source/blender/makesdna/DNA_constraint_types.h
source/blender/makesdna/DNA_curve_types.h
source/blender/makesdna/DNA_gpencil_types.h
source/blender/makesdna/DNA_material_types.h
source/blender/makesdna/DNA_modifier_types.h
source/blender/makesdna/DNA_node_types.h
source/blender/makesdna/DNA_object_fluidsim.h
source/blender/makesdna/DNA_object_force.h
source/blender/makesdna/DNA_object_types.h
source/blender/makesdna/DNA_particle_types.h
source/blender/makesdna/DNA_scene_types.h
source/blender/makesdna/DNA_sensor_types.h
source/blender/makesdna/DNA_smoke_types.h
source/blender/makesdna/DNA_sound_types.h
source/blender/makesdna/DNA_space_types.h
source/blender/makesdna/DNA_texture_types.h
source/blender/makesdna/DNA_userdef_types.h
source/blender/makesdna/DNA_view3d_types.h
source/blender/makesdna/DNA_windowmanager_types.h
source/blender/makesdna/SConscript
source/blender/makesdna/intern/CMakeLists.txt
source/blender/makesdna/intern/SConscript
source/blender/makesrna/RNA_access.h
source/blender/makesrna/RNA_define.h
source/blender/makesrna/RNA_enum_types.h
source/blender/makesrna/RNA_types.h
source/blender/makesrna/SConscript
source/blender/makesrna/intern/CMakeLists.txt
source/blender/makesrna/intern/Makefile
source/blender/makesrna/intern/SConscript
source/blender/makesrna/intern/makesrna.c
source/blender/makesrna/intern/rna_ID.c
source/blender/makesrna/intern/rna_access.c
source/blender/makesrna/intern/rna_action.c
source/blender/makesrna/intern/rna_action_api.c
source/blender/makesrna/intern/rna_animation.c
source/blender/makesrna/intern/rna_animation_api.c [new file with mode: 0644]
source/blender/makesrna/intern/rna_armature.c
source/blender/makesrna/intern/rna_boid.c
source/blender/makesrna/intern/rna_brush.c
source/blender/makesrna/intern/rna_camera.c
source/blender/makesrna/intern/rna_cloth.c
source/blender/makesrna/intern/rna_color.c
source/blender/makesrna/intern/rna_constraint.c
source/blender/makesrna/intern/rna_curve.c
source/blender/makesrna/intern/rna_define.c
source/blender/makesrna/intern/rna_fcurve.c
source/blender/makesrna/intern/rna_fluidsim.c
source/blender/makesrna/intern/rna_gpencil.c [new file with mode: 0644]
source/blender/makesrna/intern/rna_group.c
source/blender/makesrna/intern/rna_image.c
source/blender/makesrna/intern/rna_image_api.c
source/blender/makesrna/intern/rna_internal.h
source/blender/makesrna/intern/rna_internal_types.h
source/blender/makesrna/intern/rna_key.c
source/blender/makesrna/intern/rna_lamp.c
source/blender/makesrna/intern/rna_lattice.c
source/blender/makesrna/intern/rna_main.c
source/blender/makesrna/intern/rna_material.c
source/blender/makesrna/intern/rna_mesh.c
source/blender/makesrna/intern/rna_mesh_api.c
source/blender/makesrna/intern/rna_meta.c
source/blender/makesrna/intern/rna_modifier.c
source/blender/makesrna/intern/rna_nla.c
source/blender/makesrna/intern/rna_nodetree.c
source/blender/makesrna/intern/rna_nodetree_types.h
source/blender/makesrna/intern/rna_object.c
source/blender/makesrna/intern/rna_object_api.c
source/blender/makesrna/intern/rna_object_force.c
source/blender/makesrna/intern/rna_packedfile.c
source/blender/makesrna/intern/rna_particle.c
source/blender/makesrna/intern/rna_pose.c
source/blender/makesrna/intern/rna_pose_api.c
source/blender/makesrna/intern/rna_render.c
source/blender/makesrna/intern/rna_rna.c
source/blender/makesrna/intern/rna_scene.c
source/blender/makesrna/intern/rna_scene_api.c
source/blender/makesrna/intern/rna_screen.c
source/blender/makesrna/intern/rna_sculpt_paint.c
source/blender/makesrna/intern/rna_sensor.c
source/blender/makesrna/intern/rna_sequence.c
source/blender/makesrna/intern/rna_smoke.c
source/blender/makesrna/intern/rna_sound.c
source/blender/makesrna/intern/rna_space.c
source/blender/makesrna/intern/rna_test.c [new file with mode: 0644]
source/blender/makesrna/intern/rna_text.c
source/blender/makesrna/intern/rna_text_api.c [new file with mode: 0644]
source/blender/makesrna/intern/rna_texture.c
source/blender/makesrna/intern/rna_ui_api.c
source/blender/makesrna/intern/rna_userdef.c
source/blender/makesrna/intern/rna_wm.c
source/blender/makesrna/intern/rna_world.c
source/blender/nodes/CMP_node.h
source/blender/nodes/CMakeLists.txt
source/blender/nodes/SConscript
source/blender/nodes/intern/CMP_nodes/CMP_channelMatte.c
source/blender/nodes/intern/CMP_nodes/CMP_chromaMatte.c
source/blender/nodes/intern/CMP_nodes/CMP_colorMatte.c [new file with mode: 0644]
source/blender/nodes/intern/CMP_nodes/CMP_diffMatte.c
source/blender/nodes/intern/CMP_nodes/CMP_distanceMatte.c [new file with mode: 0644]
source/blender/nodes/intern/CMP_nodes/CMP_levels.c [new file with mode: 0644]
source/blender/nodes/intern/CMP_nodes/CMP_lummaMatte.c
source/blender/nodes/intern/CMP_util.c
source/blender/nodes/intern/CMP_util.h
source/blender/nodes/intern/TEX_nodes/TEX_rotate.c
source/blender/nodes/intern/TEX_util.c
source/blender/nodes/intern/TEX_util.h
source/blender/python/CMakeLists.txt
source/blender/python/SConscript
source/blender/python/epy_doc_gen.py
source/blender/python/generic/Geometry.c
source/blender/python/generic/Mathutils.c
source/blender/python/generic/bpy_internal_import.h
source/blender/python/generic/matrix.c
source/blender/python/generic/vector.c
source/blender/python/intern/bpy_array.c [new file with mode: 0644]
source/blender/python/intern/bpy_interface.c
source/blender/python/intern/bpy_operator.c
source/blender/python/intern/bpy_operator_wrap.c
source/blender/python/intern/bpy_rna.c
source/blender/python/intern/bpy_rna.h
source/blender/python/intern/bpy_sys.c [deleted file]
source/blender/python/intern/bpy_util.c
source/blender/python/intern/bpy_util.h
source/blender/quicktime/CMakeLists.txt
source/blender/quicktime/SConscript
source/blender/readblenfile/CMakeLists.txt
source/blender/readblenfile/SConscript
source/blender/readblenfile/intern/BLO_readblenfile.c
source/blender/render/CMakeLists.txt
source/blender/render/SConscript
source/blender/render/extern/include/RE_shader_ext.h
source/blender/render/intern/include/pointdensity.h [moved from source/blender/blenlib/MTC_vectorops.h with 50% similarity]
source/blender/render/intern/include/render_types.h
source/blender/render/intern/include/shading.h
source/blender/render/intern/include/texture.h
source/blender/render/intern/include/volume_precache.h [moved from source/blender/python/intern/bpy_sys.h with 75% similarity]
source/blender/render/intern/include/volumetric.h [new file with mode: 0644]
source/blender/render/intern/include/voxeldata.h [new file with mode: 0644]
source/blender/render/intern/source/Makefile
source/blender/render/intern/source/convertblender.c
source/blender/render/intern/source/envmap.c
source/blender/render/intern/source/initrender.c
source/blender/render/intern/source/occlusion.c
source/blender/render/intern/source/pipeline.c
source/blender/render/intern/source/pixelshading.c
source/blender/render/intern/source/pointdensity.c [new file with mode: 0644]
source/blender/render/intern/source/rayshade.c
source/blender/render/intern/source/raytrace.c
source/blender/render/intern/source/rendercore.c
source/blender/render/intern/source/shadbuf.c
source/blender/render/intern/source/shadeinput.c
source/blender/render/intern/source/shadeoutput.c
source/blender/render/intern/source/sss.c
source/blender/render/intern/source/strand.c
source/blender/render/intern/source/texture.c
source/blender/render/intern/source/volume_precache.c [new file with mode: 0644]
source/blender/render/intern/source/volumetric.c [new file with mode: 0644]
source/blender/render/intern/source/voxeldata.c [new file with mode: 0644]
source/blender/render/intern/source/zbuf.c
source/blender/windowmanager/CMakeLists.txt
source/blender/windowmanager/WM_api.h
source/blender/windowmanager/WM_types.h
source/blender/windowmanager/intern/Makefile
source/blender/windowmanager/intern/wm.c
source/blender/windowmanager/intern/wm_event_system.c
source/blender/windowmanager/intern/wm_files.c
source/blender/windowmanager/intern/wm_init_exit.c
source/blender/windowmanager/intern/wm_jobs.c
source/blender/windowmanager/intern/wm_keymap.c
source/blender/windowmanager/intern/wm_operators.c
source/blender/windowmanager/intern/wm_window.c
source/blender/windowmanager/wm_event_system.h
source/blender/windowmanager/wm_event_types.h
source/blenderplayer/CMakeLists.txt [new file with mode: 0644]
source/blenderplayer/bad_level_call_stubs/CMakeLists.txt [new file with mode: 0644]
source/blenderplayer/bad_level_call_stubs/Makefile [new file with mode: 0644]
source/blenderplayer/bad_level_call_stubs/SConscript [new file with mode: 0644]
source/blenderplayer/bad_level_call_stubs/stubs.c [new file with mode: 0644]
source/creator/CMakeLists.txt
source/creator/Makefile
source/creator/SConscript
source/creator/creator.c
source/creator/tests/test.c [deleted file]
source/creator/tests/test.h [deleted file]
source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
source/gameengine/BlenderRoutines/CMakeLists.txt
source/gameengine/BlenderRoutines/KX_BlenderGL.cpp
source/gameengine/BlenderRoutines/KX_BlenderGL.h
source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp
source/gameengine/BlenderRoutines/Makefile
source/gameengine/BlenderRoutines/SConscript
source/gameengine/CMakeLists.txt
source/gameengine/Converter/BL_ActionActuator.cpp
source/gameengine/Converter/BL_ActionActuator.h
source/gameengine/Converter/BL_ArmatureObject.cpp
source/gameengine/Converter/BL_BlenderDataConversion.cpp
source/gameengine/Converter/BL_ShapeActionActuator.cpp
source/gameengine/Converter/BL_ShapeActionActuator.h
source/gameengine/Converter/BL_ShapeDeformer.cpp
source/gameengine/Converter/CMakeLists.txt
source/gameengine/Converter/KX_BlenderScalarInterpolator.cpp
source/gameengine/Converter/KX_BlenderScalarInterpolator.h
source/gameengine/Converter/KX_BlenderSceneConverter.cpp
source/gameengine/Converter/KX_ConvertActuators.cpp
source/gameengine/Converter/KX_ConvertProperties.cpp
source/gameengine/Converter/KX_ConvertSensors.cpp
source/gameengine/Converter/KX_IpoConvert.cpp
source/gameengine/Converter/SConscript
source/gameengine/Expressions/CMakeLists.txt
source/gameengine/Expressions/ListValue.cpp
source/gameengine/Expressions/ListValue.h
source/gameengine/Expressions/PyObjectPlus.cpp
source/gameengine/Expressions/PyObjectPlus.h
source/gameengine/Expressions/SConscript
source/gameengine/Expressions/Value.cpp
source/gameengine/Expressions/Value.h
source/gameengine/GameLogic/CMakeLists.txt
source/gameengine/GameLogic/SCA_ActuatorSensor.cpp
source/gameengine/GameLogic/SCA_ActuatorSensor.h
source/gameengine/GameLogic/SCA_DelaySensor.cpp
source/gameengine/GameLogic/SCA_DelaySensor.h
source/gameengine/GameLogic/SCA_IController.cpp
source/gameengine/GameLogic/SCA_IController.h
source/gameengine/GameLogic/SCA_ILogicBrick.cpp
source/gameengine/GameLogic/SCA_ILogicBrick.h
source/gameengine/GameLogic/SCA_ISensor.cpp
source/gameengine/GameLogic/SCA_ISensor.h
source/gameengine/GameLogic/SCA_JoystickSensor.cpp
source/gameengine/GameLogic/SCA_JoystickSensor.h
source/gameengine/GameLogic/SCA_KeyboardSensor.cpp
source/gameengine/GameLogic/SCA_KeyboardSensor.h
source/gameengine/GameLogic/SCA_MouseSensor.cpp
source/gameengine/GameLogic/SCA_MouseSensor.h
source/gameengine/GameLogic/SCA_PropertyActuator.cpp
source/gameengine/GameLogic/SCA_PropertyActuator.h
source/gameengine/GameLogic/SCA_PropertyEventManager.h
source/gameengine/GameLogic/SCA_PropertySensor.cpp
source/gameengine/GameLogic/SCA_PropertySensor.h
source/gameengine/GameLogic/SCA_PythonController.cpp
source/gameengine/GameLogic/SCA_RandomActuator.cpp
source/gameengine/GameLogic/SCA_RandomActuator.h
source/gameengine/GameLogic/SCA_RandomSensor.cpp
source/gameengine/GameLogic/SCA_RandomSensor.h
source/gameengine/GameLogic/SConscript
source/gameengine/GamePlayer/CMakeLists.txt
source/gameengine/GamePlayer/common/CMakeLists.txt
source/gameengine/GamePlayer/common/GPC_Engine.cpp
source/gameengine/GamePlayer/common/GPC_Engine.h
source/gameengine/GamePlayer/common/SConscript
source/gameengine/GamePlayer/ghost/CMakeLists.txt
source/gameengine/GamePlayer/ghost/GPG_Application.cpp
source/gameengine/GamePlayer/ghost/GPG_Application.h
source/gameengine/GamePlayer/ghost/GPG_ghost.cpp
source/gameengine/GamePlayer/ghost/SConscript
source/gameengine/Ketsji/CMakeLists.txt
source/gameengine/Ketsji/KXNetwork/CMakeLists.txt
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageActuator.cpp
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageActuator.h
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.cpp
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.h
source/gameengine/Ketsji/KXNetwork/SConscript
source/gameengine/Ketsji/KX_Camera.cpp
source/gameengine/Ketsji/KX_Camera.h
source/gameengine/Ketsji/KX_CameraActuator.cpp
source/gameengine/Ketsji/KX_CameraActuator.h
source/gameengine/Ketsji/KX_ConstraintActuator.cpp
source/gameengine/Ketsji/KX_ConstraintActuator.h
source/gameengine/Ketsji/KX_GameActuator.cpp
source/gameengine/Ketsji/KX_GameActuator.h
source/gameengine/Ketsji/KX_GameObject.cpp
source/gameengine/Ketsji/KX_GameObject.h
source/gameengine/Ketsji/KX_IpoActuator.cpp
source/gameengine/Ketsji/KX_IpoActuator.h
source/gameengine/Ketsji/KX_KetsjiEngine.cpp
source/gameengine/Ketsji/KX_MeshProxy.cpp
source/gameengine/Ketsji/KX_MouseFocusSensor.cpp
source/gameengine/Ketsji/KX_MouseFocusSensor.h
source/gameengine/Ketsji/KX_NearSensor.cpp
source/gameengine/Ketsji/KX_NearSensor.h
source/gameengine/Ketsji/KX_ObjectActuator.cpp
source/gameengine/Ketsji/KX_ObjectActuator.h
source/gameengine/Ketsji/KX_ParentActuator.cpp
source/gameengine/Ketsji/KX_ParentActuator.h
source/gameengine/Ketsji/KX_PolyProxy.cpp
source/gameengine/Ketsji/KX_PyMath.cpp
source/gameengine/Ketsji/KX_PyMath.h
source/gameengine/Ketsji/KX_PythonInit.cpp
source/gameengine/Ketsji/KX_PythonInitTypes.cpp
source/gameengine/Ketsji/KX_PythonSeq.cpp
source/gameengine/Ketsji/KX_RadarSensor.cpp
source/gameengine/Ketsji/KX_RadarSensor.h
source/gameengine/Ketsji/KX_RaySensor.cpp
source/gameengine/Ketsji/KX_RaySensor.h
source/gameengine/Ketsji/KX_SCA_AddObjectActuator.cpp
source/gameengine/Ketsji/KX_SCA_AddObjectActuator.h
source/gameengine/Ketsji/KX_SCA_DynamicActuator.cpp
source/gameengine/Ketsji/KX_SCA_DynamicActuator.h
source/gameengine/Ketsji/KX_SCA_ReplaceMeshActuator.cpp
source/gameengine/Ketsji/KX_SCA_ReplaceMeshActuator.h
source/gameengine/Ketsji/KX_Scene.cpp
source/gameengine/Ketsji/KX_Scene.h
source/gameengine/Ketsji/KX_SceneActuator.cpp
source/gameengine/Ketsji/KX_SceneActuator.h
source/gameengine/Ketsji/KX_SoundActuator.cpp
source/gameengine/Ketsji/KX_SoundActuator.h
source/gameengine/Ketsji/KX_StateActuator.cpp
source/gameengine/Ketsji/KX_StateActuator.h
source/gameengine/Ketsji/KX_TouchSensor.cpp
source/gameengine/Ketsji/KX_TouchSensor.h
source/gameengine/Ketsji/KX_TrackToActuator.cpp
source/gameengine/Ketsji/KX_TrackToActuator.h
source/gameengine/Ketsji/KX_VisibilityActuator.cpp
source/gameengine/Ketsji/KX_VisibilityActuator.h
source/gameengine/Ketsji/SConscript
source/gameengine/Network/CMakeLists.txt
source/gameengine/Network/LoopBackNetwork/CMakeLists.txt
source/gameengine/Network/LoopBackNetwork/SConscript
source/gameengine/Network/SConscript
source/gameengine/Physics/Bullet/CMakeLists.txt
source/gameengine/Physics/Bullet/CcdPhysicsController.cpp
source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.cpp
source/gameengine/Physics/Bullet/SConscript
source/gameengine/Physics/Dummy/CMakeLists.txt
source/gameengine/Physics/Dummy/SConscript
source/gameengine/Physics/common/CMakeLists.txt
source/gameengine/Physics/common/SConscript
source/gameengine/PyDoc/GameLogic.py
source/gameengine/PyDoc/GameTypes.py
source/gameengine/PyDoc/SConscript
source/gameengine/Rasterizer/CMakeLists.txt
source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp
source/gameengine/Rasterizer/RAS_MaterialBucket.h
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/CMakeLists.txt
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/SConscript
source/gameengine/Rasterizer/RAS_Polygon.cpp
source/gameengine/Rasterizer/RAS_Polygon.h
source/gameengine/Rasterizer/SConscript
source/gameengine/SceneGraph/CMakeLists.txt
source/gameengine/SceneGraph/SConscript
source/gameengine/VideoTexture/CMakeLists.txt
source/gameengine/VideoTexture/Exception.cpp
source/gameengine/VideoTexture/ImageBase.cpp
source/gameengine/VideoTexture/SConscript
source/icons/SConscript
source/kernel/CMakeLists.txt
source/kernel/SConscript
source/nan_compile.mk
source/nan_definitions.mk
source/nan_link.mk
source/nan_warn.mk
tools/Blender.py
tools/btools.py

index 9ba33df..6a33750 100644 (file)
@@ -70,6 +70,9 @@ MACRO(SETUP_LIBDIRS)
   IF(WITH_JACK)
     LINK_DIRECTORIES(${JACK_LIBPATH})
   ENDIF(WITH_JACK)
+  IF(WITH_SNDFILE)
+    LINK_DIRECTORIES(${SNDFILE_LIBPATH})
+  ENDIF(WITH_SNDFILE)
   IF(WITH_FFTW3)
     LINK_DIRECTORIES(${FFTW3_LIBPATH})
   ENDIF(WITH_FFTW3)
@@ -118,6 +121,9 @@ MACRO(SETUP_LIBLINKS
   IF(WITH_JACK)
     TARGET_LINK_LIBRARIES(${target} ${JACK_LIB})
   ENDIF(WITH_JACK)
+  IF(WITH_SNDFILE)
+    TARGET_LINK_LIBRARIES(${target} ${SNDFILE_LIB})
+  ENDIF(WITH_SNDFILE)
   IF(WITH_SDL)
     TARGET_LINK_LIBRARIES(${target} ${SDL_LIBRARY})
   ENDIF(WITH_SDL)
index 2f12d34..504ef5d 100644 (file)
@@ -34,11 +34,11 @@ IF(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
 MESSAGE(FATAL_ERROR "CMake generation for blender is not allowed within the source directory! 
 Remove the CMakeCache.txt file and try again from another folder, e.g.: 
 
-   rm CMakeCache.txt 
-   cd ..
-   mkdir cmake-make 
-   cd cmake-make
-   cmake -G \"Unix Makefiles\" ../blender
+       rm CMakeCache.txt 
+       cd ..
+       mkdir cmake-make 
+       cd cmake-make
+       cmake -G \"Unix Makefiles\" ../blender
 ")
 ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
 
@@ -51,6 +51,10 @@ PROJECT(Blender)
 SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)
 SET(LIBRARY_OUTPUT_PATH  ${CMAKE_BINARY_DIR}/lib)
 
+# Note! - Could create this from the blender version string
+# ...but thats quite involved, make sure this matches the blender version.
+SET(BLENDER_VERSION  2.5)
+
 #-----------------------------------------------------------------------------
 # Set default config options
 OPTION(WITH_PLAYER        "Build Player" OFF)
@@ -70,11 +74,13 @@ OPTION(WITH_OPENMP        "Enable OpenMP (has to be supported by the compiler)"
 OPTION(WITH_WEBPLUGIN     "Enable Web Plugin (Unix only)" OFF)
 OPTION(WITH_FFTW3         "Enable FFTW3 support" OFF)
 OPTION(WITH_JACK          "Enable Jack Support (http://www.jackaudio.org)" OFF)
-OPTION(WITH_CXX_GUARDEDALLOC "" OFF)
+OPTION(WITH_SNDFILE       "Enable libsndfile Support (http://www.mega-nerd.com/libsndfile)" OFF)
+OPTION(WITH_CXX_GUARDEDALLOC "Enable GuardedAlloc for C++ memory allocation" OFF)
+# OPTION(WITH_BUILDINFO     "Include extra build details" ON)
 OPTION(WITH_INSTALL       "Install accompanying scripts and language files needed to run blender" ON)
 
 IF(NOT WITH_GAMEENGINE AND WITH_PLAYER)
-  MESSAGE("WARNING: WITH_PLAYER needs WITH_GAMEENGINE")
+       MESSAGE("WARNING: WITH_PLAYER needs WITH_GAMEENGINE")
 ENDIF(NOT WITH_GAMEENGINE AND WITH_PLAYER)
 
 # For alternate Python locations the commandline can be used to override detected/default cache settings, e.g:
@@ -93,398 +99,434 @@ INCLUDE(CMake/macros.cmake)
 #Platform specifics
 
 IF(UNIX AND NOT APPLE)
-  IF(WITH_OPENAL)
-    FIND_PACKAGE(OpenAL)
-    IF(OPENAL_FOUND)
-      SET(WITH_OPENAL ON)
-    ELSE(OPENAL_FOUND)
-      SET(WITH_OPENAL OFF)
-    ENDIF(OPENAL_FOUND)
-  ENDIF(WITH_OPENAL)
-
-  IF(WITH_JACK)
-    SET(JACK /usr)
-    SET(JACK_INC ${JACK}/include/jack)
-    SET(JACK_LIB jack)
-    SET(JACK_LIBPATH ${JACK}/lib)
-  ENDIF(WITH_JACK)
-
-  FIND_LIBRARY(INTL_LIBRARY
-    NAMES intl
-    PATHS
-    /sw/lib
-  )
-  FIND_LIBRARY(ICONV_LIBRARY
-    NAMES iconv
-    PATHS
-    /sw/lib
-  )
+       IF(WITH_OPENAL)
+               FIND_PACKAGE(OpenAL)
+               IF(OPENAL_FOUND)
+                       SET(WITH_OPENAL ON)
+               ELSE(OPENAL_FOUND)
+                       SET(WITH_OPENAL OFF)
+               ENDIF(OPENAL_FOUND)
+       ENDIF(WITH_OPENAL)
+
+       IF(WITH_JACK)
+               SET(JACK /usr)
+               SET(JACK_INC ${JACK}/include/jack)
+               SET(JACK_LIB jack)
+               SET(JACK_LIBPATH ${JACK}/lib)
+       ENDIF(WITH_JACK)
+
+       IF(WITH_SNDFILE)
+       SET(SNDFILE /usr)
+       SET(SNDFILE_INC ${SNDFILE}/include)
+       SET(SNDFILE_LIB sndfile)
+       SET(SNDFILE_LIBPATH ${SNDFILE}/lib)
+       ENDIF(WITH_SNDFILE)
+
+       FIND_LIBRARY(INTL_LIBRARY
+               NAMES intl
+               PATHS
+               /sw/lib
+       )
+       FIND_LIBRARY(ICONV_LIBRARY
+               NAMES iconv
+               PATHS
+               /sw/lib
+       )
   
-  IF(INTL_LIBRARY AND ICONV_LIBRARY)
-    SET(GETTEXT_LIB ${INTL_LIBRARY} ${ICONV_LIBRARY})
-  ENDIF(INTL_LIBRARY AND ICONV_LIBRARY)
-
-  FIND_PACKAGE(Freetype)
-  # UNSET(FREETYPE_INCLUDE_DIRS CACHE) # cant use
-
-  # No way to set py31. remove for now.
-  # FIND_PACKAGE(PythonLibs)
-  SET(PYTHON /usr)
-  SET(PYTHON_VERSION 3.1)
-  SET(PYTHON_INC "${PYTHON}/include/python${PYTHON_VERSION}" CACHE STRING "")
-  # SET(PYTHON_BINARY python) # not used yet
-  SET(PYTHON_LIB python${PYTHON_VERSION} CACHE STRING "")
-  SET(PYTHON_LIBPATH ${PYTHON}/lib CACHE STRING "")
+       IF(INTL_LIBRARY AND ICONV_LIBRARY)
+               SET(GETTEXT_LIB ${INTL_LIBRARY} ${ICONV_LIBRARY})
+       ENDIF(INTL_LIBRARY AND ICONV_LIBRARY)
+
+       FIND_PACKAGE(Freetype)
+       # UNSET(FREETYPE_INCLUDE_DIRS CACHE) # cant use
+
+       # No way to set py31. remove for now.
+       # FIND_PACKAGE(PythonLibs)
+       SET(PYTHON /usr)
+       SET(PYTHON_VERSION 3.1)
+       SET(PYTHON_INC "${PYTHON}/include/python${PYTHON_VERSION}" CACHE STRING "")
+       # SET(PYTHON_BINARY python) # not used yet
+       SET(PYTHON_LIB python${PYTHON_VERSION} CACHE STRING "")
+       SET(PYTHON_LIBPATH ${PYTHON}/lib CACHE STRING "")
   
-  # FIND_PACKAGE(PythonInterp) # not used yet
-  # SET(PYTHON_BINARY ${PYTHON_EXECUTABLE} CACHE STRING "")
+       # FIND_PACKAGE(PythonInterp) # not used yet
+       # SET(PYTHON_BINARY ${PYTHON_EXECUTABLE} CACHE STRING "")
   
-  SET(PYTHON_LINKFLAGS "-Xlinker -export-dynamic")
-
-  IF(WITH_SDL)
-    FIND_PACKAGE(SDL)
-    # UNSET(SDLMAIN_LIBRARY CACHE)
-    IF(NOT SDL_FOUND)
-      SET(WITH_SDL OFF)
-    ENDIF(NOT SDL_FOUND)
-  ENDIF(WITH_SDL)
-
-  FIND_PATH(OPENEXR_INC
-    ImfXdr.h
-    PATHS
-    /usr/local/include/OpenEXR
-    /usr/include/OpenEXR
-    /sw/include/OpenEXR
-    /opt/local/include/OpenEXR
-    /opt/csw/include/OpenEXR
-    /opt/include/OpenEXR
-  )
-  SET(OPENEXR_LIB Half IlmImf Iex Imath)
-
-  SET(FFMPEG /usr)
-  SET(FFMPEG_INC ${FFMPEG}/include)
-  SET(FFMPEG_LIB avformat avcodec avutil avdevice swscale)
-  SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
+       SET(PYTHON_LINKFLAGS "-Xlinker -export-dynamic")
+
+       IF(WITH_SDL)
+               FIND_PACKAGE(SDL)
+               # UNSET(SDLMAIN_LIBRARY CACHE)
+               IF(NOT SDL_FOUND)
+                       SET(WITH_SDL OFF)
+               ENDIF(NOT SDL_FOUND)
+       ENDIF(WITH_SDL)
+
+       FIND_PATH(OPENEXR_INC
+               ImfXdr.h
+               PATHS
+               /usr/local/include/OpenEXR
+               /usr/include/OpenEXR
+               /sw/include/OpenEXR
+               /opt/local/include/OpenEXR
+               /opt/csw/include/OpenEXR
+               /opt/include/OpenEXR
+       )
+       SET(OPENEXR_LIB Half IlmImf Iex Imath)
+
+       SET(FFMPEG /usr)
+       SET(FFMPEG_INC ${FFMPEG}/include)
+       SET(FFMPEG_LIB avformat avcodec avutil avdevice swscale)
+       SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
   
-  IF(WITH_FFTW3)
-    SET(FFTW3 /usr)
-    SET(FFTW3_INC ${FFTW3}/include)
-    SET(FFTW3_LIB fftw3)
-    SET(FFTW3_LIBPATH ${FFTW3}/lib)
-  ENDIF(WITH_FFTW3)
+       IF(WITH_FFTW3)
+               SET(FFTW3 /usr)
+               SET(FFTW3_INC ${FFTW3}/include)
+               SET(FFTW3_LIB fftw3)
+               SET(FFTW3_LIBPATH ${FFTW3}/lib)
+       ENDIF(WITH_FFTW3)
 
-  SET(LIBSAMPLERATE /usr)
-  SET(LIBSAMPLERATE_INC ${LIBSAMPLERATE}/include)
-  SET(LIBSAMPLERATE_LIB samplerate)
-  SET(LIBSAMPLERATE_LIBPATH ${LIBSAMPLERATE}/lib)
+       SET(LIBSAMPLERATE /usr)
+       SET(LIBSAMPLERATE_INC ${LIBSAMPLERATE}/include)
+       SET(LIBSAMPLERATE_LIB samplerate)
+       SET(LIBSAMPLERATE_LIBPATH ${LIBSAMPLERATE}/lib)
 
-  FIND_PACKAGE(JPEG REQUIRED)
+       FIND_PACKAGE(JPEG REQUIRED)
 
-  FIND_PACKAGE(PNG REQUIRED)
+       FIND_PACKAGE(PNG REQUIRED)
 
-  FIND_PACKAGE(ZLIB REQUIRED)
+       FIND_PACKAGE(ZLIB REQUIRED)
 
-  # Could use ${X11_Xinput_LIB} ${X11_X11_LIB} too
-  SET(LLIBS "-lXi -lutil -lc -lm -lpthread -lstdc++ -lX11")
+       # Could use ${X11_Xinput_LIB} ${X11_X11_LIB} too
+       SET(LLIBS "-lXi -lutil -lc -lm -lpthread -lstdc++ -lX11")
 
-  IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
-    # BSD's dont use libdl.so
-    SET(LLIBS "${LLIBS} -ldl")
-  ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
+       IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
+               # BSD's dont use libdl.so
+               SET(LLIBS "${LLIBS} -ldl")
+       ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
 
-  IF(WITH_OPENMP)
-    SET(LLIBS "${LLIBS} -lgomp")
-    SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fopenmp")
-    SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
-  ENDIF(WITH_OPENMP)
+       IF(WITH_OPENMP)
+               SET(LLIBS "${LLIBS} -lgomp")
+               SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fopenmp")
+               SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
+       ENDIF(WITH_OPENMP)
 
 
-  SET(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing -DXP_UNIX -Wno-char-subscripts")
+       SET(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing -DXP_UNIX -Wno-char-subscripts")
 
-  SET(PLATFORM_LINKFLAGS "-pthread")
+       SET(PLATFORM_LINKFLAGS "-pthread")
 
-  # Better warnings
-  SET(C_WARNINGS "-Wall -Wno-char-subscripts -Wpointer-arith -Wcast-align -Wnested-externs -Wdeclaration-after-statement")
-  SET(CXX_WARNINGS "-Wall -Wno-invalid-offsetof -Wno-sign-compare")
+       # Better warnings
+       SET(C_WARNINGS "-Wall -Wno-char-subscripts -Wpointer-arith -Wcast-align -Wdeclaration-after-statement")
+       SET(CXX_WARNINGS "-Wall -Wno-invalid-offsetof -Wno-sign-compare")
 
-  INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR} ${PNG_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR} )
+       INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR} ${PNG_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR} )
 ENDIF(UNIX AND NOT APPLE)
 
 IF(WIN32)
 
-  # this file is included anyway when building under Windows with cl.exe
-  #  INCLUDE(${CMAKE_ROOT}/Modules/Platform/Windows-cl.cmake)
+       # this file is included anyway when building under Windows with cl.exe
+       #  INCLUDE(${CMAKE_ROOT}/Modules/Platform/Windows-cl.cmake)
   
-  SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/windows)
-
-  # Setup 64bit and 64bit windows systems
-  IF(CMAKE_CL_64)
-    message("64 bit compiler detected.")
-    SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/win64)
-  ENDIF(CMAKE_CL_64)
-
-  SET(PYTHON ${LIBDIR}/python)
-  SET(PYTHON_VERSION 3.1)
-  SET(PYTHON_INC "${PYTHON}/include/python${PYTHON_VERSION}")
-  # SET(PYTHON_BINARY python) # not used yet
-  SET(PYTHON_LIB python31)
-  SET(PYTHON_LIBPATH ${PYTHON}/lib)
-
-  IF(CMAKE_CL_64)
-    SET(WITH_OPENAL OFF)
-  ELSE(CMAKE_CL_64)
-    #SET(WITH_OPENAL ON)
-    SET(OPENAL ${LIBDIR}/openal)
-    SET(OPENAL_INCLUDE_DIR ${OPENAL}/include)
-    SET(OPENAL_LIBRARY wrap_oal)
-    SET(OPENAL_LIBPATH ${OPENAL}/lib)
-  ENDIF(CMAKE_CL_64)
-
-  IF(WITH_JACK)
-    SET(JACK ${LIBDIR}/jack)
-    SET(JACK_INC ${JACK}/include/jack)
-    SET(JACK_LIB jack)
-    SET(JACK_LIBPATH ${JACK}/lib)
-  ENDIF(WITH_JACK)
-
-  IF(CMAKE_CL_64)
-    SET(PNG_LIBRARIES libpng)
-  ELSE(CMAKE_CL_64)
-    SET(PNG_LIBRARIES libpng_st)
-  ENDIF(CMAKE_CL_64)
-  SET(JPEG_LIBRARY libjpeg)
-
-  SET(ZLIB ${LIBDIR}/zlib)
-  SET(ZLIB_INC ${ZLIB}/include)
-  SET(ZLIB_LIBRARIES zlib)
-  SET(ZLIB_LIBPATH ${ZLIB}/lib)
+       SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/windows)
+
+       # Setup 64bit and 64bit windows systems
+       IF(CMAKE_CL_64)
+               message("64 bit compiler detected.")
+               SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/win64)
+       ENDIF(CMAKE_CL_64)
+
+       SET(PYTHON ${LIBDIR}/python)
+       SET(PYTHON_VERSION 3.1)
+       SET(PYTHON_INC "${PYTHON}/include/python${PYTHON_VERSION}")
+       # SET(PYTHON_BINARY python) # not used yet
+       SET(PYTHON_LIB python31)
+       SET(PYTHON_LIBPATH ${PYTHON}/lib)
+
+       IF(CMAKE_CL_64)
+               SET(WITH_OPENAL OFF)
+       ELSE(CMAKE_CL_64)
+               #SET(WITH_OPENAL ON)
+               SET(OPENAL ${LIBDIR}/openal)
+               SET(OPENAL_INCLUDE_DIR ${OPENAL}/include)
+               SET(OPENAL_LIBRARY wrap_oal)
+               SET(OPENAL_LIBPATH ${OPENAL}/lib)
+       ENDIF(CMAKE_CL_64)
+
+       IF(WITH_JACK)
+               SET(JACK ${LIBDIR}/jack)
+               SET(JACK_INC ${JACK}/include/jack ${JACK}/include)
+               SET(JACK_LIB libjack)
+               SET(JACK_LIBPATH ${JACK}/lib)
+       ENDIF(WITH_JACK)
+
+       IF(WITH_SNDFILE)
+               SET(SNDFILE ${LIBDIR}/sndfile)
+               SET(SNDFILE_INC ${SNDFILE}/include)
+               SET(SNDFILE_LIB libsndfile-1)
+               SET(SNDFILE_LIBPATH ${SNDFILE}/lib)
+       ENDIF(WITH_SNDFILE)
+
+       IF(CMAKE_CL_64)
+               SET(PNG_LIBRARIES libpng)
+       ELSE(CMAKE_CL_64)
+               SET(PNG_LIBRARIES libpng_st)
+       ENDIF(CMAKE_CL_64)
+       SET(JPEG_LIBRARY libjpeg)
+
+       SET(ZLIB ${LIBDIR}/zlib)
+       SET(ZLIB_INC ${ZLIB}/include)
+       IF(CMAKE_CL_64)
+               SET(ZLIB_LIBRARIES libz)
+       ELSE(CMAKE_CL_64)
+               SET(ZLIB_LIBRARIES zlib)
+       ENDIF(CMAKE_CL_64)
+       SET(ZLIB_LIBPATH ${ZLIB}/lib)
   
-  SET(PTHREADS ${LIBDIR}/pthreads)
-  SET(PTHREADS_INC ${PTHREADS}/include)
-  SET(PTHREADS_LIB pthreadVC2)
-  SET(PTHREADS_LIBPATH ${PTHREADS}/lib)
+       SET(PTHREADS ${LIBDIR}/pthreads)
+       SET(PTHREADS_INC ${PTHREADS}/include)
+       SET(PTHREADS_LIB pthreadVC2)
+       SET(PTHREADS_LIBPATH ${PTHREADS}/lib)
   
-  SET(ICONV ${LIBDIR}/iconv)
-  SET(ICONV_INC ${ICONV}/include)
-  SET(ICONV_LIB iconv)
-  SET(ICONV_LIBPATH ${ICONV}/lib)
+       SET(ICONV ${LIBDIR}/iconv)
+       SET(ICONV_INC ${ICONV}/include)
+       SET(ICONV_LIB iconv)
+       SET(ICONV_LIBPATH ${ICONV}/lib)
   
-  IF(WITH_FFTW3)
-    SET(FFTW3 ${LIBDIR}/fftw3)
-    SET(FFTW3_INC ${FFTW3}/include)
-    SET(FFTW3_LIB libfftw)
-    SET(FFTW3_LIBPATH ${FFTW3}/lib)
-  ENDIF(WITH_FFTW3)
+       IF(WITH_FFTW3)
+               SET(FFTW3 ${LIBDIR}/fftw3)
+               SET(FFTW3_INC ${FFTW3}/include)
+               SET(FFTW3_LIB libfftw)
+               SET(FFTW3_LIBPATH ${FFTW3}/lib)
+       ENDIF(WITH_FFTW3)
   
-  SET(GETTEXT ${LIBDIR}/gettext)
-  SET(GETTEXT_INC ${GETTEXT}/include)
-  IF(CMAKE_CL_64)
-    SET(GETTEXT_LIB gettextlib)
-  ELSE(CMAKE_CL_64)
-    SET(GETTEXT_LIB gnu_gettext)
-  ENDIF(CMAKE_CL_64)
-  SET(GETTEXT_LIBPATH ${GETTEXT}/lib)
-
-  SET(FREETYPE ${LIBDIR}/freetype)
-  SET(FREETYPE_INCLUDE_DIRS ${FREETYPE}/include ${FREETYPE}/include/freetype2)
-  SET(FREETYPE_LIBPATH ${FREETYPE}/lib)
-  SET(FREETYPE_LIBRARY freetype2ST)
+       SET(GETTEXT ${LIBDIR}/gettext)
+       SET(GETTEXT_INC ${GETTEXT}/include)
+       IF(CMAKE_CL_64)
+               SET(GETTEXT_LIB gettext)
+       ELSE(CMAKE_CL_64)
+               SET(GETTEXT_LIB gnu_gettext)
+       ENDIF(CMAKE_CL_64)
+       SET(GETTEXT_LIBPATH ${GETTEXT}/lib)
+
+       SET(FREETYPE ${LIBDIR}/freetype)
+       SET(FREETYPE_INCLUDE_DIRS ${FREETYPE}/include ${FREETYPE}/include/freetype2)
+       SET(FREETYPE_LIBPATH ${FREETYPE}/lib)
+       SET(FREETYPE_LIBRARY freetype2ST)
   
-  SET(OPENEXR ${LIBDIR}/openexr)
-  SET(OPENEXR_INC ${OPENEXR}/include ${OPENEXR}/include/IlmImf ${OPENEXR}/include/Iex ${OPENEXR}/include/Imath)
-  SET(OPENEXR_LIB Iex Half IlmImf Imath IlmThread)
-  IF (MSVC80)
-    SET(OPENEXR_LIBPATH ${OPENEXR}/lib_vs2005)
-  ELSE (MSVC80)
-    SET(OPENEXR_LIBPATH ${OPENEXR}/lib_msvc)
-  ENDIF(MSVC80)
-  IF (MSVC90)
-    SET(OPENEXR_LIBPATH ${OPENEXR}/lib_vs2008)
-  ENDIF(MSVC90)
+       SET(OPENEXR ${LIBDIR}/openexr)
+       SET(OPENEXR_INC ${OPENEXR}/include ${OPENEXR}/include/IlmImf ${OPENEXR}/include/Iex ${OPENEXR}/include/Imath)
+       SET(OPENEXR_LIB Iex Half IlmImf Imath IlmThread)
+       IF (MSVC80)
+               SET(OPENEXR_LIBPATH ${OPENEXR}/lib_vs2005)
+       ELSE (MSVC80)
+               SET(OPENEXR_LIBPATH ${OPENEXR}/lib_msvc)
+       ENDIF(MSVC80)
+       IF (MSVC90)
+               SET(OPENEXR_LIBPATH ${OPENEXR}/lib_vs2008)
+       ENDIF(MSVC90)
 
   
-  SET(QUICKTIME ${LIBDIR}/QTDevWin)
-  SET(QUICKTIME_INC ${QUICKTIME}/CIncludes)
-  SET(QUICKTIME_LIB qtmlClient)
-  SET(QUICKTIME_LIBPATH ${QUICKTIME}/Libraries)
-
-  SET(FFMPEG ${LIBDIR}/ffmpeg)
-  SET(FFMPEG_INC ${FFMPEG}/include)
-  SET(FFMPEG_LIB avcodec-52 avformat-52 avdevice-52 avutil-50 swscale-0)
-  SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
-
-  SET(LIBSAMPLERATE ${LIBDIR}/samplerate)
-  SET(LIBSAMPLERATE_INC ${LIBSAMPLERATE}/include)
-  SET(LIBSAMPLERATE_LIB libsamplerate)
-  SET(LIBSAMPLERATE_LIBPATH ${LIBSAMPLERATE}/lib)
-
-  IF(CMAKE_CL_64)
-    SET(LLIBS kernel32 user32 vfw32 winmm ws2_32 )
-  ELSE(CMAKE_CL_64)
-    SET(LLIBS kernel32 user32 gdi32 comdlg32 advapi32 shell32 ole32 oleaut32 uuid ws2_32 vfw32 winmm)
-  ENDIF(CMAKE_CL_64)
-
-  SET(CMAKE_CXX_FLAGS_DEBUG "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /ZI /J" CACHE STRING "MSVC MT flags " FORCE)
-  SET(CMAKE_CXX_FLAGS_RELEASE "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O2 /Ob2 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
-  SET(CMAKE_CXX_FLAGS_MINSIZEREL "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O1 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
-  SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O2 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
-  SET(CMAKE_C_FLAGS_DEBUG "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /ZI /J" CACHE STRING "MSVC MT flags " FORCE)
-  SET(CMAKE_C_FLAGS_RELEASE "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O2 /Ob2 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
-  SET(CMAKE_C_FLAGS_MINSIZEREL "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O1 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
-  SET(CMAKE_C_FLAGS_RELWITHDEBINFO "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O2 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
-
-  IF(WITH_OPENMP)
-    SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /openmp ")
-    SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /openmp ")
-  ENDIF(WITH_OPENMP)
-
-  SET(SDL ${LIBDIR}/sdl)
-  SET(SDL_INCLUDE_DIR ${SDL}/include)
-  SET(SDL_LIBRARY SDL)
-  SET(SDL_LIBPATH ${SDL}/lib)
-
-  SET(PNG "${LIBDIR}/png")
-  SET(PNG_INC "${PNG}/include")
-  SET(PNG_LIBPATH ${PNG}/lib)
-
-  SET(JPEG "${LIBDIR}/jpeg")
-  SET(JPEG_INC "${JPEG}/include")
-  SET(JPEG_LIBPATH ${JPEG}/lib)
-
-  SET(TIFF ${LIBDIR}/tiff)
-  SET(TIFF_INC ${TIFF}/include)
+       SET(QUICKTIME ${LIBDIR}/QTDevWin)
+       SET(QUICKTIME_INC ${QUICKTIME}/CIncludes)
+       SET(QUICKTIME_LIB qtmlClient)
+       SET(QUICKTIME_LIBPATH ${QUICKTIME}/Libraries)
+
+       SET(FFMPEG ${LIBDIR}/ffmpeg)
+       SET(FFMPEG_INC ${FFMPEG}/include ${FFMPEG}/include/msvc)
+       SET(FFMPEG_LIB avcodec-52 avformat-52 avdevice-52 avutil-50 swscale-0)
+       SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
+
+       SET(LIBSAMPLERATE ${LIBDIR}/samplerate)
+       SET(LIBSAMPLERATE_INC ${LIBSAMPLERATE}/include)
+       SET(LIBSAMPLERATE_LIB libsamplerate)
+       SET(LIBSAMPLERATE_LIBPATH ${LIBSAMPLERATE}/lib)
+
+       IF(CMAKE_CL_64)
+               SET(LLIBS kernel32 user32 vfw32 winmm ws2_32 )
+       ELSE(CMAKE_CL_64)
+               SET(LLIBS kernel32 user32 gdi32 comdlg32 advapi32 shell32 ole32 oleaut32 uuid ws2_32 vfw32 winmm)
+       ENDIF(CMAKE_CL_64)
+
+       SET(CMAKE_CXX_FLAGS_DEBUG "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /ZI /J" CACHE STRING "MSVC MT flags " FORCE)
+       SET(CMAKE_CXX_FLAGS_RELEASE "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O2 /Ob2 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
+       SET(CMAKE_CXX_FLAGS_MINSIZEREL "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O1 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
+       SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O2 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
+       SET(CMAKE_C_FLAGS_DEBUG "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /ZI /J" CACHE STRING "MSVC MT flags " FORCE)
+       SET(CMAKE_C_FLAGS_RELEASE "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O2 /Ob2 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
+       SET(CMAKE_C_FLAGS_MINSIZEREL "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O1 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /J" CACHE STRING "MSVC MT flags " FORCE)
+       SET(CMAKE_C_FLAGS_RELWITHDEBINFO "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /wd4800 /wd4244 /wd4305 /O2 /Ob1 /DNDEBUG /EHsc /MT /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
+
+       IF(WITH_OPENMP)
+               SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /openmp ")
+               SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /openmp ")
+       ENDIF(WITH_OPENMP)
+
+       SET(SDL ${LIBDIR}/sdl)
+       SET(SDL_INCLUDE_DIR ${SDL}/include)
+       SET(SDL_LIBRARY SDL)
+       SET(SDL_LIBPATH ${SDL}/lib)
+
+       SET(PNG "${LIBDIR}/png")
+       SET(PNG_INC "${PNG}/include")
+       SET(PNG_LIBPATH ${PNG}/lib)
+
+       SET(JPEG "${LIBDIR}/jpeg")
+       SET(JPEG_INC "${JPEG}/include")
+       SET(JPEG_LIBPATH ${JPEG}/lib)
+
+       SET(TIFF ${LIBDIR}/tiff)
+       SET(TIFF_INC ${TIFF}/include)
   
-  SET(WINTAB_INC ${LIBDIR}/wintab/include) 
+       SET(WINTAB_INC ${LIBDIR}/wintab/include) 
 
-  IF(CMAKE_CL_64)
-    SET(PLATFORM_LINKFLAGS "/MANIFEST:NO /MANIFESTUAC:NO /MACHINE:X64 /NODEFAULTLIB:libc.lib;MSVCRT.lib ")
-  ELSE(CMAKE_CL_64)
-    SET(PLATFORM_LINKFLAGS "/NODEFAULTLIB:libc.lib ")
-  ENDIF(CMAKE_CL_64)
+       IF(CMAKE_CL_64)
+               SET(PLATFORM_LINKFLAGS "/MACHINE:X64 /NODEFAULTLIB:libc.lib;MSVCRT.lib ")
+       ELSE(CMAKE_CL_64)
+               SET(PLATFORM_LINKFLAGS "/NODEFAULTLIB:libc.lib ")
+       ENDIF(CMAKE_CL_64)
   
-  SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:libcmt.lib;libc.lib ")
+       SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:libcmt.lib;libc.lib ")
 ENDIF(WIN32)
 
 IF(APPLE)
-  IF(CMAKE_OSX_ARCHITECTURES MATCHES i386)
-    SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/darwin-8.x.i386)
-  ELSE(CMAKE_OSX_ARCHITECTURES MATCHES i386)
-    SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/darwin-6.1-powerpc)
-  ENDIF(CMAKE_OSX_ARCHITECTURES MATCHES i386)
-
-  IF(WITH_OPENAL)
-    FIND_PACKAGE(OpenAL)
-    IF(OPENAL_FOUND)
-      SET(WITH_OPENAL ON)
-    ELSE(OPENAL_FOUND)
-      SET(WITH_OPENAL OFF)
-    ENDIF(OPENAL_FOUND)
-  ENDIF(WITH_OPENAL)
-
-  IF(WITH_JACK)
-    SET(JACK /usr)
-    SET(JACK_INC ${JACK}/include/jack)
-    SET(JACK_LIB jack)
-    SET(JACK_LIBPATH ${JACK}/lib)
-  ENDIF(WITH_JACK)
-
-  SET(PYTHON_VERSION 3.1)
-
-  IF(PYTHON_VERSION MATCHES 3.1)
-    # we use precompiled libraries for py 3.1 and up by default
-
-    SET(PYTHON ${LIBDIR}/python)
-    SET(PYTHON_INC "${PYTHON}/include/python${PYTHON_VERSION}" CACHE STRING "")
-    # SET(PYTHON_BINARY "${PYTHON}/bin/python${PYTHON_VERSION}" CACHE STRING "") # not used yet
-    SET(PYTHON_LIB python${PYTHON_VERSION})
-    SET(PYTHON_LIBPATH "${PYTHON}/lib/python${PYTHON_VERSION}" CACHE STRING "")
-    #    SET(PYTHON_LINKFLAGS "-u _PyMac_Error")  # won't  build with this enabled
-  ELSE(PYTHON_VERSION MATCHES 3.1)
-    # otherwise, use custom system framework
-
-    SET(PYTHON /System/Library/Frameworks/Python.framework/Versions/)
-    SET(PYTHON_VERSION 2.5)
-    SET(PYTHON_INC "${PYTHON}${PYTHON_VERSION}/include/python${PYTHON_VERSION}" CACHE STRING "")
-    # SET(PYTHON_BINARY ${PYTHON}${PYTHON_VERSION}/bin/python${PYTHON_VERSION} CACHE STRING "") # not used yet
-    SET(PYTHON_LIB "")
-    SET(PYTHON_LIBPATH ${PYTHON}${PYTHON_VERSION}/lib/python${PYTHON_VERSION}/config CACHE STRING "")
-    SET(PYTHON_LINKFLAGS "-u _PyMac_Error -framework System -framework Python")
-  ENDIF(PYTHON_VERSION MATCHES 3.1)
-
-  SET(GETTEXT ${LIBDIR}/gettext)
-  SET(GETTEXT_INC "${GETTEXT}/include")
-  SET(GETTEXT_LIB intl iconv)
-  SET(GETTEXT_LIBPATH ${GETTEXT}/lib)
+       IF(CMAKE_OSX_ARCHITECTURES MATCHES i386)
+               SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/darwin-8.x.i386)
+       ELSE(CMAKE_OSX_ARCHITECTURES MATCHES i386)
+               SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/darwin-6.1-powerpc)
+       ENDIF(CMAKE_OSX_ARCHITECTURES MATCHES i386)
+
+       IF(WITH_OPENAL)
+               FIND_PACKAGE(OpenAL)
+               IF(OPENAL_FOUND)
+                       SET(WITH_OPENAL ON)
+               ELSE(OPENAL_FOUND)
+                       SET(WITH_OPENAL OFF)
+               ENDIF(OPENAL_FOUND)
+       ENDIF(WITH_OPENAL)
+
+       IF(WITH_JACK)
+               SET(JACK /usr)
+               SET(JACK_INC ${JACK}/include/jack)
+               SET(JACK_LIB jack)
+               SET(JACK_LIBPATH ${JACK}/lib)
+       ENDIF(WITH_JACK)
+
+       IF(WITH_SNDFILE)
+               SET(SNDFILE ${LIBDIR}/sndfile)
+               SET(SNDFILE_INC ${SNDFILE}/include)
+               SET(SNDFILE_LIB sndfile)
+               SET(SNDFILE_LIBPATH ${SNDFILE}/lib)
+       ENDIF(WITH_SNDFILE)
+
+       SET(PYTHON_VERSION 3.1)
+
+       IF(PYTHON_VERSION MATCHES 3.1)
+               # we use precompiled libraries for py 3.1 and up by default
+
+               SET(PYTHON ${LIBDIR}/python)
+               SET(PYTHON_INC "${PYTHON}/include/python${PYTHON_VERSION}" CACHE STRING "")
+               # SET(PYTHON_BINARY "${PYTHON}/bin/python${PYTHON_VERSION}" CACHE STRING "") # not used yet
+               SET(PYTHON_LIB python${PYTHON_VERSION})
+               SET(PYTHON_LIBPATH "${PYTHON}/lib/python${PYTHON_VERSION}" CACHE STRING "")
+               #    SET(PYTHON_LINKFLAGS "-u _PyMac_Error")  # won't  build with this enabled
+       ELSE(PYTHON_VERSION MATCHES 3.1)
+               # otherwise, use custom system framework
+
+               SET(PYTHON /System/Library/Frameworks/Python.framework/Versions/)
+               SET(PYTHON_VERSION 2.5)
+               SET(PYTHON_INC "${PYTHON}${PYTHON_VERSION}/include/python${PYTHON_VERSION}" CACHE STRING "")
+               # SET(PYTHON_BINARY ${PYTHON}${PYTHON_VERSION}/bin/python${PYTHON_VERSION} CACHE STRING "") # not used yet
+               SET(PYTHON_LIB "")
+               SET(PYTHON_LIBPATH ${PYTHON}${PYTHON_VERSION}/lib/python${PYTHON_VERSION}/config CACHE STRING "")
+               SET(PYTHON_LINKFLAGS "-u _PyMac_Error -framework System -framework Python")
+       ENDIF(PYTHON_VERSION MATCHES 3.1)
+
+       SET(GETTEXT ${LIBDIR}/gettext)
+       SET(GETTEXT_INC "${GETTEXT}/include")
+       SET(GETTEXT_LIB intl iconv)
+       SET(GETTEXT_LIBPATH ${GETTEXT}/lib)
   
-  IF(WITH_FFTW3)
-    SET(FFTW3 ${LIBDIR}/fftw3)
-    SET(FFTW3_INC ${FFTW3}/include)
-    SET(FFTW3_LIB libfftw)
-    SET(FFTW3_LIBPATH ${FFTW3}/lib)
-  ENDIF(WITH_FFTW3)
-
-  SET(PNG_LIBRARIES png)
-  SET(JPEG_LIBRARY jpeg)
-
-  SET(ZLIB /usr)
-  SET(ZLIB_INC "${ZLIB}/include")
-  SET(ZLIB_LIBRARIES z)
-
-  SET(FREETYPE ${LIBDIR}/freetype)
-  SET(FREETYPE_INCLUDE_DIRS ${FREETYPE}/include ${FREETYPE}/include/freetype2)
-  SET(FREETYPE_LIBPATH ${FREETYPE}/lib)
-  SET(FREETYPE_LIBRARY freetype)
-
-  SET(OPENEXR ${LIBDIR}/openexr)
-  SET(OPENEXR_INC ${OPENEXR}/include/OpenEXR ${OPENEXR}/include)
-  SET(OPENEXR_LIB Iex Half IlmImf Imath IlmThread)
-  SET(OPENEXR_LIBPATH ${OPENEXR}/lib)
-
-  SET(FFMPEG ${LIBDIR}/ffmpeg)
-  SET(FFMPEG_INC ${CMAKE_SOURCE_DIR}/extern/ffmpeg)
-  SET(FFMPEG_LIB avcodec avdevice avformat avutil mp3lame swscale x264 xvidcore)
-  SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
-
-  SET(LIBSAMPLERATE ${LIBDIR}/samplerate)
-  SET(LIBSAMPLERATE_INC ${LIBSAMPLERATE}/include)
-  SET(LIBSAMPLERATE_LIB samplerate)
-  SET(LIBSAMPLERATE_LIBPATH ${LIBSAMPLERATE}/lib)
-
-  SET(LLIBS stdc++ SystemStubs)
-
-  SET(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
-  SET(PLATFORM_LINKFLAGS "-fexceptions -framework CoreServices -framework Foundation -framework IOKit -framework AppKit -framework Carbon -framework AGL -framework AudioUnit -framework AudioToolbox -framework CoreAudio -framework QuickTime")
-
-  IF(WITH_OPENMP)
-    SET(LLIBS "${LLIBS} -lgomp ")
-    SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fopenmp ")
-    SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp ")
-  ENDIF(WITH_OPENMP)
-
-  SET(SDL ${LIBDIR}/sdl)
-  SET(SDL_INCLUDE_DIR ${SDL}/include)
-  SET(SDL_LIBRARY SDL)
-  SET(SDL_LIBPATH ${SDL}/lib)
-
-  SET(PNG "${LIBDIR}/png")
-  SET(PNG_INC "${PNG}/include")
-  SET(PNG_LIBPATH ${PNG}/lib)
-
-  SET(JPEG "${LIBDIR}/jpeg")
-  SET(JPEG_INC "${JPEG}/include")
-  SET(JPEG_LIBPATH ${JPEG}/lib)
-
-  SET(TIFF ${LIBDIR}/tiff)
-  SET(TIFF_INC ${TIFF}/include)
-
-  SET(EXETYPE MACOSX_BUNDLE)
+       IF(WITH_FFTW3)
+               SET(FFTW3 ${LIBDIR}/fftw3)
+               SET(FFTW3_INC ${FFTW3}/include)
+               SET(FFTW3_LIB libfftw)
+               SET(FFTW3_LIBPATH ${FFTW3}/lib)
+       ENDIF(WITH_FFTW3)
+
+       SET(PNG_LIBRARIES png)
+       SET(JPEG_LIBRARY jpeg)
+
+       SET(ZLIB /usr)
+       SET(ZLIB_INC "${ZLIB}/include")
+       SET(ZLIB_LIBRARIES z)
+
+       SET(FREETYPE ${LIBDIR}/freetype)
+       SET(FREETYPE_INCLUDE_DIRS ${FREETYPE}/include ${FREETYPE}/include/freetype2)
+       SET(FREETYPE_LIBPATH ${FREETYPE}/lib)
+       SET(FREETYPE_LIBRARY freetype)
+
+       SET(OPENEXR ${LIBDIR}/openexr)
+       SET(OPENEXR_INC ${OPENEXR}/include/OpenEXR ${OPENEXR}/include)
+       SET(OPENEXR_LIB Iex Half IlmImf Imath IlmThread)
+       SET(OPENEXR_LIBPATH ${OPENEXR}/lib)
+
+       SET(FFMPEG ${LIBDIR}/ffmpeg)
+       SET(FFMPEG_INC ${CMAKE_SOURCE_DIR}/extern/ffmpeg)
+       SET(FFMPEG_LIB avcodec avdevice avformat avutil mp3lame swscale x264 xvidcore)
+       SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
+
+       SET(LIBSAMPLERATE ${LIBDIR}/samplerate)
+       SET(LIBSAMPLERATE_INC ${LIBSAMPLERATE}/include)
+       SET(LIBSAMPLERATE_LIB samplerate)
+       SET(LIBSAMPLERATE_LIBPATH ${LIBSAMPLERATE}/lib)
+
+       SET(LLIBS stdc++ SystemStubs)
+
+       SET(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
+       SET(PLATFORM_LINKFLAGS "-fexceptions -framework CoreServices -framework Foundation -framework IOKit -framework AppKit -framework Carbon -framework AGL -framework AudioUnit -framework AudioToolbox -framework CoreAudio -framework QuickTime")
+
+       IF(WITH_OPENMP)
+               SET(LLIBS "${LLIBS} -lgomp ")
+               SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fopenmp ")
+               SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp ")
+       ENDIF(WITH_OPENMP)
+
+       SET(SDL ${LIBDIR}/sdl)
+       SET(SDL_INCLUDE_DIR ${SDL}/include)
+       SET(SDL_LIBRARY SDL)
+       SET(SDL_LIBPATH ${SDL}/lib)
+
+       SET(PNG "${LIBDIR}/png")
+       SET(PNG_INC "${PNG}/include")
+       SET(PNG_LIBPATH ${PNG}/lib)
+
+       SET(JPEG "${LIBDIR}/jpeg")
+       SET(JPEG_INC "${JPEG}/include")
+       SET(JPEG_LIBPATH ${JPEG}/lib)
+
+       SET(TIFF ${LIBDIR}/tiff)
+       SET(TIFF_INC ${TIFF}/include)
+
+       SET(EXETYPE MACOSX_BUNDLE)
 ENDIF(APPLE)
 
 IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
-  SET(BINRELOC ${CMAKE_SOURCE_DIR}/extern/binreloc)
-  SET(BINRELOC_INC ${BINRELOC}/include)
+       SET(BINRELOC ${CMAKE_SOURCE_DIR}/extern/binreloc)
+       SET(BINRELOC_INC ${BINRELOC}/include)
 ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
 
+
+# TODO - buildinfo
+# IF(UNIX)
+#   IF(WITH_BUILDINFO)
+#     EXEC_PROGRAM("date \"+%Y-%m-%d\"" OUTPUT_VARIABLE BUILD_DATE)
+#     EXEC_PROGRAM("date \"+%H:%M:%S\"" OUTPUT_VARIABLE BUILD_TIME)  
+#     EXEC_PROGRAM("svnversion ${CMAKE_SOURCE_DIR}" OUTPUT_VARIABLE BUILD_REV)
+#     SET(BUILD_TYPE ${CMAKE_BUILD_TYPE})
+#   ENDIF(WITH_BUILDINFO)
+# ENDIF(UNIX)
+
 #-----------------------------------------------------------------------------
 # Common.
 
@@ -496,10 +538,10 @@ set(OPENJPEG_LIb extern_libopenjpeg)
 # Blender WebPlugin
 
 IF(WITH_WEBPLUGIN) 
-  SET(GECKO_DIR "${CMAKE_SOURCE_DIR}/../gecko-sdk/" CACHE PATH "Gecko SDK path")
-  SET(WEBPLUGIN_SANDBOX_MODE "apparmor" CACHE STRING "WEB Plugin sandbox mode, can be apparmor, privsep, none")
+       SET(GECKO_DIR "${CMAKE_SOURCE_DIR}/../gecko-sdk/" CACHE PATH "Gecko SDK path")
+       SET(WEBPLUGIN_SANDBOX_MODE "apparmor" CACHE STRING "WEB Plugin sandbox mode, can be apparmor, privsep, none")
 
-  SET(WITH_PLAYER ON)
+       SET(WITH_PLAYER ON)
 ENDIF(WITH_WEBPLUGIN)
 
 
@@ -517,7 +559,7 @@ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${PLATFORM_CFLAGS} ${CXX_WARNINGS}")
 
 # better not define flags here but this is a debugging option thats off by default.
 IF(WITH_CXX_GUARDEDALLOC)
-  SET(CMAKE_CXX_FLAGS " -DWITH_CXX_GUARDEDALLOC -I${CMAKE_SOURCE_DIR}/intern/guardedalloc ${CMAKE_CXX_FLAGS}")
+       SET(CMAKE_CXX_FLAGS " -DWITH_CXX_GUARDEDALLOC -I${CMAKE_SOURCE_DIR}/intern/guardedalloc ${CMAKE_CXX_FLAGS}")
 ENDIF(WITH_CXX_GUARDEDALLOC)
 
 #-----------------------------------------------------------------------------
@@ -536,6 +578,6 @@ ADD_SUBDIRECTORY(source/creator)
 #-----------------------------------------------------------------------------
 # Blender Player
 IF(WITH_PLAYER)
-  ADD_SUBDIRECTORY(blenderplayer)
+       ADD_SUBDIRECTORY(source/blenderplayer)
 ENDIF(WITH_PLAYER)
 
index a96cfc0..402bf18 100644 (file)
@@ -186,6 +186,15 @@ if not env['BF_FANCY']:
 SetOption('num_jobs', int(env['BF_NUMJOBS']))
 print "Build with %d parallel jobs" % (GetOption('num_jobs'))
 
+# BLENDERPATH is a unix only option to enable typical style paths this is
+# spesifically a data-dir, which is used a lot but cant replace BF_INSTALLDIR
+# because the blender binary is installed in $BF_INSTALLDIR/bin/blender
+
+if env['WITH_BF_FHS']:
+       BLENDERPATH = os.path.join(env['BF_INSTALLDIR'], 'share', 'blender', env['BF_VERSION'])
+else:
+       BLENDERPATH = env['BF_INSTALLDIR']
+
 # disable elbeem (fluidsim) compilation?
 if env['BF_NO_ELBEEM'] == 1:
        env['CPPFLAGS'].append('-DDISABLE_ELBEEM')
@@ -198,7 +207,7 @@ if env['WITH_BF_OPENMP'] == 1:
                                env['CPPFLAGS'].append('/openmp')
                                env['CXXFLAGS'].append('/openmp')
                else:
-                       if env['CC'][-3:] == 'icc': # to be able to handle CC=/opt/bla/icc case
+                       if env['CC'].endswith('icc'): # to be able to handle CC=/opt/bla/icc case
                                env.Append(LINKFLAGS=['-openmp', '-static-intel'])
                                env['CCFLAGS'].append('-openmp')
                                env['CPPFLAGS'].append('-openmp')
@@ -207,7 +216,6 @@ if env['WITH_BF_OPENMP'] == 1:
                                env.Append(CCFLAGS=['-fopenmp']) 
                                env.Append(CPPFLAGS=['-fopenmp'])
                                env.Append(CXXFLAGS=['-fopenmp'])
-                               # env.Append(LINKFLAGS=['-fprofile-generate'])
 
 #check for additional debug libnames
 
@@ -301,9 +309,8 @@ if env['WITH_BF_SDL'] == False and env['OURPLATFORM'] in ('win32-vc', 'win32-min
        env['PLATFORM_LINKFLAGS'].append('/ENTRY:main')
 
 # lastly we check for root_build_dir ( we should not do before, otherwise we might do wrong builddir
-#B.root_build_dir = B.arguments.get('BF_BUILDDIR', '..'+os.sep+'build'+os.sep+platform+os.sep)
 B.root_build_dir = env['BF_BUILDDIR']
-B.doc_build_dir = env['BF_DOCDIR']
+B.doc_build_dir = os.path.join(BLENDERPATH, 'doc')
 if not B.root_build_dir[-1]==os.sep:
        B.root_build_dir += os.sep
 if not B.doc_build_dir[-1]==os.sep:
@@ -392,7 +399,7 @@ SConscript(B.root_build_dir+'/source/SConscript')
 # libraries to give as objects to linking phase
 mainlist = []
 for tp in B.possible_types:
-       if not tp == 'player' and not tp == 'player2':
+       if not tp == 'player':
                mainlist += B.create_blender_liblist(env, tp)
 
 if B.arguments.get('BF_PRIORITYLIST', '0')=='1':
@@ -402,15 +409,12 @@ dobj = B.buildinfo(env, "dynamic") + B.resources
 thestatlibs, thelibincs = B.setup_staticlibs(env)
 thesyslibs = B.setup_syslibs(env)
 
-if env['WITH_BF_PLAYER']:
-       print("Warning: Game player may not build on 2.5")
-
 if 'blender' in B.targets or not env['WITH_BF_NOBLENDER']:
-       #env.BlenderProg(B.root_build_dir, "blender", dobj , [], mainlist + thestatlibs + thesyslibs, [B.root_build_dir+'/lib'] + thelibincs, 'blender')
-       blen = env.BlenderProg(B.root_build_dir, "blender", dobj + mainlist, [], thestatlibs + thesyslibs, [B.root_build_dir+'/lib'] + thelibincs, 'blender')
-
+       env.BlenderProg(B.root_build_dir, "blender", dobj + mainlist, [], thestatlibs + thesyslibs, [B.root_build_dir+'/lib'] + thelibincs, 'blender')
 if env['WITH_BF_PLAYER']:
        playerlist = B.create_blender_liblist(env, 'player')
+       playerlist += B.create_blender_liblist(env, 'intern')
+       playerlist += B.create_blender_liblist(env, 'extern')
        env.BlenderProg(B.root_build_dir, "blenderplayer", dobj + playerlist, [], thestatlibs + thesyslibs, [B.root_build_dir+'/lib'] + thelibincs, 'blenderplayer')
 
 ##### Now define some targets
@@ -431,7 +435,10 @@ if  env['OURPLATFORM']=='darwin':
                        source=[dp+os.sep+f for f in df]
                        blenderinstall.append(env.Install(dir=dir,source=source))
 else:
-       blenderinstall = env.Install(dir=env['BF_INSTALLDIR'], source=B.program_list)
+       if env['WITH_BF_FHS']:  dir= os.path.join(env['BF_INSTALLDIR'], 'bin')
+       else:                                   dir= env['BF_INSTALLDIR']
+       
+       blenderinstall = env.Install(dir=dir, source=B.program_list)
 
 #-- .blender
 #- dont do .blender and scripts for darwin, it is already in the bundle
@@ -455,7 +462,13 @@ if  env['OURPLATFORM']!='darwin':
                                                continue
                                
                                dotblendlist.append(os.path.join(dp, f))
-                               dottargetlist.append(env['BF_INSTALLDIR']+dp[3:]+os.sep+f)
+                               if env['WITH_BF_FHS']:  dir= os.path.join(*([BLENDERPATH] + dp.split(os.sep)[2:]))      # skip bin/.blender
+                               else:                                   dir= os.path.join(*([BLENDERPATH] + dp.split(os.sep)[1:]))      # skip bin
+                               
+                               # print dir+ os.sep + f
+                               print dir
+                               dottargetlist.append(dir + os.sep + f)
+                                       
 
                dotblenderinstall = []
                for targetdir,srcfile in zip(dottargetlist, dotblendlist):
@@ -469,8 +482,12 @@ if  env['OURPLATFORM']!='darwin':
                                for dp, dn, df in os.walk(scriptpath):
                                        if '.svn' in dn:
                                                dn.remove('.svn')
-                                       dir=env['BF_INSTALLDIR']+'/.blender/'+os.path.basename(scriptpath)+dp[len(scriptpath):]
-                                       source=[dp+os.sep+f for f in df]
+                                       
+                                       if env['WITH_BF_FHS']:          dir = BLENDERPATH
+                                       else:                                           dir = os.path.join(env['BF_INSTALLDIR'], '.blender')                            
+                                       dir += os.sep + os.path.basename(scriptpath) + dp[len(scriptpath):]
+                                       
+                                       source=[os.path.join(dp, f) for f in df]
                                        scriptinstall.append(env.Install(dir=dir,source=source))
 
 #-- icons
@@ -482,8 +499,8 @@ if env['OURPLATFORM']=='linux2':
                if '.svn' in tn:
                        tn.remove('.svn')
                for f in tf:
-                       iconlist.append(tp+os.sep+f)
-                       icontargetlist.append(env['BF_INSTALLDIR']+tp[19:]+os.sep+f)
+                       iconlist.append(os.path.join(tp, f))
+                       icontargetlist.append( os.path.join(*([BLENDERPATH] + tp.split(os.sep)[2:] + [f])) )
 
        iconinstall = []
        for targetdir,srcfile in zip(icontargetlist, iconlist):
@@ -504,24 +521,25 @@ for tp, tn, tf in os.walk('release/plugins'):
        if '.svn' in tn:
                tn.remove('.svn')
        for f in tf:
-               pluglist.append(tp+os.sep+f)
-               plugtargetlist.append(env['BF_INSTALLDIR']+tp[7:]+os.sep+f)
+               pluglist.append(os.path.join(tp, f))
+               plugtargetlist.append( os.path.join(*([BLENDERPATH] + tp.split(os.sep)[1:] + [f])) )
+
 
 # header files for plugins
 pluglist.append('source/blender/blenpluginapi/documentation.h')
-plugtargetlist.append(env['BF_INSTALLDIR'] + os.sep + 'plugins' + os.sep + 'include' + os.sep +'documentation.h')
+plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'documentation.h'))
 pluglist.append('source/blender/blenpluginapi/externdef.h')
-plugtargetlist.append(env['BF_INSTALLDIR'] + os.sep + 'plugins' + os.sep + 'include' + os.sep +'externdef.h')
+plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'externdef.h'))
 pluglist.append('source/blender/blenpluginapi/floatpatch.h')
-plugtargetlist.append(env['BF_INSTALLDIR'] + os.sep + 'plugins' + os.sep + 'include' + os.sep +'floatpatch.h')
+plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'floatpatch.h'))
 pluglist.append('source/blender/blenpluginapi/iff.h')
-plugtargetlist.append(env['BF_INSTALLDIR'] + os.sep + 'plugins' + os.sep + 'include' + os.sep +'iff.h')
+plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'iff.h'))
 pluglist.append('source/blender/blenpluginapi/plugin.h')
-plugtargetlist.append(env['BF_INSTALLDIR'] + os.sep + 'plugins' + os.sep + 'include' + os.sep +'plugin.h')
+plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'plugin.h'))
 pluglist.append('source/blender/blenpluginapi/util.h')
-plugtargetlist.append(env['BF_INSTALLDIR'] + os.sep + 'plugins' + os.sep + 'include' + os.sep +'util.h')
+plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'util.h'))
 pluglist.append('source/blender/blenpluginapi/plugin.DEF')
-plugtargetlist.append(env['BF_INSTALLDIR'] + os.sep + 'plugins' + os.sep + 'include' + os.sep + 'plugin.def')
+plugtargetlist.append(os.path.join(BLENDERPATH, 'plugins', 'include', 'plugin.def'))
 
 plugininstall = []
 for targetdir,srcfile in zip(plugtargetlist, pluglist):
@@ -536,7 +554,7 @@ for tp, tn, tf in os.walk('release/text'):
        for f in tf:
                textlist.append(tp+os.sep+f)
 
-textinstall = env.Install(dir=env['BF_INSTALLDIR'], source=textlist)
+textinstall = env.Install(dir=BLENDERPATH, source=textlist)
 
 if  env['OURPLATFORM']=='darwin':
                allinstall = [blenderinstall, plugininstall, textinstall]
@@ -576,16 +594,13 @@ if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw', 'win64-vc'):
        if env['WITH_BF_OPENAL']:
                dllsources.append('${LCGDIR}/openal/lib/OpenAL32.dll')
                dllsources.append('${LCGDIR}/openal/lib/wrap_oal.dll')
+       if env['WITH_BF_SNDFILE']:
+               dllsources.append('${LCGDIR}/sndfile/lib/libsndfile-1.dll')
        if env['WITH_BF_FFMPEG']:
                dllsources += ['${LCGDIR}/ffmpeg/lib/avcodec-52.dll',
                                                '${LCGDIR}/ffmpeg/lib/avformat-52.dll',
                                                '${LCGDIR}/ffmpeg/lib/avdevice-52.dll',
                                                '${LCGDIR}/ffmpeg/lib/avutil-50.dll',
-                                               '${LCGDIR}/ffmpeg/lib/libfaad-2.dll',
-                                               '${LCGDIR}/ffmpeg/lib/libfaac-0.dll',
-                                               '${LCGDIR}/ffmpeg/lib/libmp3lame-0.dll',
-                                               '${LCGDIR}/ffmpeg/lib/libx264-67.dll',
-                                               '${LCGDIR}/ffmpeg/lib/xvidcore.dll',
                                                '${LCGDIR}/ffmpeg/lib/swscale-0.dll']
        if env['WITH_BF_JACK']:
                dllsources += ['${LCGDIR}/jack/lib/libjack.dll']
diff --git a/blenderplayer/CMakeLists.txt b/blenderplayer/CMakeLists.txt
deleted file mode 100644 (file)
index 77bc059..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-# $Id$
-# ***** BEGIN GPL LICENSE BLOCK *****
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software Foundation,
-# Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-# The Original Code is Copyright (C) 2006, Blender Foundation
-# All rights reserved.
-#
-# The Original Code is: all of this file.
-#
-# Contributor(s): Jacques Beaurain.
-#
-# ***** END GPL LICENSE BLOCK *****
-
-MESSAGE(STATUS "Configuring blenderplayer")
-
-SETUP_LIBDIRS()
-
-IF(WITH_QUICKTIME)
-  ADD_DEFINITIONS(-DWITH_QUICKTIME)
-ENDIF(WITH_QUICKTIME)
-
-IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
-  ADD_DEFINITIONS(-DWITH_BINRELOC)
-  INCLUDE_DIRECTORIES(${BINRELOC_INC})
-ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
-
-ADD_CUSTOM_COMMAND(
-  OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/dna.c
-  COMMAND ${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/makesdna ${CMAKE_CURRENT_BINARY_DIR}/dna.c ${CMAKE_SOURCE_DIR}/source/blender/makesdna/
-  DEPENDS ${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/makesdna
-)
-
-IF(WIN32)
-  ADD_EXECUTABLE(blenderplayer ${EXETYPE} ${CMAKE_CURRENT_BINARY_DIR}/dna.c ../source/icons/winblender.rc)
-ELSE(WIN32)
-  ADD_EXECUTABLE(blenderplayer ${CMAKE_CURRENT_BINARY_DIR}/dna.c)
-ENDIF(WIN32)
-
-ADD_DEPENDENCIES(blenderplayer makesdna)
-
-FILE(READ ${CMAKE_BINARY_DIR}/cmake_blender_libs.txt BLENDER_LINK_LIBS)
-
-SET(BLENDER_LINK_LIBS ${BLENDER_LINK_LIBS} gp_common gp_ghost blenkernel_blc)
-
-IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
-  SET(BLENDER_LINK_LIBS ${BLENDER_LINK_LIBS} extern_binreloc)
-ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
-
-IF(UNIX)
-  # Sort libraries
-  SET(BLENDER_SORTED_LIBS
-    gp_ghost 
-    gp_common 
-    bf_string 
-    bf_ghost 
-    bf_blenkernel 
-    verse 
-    bf_blenkernel 
-    bf_blenloader 
-    bf_blenpluginapi 
-    bf_blroutines 
-    bf_converter 
-    bf_sumo 
-    bf_ketsji 
-    extern_solid 
-    extern_qhull 
-    bf_bullet 
-    bf_common 
-    bf_dummy 
-    bf_logic 
-    bf_rasterizer 
-    bf_oglrasterizer 
-    bf_expressions 
-    bf_scenegraph 
-       bf_IK
-    bf_moto 
-    bf_kernel 
-    bf_nodes
-       bf_gpu
-    bf_imbuf
-    bf_avi 
-    kx_network 
-    bf_ngnetwork 
-    bf_loopbacknetwork 
-    extern_bullet 
-    bf_guardedalloc 
-    bf_memutil 
-    bf_blenlib 
-    bf_cineon 
-    bf_openexr 
-    extern_libopenjpeg 
-    bf_dds
-    bf_readblenfile 
-    blenkernel_blc
-    bf_quicktime
-    extern_binreloc
-       extern_glew
-  ) 
-
-  IF(WITH_CXX_GUARDEDALLOC)
-    SET(BLENDER_SORTED_LIBS ${BLENDER_SORTED_LIBS} bf_guardedalloc_cpp)
-  ENDIF(WITH_CXX_GUARDEDALLOC)
-
-  FOREACH(SORTLIB ${BLENDER_SORTED_LIBS})
-    SET(REMLIB ${SORTLIB})
-    FOREACH(SEARCHLIB ${BLENDER_LINK_LIBS})
-      IF(${SEARCHLIB} STREQUAL ${SORTLIB})
-        SET(REMLIB "")
-      ENDIF(${SEARCHLIB} STREQUAL ${SORTLIB})
-    ENDFOREACH(SEARCHLIB)
-    IF(REMLIB)
-      MESSAGE(STATUS "Removing library ${REMLIB} from blenderplayer linking because: not configured")
-      LIST(REMOVE_ITEM BLENDER_SORTED_LIBS ${REMLIB})
-    ENDIF(REMLIB)
-  ENDFOREACH(SORTLIB)
-
-  TARGET_LINK_LIBRARIES(blenderplayer ${BLENDER_SORTED_LIBS})
-ELSE(UNIX)
-  TARGET_LINK_LIBRARIES(blenderplayer ${BLENDER_LINK_LIBS})
-ENDIF(UNIX)
-
-SETUP_LIBLINKS(blenderplayer)
index 5c0fa9a..981f321 100644 (file)
@@ -1,10 +1,3 @@
-#
-# Note : if you want to alter this file
-# copy it as a whole in the upper folder
-# as user-config.py
-# dont create a new file with only some
-# vars changed.
-
 import commands
 
 # IMPORTANT NOTE : OFFICIAL BUILDS SHOULD BE DONE WITH SDKs
@@ -119,6 +112,12 @@ BF_JACK_INC = '${BF_JACK}/include/jack'
 BF_JACK_LIB = 'jack'
 BF_JACK_LIBPATH = '${BF_JACK}/lib'
 
+WITH_BF_SNDFILE = False
+BF_SNDFILE = LIBDIR + '/sndfile'
+BF_SNDFILE_INC = '${BF_SNDFILE}/include'
+BF_SNDFILE_LIB = 'sndfile'
+BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib'
+
 WITH_BF_SDL = True
 BF_SDL = LIBDIR + '/sdl' #$(shell sdl-config --prefix)
 BF_SDL_INC = '${BF_SDL}/include' #$(shell $(BF_SDL)/bin/sdl-config --cflags)
@@ -275,4 +274,3 @@ BF_DEBUG_CCFLAGS = ['-g']
 
 BF_BUILDDIR='../build/darwin'
 BF_INSTALLDIR='../install/darwin'
-BF_DOCDIR='../install/doc'
index d38665f..085d1dd 100644 (file)
@@ -189,7 +189,6 @@ BF_DEBUG_FLAGS = '-g'
 
 BF_BUILDDIR = '../build/irix6'
 BF_INSTALLDIR='../install/irix6'
-BF_DOCDIR='../install/doc'
 
 #Link against pthread
 LDIRS = []
index b8e035c..026d0a2 100644 (file)
@@ -33,6 +33,12 @@ BF_JACK_INC = '${BF_JACK}/include/jack'
 BF_JACK_LIB = 'jack'
 BF_JACK_LIBPATH = '${BF_JACK}/lib'
 
+WITH_BF_SNDFILE = False
+BF_SNDFILE = '/usr'
+BF_SNDFILE_INC = '${BF_SNDFILE}/include/sndfile'
+BF_SNDFILE_LIB = 'sndfile'
+BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib'
+
 WITH_BF_SDL = True
 BF_SDL = '/usr' #$(shell sdl-config --prefix)
 BF_SDL_INC = '${BF_SDL}/include/SDL' #$(shell $(BF_SDL)/bin/sdl-config --cflags)
@@ -85,23 +91,6 @@ BF_BULLET = '#extern/bullet2/src'
 BF_BULLET_INC = '${BF_BULLET}'
 BF_BULLET_LIB = 'extern_bullet'
 
-#WITH_BF_NSPR = True
-#BF_NSPR = $(LIBDIR)/nspr
-#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
-#BF_NSPR_LIB = 
-
-# Uncomment the following line to use Mozilla inplace of netscape
-#CPPFLAGS += -DMOZ_NOT_NET
-# Location of MOZILLA/Netscape header files...
-#BF_MOZILLA = $(LIBDIR)/mozilla
-#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
-#BF_MOZILLA_LIB =
-# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
-# if this is not set.
-#
-# Be paranoid regarding library creation (do not update archives)
-#BF_PARANOID = True
-
 # enable freetype2 support for text objects
 BF_FREETYPE = '/usr'
 BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2'
@@ -181,8 +170,9 @@ REL_CCFLAGS = ['-O2']
 ##ARFLAGSQUIET = ru
 ##
 C_WARN = ['-Wno-char-subscripts', '-Wdeclaration-after-statement']
-
 CC_WARN = ['-Wall']
+CXX_WARN = ['-Wno-invalid-offsetof', '-Wno-sign-compare']
+
 
 ##FIX_STUBS_WARNINGS = -Wno-unused
 
@@ -199,8 +189,6 @@ BF_DEBUG_CCFLAGS = ['-g']
 
 BF_BUILDDIR = '../build/linux2'
 BF_INSTALLDIR='../install/linux2'
-BF_DOCDIR='../install/doc'
-
 
 #Link against pthread
 PLATFORM_LINKFLAGS = ['-pthread']
index 9f79fab..a5c83dc 100644 (file)
@@ -2,13 +2,13 @@ LCGDIR = '#../lib/windows'
 LIBDIR = '${LCGDIR}'
 
 BF_PYTHON = LIBDIR + '/python'
-BF_PYTHON_VERSION = '2.6'
+BF_PYTHON_VERSION = '2.5'
 BF_PYTHON_INC = '${BF_PYTHON}/include/python${BF_PYTHON_VERSION}'
 BF_PYTHON_BINARY = 'python'
-BF_PYTHON_LIB = 'python26'
+BF_PYTHON_LIB = 'python25'
 BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib'
 
-WITH_BF_OPENAL = False # XXX (Arystan)
+WITH_BF_OPENAL = True
 WITH_BF_STATICOPENAL = False
 BF_OPENAL = LIBDIR + '/openal'
 BF_OPENAL_INC = '${BF_OPENAL}/include'
@@ -17,12 +17,6 @@ BF_OPENAL_LIBPATH = '${BF_OPENAL}/lib'
 # Warning, this static lib configuration is untested! users of this OS please confirm.
 BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a'
 
-# copied from win32-mingw-config.py (Arystan)
-WITH_BF_FFMPEG = False
-BF_FFMPEG_LIB = 'avformat swscale avcodec avutil avdevice xvidcore x264'
-BF_FFMPEG_LIBPATH = LIBDIR + '/gcc/ffmpeg/lib'
-BF_FFMPEG_INC =  LIBDIR + '/gcc/ffmpeg/include'
-
 # Warning, this static lib configuration is untested! users of this OS please confirm.
 BF_CXX = '/usr'
 WITH_BF_STATICCXX = False
@@ -44,7 +38,7 @@ BF_PTHREADS_INC = '${BF_PTHREADS}/include'
 BF_PTHREADS_LIB = 'pthreadGC2'
 BF_PTHREADS_LIBPATH = '${BF_PTHREADS}/lib'
 
-WITH_BF_OPENEXR = False
+WITH_BF_OPENEXR = True
 WITH_BF_STATICOPENEXR = False
 BF_OPENEXR = LIBDIR + '/gcc/openexr'
 BF_OPENEXR_INC = '${BF_OPENEXR}/include ${BF_OPENEXR}/include/OpenEXR'
@@ -69,8 +63,6 @@ BF_PNG_LIBPATH = '${BF_PNG}/lib'
 
 BF_TIFF = LIBDIR + '/tiff'
 BF_TIFF_INC = '${BF_TIFF}/include'
-BF_TIFF_LIB = 'libtiff'
-BF_TIFF_LIBPATH = '${BF_TIFF}/lib'
 
 WITH_BF_ZLIB = True
 BF_ZLIB = LIBDIR + '/zlib'
@@ -83,26 +75,16 @@ WITH_BF_INTERNATIONAL = True
 BF_GETTEXT = LIBDIR + '/gettext'
 BF_GETTEXT_INC = '${BF_GETTEXT}/include'
 BF_GETTEXT_LIB = 'gnu_gettext'
-# BF_GETTEXT_LIB = 'gnu_gettext'
 BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib'
 
 WITH_BF_GAMEENGINE = False
 WITH_BF_PLAYER = False
 
-WITH_BF_ODE = True
-BF_ODE = LIBDIR + '/ode'
-BF_ODE_INC = BF_ODE + '/include'
-BF_ODE_LIB = BF_ODE + '/lib/libode.a'
-
 WITH_BF_BULLET = True
 BF_BULLET = '#extern/bullet2/src'
 BF_BULLET_INC = '${BF_BULLET}'
 BF_BULLET_LIB = 'extern_bullet'
 
-BF_SOLID = '#extern/solid'
-BF_SOLID_INC = '${BF_SOLID}'
-BF_SOLID_LIB = 'extern_solid'
-
 BF_WINTAB = LIBDIR + '/wintab'
 BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE'
 
@@ -124,12 +106,9 @@ BF_ICONV_LIBPATH = '${BF_ICONV}/lib'
 
 # Mesa Libs should go here if your using them as well....
 WITH_BF_STATICOPENGL = False
-BF_OPENGL = ''
-# BF_OPENGL = 'C:\\MingW'
-BF_OPENGL_INC = ''
-# BF_OPENGL_INC = '${BF_OPENGL}/include'
-BF_OPENGL_LIBINC = ''
-# BF_OPENGL_LIBINC = '${BF_OPENGL}/lib'
+BF_OPENGL = 'C:\\MingW'
+BF_OPENGL_INC = '${BF_OPENGL}/include'
+BF_OPENGL_LIBINC = '${BF_OPENGL}/lib'
 BF_OPENGL_LIB = 'opengl32 glu32'
 BF_OPENGL_LIB_STATIC = [ '${BF_OPENGL}/lib/libGL.a', '${BF_OPENGL}/lib/libGLU.a',
              '${BF_OPENGL}/lib/libXmu.a', '${BF_OPENGL}/lib/libXext.a',
@@ -138,13 +117,9 @@ BF_OPENGL_LIB_STATIC = [ '${BF_OPENGL}/lib/libGL.a', '${BF_OPENGL}/lib/libGLU.a'
 CC = 'i586-mingw32msvc-gcc'
 CXX = 'i586-mingw32msvc-g++'
 
-# Custom built MinGW (Arystan)
-# CC = 'i586-pc-mingw32-gcc'
-# CXX = 'i586-pc-mingw32-g++'
-
 CCFLAGS = [ '-pipe', '-funsigned-char', '-fno-strict-aliasing' ]
 
-CPPFLAGS = [ '-DXP_UNIX', '-DWIN32', '-DFREE_WINDOWS', '-DLINUX_CROSS' ]
+CPPFLAGS = [ '-DXP_UNIX', '-DWIN32', '-DFREE_WINDOWS' ]
 CXXFLAGS = ['-pipe', '-mwindows', '-funsigned-char', '-fno-strict-aliasing' ]
 REL_CFLAGS = [ '-O2' ]
 REL_CCFLAGS = [ '-O2' ]
@@ -153,7 +128,7 @@ C_WARN = [ '-Wall' , '-Wno-char-subscripts', '-Wdeclaration-after-statement' ]
 CC_WARN = [ '-Wall' ]
 
 
-LLIBS = [ '-ldxguid', '-lgdi32', '-lmsvcrt', '-lwinmm', '-lmingw32', '-lm', '-lws2_32', '-lz', '-lstdc++'] #'-lutil', '-lc', '-lm', '-ldl', '-lpthread' ]
+LLIBS = [ '-ldxguid', '-lgdi32', '-lmsvcrt', '-lwinmm', '-lmingw32', '-lm', '-lws2_32', '-lz'] #'-lutil', '-lc', '-lm', '-ldl', '-lpthread' ]
 
 BF_DEBUG = False
 BF_DEBUG_CCFLAGS= []
@@ -164,6 +139,3 @@ BF_PROFILE_LINKFLAGS = ['-pg']
 
 BF_BUILDDIR = '../build/linuxcross'
 BF_INSTALLDIR='../install/linuxcross'
-BF_DOCDIR='../install/doc'
-
-# LINKFLAGS = ['-Wl,--start-group']
index 9564932..353d30f 100644 (file)
@@ -151,4 +151,3 @@ BF_DEBUG_CCFLAGS = ['-g']
 
 BF_BUILDDIR='../build/openbsd3'
 BF_INSTALLDIR='../install/openbsd3'
-BF_DOCDIR='../install/doc'
index 8af30e4..8e4c53b 100644 (file)
@@ -165,7 +165,6 @@ BF_DEBUG_CCFLAGS = []
 
 BF_BUILDDIR = '../build/sunos5'
 BF_INSTALLDIR='../install/sunos5'
-BF_DOCDIR='../install/doc'
 
 
 PLATFORM_LINKFLAGS = []
index a7de3f6..04e9f5e 100644 (file)
@@ -3,14 +3,9 @@ LIBDIR = "${LCGDIR}"
 
 BF_PYTHON = LIBDIR + '/python'
 BF_PYTHON_VERSION = '3.1'
-#BF_PYTHON_VERSION = '2.6'
-#BF_PYTHON_VERSION = '2.6'
 WITH_BF_STATICPYTHON = False
 BF_PYTHON_INC = '${BF_PYTHON}/include/python${BF_PYTHON_VERSION}'
 BF_PYTHON_BINARY = 'python'
-#BF_PYTHON_LIB = 'python25'
-#BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib/lib25_vs2005'
-#BF_PYTHON_LIB_STATIC = '${BF_PYTHON}/lib/lib25_vs2005/libpython25.a'
 BF_PYTHON_LIB = 'python${BF_PYTHON_VERSION[0]}${BF_PYTHON_VERSION[2]}'
 BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib'
 BF_PYTHON_LIB_STATIC = '${BF_PYTHON}/lib/libpython${BF_PYTHON_VERSION[0]}${BF_PYTHON_VERSION[2]}.a'
@@ -22,9 +17,9 @@ BF_OPENAL_LIB = 'wrap_oal'
 BF_OPENAL_LIBPATH = '${BF_OPENAL}/lib'
 
 WITH_BF_FFMPEG = False
-BF_FFMPEG_LIB = 'avformat swscale avcodec avutil avdevice xvidcore x264'
-BF_FFMPEG_LIBPATH = LIBDIR + '/gcc/ffmpeg/lib'
-BF_FFMPEG_INC =  LIBDIR + '/gcc/ffmpeg/include'
+BF_FFMPEG_LIB = 'avformat-52 avcodec-52 avdevice-52 avutil-50 swscale-0'
+BF_FFMPEG_LIBPATH = LIBDIR + '/ffmpeg/lib'
+BF_FFMPEG_INC =  LIBDIR + '/ffmpeg/include'
 
 BF_LIBSAMPLERATE = LIBDIR + '/samplerate'
 BF_LIBSAMPLERATE_INC = '${BF_LIBSAMPLERATE}/include'
@@ -37,6 +32,12 @@ BF_JACK_INC = '${BF_JACK}/include'
 BF_JACK_LIB = 'libjack'
 BF_JACK_LIBPATH = '${BF_JACK}/lib'
 
+WITH_BF_SNDFILE = False
+BF_SNDFILE = LIBDIR + '/sndfile'
+BF_SNDFILE_INC = '${BF_SNDFILE}/include'
+BF_SNDFILE_LIB = 'libsndfile-1'
+BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib'
+
 WITH_BF_SDL = True
 BF_SDL = LIBDIR + '/sdl'
 BF_SDL_INC = '${BF_SDL}/include'
@@ -99,20 +100,6 @@ BF_BULLET_LIB = 'extern_bullet'
 BF_WINTAB = LIBDIR + '/wintab'
 BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE'
 
-#WITH_BF_NSPR = True
-#BF_NSPR = $(LIBDIR)/nspr
-#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
-#BF_NSPR_LIB = 
-
-# Uncomment the following line to use Mozilla inplace of netscape
-#CPPFLAGS += -DMOZ_NOT_NET
-# Location of MOZILLA/Netscape header files...
-#BF_MOZILLA = $(LIBDIR)/mozilla
-#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
-#BF_MOZILLA_LIB =
-# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
-# if this is not set.
-
 # enable freetype2 support for text objects
 BF_FREETYPE = LIBDIR + '/gcc/freetype'
 BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2'
@@ -165,4 +152,3 @@ BF_PROFILE = False
 
 BF_BUILDDIR = '..\\build\\win32-mingw'
 BF_INSTALLDIR='..\\install\\win32-mingw'
-BF_DOCDIR = '..\\install\\doc'
index e9bbd42..4f2af93 100644 (file)
@@ -4,7 +4,7 @@ LIBDIR = '${LCGDIR}'
 # enable ffmpeg  support
 WITH_BF_FFMPEG = True  # -DWITH_FFMPEG
 BF_FFMPEG = LIBDIR +'/ffmpeg'
-BF_FFMPEG_INC = '${BF_FFMPEG}/include'
+BF_FFMPEG_INC = '${BF_FFMPEG}/include ${BF_FFMPEG}/include/msvc'
 BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib'
 BF_FFMPEG_LIB = 'avformat-52.lib avcodec-52.lib avdevice-52.lib avutil-50.lib swscale-0.lib'
 
@@ -21,11 +21,6 @@ BF_OPENAL_INC = '${BF_OPENAL}/include '
 BF_OPENAL_LIB = 'wrap_oal'
 BF_OPENAL_LIBPATH = '${BF_OPENAL}/lib'
 
-# TODO - are these useful on win32?
-# BF_CXX = '/usr'
-# WITH_BF_STATICCXX = False
-# BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a'
-
 WITH_BF_ICONV = True
 BF_ICONV = LIBDIR + '/iconv'
 BF_ICONV_INC = '${BF_ICONV}/include'
@@ -43,6 +38,12 @@ BF_JACK_INC = '${BF_JACK}/include'
 BF_JACK_LIB = 'libjack'
 BF_JACK_LIBPATH = '${BF_JACK}/lib'
 
+WITH_BF_SNDFILE = False
+BF_SNDFILE = LIBDIR + '/sndfile'
+BF_SNDFILE_INC = '${BF_SNDFILE}/include'
+BF_SNDFILE_LIB = 'libsndfile-1'
+BF_SNDFILE_LIBPATH = '${BF_SNDFILE}/lib'
+
 WITH_BF_SDL = True
 BF_SDL = LIBDIR + '/sdl'
 BF_SDL_INC = '${BF_SDL}/include'
@@ -108,23 +109,6 @@ BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE'
 
 WITH_BF_BINRELOC = False
 
-#WITH_BF_NSPR = True
-#BF_NSPR = $(LIBDIR)/nspr
-#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
-#BF_NSPR_LIB = 
-
-# Uncomment the following line to use Mozilla inplace of netscape
-#CPPFLAGS += -DMOZ_NOT_NET
-# Location of MOZILLA/Netscape header files...
-#BF_MOZILLA = $(LIBDIR)/mozilla
-#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
-#BF_MOZILLA_LIB =
-# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
-# if this is not set.
-#
-# Be paranoid regarding library creation (do not update archives)
-#BF_PARANOID = True
-
 # enable freetype2 support for text objects
 BF_WITH_FREETYPE = True
 BF_FREETYPE = LIBDIR + '/freetype'
@@ -165,6 +149,7 @@ CXX = 'cl.exe'
 
 CCFLAGS = ['/nologo', '/Ob1', '/J', '/W3', '/Gd', '/wd4244', '/wd4305', '/wd4800', '/wd4065', '/wd4267']
 CXXFLAGS = ['/EHsc']
+BGE_CXXFLAGS = ['/O2', '/EHsc', '/GR', '/fp:fast', '/arch:SSE']
 
 BF_DEBUG_CCFLAGS = ['/Zi', '/FR${TARGET}.sbr']
 
@@ -188,4 +173,3 @@ PLATFORM_LINKFLAGS = ['/SUBSYSTEM:CONSOLE','/MACHINE:IX86','/INCREMENTAL:NO','/N
 
 BF_BUILDDIR = '..\\build\\win32-vc'
 BF_INSTALLDIR='..\\install\\win32-vc'
-BF_DOCDIR='..\\install\\doc'
index ed08e57..b48e387 100644 (file)
@@ -163,6 +163,7 @@ CXX = 'cl.exe'
 CFLAGS = []
 CCFLAGS = ['/nologo', '/Ob1', '/J', '/W3', '/Gd', '/wd4244', '/wd4305', '/wd4800', '/wd4065', '/wd4267']
 CXXFLAGS = ['/EHsc']
+BGE_CXXFLAGS = ['/O2', '/EHsc', '/GR', '/fp:fast', '/arch:SSE2']
 
 BF_DEBUG_CCFLAGS = ['/Zi', '/FR${TARGET}.sbr']
 
@@ -191,7 +192,6 @@ PLATFORM_LINKFLAGS = ['/SUBSYSTEM:CONSOLE','/MACHINE:X64','/INCREMENTAL:NO','/NO
 
 BF_BUILDDIR = '..\\build\\blender25-win64-vc'
 BF_INSTALLDIR='..\\install\\blender25-win64-vc'
-BF_DOCDIR='..\\install\\blender25-win64-vc\\doc'
 
 
 
index b6cfe3b..44e47aa 100644 (file)
 # ***** END GPL LICENSE BLOCK *****
 
 IF(WITH_BULLET)
-  ADD_SUBDIRECTORY(bullet2)
+       ADD_SUBDIRECTORY(bullet2)
 ENDIF(WITH_BULLET)
 
 IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
-  ADD_SUBDIRECTORY(binreloc)
+       ADD_SUBDIRECTORY(binreloc)
 ENDIF(CMAKE_SYSTEM_NAME MATCHES "Linux")
 
 ADD_SUBDIRECTORY(glew)
 
 IF(WITH_OPENJPEG)
-  ADD_SUBDIRECTORY(libopenjpeg)
+       ADD_SUBDIRECTORY(libopenjpeg)
 ENDIF(WITH_OPENJPEG)
+
+ADD_SUBDIRECTORY(lzo)
+ADD_SUBDIRECTORY(lzma)
index 61499da..b81fbd2 100644 (file)
@@ -32,15 +32,6 @@ SOURCEDIR = extern
 DIR = $(OCGDIR)/extern
 DIRS = glew/src
 
-ifeq ($(WITH_FFMPEG), true)
-ifeq ($(NAN_FFMPEG), $(LCGDIR)/ffmpeg)
-    DIRS += ffmpeg
-endif
-ifeq ($(NAN_FFMPEG), $(LCGDIR)/gcc/ffmpeg)
-    DIRS += ffmpeg
-endif
-endif
-
 # Cloth requires it
 #ifneq ($(NAN_NO_KETSJI), true)
 DIRS += bullet2
@@ -54,6 +45,14 @@ ifeq ($(WITH_OPENJPEG), true)
     DIRS += libopenjpeg
 endif
 
+ifeq ($(WITH_LZO), true)
+    DIRS += lzo/minilzo
+endif
+
+ifeq ($(WITH_LZMA), true)
+    DIRS += lzma
+endif
+
 TARGET = solid
 
 all::
index 175613c..20604d8 100644 (file)
@@ -22,5 +22,5 @@ if env['WITH_BF_REDCODE'] and env['BF_REDCODE_LIB'] == '':
 if env['OURPLATFORM'] == 'linux2':
     SConscript(['binreloc/SConscript']);
 
-# FFTW not needed atm - dg
-# SConscript(['fftw/SConscript'])
+SConscript(['lzo/SConscript'])
+SConscript(['lzma/SConscript'])
index 98d7adb..331b70a 100644 (file)
@@ -9,5 +9,5 @@ cflags = []
 sources = ['binreloc.c']
 incs = 'include'
 
-env.BlenderLib ( 'extern_binreloc', sources, Split(incs), Split(defs), libtype=['extern'], priority=[36], compileflags = cflags)
+env.BlenderLib ( 'extern_binreloc', sources, Split(incs), Split(defs), libtype=['extern','player'], priority=[36,225], compileflags = cflags)
 
index edb6b9c..2e2d892 100644 (file)
 SET(INC . src)
 
 FILE(GLOB SRC   
-  src/LinearMath/*.cpp
-  src/BulletCollision/BroadphaseCollision/*.cpp
-  src/BulletCollision/CollisionShapes/*.cpp
-  src/BulletCollision/NarrowPhaseCollision/*.cpp
-  src/BulletCollision/Gimpact/*.cpp
-  src/BulletCollision//CollisionDispatch/*.cpp
-  src/BulletDynamics/ConstraintSolver/*.cpp
-  src/BulletDynamics/Vehicle/*.cpp
-  src/BulletDynamics/Dynamics/*.cpp
-  src/BulletSoftBody/*.cpp
+       src/LinearMath/*.cpp
+       src/BulletCollision/BroadphaseCollision/*.cpp
+       src/BulletCollision/CollisionShapes/*.cpp
+       src/BulletCollision/NarrowPhaseCollision/*.cpp
+       src/BulletCollision/Gimpact/*.cpp
+       src/BulletCollision//CollisionDispatch/*.cpp
+       src/BulletDynamics/ConstraintSolver/*.cpp
+       src/BulletDynamics/Vehicle/*.cpp
+       src/BulletDynamics/Dynamics/*.cpp
+       src/BulletSoftBody/*.cpp
 )
 
 ADD_DEFINITIONS(-D_LIB)
index 4b4304f..ddc806a 100644 (file)
@@ -211,13 +211,13 @@ ADD_LIBRARY(BulletCollision ${BulletCollision_SRCS} ${BulletCollision_HDRS})
 SET_TARGET_PROPERTIES(BulletCollision PROPERTIES VERSION ${BULLET_VERSION})
 SET_TARGET_PROPERTIES(BulletCollision PROPERTIES SOVERSION ${BULLET_VERSION})
 IF (BUILD_SHARED_LIBS)
-  TARGET_LINK_LIBRARIES(BulletCollision LinearMath)
+       TARGET_LINK_LIBRARIES(BulletCollision LinearMath)
 ENDIF (BUILD_SHARED_LIBS)
 
 #INSTALL of other files requires CMake 2.6
 IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
        INSTALL(TARGETS BulletCollision DESTINATION lib)
-        INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DESTINATION include FILES_MATCHING PATTERN "*.h")
+                               INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DESTINATION include FILES_MATCHING PATTERN "*.h")
 ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
 
 IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
index dbd87af..fe31d2b 100644 (file)
@@ -34,7 +34,7 @@ ENDIF (BUILD_SHARED_LIBS)
 
 IF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
        INSTALL(TARGETS BulletSoftBody DESTINATION lib)
-        INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DESTINATION include FILES_MATCHING PATTERN "*.h")
+                               INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DESTINATION include FILES_MATCHING PATTERN "*.h")
 ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
 
 IF (APPLE AND BUILD_SHARED_LIBS AND FRAMEWORK)
index 319cc57..3d0c645 100644 (file)
@@ -35,11 +35,11 @@ softbody_src = env.Glob("BulletSoftBody/*.cpp")
 
 incs = '. BulletCollision BulletDynamics LinearMath BulletSoftBody'
 
-env.BlenderLib ( libname = 'extern_bullet2linmath', sources=linearmath_src, includes=Split(incs), defines=Split(defs), libtype=['extern'], priority=[20], compileflags=cflags )
-env.BlenderLib ( libname = 'extern_bullet2dynamics', sources=bulletdyn_src, includes=Split(incs), defines=Split(defs), libtype=['extern'], priority=[19], compileflags=cflags )
-env.BlenderLib ( libname = 'extern_bullet2collision_broadphase', sources=collision_broadphase_src, includes=Split(incs), defines=Split(defs), libtype=['extern'], priority=[25], compileflags=cflags )
-env.BlenderLib ( libname = 'extern_bullet2collision_dispatch', sources=collision_dispatch_src, includes=Split(incs), defines=Split(defs), libtype=['extern'], priority=[20], compileflags=cflags )
-env.BlenderLib ( libname = 'extern_bullet2collision_gimpact', sources=collision_gimpact_src, includes=Split(incs), defines=Split(defs), libtype=['extern'], priority=[20], compileflags=cflags )
-env.BlenderLib ( libname = 'extern_bullet2collision_shapes', sources=collision_shapes_src, includes=Split(incs), defines=Split(defs), libtype=['extern'], priority=[20], compileflags=cflags )
-env.BlenderLib ( libname = 'extern_bullet2collision_narrowphase', sources=collision_narrowphase_src, includes=Split(incs), defines=Split(defs), libtype=['extern'], priority=[20], compileflags=cflags )
-env.BlenderLib ( libname = 'extern_bullet2softbody', sources=softbody_src, includes=Split(incs), defines=Split(defs), libtype=['extern'], priority=[18], compileflags=cflags )
+env.BlenderLib ( libname = 'extern_bullet2linmath', sources=linearmath_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[20,137], compileflags=cflags )
+env.BlenderLib ( libname = 'extern_bullet2dynamics', sources=bulletdyn_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[19,136], compileflags=cflags )
+env.BlenderLib ( libname = 'extern_bullet2collision_broadphase', sources=collision_broadphase_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[25,145], compileflags=cflags )
+env.BlenderLib ( libname = 'extern_bullet2collision_dispatch', sources=collision_dispatch_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[20,138], compileflags=cflags )
+env.BlenderLib ( libname = 'extern_bullet2collision_gimpact', sources=collision_gimpact_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[20,138], compileflags=cflags )
+env.BlenderLib ( libname = 'extern_bullet2collision_shapes', sources=collision_shapes_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[20,138], compileflags=cflags )
+env.BlenderLib ( libname = 'extern_bullet2collision_narrowphase', sources=collision_narrowphase_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[20,138], compileflags=cflags )
+env.BlenderLib ( libname = 'extern_bullet2softbody', sources=softbody_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[18,135], compileflags=cflags )
index eea3448..26d10a6 100644 (file)
 SET(INC include src)
 
 IF(UNIX)
-  SET(INC ${INC} ${X11_X11_INCLUDE_PATH})
+       SET(INC ${INC} ${X11_X11_INCLUDE_PATH})
 ENDIF(UNIX)
 
 SET(SRC
-  src/glew.c
+       src/glew.c
 )
 
 BLENDERLIB(extern_glew "${SRC}" "${INC}")
index b83525d..81a2fc6 100644 (file)
@@ -9,4 +9,4 @@ sources = ['src/glew.c']
 defs = ''
 incs = 'include'
 
-env.BlenderLib ( 'extern_glew', sources, Split(incs), Split(defs), libtype=['extern'], priority=[50])
+env.BlenderLib ( 'extern_glew', sources, Split(incs), Split(defs), libtype=['extern','player'], priority=[50,230])
index 693fee1..da66173 100644 (file)
@@ -24,5 +24,5 @@ if not env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
 oj_env.BlenderLib ( libname='extern_openjpeg', 
                     sources=sources, includes=Split(incs),
                     defines=defs,
-                    libtype=['extern'],
-                    priority=[10], compileflags = flags)
+                    libtype=['extern','player'],
+                    priority=[10,185], compileflags = flags)
index 9fd25ad..3fb78db 100644 (file)
@@ -12,5 +12,5 @@ incs = '. ../libopenjpeg'
 env.BlenderLib ( libname='extern_redcode', 
                  sources=sources, includes=Split(incs),
                  defines=[],
-                 libtype=['core','intern','player'],
-                 priority=[5, 5, 200], compileflags = [])
+                 libtype=['core','intern'],
+                 priority=[5, 5], compileflags = [])
diff --git a/extern/lzma/Alloc.c b/extern/lzma/Alloc.c
new file mode 100644 (file)
index 0000000..358a7b5
--- /dev/null
@@ -0,0 +1,127 @@
+/* Alloc.c -- Memory allocation functions
+2008-09-24
+Igor Pavlov
+Public domain */
+
+#ifdef _WIN32
+#include <windows.h>
+#endif
+#include <stdlib.h>
+
+#include "Alloc.h"
+
+/* #define _SZ_ALLOC_DEBUG */
+
+/* use _SZ_ALLOC_DEBUG to debug alloc/free operations */
+#ifdef _SZ_ALLOC_DEBUG
+#include <stdio.h>
+int g_allocCount = 0;
+int g_allocCountMid = 0;
+int g_allocCountBig = 0;
+#endif
+
+void *MyAlloc(size_t size)
+{
+  if (size == 0)
+    return 0;
+  #ifdef _SZ_ALLOC_DEBUG
+  {
+    void *p = malloc(size);
+    fprintf(stderr, "\nAlloc %10d bytes, count = %10d,  addr = %8X", size, g_allocCount++, (unsigned)p);
+    return p;
+  }
+  #else
+  return malloc(size);
+  #endif
+}
+
+void MyFree(void *address)
+{
+  #ifdef _SZ_ALLOC_DEBUG
+  if (address != 0)
+    fprintf(stderr, "\nFree; count = %10d,  addr = %8X", --g_allocCount, (unsigned)address);
+  #endif
+  free(address);
+}
+
+#ifdef _WIN32
+
+void *MidAlloc(size_t size)
+{
+  if (size == 0)
+    return 0;
+  #ifdef _SZ_ALLOC_DEBUG
+  fprintf(stderr, "\nAlloc_Mid %10d bytes;  count = %10d", size, g_allocCountMid++);
+  #endif
+  return VirtualAlloc(0, size, MEM_COMMIT, PAGE_READWRITE);
+}
+
+void MidFree(void *address)
+{
+  #ifdef _SZ_ALLOC_DEBUG
+  if (address != 0)
+    fprintf(stderr, "\nFree_Mid; count = %10d", --g_allocCountMid);
+  #endif
+  if (address == 0)
+    return;
+  VirtualFree(address, 0, MEM_RELEASE);
+}
+
+#ifndef MEM_LARGE_PAGES
+#undef _7ZIP_LARGE_PAGES
+#endif
+
+#ifdef _7ZIP_LARGE_PAGES
+SIZE_T g_LargePageSize = 0;
+typedef SIZE_T (WINAPI *GetLargePageMinimumP)();
+#endif
+
+void SetLargePageSize()
+{
+  #ifdef _7ZIP_LARGE_PAGES
+  SIZE_T size = 0;
+  GetLargePageMinimumP largePageMinimum = (GetLargePageMinimumP)
+        GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), "GetLargePageMinimum");
+  if (largePageMinimum == 0)
+    return;
+  size = largePageMinimum();
+  if (size == 0 || (size & (size - 1)) != 0)
+    return;
+  g_LargePageSize = size;
+  #endif
+}
+
+
+void *BigAlloc(size_t size)
+{
+  if (size == 0)
+    return 0;
+  #ifdef _SZ_ALLOC_DEBUG
+  fprintf(stderr, "\nAlloc_Big %10d bytes;  count = %10d", size, g_allocCountBig++);
+  #endif
+  
+  #ifdef _7ZIP_LARGE_PAGES
+  if (g_LargePageSize != 0 && g_LargePageSize <= (1 << 30) && size >= (1 << 18))
+  {
+    void *res = VirtualAlloc(0, (size + g_LargePageSize - 1) & (~(g_LargePageSize - 1)),
+        MEM_COMMIT | MEM_LARGE_PAGES, PAGE_READWRITE);
+    if (res != 0)
+      return res;
+  }
+  #endif
+  return VirtualAlloc(0, size, MEM_COMMIT, PAGE_READWRITE);
+}
+
+void BigFree(void *address)
+{
+  #ifdef _SZ_ALLOC_DEBUG
+  if (address != 0)
+    fprintf(stderr, "\nFree_Big; count = %10d", --g_allocCountBig);
+  #endif
+  
+  if (address == 0)
+    return;
+  VirtualFree(address, 0, MEM_RELEASE);
+}
+
+#endif
diff --git a/extern/lzma/Alloc.h b/extern/lzma/Alloc.h
new file mode 100644 (file)
index 0000000..ff0669c
--- /dev/null
@@ -0,0 +1,32 @@
+/* Alloc.h -- Memory allocation functions
+2008-03-13
+Igor Pavlov
+Public domain */
+
+#ifndef __COMMON_ALLOC_H
+#define __COMMON_ALLOC_H
+
+#include <stddef.h>
+
+void *MyAlloc(size_t size);
+void MyFree(void *address);
+
+#ifdef _WIN32
+
+void SetLargePageSize();
+
+void *MidAlloc(size_t size);
+void MidFree(void *address);
+void *BigAlloc(size_t size);
+void BigFree(void *address);
+
+#else
+
+#define MidAlloc(size) MyAlloc(size)
+#define MidFree(address) MyFree(address)
+#define BigAlloc(size) MyAlloc(size)
+#define BigFree(address) MyFree(address)
+
+#endif
+
+#endif
diff --git a/extern/lzma/CMakeLists.txt b/extern/lzma/CMakeLists.txt
new file mode 100644 (file)
index 0000000..235cd8c
--- /dev/null
@@ -0,0 +1,34 @@
+# $Id$
+# ***** BEGIN GPL LICENSE BLOCK *****
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+#
+# The Original Code is Copyright (C) 2006, Blender Foundation
+# All rights reserved.
+#
+# The Original Code is: all of this file.
+#
+# Contributor(s): Daniel Genrich
+#
+# ***** END GPL LICENSE BLOCK *****
+
+SET(INC . )
+
+FILE(GLOB SRC ./*.c)
+
+
+
+BLENDERLIB(bf_lzma "${SRC}" "${INC}")
+#, libtype='blender', priority = 0 )
diff --git a/extern/lzma/LzFind.c b/extern/lzma/LzFind.c
new file mode 100644 (file)
index 0000000..34f4f09
--- /dev/null
@@ -0,0 +1,751 @@
+/* LzFind.c -- Match finder for LZ algorithms
+2008-10-04 : Igor Pavlov : Public domain */
+
+#include <string.h>
+
+#include "LzFind.h"
+#include "LzHash.h"
+
+#define kEmptyHashValue 0
+#define kMaxValForNormalize ((UInt32)0xFFFFFFFF)
+#define kNormalizeStepMin (1 << 10) /* it must be power of 2 */
+#define kNormalizeMask (~(kNormalizeStepMin - 1))
+#define kMaxHistorySize ((UInt32)3 << 30)
+
+#define kStartMaxLen 3
+
+static void LzInWindow_Free(CMatchFinder *p, ISzAlloc *alloc)
+{
+  if (!p->directInput)
+  {
+    alloc->Free(alloc, p->bufferBase);
+    p->bufferBase = 0;
+  }
+}
+
+/* keepSizeBefore + keepSizeAfter + keepSizeReserv must be < 4G) */
+
+static int LzInWindow_Create(CMatchFinder *p, UInt32 keepSizeReserv, ISzAlloc *alloc)
+{
+  UInt32 blockSize = p->keepSizeBefore + p->keepSizeAfter + keepSizeReserv;
+  if (p->directInput)
+  {
+    p->blockSize = blockSize;
+    return 1;
+  }
+  if (p->bufferBase == 0 || p->blockSize != blockSize)
+  {
+    LzInWindow_Free(p, alloc);
+    p->blockSize = blockSize;
+    p->bufferBase = (Byte *)alloc->Alloc(alloc, (size_t)blockSize);
+  }
+  return (p->bufferBase != 0);
+}
+
+Byte *MatchFinder_GetPointerToCurrentPos(CMatchFinder *p) { return p->buffer; }
+Byte MatchFinder_GetIndexByte(CMatchFinder *p, Int32 index) { return p->buffer[index]; }
+
+UInt32 MatchFinder_GetNumAvailableBytes(CMatchFinder *p) { return p->streamPos - p->pos; }
+
+void MatchFinder_ReduceOffsets(CMatchFinder *p, UInt32 subValue)
+{
+  p->posLimit -= subValue;
+  p->pos -= subValue;
+  p->streamPos -= subValue;
+}
+
+static void MatchFinder_ReadBlock(CMatchFinder *p)
+{
+  if (p->streamEndWasReached || p->result != SZ_OK)
+    return;
+  for (;;)
+  {
+    Byte *dest = p->buffer + (p->streamPos - p->pos);
+    size_t size = (p->bufferBase + p->blockSize - dest);
+    if (size == 0)
+      return;
+    p->result = p->stream->Read(p->stream, dest, &size);
+    if (p->result != SZ_OK)
+      return;
+    if (size == 0)
+    {
+      p->streamEndWasReached = 1;
+      return;
+    }
+    p->streamPos += (UInt32)size;
+    if (p->streamPos - p->pos > p->keepSizeAfter)
+      return;
+  }
+}
+
+void MatchFinder_MoveBlock(CMatchFinder *p)
+{
+  memmove(p->bufferBase,
+    p->buffer - p->keepSizeBefore,
+    (size_t)(p->streamPos - p->pos + p->keepSizeBefore));
+  p->buffer = p->bufferBase + p->keepSizeBefore;
+}
+
+int MatchFinder_NeedMove(CMatchFinder *p)
+{
+  /* if (p->streamEndWasReached) return 0; */
+  return ((size_t)(p->bufferBase + p->blockSize - p->buffer) <= p->keepSizeAfter);
+}
+
+void MatchFinder_ReadIfRequired(CMatchFinder *p)
+{
+  if (p->streamEndWasReached)
+    return;
+  if (p->keepSizeAfter >= p->streamPos - p->pos)
+    MatchFinder_ReadBlock(p);
+}
+
+static void MatchFinder_CheckAndMoveAndRead(CMatchFinder *p)
+{
+  if (MatchFinder_NeedMove(p))
+    MatchFinder_MoveBlock(p);
+  MatchFinder_ReadBlock(p);
+}
+
+static void MatchFinder_SetDefaultSettings(CMatchFinder *p)
+{
+  p->cutValue = 32;
+  p->btMode = 1;
+  p->numHashBytes = 4;
+  /* p->skipModeBits = 0; */
+  p->directInput = 0;
+  p->bigHash = 0;
+}
+
+#define kCrcPoly 0xEDB88320
+
+void MatchFinder_Construct(CMatchFinder *p)
+{
+  UInt32 i;
+  p->bufferBase = 0;
+  p->directInput = 0;
+  p->hash = 0;
+  MatchFinder_SetDefaultSettings(p);
+
+  for (i = 0; i < 256; i++)
+  {
+    UInt32 r = i;
+    int j;
+    for (j = 0; j < 8; j++)
+      r = (r >> 1) ^ (kCrcPoly & ~((r & 1) - 1));
+    p->crc[i] = r;
+  }
+}
+
+static void MatchFinder_FreeThisClassMemory(CMatchFinder *p, ISzAlloc *alloc)
+{
+  alloc->Free(alloc, p->hash);
+  p->hash = 0;
+}
+
+void MatchFinder_Free(CMatchFinder *p, ISzAlloc *alloc)
+{
+  MatchFinder_FreeThisClassMemory(p, alloc);
+  LzInWindow_Free(p, alloc);
+}
+
+static CLzRef* AllocRefs(UInt32 num, ISzAlloc *alloc)
+{
+  size_t sizeInBytes = (size_t)num * sizeof(CLzRef);
+  if (sizeInBytes / sizeof(CLzRef) != num)
+    return 0;
+  return (CLzRef *)alloc->Alloc(alloc, sizeInBytes);
+}
+
+int MatchFinder_Create(CMatchFinder *p, UInt32 historySize,
+    UInt32 keepAddBufferBefore, UInt32 matchMaxLen, UInt32 keepAddBufferAfter,
+    ISzAlloc *alloc)
+{
+  UInt32 sizeReserv;
+  if (historySize > kMaxHistorySize)
+  {
+    MatchFinder_Free(p, alloc);
+    return 0;
+  }
+  sizeReserv = historySize >> 1;
+  if (historySize > ((UInt32)2 << 30))
+    sizeReserv = historySize >> 2;
+  sizeReserv += (keepAddBufferBefore + matchMaxLen + keepAddBufferAfter) / 2 + (1 << 19);
+
+  p->keepSizeBefore = historySize + keepAddBufferBefore + 1;
+  p->keepSizeAfter = matchMaxLen + keepAddBufferAfter;
+  /* we need one additional byte, since we use MoveBlock after pos++ and before dictionary using */
+  if (LzInWindow_Create(p, sizeReserv, alloc))
+  {
+    UInt32 newCyclicBufferSize = (historySize /* >> p->skipModeBits */) + 1;
+    UInt32 hs;
+    p->matchMaxLen = matchMaxLen;
+    {
+      p->fixedHashSize = 0;
+      if (p->numHashBytes == 2)
+        hs = (1 << 16) - 1;
+      else
+      {
+        hs = historySize - 1;
+        hs |= (hs >> 1);
+        hs |= (hs >> 2);
+        hs |= (hs >> 4);
+        hs |= (hs >> 8);
+        hs >>= 1;
+        /* hs >>= p->skipModeBits; */
+        hs |= 0xFFFF; /* don't change it! It's required for Deflate */
+        if (hs > (1 << 24))
+        {
+          if (p->numHashBytes == 3)
+            hs = (1 << 24) - 1;
+          else
+            hs >>= 1;
+        }
+      }
+      p->hashMask = hs;
+      hs++;
+      if (p->numHashBytes > 2) p->fixedHashSize += kHash2Size;
+      if (p->numHashBytes > 3) p->fixedHashSize += kHash3Size;
+      if (p->numHashBytes > 4) p->fixedHashSize += kHash4Size;
+      hs += p->fixedHashSize;
+    }
+
+    {
+      UInt32 prevSize = p->hashSizeSum + p->numSons;
+      UInt32 newSize;
+      p->historySize = historySize;
+      p->hashSizeSum = hs;
+      p->cyclicBufferSize = newCyclicBufferSize;
+      p->numSons = (p->btMode ? newCyclicBufferSize * 2 : newCyclicBufferSize);
+      newSize = p->hashSizeSum + p->numSons;
+      if (p->hash != 0 && prevSize == newSize)
+        return 1;
+      MatchFinder_FreeThisClassMemory(p, alloc);
+      p->hash = AllocRefs(newSize, alloc);
+      if (p->hash != 0)
+      {
+        p->son = p->hash + p->hashSizeSum;
+        return 1;
+      }
+    }
+  }
+  MatchFinder_Free(p, alloc);
+  return 0;
+}
+
+static void MatchFinder_SetLimits(CMatchFinder *p)
+{
+  UInt32 limit = kMaxValForNormalize - p->pos;
+  UInt32 limit2 = p->cyclicBufferSize - p->cyclicBufferPos;
+  if (limit2 < limit)
+    limit = limit2;
+  limit2 = p->streamPos - p->pos;
+  if (limit2 <= p->keepSizeAfter)
+  {
+    if (limit2 > 0)
+      limit2 = 1;
+  }
+  else
+    limit2 -= p->keepSizeAfter;
+  if (limit2 < limit)
+    limit = limit2;
+  {
+    UInt32 lenLimit = p->streamPos - p->pos;
+    if (lenLimit > p->matchMaxLen)
+      lenLimit = p->matchMaxLen;
+    p->lenLimit = lenLimit;
+  }
+  p->posLimit = p->pos + limit;
+}
+
+void MatchFinder_Init(CMatchFinder *p)
+{
+  UInt32 i;
+  for (i = 0; i < p->hashSizeSum; i++)
+    p->hash[i] = kEmptyHashValue;
+  p->cyclicBufferPos = 0;
+  p->buffer = p->bufferBase;
+  p->pos = p->streamPos = p->cyclicBufferSize;
+  p->result = SZ_OK;
+  p->streamEndWasReached = 0;
+  MatchFinder_ReadBlock(p);
+  MatchFinder_SetLimits(p);
+}
+
+static UInt32 MatchFinder_GetSubValue(CMatchFinder *p)
+{
+  return (p->pos - p->historySize - 1) & kNormalizeMask;
+}
+
+void MatchFinder_Normalize3(UInt32 subValue, CLzRef *items, UInt32 numItems)
+{
+  UInt32 i;
+  for (i = 0; i < numItems; i++)
+  {
+    UInt32 value = items[i];
+    if (value <= subValue)
+      value = kEmptyHashValue;
+    else
+      value -= subValue;
+    items[i] = value;
+  }
+}
+
+static void MatchFinder_Normalize(CMatchFinder *p)
+{
+  UInt32 subValue = MatchFinder_GetSubValue(p);
+  MatchFinder_Normalize3(subValue, p->hash, p->hashSizeSum + p->numSons);
+  MatchFinder_ReduceOffsets(p, subValue);
+}
+
+static void MatchFinder_CheckLimits(CMatchFinder *p)
+{
+  if (p->pos == kMaxValForNormalize)
+    MatchFinder_Normalize(p);
+  if (!p->streamEndWasReached && p->keepSizeAfter == p->streamPos - p->pos)
+    MatchFinder_CheckAndMoveAndRead(p);
+  if (p->cyclicBufferPos == p->cyclicBufferSize)
+    p->cyclicBufferPos = 0;
+  MatchFinder_SetLimits(p);
+}
+
+static UInt32 * Hc_GetMatchesSpec(UInt32 lenLimit, UInt32 curMatch, UInt32 pos, const Byte *cur, CLzRef *son,
+    UInt32 _cyclicBufferPos, UInt32 _cyclicBufferSize, UInt32 cutValue,
+    UInt32 *distances, UInt32 maxLen)
+{
+  son[_cyclicBufferPos] = curMatch;
+  for (;;)
+  {
+    UInt32 delta = pos - curMatch;
+    if (cutValue-- == 0 || delta >= _cyclicBufferSize)
+      return distances;
+    {
+      const Byte *pb = cur - delta;
+      curMatch = son[_cyclicBufferPos - delta + ((delta > _cyclicBufferPos) ? _cyclicBufferSize : 0)];
+      if (pb[maxLen] == cur[maxLen] && *pb == *cur)
+      {
+        UInt32 len = 0;
+        while (++len != lenLimit)
+          if (pb[len] != cur[len])
+            break;
+        if (maxLen < len)
+        {
+          *distances++ = maxLen = len;
+          *distances++ = delta - 1;
+          if (len == lenLimit)
+            return distances;
+        }
+      }
+    }
+  }
+}
+
+UInt32 * GetMatchesSpec1(UInt32 le