[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [39257] branches/soc-2011-garlic: merge with trunk r39216

xiao xiangquan xiaoxiangquan at gmail.com
Wed Aug 10 16:32:04 CEST 2011


Revision: 39257
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39257
Author:   xiaoxiangquan
Date:     2011-08-10 14:32:03 +0000 (Wed, 10 Aug 2011)
Log Message:
-----------
merge with trunk r39216

Revision Links:
--------------
    http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39216

Modified Paths:
--------------
    branches/soc-2011-garlic/CMakeLists.txt
    branches/soc-2011-garlic/SConstruct
    branches/soc-2011-garlic/build_files/buildbot/config/user-config-i686.py
    branches/soc-2011-garlic/build_files/buildbot/config/user-config-player-i686.py
    branches/soc-2011-garlic/build_files/buildbot/config/user-config-player-x86_64.py
    branches/soc-2011-garlic/build_files/buildbot/config/user-config-x86_64.py
    branches/soc-2011-garlic/build_files/buildbot/master.cfg
    branches/soc-2011-garlic/build_files/buildbot/slave_compile.py
    branches/soc-2011-garlic/build_files/buildbot/slave_pack.py
    branches/soc-2011-garlic/build_files/cmake/cmake_consistency_check.py
    branches/soc-2011-garlic/build_files/cmake/cmake_netbeans_project.py
    branches/soc-2011-garlic/build_files/cmake/cmake_qtcreator_project.py
    branches/soc-2011-garlic/build_files/cmake/macros.cmake
    branches/soc-2011-garlic/build_files/scons/config/darwin-config.py
    branches/soc-2011-garlic/build_files/scons/config/linux2-config.py
    branches/soc-2011-garlic/build_files/scons/config/win32-vc-config.py
    branches/soc-2011-garlic/build_files/scons/config/win64-vc-config.py
    branches/soc-2011-garlic/build_files/scons/tools/Blender.py
    branches/soc-2011-garlic/build_files/scons/tools/btools.py
    branches/soc-2011-garlic/doc/doxygen/Doxyfile
    branches/soc-2011-garlic/doc/python_api/blender-org/static/default.css_t
    branches/soc-2011-garlic/doc/python_api/examples/bge.constraints.py
    branches/soc-2011-garlic/doc/python_api/examples/bge.texture.1.py
    branches/soc-2011-garlic/doc/python_api/examples/bge.texture.py
    branches/soc-2011-garlic/doc/python_api/examples/blf.py
    branches/soc-2011-garlic/doc/python_api/rst/bge.constraints.rst
    branches/soc-2011-garlic/doc/python_api/rst/bge.events.rst
    branches/soc-2011-garlic/doc/python_api/rst/bge.logic.rst
    branches/soc-2011-garlic/doc/python_api/rst/bge.render.rst
    branches/soc-2011-garlic/doc/python_api/rst/bge.texture.rst
    branches/soc-2011-garlic/doc/python_api/rst/bge.types.rst
    branches/soc-2011-garlic/doc/python_api/rst/bgl.rst
    branches/soc-2011-garlic/doc/python_api/sphinx_doc_gen.py
    branches/soc-2011-garlic/intern/ghost/CMakeLists.txt
    branches/soc-2011-garlic/intern/ghost/GHOST_C-api.h
    branches/soc-2011-garlic/intern/ghost/GHOST_ISystem.h
    branches/soc-2011-garlic/intern/ghost/GHOST_Types.h
    branches/soc-2011-garlic/intern/ghost/SConscript
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_C-api.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_DisplayManagerWin32.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_DropTargetWin32.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_DropTargetWin32.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_EventManager.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_EventNDOF.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_NDOFManager.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_NDOFManager.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_System.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_System.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_SystemCocoa.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_SystemCocoa.mm
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_SystemPathsWin32.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_SystemPathsWin32.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_SystemPathsX11.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_SystemSDL.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_SystemWin32.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_SystemWin32.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_SystemX11.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_SystemX11.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_TaskbarWin32.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_WindowWin32.h
    branches/soc-2011-garlic/release/scripts/modules/addon_utils.py
    branches/soc-2011-garlic/release/scripts/modules/bpy/__init__.py
    branches/soc-2011-garlic/release/scripts/modules/bpy/path.py
    branches/soc-2011-garlic/release/scripts/modules/bpy/utils.py
    branches/soc-2011-garlic/release/scripts/modules/bpy_extras/__init__.py
    branches/soc-2011-garlic/release/scripts/modules/bpy_extras/image_utils.py
    branches/soc-2011-garlic/release/scripts/modules/bpy_extras/io_utils.py
    branches/soc-2011-garlic/release/scripts/modules/bpy_extras/mesh_utils.py
    branches/soc-2011-garlic/release/scripts/modules/bpy_extras/object_utils.py
    branches/soc-2011-garlic/release/scripts/modules/bpy_extras/view3d_utils.py
    branches/soc-2011-garlic/release/scripts/modules/bpyml.py
    branches/soc-2011-garlic/release/scripts/modules/bpyml_ui.py
    branches/soc-2011-garlic/release/scripts/modules/keyingsets_utils.py
    branches/soc-2011-garlic/release/scripts/modules/rna_info.py
    branches/soc-2011-garlic/release/scripts/presets/ffmpeg/xvid.py
    branches/soc-2011-garlic/release/scripts/startup/bl_operators/image.py
    branches/soc-2011-garlic/release/scripts/startup/bl_operators/object_align.py
    branches/soc-2011-garlic/release/scripts/startup/bl_operators/uvcalc_lightmap.py
    branches/soc-2011-garlic/release/scripts/startup/bl_operators/wm.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/properties_data_curve.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/properties_data_empty.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/properties_material.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/properties_particle.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/properties_world.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/space_info.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/space_node.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/space_userpref.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/space_userpref_keymap.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/space_view3d.py
    branches/soc-2011-garlic/release/scripts/startup/bl_ui/space_view3d_toolbar.py
    branches/soc-2011-garlic/release/scripts/templates/addon_add_object.py
    branches/soc-2011-garlic/release/scripts/templates/batch_export.py
    branches/soc-2011-garlic/release/scripts/templates/operator_modal.py
    branches/soc-2011-garlic/release/scripts/templates/operator_modal_draw.py
    branches/soc-2011-garlic/release/scripts/templates/operator_modal_view3d.py
    branches/soc-2011-garlic/release/scripts/templates/ui_menu.py
    branches/soc-2011-garlic/release/text/readme.html
    branches/soc-2011-garlic/source/blender/blenkernel/BKE_curve.h
    branches/soc-2011-garlic/source/blender/blenkernel/BKE_global.h
    branches/soc-2011-garlic/source/blender/blenkernel/BKE_material.h
    branches/soc-2011-garlic/source/blender/blenkernel/intern/DerivedMesh.c
    branches/soc-2011-garlic/source/blender/blenkernel/intern/blender.c
    branches/soc-2011-garlic/source/blender/blenkernel/intern/curve.c
    branches/soc-2011-garlic/source/blender/blenkernel/intern/ipo.c
    branches/soc-2011-garlic/source/blender/blenkernel/intern/key.c
    branches/soc-2011-garlic/source/blender/blenkernel/intern/material.c
    branches/soc-2011-garlic/source/blender/blenkernel/intern/mesh.c
    branches/soc-2011-garlic/source/blender/blenlib/intern/BLI_args.c
    branches/soc-2011-garlic/source/blender/blenlib/intern/pbvh.c
    branches/soc-2011-garlic/source/blender/blenloader/BLO_readfile.h
    branches/soc-2011-garlic/source/blender/blenloader/intern/readfile.c
    branches/soc-2011-garlic/source/blender/blenloader/intern/writefile.c
    branches/soc-2011-garlic/source/blender/editors/curve/editcurve.c
    branches/soc-2011-garlic/source/blender/editors/curve/editfont.c
    branches/soc-2011-garlic/source/blender/editors/gpencil/gpencil_paint.c
    branches/soc-2011-garlic/source/blender/editors/include/BIF_glutil.h
    branches/soc-2011-garlic/source/blender/editors/include/ED_object.h
    branches/soc-2011-garlic/source/blender/editors/include/ED_transform.h
    branches/soc-2011-garlic/source/blender/editors/include/UI_interface.h
    branches/soc-2011-garlic/source/blender/editors/include/UI_resources.h
    branches/soc-2011-garlic/source/blender/editors/interface/interface.c
    branches/soc-2011-garlic/source/blender/editors/interface/interface_anim.c
    branches/soc-2011-garlic/source/blender/editors/interface/interface_handlers.c
    branches/soc-2011-garlic/source/blender/editors/interface/interface_icons.c
    branches/soc-2011-garlic/source/blender/editors/interface/interface_layout.c
    branches/soc-2011-garlic/source/blender/editors/interface/interface_regions.c
    branches/soc-2011-garlic/source/blender/editors/interface/interface_style.c
    branches/soc-2011-garlic/source/blender/editors/interface/interface_templates.c
    branches/soc-2011-garlic/source/blender/editors/interface/interface_utils.c
    branches/soc-2011-garlic/source/blender/editors/interface/interface_widgets.c
    branches/soc-2011-garlic/source/blender/editors/interface/resources.c
    branches/soc-2011-garlic/source/blender/editors/object/object_edit.c
    branches/soc-2011-garlic/source/blender/editors/object/object_relations.c
    branches/soc-2011-garlic/source/blender/editors/screen/glutil.c
    branches/soc-2011-garlic/source/blender/editors/screen/screen_ops.c
    branches/soc-2011-garlic/source/blender/editors/sculpt_paint/paint_image.c
    branches/soc-2011-garlic/source/blender/editors/sculpt_paint/paint_stroke.c
    branches/soc-2011-garlic/source/blender/editors/space_file/file_ops.c
    branches/soc-2011-garlic/source/blender/editors/space_image/image_intern.h
    branches/soc-2011-garlic/source/blender/editors/space_image/image_ops.c
    branches/soc-2011-garlic/source/blender/editors/space_image/space_image.c
    branches/soc-2011-garlic/source/blender/editors/space_node/drawnode.c
    branches/soc-2011-garlic/source/blender/editors/space_node/node_edit.c
    branches/soc-2011-garlic/source/blender/editors/space_sequencer/sequencer_draw.c
    branches/soc-2011-garlic/source/blender/editors/space_sequencer/sequencer_edit.c
    branches/soc-2011-garlic/source/blender/editors/space_view3d/view3d_draw.c
    branches/soc-2011-garlic/source/blender/editors/space_view3d/view3d_edit.c
    branches/soc-2011-garlic/source/blender/editors/space_view3d/view3d_fly.c
    branches/soc-2011-garlic/source/blender/editors/space_view3d/view3d_header.c
    branches/soc-2011-garlic/source/blender/editors/space_view3d/view3d_intern.h
    branches/soc-2011-garlic/source/blender/editors/space_view3d/view3d_ops.c
    branches/soc-2011-garlic/source/blender/editors/space_view3d/view3d_select.c
    branches/soc-2011-garlic/source/blender/editors/space_view3d/view3d_view.c
    branches/soc-2011-garlic/source/blender/editors/transform/CMakeLists.txt
    branches/soc-2011-garlic/source/blender/editors/transform/transform.c
    branches/soc-2011-garlic/source/blender/editors/transform/transform.h
    branches/soc-2011-garlic/source/blender/editors/transform/transform_generics.c
    branches/soc-2011-garlic/source/blender/editors/transform/transform_ops.c
    branches/soc-2011-garlic/source/blender/gpu/intern/gpu_material.c
    branches/soc-2011-garlic/source/blender/makesdna/DNA_space_types.h
    branches/soc-2011-garlic/source/blender/makesdna/DNA_userdef_types.h
    branches/soc-2011-garlic/source/blender/makesdna/DNA_view3d_types.h
    branches/soc-2011-garlic/source/blender/makesdna/DNA_windowmanager_types.h
    branches/soc-2011-garlic/source/blender/makesrna/RNA_access.h
    branches/soc-2011-garlic/source/blender/makesrna/intern/CMakeLists.txt
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_ID.c
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_access.c
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_action.c
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_curve.c
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_internal.h
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_object_api.c
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_scene.c
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_userdef.c
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_wm.c
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_wm_api.c
    branches/soc-2011-garlic/source/blender/modifiers/intern/MOD_uvproject.c
    branches/soc-2011-garlic/source/blender/python/intern/bpy_driver.c
    branches/soc-2011-garlic/source/blender/python/intern/bpy_library.c
    branches/soc-2011-garlic/source/blender/python/intern/bpy_operator.c
    branches/soc-2011-garlic/source/blender/python/intern/bpy_props.c
    branches/soc-2011-garlic/source/blender/python/intern/bpy_rna.c
    branches/soc-2011-garlic/source/blender/python/intern/bpy_rna.h
    branches/soc-2011-garlic/source/blender/render/intern/source/rendercore.c
    branches/soc-2011-garlic/source/blender/windowmanager/CMakeLists.txt
    branches/soc-2011-garlic/source/blender/windowmanager/WM_api.h
    branches/soc-2011-garlic/source/blender/windowmanager/WM_types.h
    branches/soc-2011-garlic/source/blender/windowmanager/intern/wm.c
    branches/soc-2011-garlic/source/blender/windowmanager/intern/wm_event_system.c
    branches/soc-2011-garlic/source/blender/windowmanager/intern/wm_files.c
    branches/soc-2011-garlic/source/blender/windowmanager/intern/wm_init_exit.c
    branches/soc-2011-garlic/source/blender/windowmanager/intern/wm_keymap.c
    branches/soc-2011-garlic/source/blender/windowmanager/intern/wm_operators.c
    branches/soc-2011-garlic/source/blender/windowmanager/intern/wm_window.c
    branches/soc-2011-garlic/source/blender/windowmanager/wm_event_types.h
    branches/soc-2011-garlic/source/blenderplayer/bad_level_call_stubs/stubs.c
    branches/soc-2011-garlic/source/creator/creator.c
    branches/soc-2011-garlic/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
    branches/soc-2011-garlic/source/gameengine/Ketsji/KX_PyConstraintBinding.cpp
    branches/soc-2011-garlic/source/tests/CMakeLists.txt
    branches/soc-2011-garlic/source/tests/bl_run_operators.py
    branches/soc-2011-garlic/source/tests/check_deprecated.py
    branches/soc-2011-garlic/source/tools/CTS/FBlender.py

Added Paths:
-----------
    branches/soc-2011-garlic/build_files/cmake/Modules/FindSpacenav.cmake
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_NDOFManagerCocoa.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_NDOFManagerCocoa.mm
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_NDOFManagerWin32.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_NDOFManagerWin32.h
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_NDOFManagerX11.cpp
    branches/soc-2011-garlic/intern/ghost/intern/GHOST_NDOFManagerX11.h
    branches/soc-2011-garlic/source/blender/windowmanager/WM_keymap.h
    branches/soc-2011-garlic/source/tools/MakeGLStipple.py

Removed Paths:
-------------
    branches/soc-2011-garlic/source/blender/editors/transform/transform_ndofinput.c
    branches/soc-2011-garlic/source/creator/CMakeLists.txt.rej

Property Changed:
----------------
    branches/soc-2011-garlic/


Property changes on: branches/soc-2011-garlic
___________________________________________________________________
Modified: svn:mergeinfo
   - /trunk/blender:37070-37405
   + /trunk/blender:37070-37405,38788-39216

Modified: branches/soc-2011-garlic/CMakeLists.txt
===================================================================
--- branches/soc-2011-garlic/CMakeLists.txt	2011-08-10 14:26:51 UTC (rev 39256)
+++ branches/soc-2011-garlic/CMakeLists.txt	2011-08-10 14:32:03 UTC (rev 39257)
@@ -179,6 +179,7 @@
 option(WITH_LZMA          "Enable best LZMA compression, (used for pointcache)" ON)
 
 # Misc
+option(WITH_INPUT_NDOF "Enable NDOF input devices (SpaceNavigator and friends)" ON)
 option(WITH_RAYOPTIMIZATION	"Enable use of SIMD (SSE) optimizations for the raytracer" ON) 
 if(UNIX AND NOT APPLE)
 	option(WITH_INSTALL_PORTABLE "Install redistributeable runtime, otherwise install into CMAKE_INSTALL_PREFIX" ON)
@@ -452,6 +453,19 @@
 		endif()
 	endif()
 
+	if (WITH_INPUT_NDOF)
+		find_package(Spacenav)
+		if(NOT SPACENAV_FOUND)
+			set(WITH_INPUT_NDOF OFF)
+		endif()
+
+		# use generic names within blenders buildsystem.
+		if(SPACENAV_FOUND)
+			set(NDOF_INCLUDE_DIRS ${SPACENAV_INCLUDE_DIRS})
+			set(NDOF_LIBRARIES ${SPACENAV_LIBRARIES})
+		endif()
+	endif()
+
 	# OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed
 	set(PLATFORM_LINKLIBS "-lutil -lc -lm -lpthread -lstdc++")
 
@@ -896,29 +910,16 @@
 	endif()
 
 	if(WITH_PYTHON)
-		set(PYTHON_VERSION 3.2)
-		if(PYTHON_VERSION MATCHES 3.2)
-			# we use precompiled libraries for py 3.2 and up by default
+		# we use precompiled libraries for py 3.2 and up by default
 
-			# normally cached but not since we include them with blender
-			set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}")
-			# set(PYTHON_BINARY "${LIBDIR}/python/bin/python${PYTHON_VERSION}") # not used yet
-			set(PYTHON_LIBRARY python${PYTHON_VERSION})
-			set(PYTHON_LIBPATH "${LIBDIR}/python/lib/python${PYTHON_VERSION}")
-			# set(PYTHON_LINKFLAGS "-u _PyMac_Error")  # won't  build with this enabled
-		else()
-			# otherwise, use custom system framework
-			# *not used but maintained incase some dev wants to*
+		# normally cached but not since we include them with blender
+                set(PYTHON_VERSION 3.2)
+		set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}")
+		# set(PYTHON_BINARY "${LIBDIR}/python/bin/python${PYTHON_VERSION}") # not used yet
+		set(PYTHON_LIBRARY python${PYTHON_VERSION})
+		set(PYTHON_LIBPATH "${LIBDIR}/python/lib/python${PYTHON_VERSION}")
+		# set(PYTHON_LINKFLAGS "-u _PyMac_Error")  # won't  build with this enabled
 
