[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [44947] branches/soc-2009-yukishiro: start from scratch.
Jingyuan Huang
jingyuan.huang at gmail.com
Sat Mar 17 20:32:50 CET 2012
Revision: 44947
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44947
Author: yukishiro
Date: 2012-03-17 19:32:49 +0000 (Sat, 17 Mar 2012)
Log Message:
-----------
start from scratch. sync to trunk
Modified Paths:
--------------
branches/soc-2009-yukishiro/CMakeLists.txt
branches/soc-2009-yukishiro/COPYING
branches/soc-2009-yukishiro/SConstruct
Added Paths:
-----------
branches/soc-2009-yukishiro/GNUmakefile
branches/soc-2009-yukishiro/build_files/
branches/soc-2009-yukishiro/build_files/buildbot/
branches/soc-2009-yukishiro/build_files/buildbot/config/
branches/soc-2009-yukishiro/build_files/buildbot/config/user-config-i686.py
branches/soc-2009-yukishiro/build_files/buildbot/config/user-config-player-i686.py
branches/soc-2009-yukishiro/build_files/buildbot/config/user-config-player-x86_64.py
branches/soc-2009-yukishiro/build_files/buildbot/config/user-config-x86_64.py
branches/soc-2009-yukishiro/build_files/buildbot/master.cfg
branches/soc-2009-yukishiro/build_files/buildbot/master_unpack.py
branches/soc-2009-yukishiro/build_files/buildbot/slave_compile.py
branches/soc-2009-yukishiro/build_files/buildbot/slave_pack.py
branches/soc-2009-yukishiro/build_files/buildbot/slave_test.py
branches/soc-2009-yukishiro/build_files/cmake/
branches/soc-2009-yukishiro/build_files/cmake/Modules/
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindFftw3.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindGLEW.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindJack.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindJeMalloc.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindOpenCOLLADA.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindOpenEXR.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindOpenImageIO.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindOpenJPEG.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindPCRE.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindPythonLibsUnix.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindSndFile.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindSpacenav.cmake
branches/soc-2009-yukishiro/build_files/cmake/Modules/FindXML2.cmake
branches/soc-2009-yukishiro/build_files/cmake/RpmBuild.cmake
branches/soc-2009-yukishiro/build_files/cmake/buildinfo.cmake
branches/soc-2009-yukishiro/build_files/cmake/cmake_consistency_check.py
branches/soc-2009-yukishiro/build_files/cmake/cmake_consistency_check_config.py
branches/soc-2009-yukishiro/build_files/cmake/cmake_netbeans_project.py
branches/soc-2009-yukishiro/build_files/cmake/cmake_qtcreator_project.py
branches/soc-2009-yukishiro/build_files/cmake/cmake_static_check_cppcheck.py
branches/soc-2009-yukishiro/build_files/cmake/cmake_static_check_sparse.py
branches/soc-2009-yukishiro/build_files/cmake/cmake_static_check_splint.py
branches/soc-2009-yukishiro/build_files/cmake/config/
branches/soc-2009-yukishiro/build_files/cmake/config/blender_headless.cmake
branches/soc-2009-yukishiro/build_files/cmake/config/blender_lite.cmake
branches/soc-2009-yukishiro/build_files/cmake/config/bpy_module.cmake
branches/soc-2009-yukishiro/build_files/cmake/example_scripts/
branches/soc-2009-yukishiro/build_files/cmake/example_scripts/cmake_linux_install.sh
branches/soc-2009-yukishiro/build_files/cmake/example_scripts/make_quicky.py
branches/soc-2009-yukishiro/build_files/cmake/example_scripts/make_quiet.sh
branches/soc-2009-yukishiro/build_files/cmake/macros.cmake
branches/soc-2009-yukishiro/build_files/cmake/packaging.cmake
branches/soc-2009-yukishiro/build_files/cmake/project_info.py
branches/soc-2009-yukishiro/build_files/cmake/project_source_info.py
branches/soc-2009-yukishiro/build_files/package_spec/
branches/soc-2009-yukishiro/build_files/package_spec/build_archive.py
branches/soc-2009-yukishiro/build_files/package_spec/build_debian.sh
branches/soc-2009-yukishiro/build_files/package_spec/debian/
branches/soc-2009-yukishiro/build_files/package_spec/debian/changelog
branches/soc-2009-yukishiro/build_files/package_spec/debian/compat
branches/soc-2009-yukishiro/build_files/package_spec/debian/control
branches/soc-2009-yukishiro/build_files/package_spec/debian/copyright
branches/soc-2009-yukishiro/build_files/package_spec/debian/docs
branches/soc-2009-yukishiro/build_files/package_spec/debian/menu
branches/soc-2009-yukishiro/build_files/package_spec/debian/rules
branches/soc-2009-yukishiro/build_files/package_spec/debian/source/
branches/soc-2009-yukishiro/build_files/package_spec/debian/source/format
branches/soc-2009-yukishiro/build_files/package_spec/debian/watch
branches/soc-2009-yukishiro/build_files/package_spec/pacman/
branches/soc-2009-yukishiro/build_files/package_spec/pacman/PKGBUILD
branches/soc-2009-yukishiro/build_files/package_spec/pacman/blender.install
branches/soc-2009-yukishiro/build_files/package_spec/rpm/
branches/soc-2009-yukishiro/build_files/package_spec/rpm/blender.spec.in
branches/soc-2009-yukishiro/build_files/scons/
branches/soc-2009-yukishiro/build_files/scons/config/
branches/soc-2009-yukishiro/build_files/scons/config/Modules/
branches/soc-2009-yukishiro/build_files/scons/config/Modules/FindPython.py
branches/soc-2009-yukishiro/build_files/scons/config/Modules/__init__.py
branches/soc-2009-yukishiro/build_files/scons/config/darwin-config.py
branches/soc-2009-yukishiro/build_files/scons/config/freebsd7-config.py
branches/soc-2009-yukishiro/build_files/scons/config/freebsd8-config.py
branches/soc-2009-yukishiro/build_files/scons/config/freebsd9-config.py
branches/soc-2009-yukishiro/build_files/scons/config/linux-config.py
branches/soc-2009-yukishiro/build_files/scons/config/linuxcross-config.py
branches/soc-2009-yukishiro/build_files/scons/config/win32-mingw-config.py
branches/soc-2009-yukishiro/build_files/scons/config/win32-vc-config.py
branches/soc-2009-yukishiro/build_files/scons/config/win64-vc-config.py
branches/soc-2009-yukishiro/build_files/scons/tools/
branches/soc-2009-yukishiro/build_files/scons/tools/Blender.py
branches/soc-2009-yukishiro/build_files/scons/tools/__init__.py
branches/soc-2009-yukishiro/build_files/scons/tools/bcolors.py
branches/soc-2009-yukishiro/build_files/scons/tools/btools.py
branches/soc-2009-yukishiro/build_files/scons/tools/crossmingw.py
branches/soc-2009-yukishiro/build_files/scons/tools/mstoolkit.py
Removed Paths:
-------------
branches/soc-2009-yukishiro/CMake/
branches/soc-2009-yukishiro/Makefile
branches/soc-2009-yukishiro/bin/
branches/soc-2009-yukishiro/config/
branches/soc-2009-yukishiro/dlltool/
branches/soc-2009-yukishiro/make/
branches/soc-2009-yukishiro/po/
branches/soc-2009-yukishiro/projectfiles/
branches/soc-2009-yukishiro/projectfiles_vc7/
branches/soc-2009-yukishiro/projectfiles_vc9/
branches/soc-2009-yukishiro/tools/
Modified: branches/soc-2009-yukishiro/CMakeLists.txt
===================================================================
--- branches/soc-2009-yukishiro/CMakeLists.txt 2012-03-17 19:31:28 UTC (rev 44946)
+++ branches/soc-2009-yukishiro/CMakeLists.txt 2012-03-17 19:32:49 UTC (rev 44947)
@@ -1,4 +1,4 @@
- # $Id$
+# -*- mode: cmake; indent-tabs-mode: t; -*-
# ***** BEGIN GPL LICENSE BLOCK *****
#
# This program is free software; you can redistribute it and/or
@@ -25,666 +25,1676 @@
# ***** END GPL LICENSE BLOCK *****
#-----------------------------------------------------------------------------
-# We don't allow in-source builds. This causes no end of troubles because
-# all out-of-source builds will use the CMakeCache.txt file there and even
-# build the libs and objects in it. It will also conflict with the current
-# Makefile system for Blender
+# We don't allow in-source builds. This causes no end of troubles because
+# all out-of-source builds will use the CMakeCache.txt file there and even
+# build the libs and objects in it.
-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.:
+if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
+ if(NOT DEFINED WITH_IN_SOURCE_BUILD)
+ message(FATAL_ERROR
+ "CMake generation for blender is not allowed within the source directory!"
+ "\n Remove the CMakeCache.txt file and try again from another folder, e.g.:"
+ "\n "
+ "\n rm CMakeCache.txt"
+ "\n cd .."
+ "\n mkdir cmake-make"
+ "\n cd cmake-make"
+ "\n cmake ../blender"
+ "\n "
+ "\n Alternately define WITH_IN_SOURCE_BUILD to force this option (not recommended!)"
+ )
+ endif()
+endif()
- rm CMakeCache.txt
- cd ..
- mkdir cmake-make
- cd cmake-make
- cmake -G \"Unix Makefiles\" ../blender
-")
-ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
+cmake_minimum_required(VERSION 2.8)
-CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
-PROJECT(Blender)
+if(NOT EXECUTABLE_OUTPUT_PATH)
+ set(FIRST_RUN "TRUE")
+endif()
+# 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)
+
+# global compile definitions since add_definitions() adds for all.
+set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG _DEBUG)
+set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS_RELEASE NDEBUG)
+set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS_MINSIZEREL NDEBUG)
+set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS_RELWITHDEBINFO NDEBUG)
+
+
#-----------------------------------------------------------------------------
-# Redirect output files
+# Set policy
-SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)
-SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib)
+# see "cmake --help-policy CMP0003"
+# So library linking is more sane
+cmake_policy(SET CMP0003 NEW)
-# 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)
+# So BUILDINFO and BLENDERPATH strings are automatically quoted
+cmake_policy(SET CMP0005 NEW)
+# So syntax problems are errors
+cmake_policy(SET CMP0010 NEW)
+
+# Input directories must have CMakeLists.txt
+cmake_policy(SET CMP0014 NEW)
+
#-----------------------------------------------------------------------------
+# Load some macros.
+include(build_files/cmake/macros.cmake)
+
+
+#-----------------------------------------------------------------------------
+# Initialize project.
+
+blender_project_hack_pre()
+
+project(Blender)
+
+blender_project_hack_post()
+
+enable_testing()
+
+#-----------------------------------------------------------------------------
+# Redirect output files
+
+set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin CACHE INTERNAL "" FORCE )
+set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib CACHE INTERNAL "" FORCE )
+
+#-----------------------------------------------------------------------------
# Set default config options
-OPTION(WITH_PLAYER "Build Player" OFF)
-OPTION(WITH_GAMEENGINE "Enable Game Engine" ON)
-OPTION(WITH_BULLET "Enable Bullet (Physics Engine)" ON)
-OPTION(WITH_INTERNATIONAL "Enable I18N (International fonts and text)" ON)
-OPTION(WITH_ELBEEM "Enable Elbeem (Fluid Simulation)" ON)
-OPTION(WITH_QUICKTIME "Enable Quicktime Support" OFF)
-OPTION(WITH_OPENEXR "Enable OpenEXR Support (http://www.openexr.com)" ON)
-OPTION(WITH_DDS "Enable DDS Support" ON)
-OPTION(WITH_FFMPEG "Enable FFMPeg Support (http://ffmpeg.mplayerhq.hu/)" OFF)
-OPTION(WITH_PYTHON "Enable Embedded Python API" ON)
-OPTION(WITH_SDL "Enable SDL for sound and joystick support" ON)
-OPTION(WITH_OPENJPEG "Enable OpenJpeg Support (http://www.openjpeg.org/)" OFF)
-OPTION(WITH_OPENAL "Enable OpenAL Support (http://www.openal.org)" ON)
-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_SNDFILE "Enable libsndfile Support (http://www.mega-nerd.com/libsndfile)" OFF)
-OPTION(WITH_LZO "Enable fast LZO compression, used for pointcache" ON)
-OPTION(WITH_LZMA "Enable best LZMA compression, used for pointcache" ON)
-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)
-OPTION(WITH_OPENCOLLADA "Enable OpenCollada Support (http://www.opencollada.org/)" ON)
-# Unix defaults to OpenMP On
-IF(UNIX AND NOT APPLE)
- OPTION(WITH_OPENMP "Enable OpenMP (has to be supported by the compiler)" ON)
-ELSE()
- OPTION(WITH_OPENMP "Enable OpenMP (has to be supported by the compiler)" OFF)
-ENDIF()
+get_blender_version()
-OPTION(WITH_RAYOPTIMIZATION "Enable use of SIMD (SSE) optimizations for the raytracer" OFF)
-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)
-ENDIF (APPLE)
+# Blender internal features
+option(WITH_BLENDER "Build blender (disable to build only the blender player)" ON)
+mark_as_advanced(WITH_BLENDER)
-IF(NOT WITH_GAMEENGINE AND WITH_PLAYER)
- MESSAGE("WARNING: WITH_PLAYER needs WITH_GAMEENGINE")
-ENDIF(NOT WITH_GAMEENGINE AND WITH_PLAYER)
+option(WITH_INTERNATIONAL "Enable I18N (International fonts and text)" ON)
+option(WITH_PYTHON "Enable Embedded Python API (only disable for development)" ON)
+option(WITH_PYTHON_SECURITY "Disables execution of scripts within blend files by default (recommend to leave off)" OFF)
+mark_as_advanced(WITH_PYTHON) # dont want people disabling this unless they really know what they are doing.
+mark_as_advanced(WITH_PYTHON_SECURITY) # some distrobutions see this as a security issue, rather than have them patch it, make a build option.
+
+option(WITH_PYTHON_SAFETY "Enable internal API error checking to track invalid data to prevent crash on access (at the expense of some effeciency, only enable for development)." OFF)
+option(WITH_PYTHON_MODULE "Enable building as a python module (experimental, only enable for development)" OFF)
+option(WITH_BUILDINFO "Include extra build details (only disable for development & faster builds)" ON)
+option(WITH_IK_ITASC "Enable ITASC IK solver (only disable for development & for incompatible C++ compilers)" ON)
+option(WITH_FFTW3 "Enable FFTW3 support (Used for smoke and audio effects)" OFF)
+option(WITH_BULLET "Enable Bullet (Physics Engine)" ON)
+option(WITH_GAMEENGINE "Enable Game Engine" ON)
+option(WITH_PLAYER "Build Player" OFF)
+
+# GHOST Windowing Library Options
+option(WITH_GHOST_DEBUG "Enable debugging output for the GHOST library" OFF)
+mark_as_advanced(WITH_GHOST_DEBUG)
+
+option(WITH_GHOST_SDL "Enable building blender against SDL for windowing rather then the native APIs" OFF)
+mark_as_advanced(WITH_GHOST_SDL)
+
+# Misc...
+option(WITH_HEADLESS "Build without graphical support (renderfarm, server mode only)" OFF)
+mark_as_advanced(WITH_HEADLESS)
+
+option(WITH_AUDASPACE "Build with blenders audio library (only disable if you know what you're doing!)" ON)
+mark_as_advanced(WITH_AUDASPACE)
+
+
+# (unix defaults to OpenMP On)
+if(UNIX AND NOT APPLE)
+ option(WITH_OPENMP "Enable OpenMP (has to be supported by the compiler)" ON)
+else()
+ option(WITH_OPENMP "Enable OpenMP (has to be supported by the compiler)" OFF)
+endif()
+
+if(UNIX AND NOT APPLE)
+ option(WITH_X11_XINPUT "Enable X11 Xinput (tablet support and unicode input)" ON)
+ option(WITH_X11_XF86VMODE "Enable X11 video mode switching" ON)
+ option(WITH_BUILTIN_GLEW "Use GLEW OpenGL wrapper library bundled with blender" ON)
+ option(WITH_XDG_USER_DIRS "Build with XDG Base Directory Specification (only config and documents for now)" OFF)
+ mark_as_advanced(WITH_XDG_USER_DIRS)
+
+ # freebsd doesn't seems to support XDND
+ if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
+ option(WITH_GHOST_XDND "Enable drag'n'drop support on Linux using XDND protocol" ON)
+ endif()
+else()
+ # not an option for other OS's
+ set(WITH_BUILTIN_GLEW ON)
+endif()
+
+# Modifiers
+option(WITH_MOD_FLUID "Enable Elbeem Modifier (Fluid Simulation)" ON)
+option(WITH_MOD_SMOKE "Enable Smoke Modifier (Smoke Simulation)" ON)
+option(WITH_MOD_DECIMATE "Enable Decimate Modifier" ON)
+option(WITH_MOD_BOOLEAN "Enable Boolean Modifier" ON)
+option(WITH_MOD_REMESH "Enable Remesh Modifier" ON)
+option(WITH_MOD_CLOTH_ELTOPO "Enable Experimental cloth solver" OFF)
+mark_as_advanced(WITH_MOD_CLOTH_ELTOPO)
+option(WITH_MOD_OCEANSIM "Enable Ocean Modifier" OFF)
+
+# Image format support
+option(WITH_IMAGE_OPENEXR "Enable OpenEXR Support (http://www.openexr.com)" ON)
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list