[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [38694] branches/bmesh/blender: svn merge -r37800:37900 https://svn.blender.org/svnroot/bf-blender/trunk/ blender

Campbell Barton ideasman42 at gmail.com
Mon Jul 25 16:54:30 CEST 2011


Revision: 38694
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=38694
Author:   campbellbarton
Date:     2011-07-25 14:54:29 +0000 (Mon, 25 Jul 2011)
Log Message:
-----------
svn merge -r37800:37900 https://svn.blender.org/svnroot/bf-blender/trunk/blender

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

Modified Paths:
--------------
    branches/bmesh/blender/CMakeLists.txt
    branches/bmesh/blender/GNUmakefile
    branches/bmesh/blender/build_files/cmake/macros.cmake
    branches/bmesh/blender/build_files/scons/config/aix4-config.py
    branches/bmesh/blender/build_files/scons/config/win32-vc-config.py
    branches/bmesh/blender/build_files/scons/config/win64-vc-config.py
    branches/bmesh/blender/doc/python_api/rst/change_log.rst
    branches/bmesh/blender/doc/python_api/sphinx_doc_gen.py
    branches/bmesh/blender/intern/ghost/intern/GHOST_DisplayManagerCocoa.mm
    branches/bmesh/blender/intern/ghost/intern/GHOST_SystemCocoa.h
    branches/bmesh/blender/intern/ghost/intern/GHOST_SystemCocoa.mm
    branches/bmesh/blender/intern/ghost/intern/GHOST_WindowCocoa.h
    branches/bmesh/blender/intern/ghost/intern/GHOST_WindowCocoa.mm
    branches/bmesh/blender/intern/iksolver/intern/IK_QSegment.cpp
    branches/bmesh/blender/intern/itasc/ConstraintSet.cpp
    branches/bmesh/blender/release/scripts/startup/bl_operators/uvcalc_smart_project.py
    branches/bmesh/blender/release/scripts/startup/bl_operators/wm.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_material.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/space_image.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/space_view3d.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/space_view3d_toolbar.py
    branches/bmesh/blender/source/blender/blenkernel/intern/blender.c
    branches/bmesh/blender/source/blender/blenkernel/intern/brush.c
    branches/bmesh/blender/source/blender/blenkernel/intern/paint.c
    branches/bmesh/blender/source/blender/blenkernel/intern/sound.c
    branches/bmesh/blender/source/blender/blenlib/BLI_math_geom.h
    branches/bmesh/blender/source/blender/blenlib/intern/math_geom.c
    branches/bmesh/blender/source/blender/blenloader/intern/readfile.c
    branches/bmesh/blender/source/blender/editors/armature/armature_intern.h
    branches/bmesh/blender/source/blender/editors/armature/armature_ops.c
    branches/bmesh/blender/source/blender/editors/armature/editarmature.c
    branches/bmesh/blender/source/blender/editors/datafiles/startup.blend.c
    branches/bmesh/blender/source/blender/editors/object/object_bake.c
    branches/bmesh/blender/source/blender/editors/sculpt_paint/paint_image.c
    branches/bmesh/blender/source/blender/editors/space_info/info_stats.c
    branches/bmesh/blender/source/blender/editors/transform/transform_constraints.c
    branches/bmesh/blender/source/blender/editors/uvedit/uvedit_draw.c
    branches/bmesh/blender/source/blender/gpu/intern/gpu_buffers.c
    branches/bmesh/blender/source/blender/makesdna/DNA_space_types.h
    branches/bmesh/blender/source/blender/makesrna/intern/rna_ID.c
    branches/bmesh/blender/source/blender/makesrna/intern/rna_rna.c
    branches/bmesh/blender/source/blender/makesrna/intern/rna_space.c
    branches/bmesh/blender/source/blender/nodes/intern/CMP_nodes/CMP_channelMatte.c
    branches/bmesh/blender/source/blender/nodes/intern/CMP_nodes/CMP_glare.c
    branches/bmesh/blender/source/blender/nodes/intern/CMP_nodes/CMP_rotate.c
    branches/bmesh/blender/source/blender/python/generic/mathutils_Matrix.c
    branches/bmesh/blender/source/blender/python/generic/mathutils_geometry.c
    branches/bmesh/blender/source/blender/render/intern/source/imagetexture.c
    branches/bmesh/blender/source/blender/render/intern/source/volume_precache.c
    branches/bmesh/blender/source/blender/render/intern/source/volumetric.c
    branches/bmesh/blender/source/blender/windowmanager/intern/wm_event_system.c
    branches/bmesh/blender/source/blender/windowmanager/intern/wm_files.c
    branches/bmesh/blender/source/gameengine/GameLogic/Joystick/SCA_Joystick.cpp
    branches/bmesh/blender/source/gameengine/GamePlayer/ghost/GPG_Application.cpp
    branches/bmesh/blender/source/gameengine/Physics/Bullet/CcdPhysicsController.cpp
    branches/bmesh/blender/source/gameengine/Physics/Bullet/CcdPhysicsEnvironment.h

Added Paths:
-----------
    branches/bmesh/blender/doc/python_api/examples/aud.py

Property Changed:
----------------
    branches/bmesh/blender/
    branches/bmesh/blender/release/scripts/startup/bl_operators/add_mesh_torus.py
    branches/bmesh/blender/release/scripts/startup/bl_operators/uvcalc_smart_project.py
    branches/bmesh/blender/release/scripts/startup/bl_operators/vertexpaint_dirt.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_data_armature.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_data_bone.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_data_camera.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_data_empty.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_data_lamp.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_data_lattice.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_data_mesh.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_data_metaball.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_data_modifier.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_game.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_material.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_particle.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_physics_field.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_physics_fluid.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_physics_smoke.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_texture.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/properties_world.py
    branches/bmesh/blender/release/scripts/startup/bl_ui/space_node.py
    branches/bmesh/blender/source/blender/editors/render/render_update.c
    branches/bmesh/blender/source/blender/editors/uvedit/uvedit_buttons.c


Property changes on: branches/bmesh/blender
___________________________________________________________________
Modified: svn:mergeinfo
   - /trunk/blender:31524-37800
   + /trunk/blender:31524-37900

Modified: branches/bmesh/blender/CMakeLists.txt
===================================================================
--- branches/bmesh/blender/CMakeLists.txt	2011-07-25 14:48:01 UTC (rev 38693)
+++ branches/bmesh/blender/CMakeLists.txt	2011-07-25 14:54:29 UTC (rev 38694)
@@ -57,6 +57,9 @@
 # this starts out unset
 list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/build_files/cmake/Modules")
 
+# avoid having empty buildtype
+set(CMAKE_BUILD_TYPE_INIT "Release")
+
 # quiet output for Makefiles, 'make -s' helps too
 # set_property(GLOBAL PROPERTY RULE_MESSAGES OFF)
 
@@ -240,13 +243,26 @@
 set(WITH_BINRELOC OFF)
 
 # MAXOSX only, set to avoid uninitialized 
-set(EXETYPE "")
+set(EXETYPE)
 
+# C/C++ flags
+set(PLATFORM_CFLAGS)
+
 # these are added to later on.
-set(C_WARNINGS "")
-set(CXX_WARNINGS "")
+set(C_WARNINGS)
+set(CXX_WARNINGS)
 
+# libraries to link the binary with passed to target_link_libraries()
+# known as LLIBS to scons
+set(PLATFORM_LINKLIBS)
 
+# Added to linker flags in setup_liblinks
+# - CMAKE_EXE_LINKER_FLAGS
+# - CMAKE_EXE_LINKER_FLAGS_DEBUG
+set(PLATFORM_LINKFLAGS)
+set(PLATFORM_LINKFLAGS_DEBUG)
+
+
 # disabled for now, not supported
 # option(WITH_WEBPLUGIN     "Enable Web Plugin (Unix only)" OFF)
 
@@ -416,24 +432,24 @@
 	endif()
 
 	# OpenSuse needs lutil, ArchLinux not, for now keep, can avoid by using --as-needed
-	set(LLIBS "-lutil -lc -lm -lpthread -lstdc++")
+	set(PLATFORM_LINKLIBS "-lutil -lc -lm -lpthread -lstdc++")
 
 	if(NOT WITH_HEADLESS)
 		find_package(X11 REQUIRED)
 		find_path(X11_XF86keysym_INCLUDE_PATH X11/XF86keysym.h ${X11_INC_SEARCH_PATH})
 		mark_as_advanced(X11_XF86keysym_INCLUDE_PATH)
 
-		list(APPEND LLIBS ${X11_X11_LIB})
+		list(APPEND PLATFORM_LINKLIBS ${X11_X11_LIB})
 
 		if(WITH_X11_XINPUT)
-			list(APPEND LLIBS ${X11_Xinput_LIB})
+			list(APPEND PLATFORM_LINKLIBS ${X11_Xinput_LIB})
 		endif()
 	endif()
 
 	if(CMAKE_SYSTEM_NAME MATCHES "Linux")
 		if(NOT WITH_PYTHON_MODULE)
 			# BSD's dont use libdl.so
-			list(APPEND LLIBS -ldl)
+			list(APPEND PLATFORM_LINKLIBS -ldl)
 			# binreloc is linux only
 			set(BINRELOC_INCLUDE_DIRS ${CMAKE_SOURCE_DIR}/extern/binreloc/include)
 			set(WITH_BINRELOC ON)
@@ -544,14 +560,16 @@
 
 	if(MSVC)
 		if(CMAKE_CL_64)
-			set(LLIBS ws2_32 vfw32 winmm kernel32 user32 gdi32 comdlg32 advapi32 shfolder shell32 ole32 oleaut32 uuid )
+			set(PLATFORM_LINKLIBS ws2_32 vfw32 winmm kernel32 user32 gdi32 comdlg32 advapi32 shfolder shell32 ole32 oleaut32 uuid)
 		else()
-			set(LLIBS kernel32 user32 gdi32 comdlg32 advapi32 shell32 ole32 oleaut32 uuid ws2_32 vfw32 winmm)
+			set(PLATFORM_LINKLIBS ws2_32 vfw32 winmm kernel32 user32 gdi32 comdlg32 advapi32 shfolder shell32 ole32 oleaut32 uuid)
 		endif()
-		
-		set(CMAKE_CXX_FLAGS "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /we4013 /wd4018 /wd4800 /wd4244 /wd4305 /wd4065 /wd4267" CACHE STRING "MSVC MT C++ flags " FORCE)
-		set(CMAKE_C_FLAGS   "/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /we4013 /wd4018 /wd4800 /wd4244 /wd4305 /wd4065 /wd4267" CACHE STRING "MSVC MT C++ flags " FORCE)
 
+		add_definitions(/D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /D_CONSOLE /D_LIB)
+
+		set(CMAKE_CXX_FLAGS "/nologo /J /W0 /Gd /wd4018 /wd4244 /wd4305 /wd4800 /wd4065 /wd4267 /we4013" CACHE STRING "MSVC MT C++ flags " FORCE)
+		set(CMAKE_C_FLAGS   "/nologo /J /W0 /Gd /wd4018 /wd4244 /wd4305 /wd4800 /wd4065 /wd4267 /we4013 /EHsc" CACHE STRING "MSVC MT C++ flags " FORCE)
+
 		if(CMAKE_CL_64)
 			set(CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /Od /Gm /EHsc /RTC1 /MTd /W3 /nologo /Zi /J" CACHE STRING "MSVC MT flags " FORCE)
 		else()
@@ -587,25 +605,22 @@
 		endif()
 		set(JPEG_LIBRARIES libjpeg)
 
-		set(ZLIB ${LIBDIR}/zlib)
-		set(ZLIB_INCLUDE_DIRS ${ZLIB}/include)
-		set(ZLIB_LIBPATH ${ZLIB}/lib)
+		set(ZLIB_INCLUDE_DIRS ${LIBDIR}/zlib/include)
 		if(CMAKE_CL_64)
-			set(ZLIB_LIBRARIES libz)
+			set(ZLIB_LIBRARIES ${LIBDIR}/zlib/lib/libz.lib)
 		else()
-			set(ZLIB_LIBRARIES zlib)
+			set(ZLIB_LIBRARIES ${LIBDIR}/zlib/lib/zlib.lib)
 		endif()
 
-		set(PTHREADS ${LIBDIR}/pthreads)
-		set(PTHREADS_INCLUDE_DIRS ${PTHREADS}/include)
-		set(PTHREADS_LIBPATH ${PTHREADS}/lib)
-		set(PTHREADS_LIBRARIES pthreadVC2)
-		
-		set(FREETYPE ${LIBDIR}/freetype)
-		set(FREETYPE_INCLUDE_DIRS ${FREETYPE}/include ${FREETYPE}/include/freetype2)
-		set(FREETYPE_LIBPATH ${FREETYPE}/lib)
-		set(FREETYPE_LIBRARY freetype2ST)
+		set(PTHREADS_INCLUDE_DIRS ${LIBDIR}/pthreads/include)
+		set(PTHREADS_LIBRARIES ${LIBDIR}/pthreads/lib/pthreadVC2.lib)
 
+		set(FREETYPE_INCLUDE_DIRS
+			${FREETYPE}/include
+			${FREETYPE}/include/freetype2
+		)
+		set(FREETYPE_LIBRARY ${LIBDIR}/freetype/lib/freetype2ST.lib)
+
 		if(WITH_FFTW3)
 			set(FFTW3 ${LIBDIR}/fftw3)
 			set(FFTW3_LIBRARIES libfftw)
@@ -635,10 +650,17 @@
 		endif()
 
 		if(WITH_CODEC_FFMPEG)
-			set(FFMPEG ${LIBDIR}/ffmpeg)
-			set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include ${FFMPEG}/include/msvc)
-			set(FFMPEG_LIBRARIES avcodec-52 avformat-52 avdevice-52 avutil-50 swscale-0)
-			set(FFMPEG_LIBPATH ${FFMPEG}/lib)
+			set(FFMPEG_INCLUDE_DIRS
+				${LIBDIR}/ffmpeg/include
+				${LIBDIR}/ffmpeg/include/msvc
+			)
+			set(FFMPEG_LIBRARIES
+				${LIBDIR}/ffmpeg/lib/avcodec-52.lib
+				${LIBDIR}/ffmpeg/lib/avformat-52.lib
+				${LIBDIR}/ffmpeg/lib/avdevice-52.lib
+				${LIBDIR}/ffmpeg/lib/avutil-50.lib
+				${LIBDIR}/ffmpeg/lib/swscale-0.lib
+			)
 		endif()
 
 		if(WITH_IMAGE_OPENEXR)
@@ -673,17 +695,16 @@
 		endif()
 
 		if(WITH_IMAGE_TIFF)
-			set(TIFF ${LIBDIR}/tiff)
-			set(TIFF_LIBRARY libtiff)
-			set(TIFF_INCLUDE_DIR ${TIFF}/include)
-			set(TIFF_LIBPATH ${TIFF}/lib)
+			set(TIFF_LIBRARY ${LIBDIR}/tiff/lib/libtiff.lib)
+			set(TIFF_INCLUDE_DIR ${LIBDIR}/tiff/include)
 		endif()
 
 		if(WITH_JACK)
-			set(JACK ${LIBDIR}/jack)
-			set(JACK_INCLUDE_DIRS ${JACK}/include/jack ${JACK}/include)
-			set(JACK_LIBRARIES libjack)
-			set(JACK_LIBPATH ${JACK}/lib)
+			set(JACK_INCLUDE_DIRS
+				${LIBDIR}/jack/include/jack
+				${LIBDIR}/jack/include
+			)
+			set(JACK_LIBRARIES ${LIBDIR}/jack/lib/libjack.lib)
 		endif()
 
 		if(WITH_PYTHON)
@@ -693,23 +714,24 @@
 			set(PYTHON_LIBRARIES ${LIBDIR}/python/lib/python32.lib)
 		endif()
 
+		set(PLATFORM_LINKFLAGS "/SUBSYSTEM:CONSOLE /STACK:2097152 /INCREMENTAL:NO  /NODEFAULTLIB:msvcrt.lib\;msvcmrt.lib\;msvcurt.lib\;msvcrtd.lib ")
+
 		# MSVC only, Mingw doesnt need
 		if(CMAKE_CL_64)
-			set(PLATFORM_LINKFLAGS "/MACHINE:X64 /NODEFAULTLIB:libc.lib /STACK:2097152 ")
+			set(PLATFORM_LINKFLAGS "/MACHINE:X64 /OPT:NOREF ${PLATFORM_LINKFLAGS}")
 		else()
-			set(PLATFORM_LINKFLAGS "/NODEFAULTLIB:libc.lib /STACK:2097152 ")
+			set(PLATFORM_LINKFLAGS "/MACHINE:IX86 /LARGEADDRESSAWARE ${PLATFORM_LINKFLAGS}")
 		endif()
 
-		set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:libcmt.lib;libc.lib ")
+		set(PLATFORM_LINKFLAGS_DEBUG "/NODEFAULTLIB:libcmt.lib\;libc.lib")
 
 	else()
 		# keep GCC spesific stuff here
 		if(CMAKE_COMPILER_IS_GNUCC)
-			set(LLIBS "-lshell32 -lshfolder -lgdi32 -lmsvcrt -lwinmm -lmingw32 -lm -lws2_32 -lz -lstdc++ -lole32 -luuid")
+			set(PLATFORM_LINKLIBS "-lshell32 -lshfolder -lgdi32 -lmsvcrt -lwinmm -lmingw32 -lm -lws2_32 -lz -lstdc++ -lole32 -luuid")
 			set(PLATFORM_CFLAGS "-pipe -funsigned-char -fno-strict-aliasing")
 
-			set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE")
-			set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE")
+			add_definitions(-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE)
 		endif()
 
 		add_definitions(-DFREE_WINDOWS)
@@ -919,7 +941,7 @@
 		set(SAMPLERATE_LIBPATH ${SAMPLERATE}/lib)
 	endif()
 
-	set(LLIBS stdc++ SystemStubs)
+	set(PLATFORM_LINKLIBS stdc++ SystemStubs)
 
 	if(WITH_COCOA)
 		set(PLATFORM_CFLAGS "-pipe -funsigned-char -DGHOST_COCOA")
@@ -996,7 +1018,7 @@
 # Common.
 
 if(APPLE OR WIN32)
-	if(NOT IS_DIRECTORY "${LIBDIR}")
+	if(NOT EXISTS "${LIBDIR}/")
 		message(FATAL_ERROR "Apple and Windows require pre-compiled libs at: '${LIBDIR}'")
 	endif()
 endif()
@@ -1143,6 +1165,18 @@
 
 endif()
 
+# MSVC2010 fails to links C++ libs right
+if(MSVC10)
+	if(WITH_IMAGE_OPENEXR)
+		message(WARNING "MSVC 2010 does not support OpenEXR, disabling WITH_IMAGE_OPENEXR. To enable support use Use MSVC 2008")
+		set(WITH_IMAGE_OPENEXR OFF)
+	endif()
+	if(WITH_OPENCOLLADA)
+		message(WARNING "MSVC 2010 does not support OpenCollada, disabling WITH_OPENCOLLADA. To enable support use Use MSVC 2008")
+		set(WITH_OPENCOLLADA OFF)
+	endif()
+endif()
+
 if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
 	if(WITH_IK_ITASC OR WITH_MOD_FLUID)
 		message(WARNING "Using Clang as CXX compiler: disabling WITH_IK_ITASC and WITH_MOD_FLUID, these features will be missing.")

Modified: branches/bmesh/blender/GNUmakefile
===================================================================
--- branches/bmesh/blender/GNUmakefile	2011-07-25 14:48:01 UTC (rev 38693)
+++ branches/bmesh/blender/GNUmakefile	2011-07-25 14:54:29 UTC (rev 38694)
@@ -75,7 +75,8 @@
 	@echo Building Blender ...
 	make -C $(BUILD_DIR) -s -j $(NPROCS) install
 	@echo
-	@echo run blender from "$(BUILD_DIR)/bin/blender"
+	@echo edit build configuration with: "$(BUILD_DIR)/CMakeCache.txt" run make again to rebuild.
+	@echo blender installed, run from: "$(BUILD_DIR)/bin/blender"
 	@echo
 
 debug: all

Modified: branches/bmesh/blender/build_files/cmake/macros.cmake
===================================================================
--- branches/bmesh/blender/build_files/cmake/macros.cmake	2011-07-25 14:48:01 UTC (rev 38693)
+++ branches/bmesh/blender/build_files/cmake/macros.cmake	2011-07-25 14:54:29 UTC (rev 38694)
@@ -39,6 +39,21 @@
 
 endmacro()
 
+
+macro(target_link_libraries_optimized TARGET LIBS)
+	foreach(_LIB ${LIBS})
+		target_link_libraries(${TARGET} optimized "${_LIB}")
+	endforeach()
+	unset(_LIB)
+endmacro()
+
+macro(target_link_libraries_debug TARGET LIBS)
+	foreach(_LIB ${LIBS})
+		target_link_libraries(${TARGET} debug "${_LIB}")
+	endforeach()
+	unset(_LIB)
+endmacro()
+
 # Nicer makefiles with -I/1/foo/ instead of -I/1/2/3/../../foo/
 # use it instead of include_directories()
 macro(blender_include_dirs
@@ -186,15 +201,17 @@
 

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list