-			set(PYTHON "/System/Library/Frameworks/Python.framework/Versions/" CACHE PATH)
-			set(PYTHON_INCLUDE_DIR "${PYTHON}${PYTHON_VERSION}/include/python${PYTHON_VERSION}" CACHE PATH)
-			# set(PYTHON_BINARY ${PYTHON}${PYTHON_VERSION}/bin/python${PYTHON_VERSION}) # not used yet
-			set(PYTHON_LIBRARY "" CACHE FILEPATH)
-			set(PYTHON_LIBPATH "${PYTHON}${PYTHON_VERSION}/lib/python${PYTHON_VERSION}/config" CACHE PATH)
-			set(PYTHON_LINKFLAGS "-u _PyMac_Error -framework System -framework Python" CACHE STRING)
-			unset(PYTHON)
-		endif()
-
 		# uncached vars
 		set(PYTHON_INCLUDE_DIRS "${PYTHON_INCLUDE_DIR}")
 		set(PYTHON_LIBRARIES  "${PYTHON_LIBRARY}")
@@ -972,7 +973,17 @@
 		set(SAMPLERATE_LIBPATH ${SAMPLERATE}/lib)
 	endif()
 
-	set(PLATFORM_LINKLIBS stdc++ SystemStubs)
+	find_library(SYSTEMSTUBS_LIBRARY 
+		NAMES 
+		SystemStubs 
+		PATHS
+	)
+	mark_as_advanced(SYSTEMSTUBS_LIBRARY)
+	if(SYSTEMSTUBS_LIBRARY)
+		set(PLATFORM_LINKLIBS stdc++ SystemStubs)
+ 	else()
+		set(PLATFORM_LINKLIBS stdc++)
+	endif()
 
 	if(WITH_COCOA)
 		set(PLATFORM_CFLAGS "-pipe -funsigned-char -DGHOST_COCOA")
