[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [29995] branches/render25: Render Branch: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r29923 :29994

Brecht Van Lommel brecht at blender.org
Mon Jul 5 19:35:38 CEST 2010


Revision: 29995
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=29995
Author:   blendix
Date:     2010-07-05 19:35:38 +0200 (Mon, 05 Jul 2010)

Log Message:
-----------
Render Branch: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r29923:29994

Modified Paths:
--------------
    branches/render25/CMake/macros.cmake
    branches/render25/CMakeLists.txt
    branches/render25/SConstruct
    branches/render25/intern/ghost/CMakeLists.txt
    branches/render25/intern/ghost/GHOST_C-api.h
    branches/render25/intern/ghost/GHOST_ISystem.h
    branches/render25/intern/ghost/intern/GHOST_C-api.cpp
    branches/render25/intern/ghost/intern/GHOST_System.h
    branches/render25/intern/ghost/intern/GHOST_SystemCarbon.cpp
    branches/render25/intern/ghost/intern/GHOST_SystemCarbon.h
    branches/render25/intern/ghost/intern/GHOST_SystemCocoa.h
    branches/render25/intern/ghost/intern/GHOST_SystemCocoa.mm
    branches/render25/intern/ghost/intern/GHOST_SystemWin32.cpp
    branches/render25/intern/ghost/intern/GHOST_SystemWin32.h
    branches/render25/intern/ghost/intern/GHOST_SystemX11.cpp
    branches/render25/intern/ghost/intern/GHOST_SystemX11.h
    branches/render25/intern/ghost/intern/Makefile
    branches/render25/release/scripts/ui/properties_physics_common.py
    branches/render25/release/scripts/ui/properties_texture.py
    branches/render25/release/scripts/ui/space_info.py
    branches/render25/release/scripts/ui/space_sequencer.py
    branches/render25/source/Makefile
    branches/render25/source/blender/blenfont/intern/blf_lang.c
    branches/render25/source/blender/blenkernel/BKE_multires.h
    branches/render25/source/blender/blenkernel/BKE_scene.h
    branches/render25/source/blender/blenkernel/SConscript
    branches/render25/source/blender/blenkernel/intern/blender.c
    branches/render25/source/blender/blenkernel/intern/depsgraph.c
    branches/render25/source/blender/blenkernel/intern/exotic.c
    branches/render25/source/blender/blenkernel/intern/group.c
    branches/render25/source/blender/blenkernel/intern/ipo.c
    branches/render25/source/blender/blenkernel/intern/library.c
    branches/render25/source/blender/blenkernel/intern/multires.c
    branches/render25/source/blender/blenkernel/intern/object.c
    branches/render25/source/blender/blenkernel/intern/scene.c
    branches/render25/source/blender/blenkernel/intern/sequencer.c
    branches/render25/source/blender/blenkernel/intern/texture.c
    branches/render25/source/blender/blenlib/BLI_path_util.h
    branches/render25/source/blender/blenlib/intern/BLI_bfile.c
    branches/render25/source/blender/blenlib/intern/path_util.c
    branches/render25/source/blender/blenloader/intern/readfile.c
    branches/render25/source/blender/blenloader/intern/writefile.c
    branches/render25/source/blender/editors/animation/anim_channels_defines.c
    branches/render25/source/blender/editors/animation/anim_deps.c
    branches/render25/source/blender/editors/animation/anim_filter.c
    branches/render25/source/blender/editors/animation/keyframes_draw.c
    branches/render25/source/blender/editors/animation/keyingsets.c
    branches/render25/source/blender/editors/include/ED_anim_api.h
    branches/render25/source/blender/editors/include/ED_render.h
    branches/render25/source/blender/editors/include/UI_interface.h
    branches/render25/source/blender/editors/interface/interface_handlers.c
    branches/render25/source/blender/editors/interface/interface_icons.c
    branches/render25/source/blender/editors/interface/interface_intern.h
    branches/render25/source/blender/editors/interface/interface_templates.c
    branches/render25/source/blender/editors/interface/interface_widgets.c
    branches/render25/source/blender/editors/metaball/mball_edit.c
    branches/render25/source/blender/editors/object/object_add.c
    branches/render25/source/blender/editors/object/object_edit.c
    branches/render25/source/blender/editors/object/object_modifier.c
    branches/render25/source/blender/editors/object/object_relations.c
    branches/render25/source/blender/editors/render/render_internal.c
    branches/render25/source/blender/editors/render/render_preview.c
    branches/render25/source/blender/editors/screen/area.c
    branches/render25/source/blender/editors/space_file/file_ops.c
    branches/render25/source/blender/editors/space_file/filelist.c
    branches/render25/source/blender/editors/space_file/fsmenu.c
    branches/render25/source/blender/editors/space_file/fsmenu.h
    branches/render25/source/blender/editors/space_file/space_file.c
    branches/render25/source/blender/editors/space_image/SConscript
    branches/render25/source/blender/editors/space_info/space_info.c
    branches/render25/source/blender/editors/space_node/drawnode.c
    branches/render25/source/blender/editors/space_node/node_edit.c
    branches/render25/source/blender/editors/space_sequencer/sequencer_edit.c
    branches/render25/source/blender/editors/space_view3d/drawobject.c
    branches/render25/source/blender/editors/space_view3d/view3d_draw.c
    branches/render25/source/blender/editors/space_view3d/view3d_edit.c
    branches/render25/source/blender/editors/transform/transform_conversions.c
    branches/render25/source/blender/editors/transform/transform_generics.c
    branches/render25/source/blender/editors/util/ed_util.c
    branches/render25/source/blender/gpu/GPU_extensions.h
    branches/render25/source/blender/gpu/intern/gpu_extensions.c
    branches/render25/source/blender/makesdna/DNA_action_types.h
    branches/render25/source/blender/makesdna/DNA_node_types.h
    branches/render25/source/blender/makesdna/DNA_object_types.h
    branches/render25/source/blender/makesdna/DNA_sequence_types.h
    branches/render25/source/blender/makesdna/DNA_texture_types.h
    branches/render25/source/blender/makesrna/SConscript
    branches/render25/source/blender/makesrna/intern/rna_access.c
    branches/render25/source/blender/makesrna/intern/rna_action.c
    branches/render25/source/blender/makesrna/intern/rna_curve.c
    branches/render25/source/blender/makesrna/intern/rna_object_force.c
    branches/render25/source/blender/makesrna/intern/rna_scene.c
    branches/render25/source/blender/makesrna/intern/rna_texture.c
    branches/render25/source/blender/makesrna/intern/rna_ui_api.c
    branches/render25/source/blender/modifiers/intern/MOD_meshdeform.c
    branches/render25/source/blender/nodes/intern/CMP_nodes/CMP_colorbalance.c
    branches/render25/source/blender/python/intern/bpy.c
    branches/render25/source/blender/python/intern/bpy_interface.c
    branches/render25/source/blender/readblenfile/intern/BLO_readblenfile.c
    branches/render25/source/blender/render/CMakeLists.txt
    branches/render25/source/blender/render/intern/source/texture.c
    branches/render25/source/blender/windowmanager/WM_api.h
    branches/render25/source/blender/windowmanager/WM_types.h
    branches/render25/source/blender/windowmanager/intern/wm_draw.c
    branches/render25/source/blender/windowmanager/intern/wm_event_system.c
    branches/render25/source/blender/windowmanager/intern/wm_files.c
    branches/render25/source/blender/windowmanager/intern/wm_init_exit.c
    branches/render25/source/blender/windowmanager/intern/wm_jobs.c
    branches/render25/source/blender/windowmanager/intern/wm_subwindow.c
    branches/render25/source/blender/windowmanager/wm_files.h
    branches/render25/source/creator/CMakeLists.txt
    branches/render25/source/creator/creator.c
    branches/render25/tools/Blender.py
    branches/render25/tools/btools.py

Added Paths:
-----------
    branches/render25/intern/ghost/GHOST_Path-api.h
    branches/render25/intern/ghost/intern/GHOST_Path-api.cpp

Modified: branches/render25/CMake/macros.cmake
===================================================================
--- branches/render25/CMake/macros.cmake	2010-07-05 16:42:42 UTC (rev 29994)
+++ branches/render25/CMake/macros.cmake	2010-07-05 17:35:38 UTC (rev 29995)
@@ -181,3 +181,20 @@
 		TARGET_LINK_LIBRARIES(${target} ${PTHREADS_LIB})
 	ENDIF(WIN32)
 ENDMACRO(SETUP_LIBLINKS)
+
+MACRO(TEST_SSE_SUPPORT)
+	INCLUDE(CheckCXXSourceCompiles)
+
+	MESSAGE(STATUS "Detecting SSE support")
+	IF(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
+		SET(CMAKE_REQUIRED_FLAGS "-msse -msse2")
+	ELSEIF(MSVC)
+		SET(CMAKE_REQUIRED_FLAGS "/arch:SSE2")
+	ENDIF()
+
+	CHECK_CXX_SOURCE_COMPILES("
+		#include <xmmintrin.h>
+		int main() { __m128 v = _mm_setzero_ps(); return 0; }"
+	SUPPORT_SSE_BUILD)
+ENDMACRO(TEST_SSE_SUPPORT)
+

Modified: branches/render25/CMakeLists.txt
===================================================================
--- branches/render25/CMakeLists.txt	2010-07-05 16:42:42 UTC (rev 29994)
+++ branches/render25/CMakeLists.txt	2010-07-05 17:35:38 UTC (rev 29995)
@@ -60,6 +60,10 @@
 SET(BLENDER_VERSION  2.5)
 
 #-----------------------------------------------------------------------------
+# Load some macros.
+INCLUDE(CMake/macros.cmake)
+
+#-----------------------------------------------------------------------------
 # Set default config options
 
 # Blender internal features
@@ -114,7 +118,7 @@
 OPTION(WITH_CXX_GUARDEDALLOC "Enable GuardedAlloc for C++ memory allocation tracking" OFF)
 OPTION(WITH_INSTALL       "Install accompanying scripts and language files needed to run blender" ON)
 
-IF (APPLE)
+IF(APPLE)
 	OPTION(WITH_COCOA	  "Use Cocoa framework instead of deprecated Carbon" ON)
 	OPTION(USE_QTKIT	  "Use QtKit instead of Carbon quicktime (needed for having partial quicktime for 64bit)" OFF)
 	OPTION(WITH_LIBS10.5  "Use 10.5 libs (needed for 64bit builds)" OFF)
@@ -128,6 +132,8 @@
 	MESSAGE("WARNING: WITH_PLAYER needs WITH_GAMEENGINE")
 ENDIF(NOT WITH_GAMEENGINE AND WITH_PLAYER)
 
+TEST_SSE_SUPPORT()
+
 # disabled for now, not supported
 # OPTION(WITH_WEBPLUGIN     "Enable Web Plugin (Unix only)" OFF)
 
@@ -140,10 +146,6 @@
 # When changing any of this remember to update the notes in doc/blender-cmake.txt
 
 #-----------------------------------------------------------------------------
-# Load some macros.
-INCLUDE(CMake/macros.cmake)
-
-#-----------------------------------------------------------------------------
 #Platform specifics
 
 IF(UNIX AND NOT APPLE)
@@ -308,9 +310,11 @@
 
 	SET(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing -Wno-char-subscripts")
 
-	IF(WITH_RAYOPTIMIZATION)
-		SET(PLATFORM_CFLAGS " -msse ${PLATFORM_CFLAGS}")
-	ENDIF(WITH_RAYOPTIMIZATION)
+	IF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
+		SET(PLATFORM_CFLAGS " -msse -msse2 ${PLATFORM_CFLAGS}")
+		ADD_DEFINITIONS(-D__SSE__)
+		ADD_DEFINITIONS(-D__MMX__)
+	ENDIF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
 
 	SET(PLATFORM_LINKFLAGS "-pthread")
 
@@ -396,6 +400,11 @@
 		SET(QUICKTIME_LIBPATH ${QUICKTIME}/Libraries)
 	ENDIF(WITH_QUICKTIME)
 
+	IF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
+		ADD_DEFINITIONS(-D__SSE__)
+		ADD_DEFINITIONS(-D__MMX__)
+	ENDIF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
+
 	IF(MSVC)
 		IF(CMAKE_CL_64)
 			SET(LLIBS kernel32 user32 vfw32 winmm ws2_32 )
@@ -797,6 +806,12 @@
 		SET(TIFF_LIBPATH ${TIFF}/lib)
 	ENDIF(WITH_TIFF)
 
+	IF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
+		SET(PLATFORM_CFLAGS " -msse -msse2 ${PLATFORM_CFLAGS}")
+		ADD_DEFINITIONS(-D__SSE__)
+		ADD_DEFINITIONS(-D__MMX__)
+	ENDIF(WITH_RAYOPTIMIZATION AND SUPPORT_SSE_BUILD)
+
 	SET(EXETYPE MACOSX_BUNDLE)
 
 	SET(CMAKE_C_FLAGS_DEBUG "-fno-strict-aliasing -g")

Modified: branches/render25/SConstruct
===================================================================
--- branches/render25/SConstruct	2010-07-05 16:42:42 UTC (rev 29994)
+++ branches/render25/SConstruct	2010-07-05 17:35:38 UTC (rev 29995)
@@ -56,6 +56,8 @@
 btools = tools.btools
 B = tools.Blender
 
+VERSION = tools.btools.VERSION # This is used in creating the local config directories
+
 ### globals ###
 platform = sys.platform
 quickie = None
@@ -193,7 +195,7 @@
 # NOTE: only do the scripts directory for now, otherwise is too disruptive for developers
 # TODO: perhaps we need an option (off by default) to not do this altogether...
 if not env['WITHOUT_BF_INSTALL'] and not env['WITHOUT_BF_OVERWRITE_INSTALL']:
-	scriptsDir = env['BF_INSTALLDIR'] + os.sep + '.blender' + os.sep + 'scripts'
+	scriptsDir = os.path.join(env['BF_INSTALLDIR'], VERSION, 'scripts')
 	if os.path.isdir(scriptsDir):
 		print B.bc.OKGREEN + "Clearing installation directory%s: %s" % (B.bc.ENDC, os.path.abspath(scriptsDir))
 		shutil.rmtree(scriptsDir)
@@ -434,9 +436,11 @@
 	
 	blenderinstall = env.Install(dir=dir, source=B.program_list)
 
-#-- .blender
-#- dont do .blender and scripts for darwin, it is already in the bundle
+#-- local path = config files in install dir: installdir\VERSION
+#- dont do config and scripts for darwin, it is already in the bundle
 dotblendlist = []
+datafileslist = []
+datafilestargetlist = []
 dottargetlist = []
 scriptinstall = []
 
@@ -455,20 +459,29 @@
 					if f.endswith('.ttf'):
 						continue
 				
-				dotblendlist.append(os.path.join(dp, 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
-				
-				dottargetlist.append(dir + os.sep + f)
+				if 'locale' in dp:
+					datafileslist.append(os.path.join(dp,f))
+					if env['WITH_BF_FHS']:	dir= os.path.join(*([BLENDERPATH] + ['datafiles'] + dp.split(os.sep)[2:]))	# skip bin/.blender
+					else:					dir= os.path.join(*([BLENDERPATH] + [VERSION] + ['datafiles'] + dp.split(os.sep)[1:]))	# skip bin
+					datafilestargetlist.append(dir + os.sep + f)
+
+				else:
+					dotblendlist.append(os.path.join(dp, f))
+					if env['WITH_BF_FHS']:	dir= os.path.join(*([BLENDERPATH] + ['config'] + dp.split(os.sep)[2:]))	# skip bin/.blender
+					else:					dir= os.path.join(*([BLENDERPATH] + [VERSION] + ['config'] + dp.split(os.sep)[1:]))	# skip bin
 					
-
+					dottargetlist.append(dir + os.sep + f)
+					
 		dotblenderinstall = []
 		for targetdir,srcfile in zip(dottargetlist, dotblendlist):
 			td, tf = os.path.split(targetdir)
 			dotblenderinstall.append(env.Install(dir=td, source=srcfile))
+		for targetdir,srcfile in zip(datafilestargetlist, datafileslist):
+			td, tf = os.path.split(targetdir)
+			dotblenderinstall.append(env.Install(dir=td, source=srcfile))
 		
 		if env['WITH_BF_PYTHON']:
-			#-- .blender/scripts
+			#-- local/VERSION/scripts
 			scriptpaths=['release/scripts']
 			for scriptpath in scriptpaths:
 				for dp, dn, df in os.walk(scriptpath):
@@ -476,7 +489,7 @@
 						dn.remove('.svn')
 					
 					if env['WITH_BF_FHS']:		dir = BLENDERPATH
-					else:						dir = os.path.join(env['BF_INSTALLDIR'], '.blender')				
+					else:						dir = os.path.join(env['BF_INSTALLDIR'], VERSION)				
 					dir += os.sep + os.path.basename(scriptpath) + dp[len(scriptpath):]
 					
 					source=[os.path.join(dp, f) for f in df if f[-3:]!='pyc']

Modified: branches/render25/intern/ghost/CMakeLists.txt
===================================================================
--- branches/render25/intern/ghost/CMakeLists.txt	2010-07-05 16:42:42 UTC (rev 29994)
+++ branches/render25/intern/ghost/CMakeLists.txt	2010-07-05 17:35:38 UTC (rev 29995)
@@ -42,6 +42,7 @@
 	${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_ISystem.cpp
 	${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_ModifierKeys.cpp
 	${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_NDOFManager.cpp
+	${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_Path-api.cpp
 	${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_Rect.cpp
 	${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_System.cpp
 	${CMAKE_CURRENT_SOURCE_DIR}/intern/GHOST_TimerManager.cpp

Modified: branches/render25/intern/ghost/GHOST_C-api.h
===================================================================
--- branches/render25/intern/ghost/GHOST_C-api.h	2010-07-05 16:42:42 UTC (rev 29994)
+++ branches/render25/intern/ghost/GHOST_C-api.h	2010-07-05 17:35:38 UTC (rev 29995)
@@ -836,21 +836,7 @@
  */
 extern void GHOST_putClipboard(GHOST_TInt8 *buffer, int selection);
 
-/**
- * Determine the base dir in which shared resources are located. It will first try to use
- * "unpack and run" path, then look for properly installed path, not including versioning.
- * @return Unsigned char string pointing to system dir (eg /usr/share/blender/).
- */
-extern const GHOST_TUns8* GHOST_getSystemDir();
 
-/**
- * Determine the base dir in which user configuration is stored, not including versioning.
- * If needed, it will create the base directory.
- * @return Unsigned char string pointing to user dir (eg ~/.blender/).
- */
-extern const GHOST_TUns8* GHOST_getUserDir();
-
-
 #ifdef __cplusplus
 }
 #endif

Modified: branches/render25/intern/ghost/GHOST_ISystem.h
===================================================================
--- branches/render25/intern/ghost/GHOST_ISystem.h	2010-07-05 16:42:42 UTC (rev 29994)
+++ branches/render25/intern/ghost/GHOST_ISystem.h	2010-07-05 17:35:38 UTC (rev 29995)
@@ -370,12 +370,7 @@
 	 */
 	virtual void putClipboard(GHOST_TInt8 *buffer, bool selection) const = 0;
 
-	
-	/***************************************************************************************
-	 ** Determine special paths.
-	 ***************************************************************************************/
-
-	/**
+		  	/**
 	 * Determine the base dir in which shared resources are located. It will first try to use
 	 * "unpack and run" path, then look for properly installed path, not including versioning.
 	 * @return Unsigned char string pointing to system dir (eg /usr/share/blender/).
@@ -389,6 +384,11 @@
 	 */
 	virtual const GHOST_TUns8* getUserDir() const = 0;
 
+	/**
+	  * Determine the directory of the current binary
+	  * @return Unsigned char string pointing to the binary dir
+	  */
+	 virtual const GHOST_TUns8* getBinaryDir() const = 0;
 protected:
 	/**
 	 * Initialize the system.

Copied: branches/render25/intern/ghost/GHOST_Path-api.h (from rev 29983, trunk/blender/intern/ghost/GHOST_Path-api.h)
===================================================================
--- branches/render25/intern/ghost/GHOST_Path-api.h	                        (rev 0)

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list