diff options
author | Michael Dawson <michael_dawson@ca.ibm.com> | 2015-08-12 11:53:33 -0400 |
---|---|---|
committer | Michael Dawson <michael_dawson@ca.ibm.com> | 2015-09-15 13:17:28 -0400 |
commit | 2a17c7f65ecee0e0ed6925b70285c9625913e3b1 (patch) | |
tree | 33f0c2e6adc0df2ed43382465cd3a24232982755 /common.gypi | |
parent | 704dcce75471e083cfbd85c16ee48c634aeedbf5 (diff) | |
download | node-new-2a17c7f65ecee0e0ed6925b70285c9625913e3b1.tar.gz |
build: Updates to enable AIX support
These are the core changes that allow AIX to compile. There
are still some test failures as there are some patches needed for
libuv and npm that we'll need to contribute through those
communities but this set allows node to be built on AIX and
pass most of the core tests
The change in js2c is because AIX does not support $ in
identifier names. See the discussion/agreement in
https://github.com/nodejs/node/issues/2272
PR-URL: https://github.com/nodejs/node/pull/2364
Reviewed-By: Ben Noordhuis <ben@strongloop.com>
Reviewed-By: Rod Vagg <r@va.gg>
Diffstat (limited to 'common.gypi')
-rw-r--r-- | common.gypi | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/common.gypi b/common.gypi index c57cc5b7b3..dc7f9b6757 100644 --- a/common.gypi +++ b/common.gypi @@ -64,6 +64,10 @@ ['target_arch=="x64"', { 'msvs_configuration_platform': 'x64', }], + ['OS=="aix"', { + 'cflags': [ '-gxcoff' ], + 'ldflags': [ '-Wl,-bbigtoc' ], + }], ], 'msvs_settings': { 'VCCLCompilerTool': { @@ -217,11 +221,11 @@ 'BUILDING_UV_SHARED=1', ], }], - [ 'OS in "linux freebsd openbsd solaris"', { + [ 'OS in "linux freebsd openbsd solaris aix"', { 'cflags': [ '-pthread', ], 'ldflags': [ '-pthread' ], }], - [ 'OS in "linux freebsd openbsd solaris android"', { + [ 'OS in "linux freebsd openbsd solaris android aix"', { 'cflags': [ '-Wall', '-Wextra', '-Wno-unused-parameter', ], 'cflags_cc': [ '-fno-rtti', '-fno-exceptions', '-std=gnu++0x' ], 'ldflags': [ '-rdynamic' ], @@ -243,11 +247,11 @@ 'cflags': [ '-m64' ], 'ldflags': [ '-m64' ], }], - [ 'target_arch=="ppc"', { + [ 'target_arch=="ppc" and OS!="aix"', { 'cflags': [ '-m32' ], 'ldflags': [ '-m32' ], }], - [ 'target_arch=="ppc64"', { + [ 'target_arch=="ppc64" and OS!="aix"', { 'cflags': [ '-m64', '-mminimal-toc' ], 'ldflags': [ '-m64' ], }], @@ -257,6 +261,18 @@ 'cflags!': [ '-pthread' ], 'ldflags!': [ '-pthread' ], }], + [ 'OS=="aix"', { + 'conditions': [ + [ 'target_arch=="ppc"', { + 'ldflags': [ '-Wl,-bmaxdata:0x60000000/dsa' ], + }], + [ 'target_arch=="ppc64"', { + 'cflags': [ '-maix64' ], + 'ldflags': [ '-maix64' ], + }], + ], + 'ldflags!': [ '-rdynamic' ], + }], ], }], [ 'OS=="android"', { |