@@ -987,9 +998,28 @@
 		elseif(WITH_CODEC_QUICKTIME)
 			set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -framework QuickTime")
 		endif()
+
+		# XXX - SOME MAC DEV PLEASE TEST WITH THE SDK INSTALLED! 
+		# ALSO SHOULD BE MOVED INTO OWN MODULE WHEN FUNCTIONAL
+		if(WITH_INPUT_NDOF)
+			# This thread it *should* work and check the framework - campbell
+			# http://www.cmake.org/pipermail/cmake/2005-December/007740.html
+			find_library(3D_CONNEXION_CLIENT_LIBRARY
+				NAMES 3DconnexionClient
+			)
+			if(NOT 3D_CONNEXION_CLIENT_LIBRARY)
+				set(WITH_INPUT_NDOF OFF)
+			endif()
+
+			if(WITH_INPUT_NDOF)
+				set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -weak_framework 3DconnexionClient")
+			endif()
+		endif()
+
 	else()
 		set(PLATFORM_CFLAGS "-pipe -funsigned-char")
 		set(PLATFORM_LINKFLAGS "-fexceptions -framework CoreServices -framework Foundation -framework IOKit -framework AppKit -framework Carbon -framework AGL -framework AudioUnit -framework AudioToolbox -framework CoreAudio -framework QuickTime")
