Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiao Xiangquan <xiaoxiangquan@gmail.com>2011-07-14 21:29:53 +0400
committerXiao Xiangquan <xiaoxiangquan@gmail.com>2011-07-14 21:29:53 +0400
commitfa46278e347ca173e9e6d6b734a59c268f4fc9d0 (patch)
treea14148822e60cb1f8f36dba0481b830cb9675db1 /build_files
parent470a5017fb80f21bac08373e4b5816c92d42990a (diff)
parent4da4943b5ce9514e9fb3d9458f3e52d6b0d310ca (diff)
merge from trunk 38379
Diffstat (limited to 'build_files')
-rwxr-xr-xbuild_files/cmake/cmake_consistency_check.py134
-rwxr-xr-xbuild_files/cmake/cmake_consistency_check_config.py48
-rw-r--r--build_files/cmake/macros.cmake46
-rw-r--r--build_files/scons/config/aix4-config.py5
-rw-r--r--build_files/scons/config/win32-vc-config.py4
-rw-r--r--build_files/scons/config/win64-vc-config.py6
-rw-r--r--build_files/scons/tools/Blender.py15
-rw-r--r--build_files/scons/tools/btools.py2
8 files changed, 159 insertions, 101 deletions
diff --git a/build_files/cmake/cmake_consistency_check.py b/build_files/cmake/cmake_consistency_check.py
index ebcc75ade2b..c13da8775b3 100755
--- a/build_files/cmake/cmake_consistency_check.py
+++ b/build_files/cmake/cmake_consistency_check.py
@@ -23,61 +23,16 @@
# <pep8 compliant>
-IGNORE = (
- "/test/",
- "/decimate_glut_test/",
- "/BSP_GhostTest/",
- "/release/",
- "/xembed/",
- "/decimation/intern/future/",
- "/TerraplayNetwork/",
- "/ik_glut_test/",
-
- # specific source files
- "extern/Eigen2/Eigen/src/Cholesky/CholeskyInstantiations.cpp",
- "extern/Eigen2/Eigen/src/Core/CoreInstantiations.cpp",
- "extern/Eigen2/Eigen/src/QR/QrInstantiations.cpp",
- "extern/bullet2/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp",
- "extern/bullet2/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp",
- "extern/bullet2/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp",
- "extern/bullet2/src/BulletCollision/CollisionShapes/btBox2dShape.cpp",
- "extern/bullet2/src/BulletCollision/CollisionShapes/btConvex2dShape.cpp",
- "extern/bullet2/src/BulletDynamics/Character/btKinematicCharacterController.cpp",
- "extern/bullet2/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp",
- "extern/bullet2/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp",
- "extern/eltopo/common/meshes/ObjLoader.cpp",
- "extern/eltopo/common/meshes/meshloader.cpp",
- "extern/eltopo/common/openglutils.cpp",
- "extern/eltopo/eltopo3d/broadphase_blenderbvh.cpp",
- "source/blender/imbuf/intern/imbuf_cocoa.m",
-
- "extern/bullet2/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h",
- "extern/bullet2/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h",
- "extern/bullet2/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h",
- "extern/bullet2/src/BulletCollision/CollisionShapes/btBox2dShape.h",
- "extern/bullet2/src/BulletCollision/CollisionShapes/btConvex2dShape.h",
- "extern/bullet2/src/BulletDynamics/Character/btKinematicCharacterController.h",
- "extern/bullet2/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h",
- "extern/bullet2/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h",
- "extern/eltopo/common/meshes/Edge.hpp",
- "extern/eltopo/common/meshes/ObjLoader.hpp",
- "extern/eltopo/common/meshes/TriangleIndex.hpp",
- "extern/eltopo/common/meshes/meshloader.h",
- "extern/eltopo/eltopo3d/broadphase_blenderbvh.h"
- )
-
+from cmake_consistency_check_config import IGNORE, UTF8_CHECK, SOURCE_DIR
import os
-from os.path import join, dirname, normpath, abspath, splitext
-
-base = join(os.path.dirname(__file__), "..", "..")
-base = normpath(base)
-base = abspath(base)
+from os.path import join, dirname, normpath, splitext
-print("Scanning:", base)
+print("Scanning:", SOURCE_DIR)
global_h = set()
global_c = set()
+global_refs = {}
def source_list(path, filename_check=None):
@@ -180,11 +135,17 @@ def cmake_get_src(f):
if is_c_header(new_file):
sources_h.append(new_file)
+ global_refs.setdefault(new_file, []).append((f, i))
elif is_c(new_file):
sources_c.append(new_file)
+ global_refs.setdefault(new_file, []).append((f, i))
elif l in ("PARENT_SCOPE", ):
# cmake var, ignore
pass
+ elif new_file.endswith(".list"):
+ pass
+ elif new_file.endswith(".def"):
+ pass
else:
raise Exception("unknown file type - not c or h %s -> %s" % (f, new_file))
@@ -209,7 +170,7 @@ def cmake_get_src(f):
filen.close()
-for cmake in source_list(base, is_cmake):
+for cmake in source_list(SOURCE_DIR, is_cmake):
cmake_get_src(cmake)
@@ -219,39 +180,74 @@ def is_ignore(f):
return True
return False
+
# First do stupid check, do these files exist?
+print("\nChecking for missing references:")
+is_err = False
+errs = []
for f in (global_h | global_c):
if f.endswith("dna.c"):
continue
if not os.path.exists(f):
- raise Exception("CMake referenced file missing: " + f)
-
+ refs = global_refs[f]
+ if refs:
+ for cf, i in refs:
+ errs.append((cf, i))
+ else:
+ raise Exception("CMake referenecs missing, internal error, aborting!")
+ is_err = True
+
+errs.sort()
+errs.reverse()
+for cf, i in errs:
+ print("%s:%d" % (cf, i))
+ # Write a 'sed' script, useful if we get a lot of these
+ # print("sed '%dd' '%s' > '%s.tmp' ; mv '%s.tmp' '%s'" % (i, cf, cf, cf, cf))
+
+
+if is_err:
+ raise Exception("CMake referenecs missing files, aborting!")
+del is_err
+del errs
# now check on files not accounted for.
print("\nC/C++ Files CMake doesnt know about...")
-for cf in sorted(source_list(base, is_c)):
+for cf in sorted(source_list(SOURCE_DIR, is_c)):
if not is_ignore(cf):
if cf not in global_c:
print("missing_c: ", cf)
+
+ # check if automake builds a corrasponding .o file.
+ '''
+ if cf in global_c:
+ out1 = os.path.splitext(cf)[0] + ".o"
+ out2 = os.path.splitext(cf)[0] + ".Po"
+ out2_dir, out2_file = out2 = os.path.split(out2)
+ out2 = os.path.join(out2_dir, ".deps", out2_file)
+ if not os.path.exists(out1) and not os.path.exists(out2):
+ print("bad_c: ", cf)
+ '''
+
print("\nC/C++ Headers CMake doesnt know about...")
-for hf in sorted(source_list(base, is_c_header)):
+for hf in sorted(source_list(SOURCE_DIR, is_c_header)):
if not is_ignore(hf):
if hf not in global_h:
print("missing_h: ", hf)
-# test encoding
-import traceback
-for files in (global_c, global_h):
- for f in sorted(files):
- if os.path.exists(f):
- # ignore outside of our source tree
- if "extern" not in f:
- i = 1
- try:
- for l in open(f, "r", encoding="utf8"):
- i += 1
- except:
- print("Non utf8: %s:%d" % (f, i))
- if i > 1:
- traceback.print_exc()
+if UTF8_CHECK:
+ # test encoding
+ import traceback
+ for files in (global_c, global_h):
+ for f in sorted(files):
+ if os.path.exists(f):
+ # ignore outside of our source tree
+ if "extern" not in f:
+ i = 1
+ try:
+ for l in open(f, "r", encoding="utf8"):
+ i += 1
+ except:
+ print("Non utf8: %s:%d" % (f, i))
+ if i > 1:
+ traceback.print_exc()
diff --git a/build_files/cmake/cmake_consistency_check_config.py b/build_files/cmake/cmake_consistency_check_config.py
new file mode 100755
index 00000000000..60a46d3a1dd
--- /dev/null
+++ b/build_files/cmake/cmake_consistency_check_config.py
@@ -0,0 +1,48 @@
+import os
+
+IGNORE = (
+ "/test/",
+ "/decimate_glut_test/",
+ "/BSP_GhostTest/",
+ "/release/",
+ "/xembed/",
+ "/decimation/intern/future/",
+ "/TerraplayNetwork/",
+ "/ik_glut_test/",
+
+ # specific source files
+ "extern/Eigen2/Eigen/src/Cholesky/CholeskyInstantiations.cpp",
+ "extern/Eigen2/Eigen/src/Core/CoreInstantiations.cpp",
+ "extern/Eigen2/Eigen/src/QR/QrInstantiations.cpp",
+ "extern/bullet2/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.cpp",
+ "extern/bullet2/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.cpp",
+ "extern/bullet2/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp",
+ "extern/bullet2/src/BulletCollision/CollisionShapes/btBox2dShape.cpp",
+ "extern/bullet2/src/BulletCollision/CollisionShapes/btConvex2dShape.cpp",
+ "extern/bullet2/src/BulletDynamics/Character/btKinematicCharacterController.cpp",
+ "extern/bullet2/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.cpp",
+ "extern/bullet2/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.cpp",
+ "extern/eltopo/common/meshes/ObjLoader.cpp",
+ "extern/eltopo/common/meshes/meshloader.cpp",
+ "extern/eltopo/common/openglutils.cpp",
+ "extern/eltopo/eltopo3d/broadphase_blenderbvh.cpp",
+ "source/blender/imbuf/intern/imbuf_cocoa.m",
+
+ "extern/bullet2/src/BulletCollision/CollisionDispatch/btBox2dBox2dCollisionAlgorithm.h",
+ "extern/bullet2/src/BulletCollision/CollisionDispatch/btConvex2dConvex2dAlgorithm.h",
+ "extern/bullet2/src/BulletCollision/CollisionDispatch/btInternalEdgeUtility.h",
+ "extern/bullet2/src/BulletCollision/CollisionShapes/btBox2dShape.h",
+ "extern/bullet2/src/BulletCollision/CollisionShapes/btConvex2dShape.h",
+ "extern/bullet2/src/BulletDynamics/Character/btKinematicCharacterController.h",
+ "extern/bullet2/src/BulletDynamics/ConstraintSolver/btHinge2Constraint.h",
+ "extern/bullet2/src/BulletDynamics/ConstraintSolver/btUniversalConstraint.h",
+ "extern/eltopo/common/meshes/Edge.hpp",
+ "extern/eltopo/common/meshes/ObjLoader.hpp",
+ "extern/eltopo/common/meshes/TriangleIndex.hpp",
+ "extern/eltopo/common/meshes/meshloader.h",
+ "extern/eltopo/eltopo3d/broadphase_blenderbvh.h"
+ )
+
+UTF8_CHECK = True
+
+SOURCE_DIR = os.path.normpath(os.path.abspath(os.path.normpath(os.path.join(os.path.dirname(__file__), "..", ".."))))
diff --git a/build_files/cmake/macros.cmake b/build_files/cmake/macros.cmake
index bb3761d4539..34301458a06 100644
--- a/build_files/cmake/macros.cmake
+++ b/build_files/cmake/macros.cmake
@@ -39,6 +39,21 @@ macro(file_list_suffix
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,7 +201,9 @@ endmacro()
macro(setup_liblinks
target)
- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS} ")
+
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS}")
+ set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} ${PLATFORM_LINKFLAGS_DEBUG}")
target_link_libraries(${target}
${OPENGL_gl_LIBRARY}
@@ -194,7 +211,7 @@ macro(setup_liblinks
${JPEG_LIBRARIES}
${PNG_LIBRARIES}
${ZLIB_LIBRARIES}
- ${LLIBS})
+ ${PLATFORM_LINKLIBS})
# since we are using the local libs for python when compiling msvc projects, we need to add _d when compiling debug versions
if(WITH_PYTHON) # AND NOT WITH_PYTHON_MODULE # WIN32 needs
@@ -202,9 +219,8 @@ macro(setup_liblinks
if(WIN32 AND NOT UNIX)
file_list_suffix(PYTHON_LIBRARIES_DEBUG "${PYTHON_LIBRARIES}" "_d")
- target_link_libraries(${target}
- debug ${PYTHON_LIBRARIES_DEBUG}
- optimized ${PYTHON_LIBRARIES})
+ target_link_libraries_debug(${target} "${PYTHON_LIBRARIES_DEBUG}")
+ target_link_libraries_optimized(${target} "${PYTHON_LIBRARIES}")
unset(PYTHON_LIBRARIES_DEBUG)
else()
target_link_libraries(${target} ${PYTHON_LIBRARIES})
@@ -257,9 +273,8 @@ macro(setup_liblinks
if(WITH_IMAGE_OPENEXR)
if(WIN32 AND NOT UNIX)
file_list_suffix(OPENEXR_LIBRARIES_DEBUG "${OPENEXR_LIBRARIES}" "_d")
- target_link_libraries(${target}
- debug ${OPENEXR_LIBRARIES_DEBUG}
- optimized ${OPENEXR_LIBRARIES})
+ target_link_libraries_debug(${target} "${OPENEXR_LIBRARIES_DEBUG}")
+ target_link_libraries_optimized(${target} "${OPENEXR_LIBRARIES}")
unset(OPENEXR_LIBRARIES_DEBUG)
else()
target_link_libraries(${target} ${OPENEXR_LIBRARIES})
@@ -274,22 +289,19 @@ macro(setup_liblinks
if(WITH_OPENCOLLADA)
if(WIN32 AND NOT UNIX)
file_list_suffix(OPENCOLLADA_LIBRARIES_DEBUG "${OPENCOLLADA_LIBRARIES}" "_d")
- target_link_libraries(${target}
- debug ${OPENCOLLADA_LIBRARIES_DEBUG}
- optimized ${OPENCOLLADA_LIBRARIES})
+ target_link_libraries_debug(${target} "${OPENCOLLADA_LIBRARIES_DEBUG}")
+ target_link_libraries_optimized(${target} "${OPENCOLLADA_LIBRARIES}")
unset(OPENCOLLADA_LIBRARIES_DEBUG)
file_list_suffix(PCRE_LIB_DEBUG "${PCRE_LIB}" "_d")
- target_link_libraries(${target}
- debug ${PCRE_LIB_DEBUG}
- optimized ${PCRE_LIB})
+ target_link_libraries_debug(${target} "${PCRE_LIB_DEBUG}")
+ target_link_libraries_optimized(${target} "${PCRE_LIB}")
unset(PCRE_LIB_DEBUG)
if(EXPAT_LIB)
file_list_suffix(EXPAT_LIB_DEBUG "${EXPAT_LIB}" "_d")
- target_link_libraries(${target}
- debug ${EXPAT_LIB_DEBUG}
- optimized ${EXPAT_LIB})
+ target_link_libraries_debug(${target} "${EXPAT_LIB_DEBUG}")
+ target_link_libraries_optimized(${target} "${EXPAT_LIB}")
unset(EXPAT_LIB_DEBUG)
endif()
else()
diff --git a/build_files/scons/config/aix4-config.py b/build_files/scons/config/aix4-config.py
index e8004338271..f8b3e750e74 100644
--- a/build_files/scons/config/aix4-config.py
+++ b/build_files/scons/config/aix4-config.py
@@ -76,11 +76,6 @@ BF_GETTEXT_INC = '${BF_GETTEXT}/include'
BF_GETTEXT_LIB = 'gettextpo intl'
BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib'
-WITH_BF_FTGL = 'false'
-BF_FTGL = '#extern/bFTGL'
-BF_FTGL_INC = '${BF_FTGL}/include'
-BF_FTGL_LIB = 'extern_ftgl'
-
WITH_BF_GAMEENGINE='false'
WITH_BF_BULLET = 'true'
diff --git a/build_files/scons/config/win32-vc-config.py b/build_files/scons/config/win32-vc-config.py
index e46b5269d22..89b246cb39f 100644
--- a/build_files/scons/config/win32-vc-config.py
+++ b/build_files/scons/config/win32-vc-config.py
@@ -170,7 +170,7 @@ BGE_CXXFLAGS = ['/O2', '/EHsc', '/GR', '/fp:fast', '/arch:SSE']
BF_DEBUG_CCFLAGS = ['/Zi', '/FR${TARGET}.sbr']
-CPPFLAGS = ['-DWIN32','-D_CONSOLE', '-D_LIB', '-DFTGL_LIBRARY_STATIC', '-D_CRT_SECURE_NO_DEPRECATE']
+CPPFLAGS = ['-DWIN32','-D_CONSOLE', '-D_LIB', '-D_CRT_SECURE_NO_DEPRECATE']
REL_CFLAGS = ['-O2', '-DNDEBUG']
REL_CCFLAGS = ['-O2', '-DNDEBUG']
REL_CXXFLAGS = ['-O2', '-DNDEBUG']
@@ -181,7 +181,7 @@ CXX_WARN = []
LLIBS = ['ws2_32', 'vfw32', 'winmm', 'kernel32', 'user32', 'gdi32', 'comdlg32', 'advapi32', 'shfolder', 'shell32', 'ole32', 'oleaut32', 'uuid']
-PLATFORM_LINKFLAGS = ['/SUBSYSTEM:CONSOLE','/MACHINE:IX86','/STACK:2097152','/INCREMENTAL:NO', '/LARGEADDRESSAWARE', '/NODEFAULTLIB:"msvcrt.lib"', '/NODEFAULTLIB:"msvcmrt.lib"', '/NODEFAULTLIB:"msvcurt.lib"', '/NODEFAULTLIB:"msvcrtd.lib"']
+PLATFORM_LINKFLAGS = ['/SUBSYSTEM:CONSOLE','/MACHINE:IX86','/STACK:2097152','/INCREMENTAL:NO', '/LARGEADDRESSAWARE', '/NODEFAULTLIB:msvcrt.lib', '/NODEFAULTLIB:msvcmrt.lib', '/NODEFAULTLIB:msvcurt.lib', '/NODEFAULTLIB:msvcrtd.lib']
# # Todo
# BF_PROFILE_CCFLAGS = ['-pg', '-g ']
diff --git a/build_files/scons/config/win64-vc-config.py b/build_files/scons/config/win64-vc-config.py
index 45a4ea5b178..67db1c441d7 100644
--- a/build_files/scons/config/win64-vc-config.py
+++ b/build_files/scons/config/win64-vc-config.py
@@ -50,6 +50,8 @@ BF_SDL_INC = '${BF_SDL}/include'
BF_SDL_LIB = 'SDL.lib'
BF_SDL_LIBPATH = '${BF_SDL}/lib'
+WITH_BF_JACK = False
+
BF_PTHREADS = LIBDIR + '/pthreads'
BF_PTHREADS_INC = '${BF_PTHREADS}/include'
BF_PTHREADS_LIB = 'pthreadVC2'
@@ -172,7 +174,7 @@ BGE_CXXFLAGS = ['/O2', '/EHsc', '/GR', '/fp:fast']
BF_DEBUG_CCFLAGS = ['/Zi', '/FR${TARGET}.sbr', '/Od']
-CPPFLAGS = ['-DWIN32', '-D_CONSOLE', '-D_LIB', '-DFTGL_LIBRARY_STATIC', '-D_CRT_SECURE_NO_DEPRECATE']
+CPPFLAGS = ['-DWIN32', '-D_CONSOLE', '-D_LIB', '-D_CRT_SECURE_NO_DEPRECATE']
REL_CFLAGS = ['-O2', '-DNDEBUG']
REL_CCFLAGS = ['-O2', '-DNDEBUG']
REL_CXXFLAGS = ['-O2', '-DNDEBUG']
@@ -188,7 +190,7 @@ if BF_DEBUG:
else:
BF_NUMJOBS=6
-PLATFORM_LINKFLAGS = ['/SUBSYSTEM:CONSOLE','/MACHINE:X64','/STACK:2097152','/OPT:NOREF','/INCREMENTAL:NO', '/NODEFAULTLIB:"msvcrt.lib"', '/NODEFAULTLIB:"msvcmrt.lib"', '/NODEFAULTLIB:"msvcurt.lib"', '/NODEFAULTLIB:"msvcrtd.lib"']
+PLATFORM_LINKFLAGS = ['/SUBSYSTEM:CONSOLE','/MACHINE:X64','/STACK:2097152','/OPT:NOREF','/INCREMENTAL:NO', '/NODEFAULTLIB:msvcrt.lib', '/NODEFAULTLIB:msvcmrt.lib', '/NODEFAULTLIB:msvcurt.lib', '/NODEFAULTLIB:msvcrtd.lib']
BF_BUILDDIR = '..\\build\\blender25-win64-vc'
BF_INSTALLDIR='..\\install\\blender25-win64-vc'
diff --git a/build_files/scons/tools/Blender.py b/build_files/scons/tools/Blender.py
index 50f43a03b8b..d8f5ba9e115 100644
--- a/build_files/scons/tools/Blender.py
+++ b/build_files/scons/tools/Blender.py
@@ -565,13 +565,16 @@ def AppIt(target=None, source=None, env=None):
cmd = 'mkdir %s/%s.app/Contents/MacOS/%s/python/'%(installdir,binary, VERSION)
commands.getoutput(cmd)
cmd = 'unzip -q %s/release/%s -d %s/%s.app/Contents/MacOS/%s/python/'%(libdir,python_zip,installdir,binary,VERSION)
- commands.getoutput(cmd)
- cmd = 'cp -R %s/release/scripts %s/%s.app/Contents/MacOS/%s/'%(bldroot,installdir,binary,VERSION)
- commands.getoutput(cmd)
- cmd = 'cp -R %s/release/ui %s/%s.app/Contents/MacOS/%s/'%(bldroot,installdir,binary,VERSION)
- commands.getoutput(cmd)
- cmd = 'cp -R %s/release/io %s/%s.app/Contents/MacOS/%s/'%(bldroot,installdir,binary,VERSION)
commands.getoutput(cmd)
+
+ if binary == 'blender':#not copy everything for blenderplayer
+ cmd = 'cp -R %s/release/scripts %s/%s.app/Contents/MacOS/%s/'%(bldroot,installdir,binary,VERSION)
+ commands.getoutput(cmd)
+ cmd = 'cp -R %s/release/ui %s/%s.app/Contents/MacOS/%s/'%(bldroot,installdir,binary,VERSION)
+ commands.getoutput(cmd)
+ cmd = 'cp -R %s/release/io %s/%s.app/Contents/MacOS/%s/'%(bldroot,installdir,binary,VERSION)
+ commands.getoutput(cmd)
+
cmd = 'chmod +x %s/%s.app/Contents/MacOS/%s'%(installdir,binary, binary)
commands.getoutput(cmd)
cmd = 'find %s/%s.app -name .svn -prune -exec rm -rf {} \;'%(installdir, binary)
diff --git a/build_files/scons/tools/btools.py b/build_files/scons/tools/btools.py
index a8bee920a9b..677ddab8db5 100644
--- a/build_files/scons/tools/btools.py
+++ b/build_files/scons/tools/btools.py
@@ -121,6 +121,7 @@ def validate_arguments(args, bc):
'BF_OPENMP_INC',
'BF_OPENMP_LIBPATH',
'WITH_GHOST_COCOA',
+ 'WITH_GHOST_SDL',
'USE_QTKIT',
'BF_FANCY', 'BF_QUIET', 'BF_LINE_OVERWRITE',
'BF_X264_CONFIG',
@@ -385,6 +386,7 @@ def read_opts(env, cfg, args):
('BF_OPENMP_INC', 'Path to OpenMP includes (used when cross-compiling with older versions of WinGW)', ''),
('BF_OPENMP_LIBPATH', 'Path to OpenMP libraries (used when cross-compiling with older versions of WinGW)', ''),
(BoolVariable('WITH_GHOST_COCOA', 'Use Cocoa-framework if true', False)),
+ (BoolVariable('WITH_GHOST_SDL', 'Enable building blender against SDL for windowing rather then the native APIs', False)),
(BoolVariable('USE_QTKIT', 'Use QTKIT if true', False)),
(BoolVariable('WITH_BF_QUICKTIME', 'Use QuickTime if true', False)),