build: fix `process.platform`
e1fe270
introduces the NODE_PLATFORM macro which had to be redefined in
node.gyp for `process.platform` to return expected values.
PR-URL: https://github.com/iojs/io.js/pull/271
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Bert Belder <bertbelder@gmail.com>
This commit is contained in:
Родитель
be2404e0d3
Коммит
9f45799dd2
10
node.gyp
10
node.gyp
|
@ -325,7 +325,7 @@
|
|||
'defines': [
|
||||
'FD_SETSIZE=1024',
|
||||
# we need to use node's preferred "win32" rather than gyp's preferred "win"
|
||||
'PLATFORM="win32"',
|
||||
'NODE_PLATFORM="win32"',
|
||||
'_UNICODE=1',
|
||||
],
|
||||
'libraries': [ '-lpsapi.lib' ]
|
||||
|
@ -337,11 +337,11 @@
|
|||
# like Instruments require it for some features
|
||||
'libraries': [ '-framework CoreFoundation' ],
|
||||
'defines!': [
|
||||
'PLATFORM="mac"',
|
||||
'NODE_PLATFORM="mac"',
|
||||
],
|
||||
'defines': [
|
||||
# we need to use node's preferred "darwin" rather than gyp's preferred "mac"
|
||||
'PLATFORM="darwin"',
|
||||
'NODE_PLATFORM="darwin"',
|
||||
],
|
||||
}],
|
||||
[ 'OS=="freebsd"', {
|
||||
|
@ -356,12 +356,12 @@
|
|||
'-lumem',
|
||||
],
|
||||
'defines!': [
|
||||
'PLATFORM="solaris"',
|
||||
'NODE_PLATFORM="solaris"',
|
||||
],
|
||||
'defines': [
|
||||
# we need to use node's preferred "sunos"
|
||||
# rather than gyp's preferred "solaris"
|
||||
'PLATFORM="sunos"',
|
||||
'NODE_PLATFORM="sunos"',
|
||||
],
|
||||
}],
|
||||
[ 'OS=="freebsd" or OS=="linux"', {
|
||||
|
|
11
src/node.cc
11
src/node.cc
|
@ -2625,14 +2625,9 @@ void SetupProcessObject(Environment* env,
|
|||
READONLY_PROPERTY(process, "arch", OneByteString(env->isolate(), NODE_ARCH));
|
||||
|
||||
// process.platform
|
||||
#ifdef _WIN32
|
||||
// As determined by gyp, NODE_PLATFORM equals 'win' on windows. However
|
||||
// for historic reasons process.platform should be 'win32'.
|
||||
Local<String> platform = OneByteString(env->isolate(), "win32");
|
||||
#else
|
||||
Local<String> platform = OneByteString(env->isolate(), NODE_PLATFORM);
|
||||
#endif
|
||||
READONLY_PROPERTY(process, "platform", platform);
|
||||
READONLY_PROPERTY(process,
|
||||
"platform",
|
||||
OneByteString(env->isolate(), NODE_PLATFORM));
|
||||
|
||||
// process.argv
|
||||
Local<Array> arguments = Array::New(env->isolate(), argc);
|
||||
|
|
Загрузка…
Ссылка в новой задаче