summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Noordhuis <info@bnoordhuis.nl>2012-07-19 18:20:34 +0200
committerBen Noordhuis <info@bnoordhuis.nl>2012-07-19 18:20:34 +0200
commitb2648934f013ccdf1a15bb74a5480d5a42a97943 (patch)
tree8a6f032343cccd5cf21f62ff34e0986aa5a8c09b
parent5a5e128165e85e15843f21d4ca01c8765323b030 (diff)
downloadnodejs-b2648934f013ccdf1a15bb74a5480d5a42a97943.tar.gz
nodejs-b2648934f013ccdf1a15bb74a5480d5a42a97943.tar.bz2
nodejs-b2648934f013ccdf1a15bb74a5480d5a42a97943.zip
build: unbreak ustack on smartos
I disabled the -ffunction-sections and -fdata-sections switches in 202df30 because they're horribly buggy with some gcc/binutils combos. However, it turns out that the dtrace/ustack post-processing tool requires that V8 is compiled with said switches and was broken because of it. This commit turns them on again on SunOS systems. Let's hope for the best.
-rw-r--r--common.gypi21
1 files changed, 14 insertions, 7 deletions
diff --git a/common.gypi b/common.gypi
index 2d8d17c0d..3ceedc774 100644
--- a/common.gypi
+++ b/common.gypi
@@ -46,18 +46,25 @@
},
'Release': {
'conditions': [
+ ['target_arch=="x64"', {
+ 'msvs_configuration_platform': 'x64',
+ }],
['node_unsafe_optimizations==1', {
'cflags': [ '-O3', '-ffunction-sections', '-fdata-sections' ],
'ldflags': [ '-Wl,--gc-sections' ],
}, {
'cflags': [ '-O2', '-fno-strict-aliasing', '-fno-tree-vrp' ],
- 'cflags!': [ '-O3',
- '-fstrict-aliasing',
- '-ffunction-sections',
- '-fdata-sections' ],
- }],
- ['target_arch=="x64"', {
- 'msvs_configuration_platform': 'x64',
+ 'cflags!': [ '-O3', '-fstrict-aliasing' ],
+ 'conditions': [
+ # Required by the dtrace post-processor. Unfortunately,
+ # some gcc/binutils combos generate bad code when
+ # -ffunction-sections is enabled. Let's hope for the best.
+ ['OS=="solaris"', {
+ 'cflags': [ '-ffunction-sections', '-fdata-sections' ],
+ }, {
+ 'cflags!': [ '-ffunction-sections', '-fdata-sections' ],
+ }],
+ ],
}],
['OS=="solaris"', {
'cflags': [ '-fno-omit-frame-pointer' ],