fix node to build with target_arch=x64 on linux

atom-shell on linux is incorrectly reporting `ia32` for `process.arch`.

This is happening because `-Dtarget_arch=ia32` is passed to ninja on linux inside `script/update.py` which leads to '-DARCH="ia32"' being set in the compile flags. I see that the current intention is to target 64 bit builds on linux (37275c64cd) and the binaries are in fact compiled as 64 bit despite this bug.  I guess ninja is somehow smartly ignoring the incorrect setting of the `-m32` flags at 6d772c3cda/common.gypi (L175-L178).

Until this is fixed it breaks usage of any node-pre-gyp packaged node addons because node-pre-gyp depends on process.arch being correct in order to require the right binary arch.
This commit is contained in:
Dane Springmeyer 2014-07-30 20:51:23 -07:00
parent 5086873f78
commit 978f73756b

View file

@ -23,11 +23,10 @@ def update_external_binaries():
def update_gyp():
gyp = os.path.join('vendor', 'brightray', 'vendor', 'gyp', 'gyp_main.py')
python = sys.executable
if sys.platform == 'cygwin':
arch = 'x64'
if sys.platform in ['cygwin', 'win32']:
python = os.path.join('vendor', 'python_26', 'python.exe')
arch = 'ia32'
if sys.platform == 'darwin':
arch = 'x64'
arch = 'ia32'
subprocess.call([python, gyp,
'-f', 'ninja', '--depth', '.', 'atom.gyp',
'-Icommon.gypi', '-Ivendor/brightray/brightray.gypi',