+		set(WITH_INPUT_NDOF OFF)  # unsupported
 	endif()
 
 	if(WITH_OPENCOLLADA)
@@ -1029,6 +1059,10 @@
 		set(TIFF_LIBPATH ${TIFF}/lib)
 	endif()
 
+	if (WITH_INPUT_NDOF)
+		# linker needs "-weak_framework 3DconnexionClient"
+	endif()
+
 	set(EXETYPE MACOSX_BUNDLE)
 
 	set(CMAKE_C_FLAGS_DEBUG "-fno-strict-aliasing -g")
@@ -1054,20 +1088,34 @@
 	endif()
 endif()
 
+# See TEST_SSE_SUPPORT() for how this is defined.
+
 if(WITH_RAYOPTIMIZATION)
 	if(CMAKE_COMPILER_IS_GNUCC)
-		if(SUPPORT_SSE_BUILD)
-			set(PLATFORM_CFLAGS " -msse ${PLATFORM_CFLAGS}")
-			add_definitions(-D__SSE__ -D__MMX__)
+		set(_sse "-msse")
+		set(_sse2 "-msse2")
+	elseif(MSVC)
+		set(_sse "/arch:SSE")
+		set(_sse2 "/arch:SSE2")
+	else()
+		message(WARNING "SSE flags for this compiler not known")
+		set(_sse)
+		set(_sse2)
+	endif()
+
+	if(SUPPORT_SSE_BUILD)
+		set(PLATFORM_CFLAGS " ${_sse} ${PLATFORM_CFLAGS}")
+		add_definitions(-D__SSE__ -D__MMX__)
+	endif()
+	if(SUPPORT_SSE2_BUILD)
+		set(PLATFORM_CFLAGS " ${_sse2} ${PLATFORM_CFLAGS}")
+		add_definitions(-D__SSE2__)
+		if(NOT SUPPORT_SSE_BUILD) # dont double up
+			add_definitions(-D__MMX__)
 		endif()
