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:
authorJens Verwiebe <info@jensverwiebe.de>2013-11-07 00:59:04 +0400
committerJens Verwiebe <info@jensverwiebe.de>2013-11-07 00:59:04 +0400
commitf392ebd77ed1df0f6fe8588acc6b46a9e2719252 (patch)
treed18b885bb6b1d33059775d6305b7647b64004450 /build_files
parentad34a5cc1b344abc152f14183e2a3436b1737e50 (diff)
OSX/scons: huge change, now you can set a user-config.py just with the desired variables changed
Diffstat (limited to 'build_files')
-rw-r--r--build_files/scons/config/darwin-config.py139
-rw-r--r--build_files/scons/tools/btools.py3
2 files changed, 19 insertions, 123 deletions
diff --git a/build_files/scons/config/darwin-config.py b/build_files/scons/config/darwin-config.py
index 84665548d96..2d658fcb756 100644
--- a/build_files/scons/config/darwin-config.py
+++ b/build_files/scons/config/darwin-config.py
@@ -1,55 +1,12 @@
-#
-# Note : if you want to alter this file
-# copy it as a whole in the upper folder
-# as user-config.py
-# dont create a new file with only some
-# vars changed.
-
import commands
-# IMPORTANT NOTE : OFFICIAL BUILDS SHOULD BE DONE WITH SDKs
-USE_SDK=True
-
#############################################################################
-################### Cocoa & architecture settings ##################
+################### Compiler & architecture settings ##################
#############################################################################
MACOSX_ARCHITECTURE = 'x86_64' # valid archs: ppc, i386, ppc64, x86_64
-
-
-cmd = 'uname -p'
-MAC_PROC=commands.getoutput(cmd)
-cmd = 'sw_vers -productVersion'
-MAC_CUR_VER=cmd_res=commands.getoutput(cmd)
-cmd = 'xcodebuild -version'
-cmd_xcode=commands.getoutput(cmd)
-XCODE_CUR_VER=cmd_xcode[6:][:3] # truncate output to major.minor version
-cmd = 'xcodebuild -showsdks'
-cmd_sdk=commands.getoutput(cmd)
-MACOSX_SDK_CHECK=cmd_sdk
-cmd = 'xcode-select --print-path'
-XCODE_SELECT_PATH=commands.getoutput(cmd)
-if XCODE_SELECT_PATH.endswith("/Contents/Developer"):
- XCODE_BUNDLE=XCODE_SELECT_PATH[:-19]
-else:
- XCODE_BUNDLE=XCODE_SELECT_PATH
-
-
-# Default target OSX settings per architecture
-# Can be customized
-
-if 'Mac OS X 10.5' in MACOSX_SDK_CHECK:
- # OSX 10.5/6 with Xcode 3.x
- MACOSX_DEPLOYMENT_TARGET = '10.5'
- MACOSX_SDK='/Developer/SDKs/MacOSX10.5.sdk'
-elif 'Mac OS X 10.6' in MACOSX_SDK_CHECK:
- # OSX 10.6/7 with Xcode 4.x
- MACOSX_DEPLOYMENT_TARGET = '10.6'
- MACOSX_SDK='/Developer/SDKs/MacOSX10.6.sdk'
-else:
- # OSX 10.7/8/9 with Xcode 4.4 and higher (no 10.6sdk! )
- MACOSX_DEPLOYMENT_TARGET = '10.6'
- MACOSX_SDK='/Developer/SDKs/MacOSX10.8.sdk'
+MACOSX_SDK='' # set an sdk name like '10.7' or leave empty for automatic choosing highest available
+MACOSX_DEPLOYMENT_TARGET = '10.6'
# gcc always defaults to the system standard compiler linked by a shim or symlink
CC = 'gcc'
@@ -57,20 +14,10 @@ CXX = 'g++'
LCGDIR = '#../lib/darwin-9.x.universal'
LIBDIR = '${LCGDIR}'
-if XCODE_CUR_VER >= '4.3': ## since version 4.3, XCode and developer dir are bundled ##
- MACOSX_SDK = XCODE_BUNDLE + '/Contents/Developer/Platforms/MacOSX.platform' + MACOSX_SDK
-
#############################################################################
################### Dependency settings ##################
#############################################################################
-#Defaults openMP to true if compiler handles it ( only gcc 4.6.1 and newer )
-# if your compiler does not have accurate suffix you may have to enable it by hand !
-if CC[:-2].endswith('4.6') or CC[:-2].endswith('4.8'):
- WITH_BF_OPENMP = True # multithreading for fluids, cloth, sculpt and smoke
-else:
- WITH_BF_OPENMP = False
-
# enable ffmpeg support
WITH_BF_FFMPEG = True
BF_FFMPEG = LIBDIR + '/ffmpeg'
@@ -82,23 +29,13 @@ BF_FFMPEG_LIB = 'avcodec avdevice avformat avutil mp3lame swscale x264 xvidcore
BF_PYTHON_VERSION = '3.3'
WITH_OSX_STATICPYTHON = True
-if WITH_OSX_STATICPYTHON:
- # python 3.3 uses precompiled libraries in bf svn /lib by default
-
- BF_PYTHON = LIBDIR + '/python'
- BF_PYTHON_INC = '${BF_PYTHON}/include/python${BF_PYTHON_VERSION}m'
- # BF_PYTHON_BINARY = '${BF_PYTHON}/bin/python${BF_PYTHON_VERSION}'
- BF_PYTHON_LIB = 'python${BF_PYTHON_VERSION}m'
- BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib/python${BF_PYTHON_VERSION}'
- # BF_PYTHON_LINKFLAGS = ['-u', '_PyMac_Error', '-framework', 'System']
-else:
- # python 3.2 uses Python-framework additionally installed in /Library/Frameworks
-
- BF_PYTHON = '/Library/Frameworks/Python.framework/Versions/'
- BF_PYTHON_INC = '${BF_PYTHON}${BF_PYTHON_VERSION}/include/python${BF_PYTHON_VERSION}m'
- BF_PYTHON_BINARY = '${BF_PYTHON}${BF_PYTHON_VERSION}/bin/python${BF_PYTHON_VERSION}'
- #BF_PYTHON_LIB = ''
- BF_PYTHON_LIBPATH = '${BF_PYTHON}${BF_PYTHON_VERSION}/lib/python${BF_PYTHON_VERSION}/config-${BF_PYTHON_VERSION}m'
+# python 3.3 uses precompiled libraries in bf svn /lib by default
+BF_PYTHON = LIBDIR + '/python'
+BF_PYTHON_INC = '${BF_PYTHON}/include/python${BF_PYTHON_VERSION}m'
+# BF_PYTHON_BINARY = '${BF_PYTHON}/bin/python${BF_PYTHON_VERSION}'
+BF_PYTHON_LIB = 'python${BF_PYTHON_VERSION}m'
+BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib/python${BF_PYTHON_VERSION}'
+# BF_PYTHON_LINKFLAGS = ['-u', '_PyMac_Error', '-framework', 'System']
WITH_BF_OPENAL = True
BF_OPENAL = LIBDIR + '/openal'
@@ -275,14 +212,8 @@ BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_20', 'sm_21', 'sm_30', 'sm_35']
WITH_BF_FREESTYLE = True
#Ray trace optimization
-if MACOSX_ARCHITECTURE == 'x86_64' or MACOSX_ARCHITECTURE == 'i386':
- WITH_BF_RAYOPTIMIZATION = True
-else:
- WITH_BF_RAYOPTIMIZATION = False
-if MACOSX_ARCHITECTURE == 'i386':
- BF_RAYOPTIMIZATION_SSE_FLAGS = ['-msse']
-elif MACOSX_ARCHITECTURE == 'x86_64':
- BF_RAYOPTIMIZATION_SSE_FLAGS = ['-msse','-msse2']
+WITH_BF_RAYOPTIMIZATION = True
+BF_RAYOPTIMIZATION_SSE_FLAGS = []
# SpaceNavigator and related 3D mice, driver must be 3DxWare 10 Beta 4 (Mac OS X) or later !
WITH_BF_3DMOUSE = True
@@ -293,53 +224,17 @@ WITH_BF_3DMOUSE = True
BF_QUIET = '1' # suppress verbose output
-if MACOSX_ARCHITECTURE == 'x86_64' or MACOSX_ARCHITECTURE == 'ppc64':
- ARCH_FLAGS = ['-m64']
-else:
- ARCH_FLAGS = ['-m32']
-
CFLAGS = []
CXXFLAGS = []
CCFLAGS = ['-pipe','-funsigned-char']
+PLATFORM_LINKFLAGS = ['-fexceptions','-framework','CoreServices','-framework','Foundation','-framework','IOKit','-framework','AppKit','-framework','Cocoa','-framework','Carbon','-framework','AudioUnit','-framework','AudioToolbox','-framework','CoreAudio','-framework','OpenAL']
-CPPFLAGS = list(ARCH_FLAGS)
-
-PLATFORM_LINKFLAGS = ['-fexceptions','-framework','CoreServices','-framework','Foundation','-framework','IOKit','-framework','AppKit','-framework','Cocoa','-framework','Carbon','-framework','AudioUnit','-framework','AudioToolbox','-framework','CoreAudio','-framework','OpenAL']+ARCH_FLAGS
-
-if WITH_BF_QUICKTIME:
- PLATFORM_LINKFLAGS = PLATFORM_LINKFLAGS+['-framework','QTKit']
-
-if not WITH_OSX_STATICPYTHON:
- PLATFORM_LINKFLAGS = PLATFORM_LINKFLAGS+['-framework','Python']
-
-
-#for > 10.7.sdk, SystemStubs needs to be excluded (lib doesn't exist anymore)
-if MACOSX_SDK.endswith("10.7.sdk") or MACOSX_SDK.endswith("10.8.sdk") or MACOSX_SDK.endswith("10.9.sdk"):
- LLIBS = ['stdc++']
-else:
- LLIBS = ['stdc++', 'SystemStubs']
-
-if USE_SDK:
- SDK_FLAGS=['-isysroot', MACOSX_SDK,'-mmacosx-version-min='+MACOSX_DEPLOYMENT_TARGET,'-arch',MACOSX_ARCHITECTURE]
- PLATFORM_LINKFLAGS = ['-mmacosx-version-min='+MACOSX_DEPLOYMENT_TARGET,'-Wl','-isysroot',MACOSX_SDK,'-arch',MACOSX_ARCHITECTURE]+PLATFORM_LINKFLAGS
- CCFLAGS=SDK_FLAGS+CCFLAGS
- CXXFLAGS=SDK_FLAGS+CXXFLAGS
-
-#Intel Macs are CoreDuo and Up
-if MACOSX_ARCHITECTURE == 'i386' or MACOSX_ARCHITECTURE == 'x86_64':
- REL_CFLAGS = []
- REL_CXXFLAGS = []
- REL_CCFLAGS = ['-DNDEBUG', '-O2','-ftree-vectorize','-msse','-msse2','-msse3']
-else:
- CCFLAGS += ['-fno-strict-aliasing']
- REL_CFLAGS = []
- REL_CXXFLAGS = []
- REL_CCFLAGS = ['-DNDEBUG', '-O2']
+LLIBS = ['stdc++']
-# Intel 64bit Macs are Core2Duo and up
-if MACOSX_ARCHITECTURE == 'x86_64':
- REL_CCFLAGS += ['-mssse3']
+REL_CFLAGS = []
+REL_CXXFLAGS = []
+REL_CCFLAGS = ['-DNDEBUG', '-O2']
CC_WARN = ['-Wall']
C_WARN = ['-Wno-char-subscripts', '-Wpointer-arith', '-Wcast-align', '-Wdeclaration-after-statement', '-Wno-unknown-pragmas', '-Wstrict-prototypes']
diff --git a/build_files/scons/tools/btools.py b/build_files/scons/tools/btools.py
index 65cbcf4e1ec..c542435fb47 100644
--- a/build_files/scons/tools/btools.py
+++ b/build_files/scons/tools/btools.py
@@ -179,7 +179,7 @@ def validate_arguments(args, bc):
'BF_PROFILE_CFLAGS', 'BF_PROFILE_CCFLAGS', 'BF_PROFILE_CXXFLAGS', 'BF_PROFILE_LINKFLAGS',
'BF_DEBUG_CFLAGS', 'BF_DEBUG_CCFLAGS', 'BF_DEBUG_CXXFLAGS',
'C_WARN', 'CC_WARN', 'CXX_WARN',
- 'LLIBS', 'PLATFORM_LINKFLAGS','MACOSX_ARCHITECTURE', 'MACOSX_SDK_CHECK', 'XCODE_CUR_VER',
+ 'LLIBS', 'PLATFORM_LINKFLAGS', 'MACOSX_ARCHITECTURE', 'MACOSX_SDK', 'MACOSX_SDK_CHECK', 'XCODE_CUR_VER',
'BF_CYCLES_CUDA_BINARIES_ARCH', 'BF_PROGRAM_LINKFLAGS', 'MACOSX_DEPLOYMENT_TARGET'
]
@@ -501,6 +501,7 @@ def read_opts(env, cfg, args):
('LLIBS', 'Platform libs', []),
('PLATFORM_LINKFLAGS', 'Platform linkflags', []),
('MACOSX_ARCHITECTURE', 'python_arch.zip select', ''),
+ ('MACOSX_SDK', 'Set OS X SDK', ''),
('MACOSX_SDK_CHECK', 'Detect available OS X SDK`s', ''),
('XCODE_CUR_VER', 'Detect XCode version', ''),
('MACOSX_DEPLOYMENT_TARGET', 'Detect OS X target version', ''),