Compiling: If possible compile a 64 bit binary on Mac OS X.
--HG-- extra : convert_revision : 23d7c3744bfb20adaa31c999e0478e9055b4f657
This commit is contained in:
parent
0673029689
commit
c01421a82d
1 changed files with 19 additions and 1 deletions
20
SConstruct
20
SConstruct
|
@ -65,7 +65,6 @@
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
import subprocess
|
|
||||||
|
|
||||||
from os.path import isdir, join as joinpath
|
from os.path import isdir, join as joinpath
|
||||||
|
|
||||||
|
@ -77,6 +76,10 @@ from os.path import isdir, join as joinpath
|
||||||
# scons script, e.g., "/usr/local/bin/python2.4 `which scons` [args]".
|
# scons script, e.g., "/usr/local/bin/python2.4 `which scons` [args]".
|
||||||
EnsurePythonVersion(2,4)
|
EnsurePythonVersion(2,4)
|
||||||
|
|
||||||
|
# Import subprocess after we check the version since it doesn't exist in
|
||||||
|
# Python < 2.4.
|
||||||
|
import subprocess
|
||||||
|
|
||||||
# Ironically, SCons 0.96 dies if you give EnsureSconsVersion a
|
# Ironically, SCons 0.96 dies if you give EnsureSconsVersion a
|
||||||
# 3-element version number.
|
# 3-element version number.
|
||||||
min_scons_version = (0,96,91)
|
min_scons_version = (0,96,91)
|
||||||
|
@ -329,6 +332,21 @@ conf = Configure(env,
|
||||||
conf_dir = joinpath(build_root, '.scons_config'),
|
conf_dir = joinpath(build_root, '.scons_config'),
|
||||||
log_file = joinpath(build_root, 'scons_config.log'))
|
log_file = joinpath(build_root, 'scons_config.log'))
|
||||||
|
|
||||||
|
# Check if we should compile a 64 bit binary on Mac OS X/Darwin
|
||||||
|
try:
|
||||||
|
import platform
|
||||||
|
uname = platform.uname()
|
||||||
|
if uname[0] == 'Darwin' and compare_versions(uname[2], '9.0.0') >= 0:
|
||||||
|
if int(subprocess.Popen('sysctl -n hw.cpu64bit_capable', shell=True,
|
||||||
|
stdout=subprocess.PIPE, stderr=subprocess.STDOUT,
|
||||||
|
close_fds=True).communicate()[0][0]):
|
||||||
|
env.Append(CCFLAGS='-arch x86_64')
|
||||||
|
env.Append(CFLAGS='-arch x86_64')
|
||||||
|
env.Append(LINKFLAGS='-arch x86_64')
|
||||||
|
env.Append(ASFLAGS='-arch x86_64')
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
# Recent versions of scons substitute a "Null" object for Configure()
|
# Recent versions of scons substitute a "Null" object for Configure()
|
||||||
# when configuration isn't necessary, e.g., if the "--help" option is
|
# when configuration isn't necessary, e.g., if the "--help" option is
|
||||||
# present. Unfortuantely this Null object always returns false,
|
# present. Unfortuantely this Null object always returns false,
|
||||||
|
|
Loading…
Reference in a new issue