-		if(SUPPORT_SSE2_BUILD)
-			set(PLATFORM_CFLAGS " -msse2 ${PLATFORM_CFLAGS}")
-			add_definitions(-D__SSE2__)
-			if(NOT SUPPORT_SSE_BUILD) # dont double up
-				add_definitions(-D__MMX__)
-			endif()
-		endif()
 	endif()
+	unset(_sse)
+	unset(_sse2)
 endif()
 
 if(WITH_IMAGE_OPENJPEG)
@@ -1306,6 +1354,7 @@
 	info_cfg_option(WITH_OPENCOLLADA)
 	info_cfg_option(WITH_FFTW3)
 	info_cfg_option(WITH_INTERNATIONAL)
+	info_cfg_option(WITH_INPUT_NDOF)
 
 	info_cfg_text("Compiler Options:")
 	info_cfg_option(WITH_BUILDINFO)

Modified: branches/soc-2011-garlic/SConstruct
===================================================================
--- branches/soc-2011-garlic/SConstruct	2011-08-10 14:26:51 UTC (rev 39256)
+++ branches/soc-2011-garlic/SConstruct	2011-08-10 14:32:03 UTC (rev 39257)
@@ -111,6 +111,11 @@
 
 # handling cmd line arguments & config file
 
+# bitness stuff
+tempbitness = int(B.arguments.get('BF_BITNESS', bitness)) # default to bitness found as per starting python
+if tempbitness in (32, 64): # only set if 32 or 64 has been given
+    bitness = int(tempbitness)
+
 # first check cmdline for toolset and we create env to work on
 quickie = B.arguments.get('BF_QUICK', None)
 quickdebug = B.arguments.get('BF_QUICKDEBUG', None)
