Add function to get host_arch
This commit is contained in:
parent
1b3a8435e5
commit
af05f5b329
2 changed files with 27 additions and 1 deletions
|
@ -3,6 +3,8 @@
|
||||||
import atexit
|
import atexit
|
||||||
import contextlib
|
import contextlib
|
||||||
import errno
|
import errno
|
||||||
|
import platform
|
||||||
|
import re
|
||||||
import shutil
|
import shutil
|
||||||
import ssl
|
import ssl
|
||||||
import subprocess
|
import subprocess
|
||||||
|
@ -15,6 +17,29 @@ import zipfile
|
||||||
|
|
||||||
from config import is_verbose_mode
|
from config import is_verbose_mode
|
||||||
|
|
||||||
|
|
||||||
|
def get_host_arch():
|
||||||
|
"""Returns the host architecture with a predictable string."""
|
||||||
|
host_arch = platform.machine()
|
||||||
|
|
||||||
|
# Convert machine type to format recognized by gyp.
|
||||||
|
if re.match(r'i.86', host_arch) or host_arch == 'i86pc':
|
||||||
|
host_arch = 'ia32'
|
||||||
|
elif host_arch in ['x86_64', 'amd64']:
|
||||||
|
host_arch = 'x64'
|
||||||
|
elif host_arch.startswith('arm'):
|
||||||
|
host_arch = 'arm'
|
||||||
|
|
||||||
|
# platform.machine is based on running kernel. It's possible to use 64-bit
|
||||||
|
# kernel with 32-bit userland, e.g. to give linker slightly more memory.
|
||||||
|
# Distinguish between different userland bitness by querying
|
||||||
|
# the python binary.
|
||||||
|
if host_arch == 'x64' and platform.architecture()[0] == '32bit':
|
||||||
|
host_arch = 'ia32'
|
||||||
|
|
||||||
|
return host_arch
|
||||||
|
|
||||||
|
|
||||||
def tempdir(prefix=''):
|
def tempdir(prefix=''):
|
||||||
directory = tempfile.mkdtemp(prefix=prefix)
|
directory = tempfile.mkdtemp(prefix=prefix)
|
||||||
atexit.register(shutil.rmtree, directory)
|
atexit.register(shutil.rmtree, directory)
|
||||||
|
|
|
@ -6,6 +6,7 @@ import subprocess
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
from lib.config import get_target_arch
|
from lib.config import get_target_arch
|
||||||
|
from lib.util import get_host_arch
|
||||||
|
|
||||||
|
|
||||||
SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
|
SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
|
||||||
|
@ -48,7 +49,7 @@ def run_gyp(target_arch, component):
|
||||||
defines = [
|
defines = [
|
||||||
'-Dlibchromiumcontent_component={0}'.format(component),
|
'-Dlibchromiumcontent_component={0}'.format(component),
|
||||||
'-Dtarget_arch={0}'.format(target_arch),
|
'-Dtarget_arch={0}'.format(target_arch),
|
||||||
'-Dhost_arch=x64',
|
'-Dhost_arch={0}'.format(get_host_arch()),
|
||||||
'-Dlibrary=static_library',
|
'-Dlibrary=static_library',
|
||||||
]
|
]
|
||||||
return subprocess.call([python, gyp, '-f', 'ninja', '--depth', '.',
|
return subprocess.call([python, gyp, '-f', 'ninja', '--depth', '.',
|
||||||
|
|
Loading…
Reference in a new issue