better checking for whether our target python is python 3
This commit is contained in:
parent
18dd9ff40e
commit
9492d309e6
2 changed files with 14 additions and 12 deletions
|
@ -199,6 +199,7 @@ def pretty_dep(dep):
|
||||||
return dep
|
return dep
|
||||||
|
|
||||||
# local file to hold custom user configuration variables
|
# local file to hold custom user configuration variables
|
||||||
|
# Todo check timestamp, reload if changed?
|
||||||
SCONS_LOCAL_CONFIG = 'config.py'
|
SCONS_LOCAL_CONFIG = 'config.py'
|
||||||
# build log
|
# build log
|
||||||
SCONS_LOCAL_LOG = 'config.log'
|
SCONS_LOCAL_LOG = 'config.log'
|
||||||
|
@ -1093,12 +1094,7 @@ if not preconfigured:
|
||||||
color_print(1,"Cannot run python interpreter at '%s', make sure that you have the permissions to execute it." % env['PYTHON'])
|
color_print(1,"Cannot run python interpreter at '%s', make sure that you have the permissions to execute it." % env['PYTHON'])
|
||||||
Exit(1)
|
Exit(1)
|
||||||
|
|
||||||
res = os.popen('''%s -c "print 1"''' % env['PYTHON'])
|
py3 = 'True' in os.popen('''%s -c "import sys as s;s.stdout.write(str(s.version_info[0] == 3))"''' % env['PYTHON']).read().strip()
|
||||||
if res.read() == '1':
|
|
||||||
py3 = False
|
|
||||||
else:
|
|
||||||
py3 = True
|
|
||||||
#sys.version_info.major == 3
|
|
||||||
|
|
||||||
if py3:
|
if py3:
|
||||||
sys_prefix = '''%s -c "import sys; print(sys.prefix)"''' % env['PYTHON']
|
sys_prefix = '''%s -c "import sys; print(sys.prefix)"''' % env['PYTHON']
|
||||||
|
|
|
@ -19,9 +19,7 @@
|
||||||
#
|
#
|
||||||
# $Id$
|
# $Id$
|
||||||
|
|
||||||
import glob
|
import os, re, sys, glob
|
||||||
import re
|
|
||||||
import os
|
|
||||||
from subprocess import Popen, PIPE
|
from subprocess import Popen, PIPE
|
||||||
|
|
||||||
|
|
||||||
|
@ -36,7 +34,11 @@ def call(cmd, silent=True):
|
||||||
|
|
||||||
def run_2to3(*args,**kwargs):
|
def run_2to3(*args,**kwargs):
|
||||||
call('2to3 -w %s' % os.path.dirname(kwargs['target'][0].path))
|
call('2to3 -w %s' % os.path.dirname(kwargs['target'][0].path))
|
||||||
|
|
||||||
|
def is_py3():
|
||||||
|
return 'True' in os.popen('''%s -c "import sys as s;s.stdout.write(str(s.version_info[0] == 3))"''' % env['PYTHON']).read().strip()
|
||||||
|
|
||||||
|
|
||||||
prefix = env['PREFIX']
|
prefix = env['PREFIX']
|
||||||
target_path = env['PYTHON_INSTALL_LOCATION'] + '/mapnik2'
|
target_path = env['PYTHON_INSTALL_LOCATION'] + '/mapnik2'
|
||||||
|
|
||||||
|
@ -51,7 +53,10 @@ if env['BOOST_PYTHON_LIB']:
|
||||||
else:
|
else:
|
||||||
libraries.append(env['BOOST_PYTHON_LIB'].replace('lib','',1))
|
libraries.append(env['BOOST_PYTHON_LIB'].replace('lib','',1))
|
||||||
else:
|
else:
|
||||||
libraries.append('boost_python%s' % env['BOOST_APPEND'])
|
if is_py3():
|
||||||
|
libraries.append('boost_python3%s' % env['BOOST_APPEND'])
|
||||||
|
else:
|
||||||
|
libraries.append('boost_python%s' % env['BOOST_APPEND'])
|
||||||
|
|
||||||
if env['PLATFORM'] == 'Darwin':
|
if env['PLATFORM'] == 'Darwin':
|
||||||
libraries.append(env['ICU_LIB_NAME'])
|
libraries.append(env['ICU_LIB_NAME'])
|
||||||
|
@ -199,7 +204,8 @@ if 'uninstall' not in COMMAND_LINE_TARGETS:
|
||||||
pymapniklib = env.Install(target_path,_mapnik)
|
pymapniklib = env.Install(target_path,_mapnik)
|
||||||
py_env.Alias(target='install',source=pymapniklib)
|
py_env.Alias(target='install',source=pymapniklib)
|
||||||
if pymapniklib and 'install' in COMMAND_LINE_TARGETS:
|
if pymapniklib and 'install' in COMMAND_LINE_TARGETS:
|
||||||
env.AddPostAction(pymapniklib, run_2to3)
|
if is_py3():
|
||||||
|
env.AddPostAction(pymapniklib, run_2to3)
|
||||||
|
|
||||||
|
|
||||||
env['create_uninstall_target'](env, target_path)
|
env['create_uninstall_target'](env, target_path)
|
||||||
|
|
Loading…
Reference in a new issue