@@ -241,13 +246,31 @@
     target_env_defs['BF_BUILDINFO'] = False
     target_env_defs['BF_NO_ELBEEM'] = True
     target_env_defs['WITH_BF_PYTHON'] = False
+    target_env_defs['WITH_BF_3DMOUSE'] = False
     
     # Merge blenderlite, let command line to override
     for k,v in target_env_defs.iteritems():
         if k not in B.arguments:
             env[k] = v
 
+# Extended OSX_SDK and 3D_CONNEXION_CLIENT_LIBRARY detection for OSX
+if env['OURPLATFORM']=='darwin':
+    print B.bc.OKGREEN + "Detected Xcode version: -- " + B.bc.ENDC + env['XCODE_CUR_VER'][:9] + " --"
+    print "Available " + env['MACOSX_SDK_CHECK']
+    if not 'Mac OS X 10.5' in env['MACOSX_SDK_CHECK']:
+        print  B.bc.OKGREEN + "MacOSX10.5.sdk not available:" + B.bc.ENDC + " using MacOSX10.6.sdk"
+    else:
+        print B.bc.OKGREEN + "Found recommended sdk :" + B.bc.ENDC + " using MacOSX10.5.sdk"
 
+    # for now, Mac builders must download and install the driver framework from 3Dconnexion
+    # necessary header file lives here when installed:
+    # /Library/Frameworks/3DconnexionClient.framework/Versions/Current/Headers/ConnexionClientAPI.h
+    if env['WITH_BF_3DMOUSE'] == 1 and not os.path.exists('/Library/Frameworks/3DconnexionClient.framework'):
+        print "3D_CONNEXION_CLIENT_LIBRARY not found, disabling WITH_BF_3DMOUSE" # avoid build errors !
+        env['WITH_BF_3DMOUSE'] = 0
+        env['FOUND_NDOF_DRIVERS'] = 0
+
+
 if env['WITH_BF_OPENMP'] == 1:
         if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
                 env['CCFLAGS'].append('/openmp')
@@ -658,11 +681,7 @@
         dllsources.append('${LCGDIR}/sndfile/lib/libsndfile-1.dll')
 
     if env['WITH_BF_FFMPEG']:
-        dllsources += ['${BF_FFMPEG_LIBPATH}/avcodec-52.dll',
-                    '${BF_FFMPEG_LIBPATH}/avformat-52.dll',
-                    '${BF_FFMPEG_LIBPATH}/avdevice-52.dll',
-                    '${BF_FFMPEG_LIBPATH}/avutil-50.dll',
-                    '${BF_FFMPEG_LIBPATH}/swscale-0.dll']
+        dllsources += env['BF_FFMPEG_DLL'].split()
 
     # Since the thumb handler is loaded by Explorer, architecture is
     # strict: the x86 build fails on x64 Windows. We need to ship

Modified: branches/soc-2011-garlic/build_files/buildbot/config/user-config-i686.py
===================================================================
--- branches/soc-2011-garlic/build_files/buildbot/config/user-config-i686.py	2011-08-10 14:26:51 UTC (rev 39256)
+++ branches/soc-2011-garlic/build_files/buildbot/config/user-config-i686.py	2011-08-10 14:32:03 UTC (rev 39257)
@@ -22,7 +22,7 @@
 WITH_BF_FFMPEG = True
 WITH_BF_STATICFFMPEG = True
 
-BF_FFMPEG = '/home/sources/staticlibs/ffmpeg'
+BF_FFMPEG = '/home/sources/staticlibs/ffmpeg-0.8'
 BF_FFMPEG_LIBPATH = '${BF_FFMPEG}/lib32'
 BF_FFMPEG_LIB_STATIC = '${BF_FFMPEG_LIBPATH}/libavformat.a ${BF_FFMPEG_LIBPATH}/libswscale.a ' + \
     '${BF_FFMPEG_LIBPATH}/libavcodec.a ${BF_FFMPEG_LIBPATH}/libavdevice.a ${BF_FFMPEG_LIBPATH}/libavutil.a ' + \
@@ -81,6 +81,12 @@
 BF_JEMALLOC = '/home/sources/staticlibs/jemalloc'
 BF_JEMALLOC_LIBPATH = '${BF_JEMALLOC}/lib32'
 
+# Use 3d mouse library
+WITH_BF_3DMOUSE = True
+WITH_BF_STATIC3DMOUSE = True
+BF_3DMOUSE = '/home/sources/staticlibs/spnav'
+BF_3DMOUSE_LIBPATH = '${BF_3DMOUSE}/lib32'
+
 # Compilation and optimization

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list