diff options
author | Stefan Budeanu <stefan@budeanu.com> | 2016-06-29 16:03:18 -0400 |
---|---|---|
committer | James M Snell <jasnell@gmail.com> | 2016-08-24 15:33:59 -0700 |
commit | 4e4c0915421aae960cc9d1b34034ce7c1808648f (patch) | |
tree | 80428dfdaf7e93a48b742dfc4058e2ca134b2591 /common.gypi | |
parent | 4118598dbbaa012e1dce5b9c7d1f39bfcb2bff9c (diff) | |
download | node-new-4e4c0915421aae960cc9d1b34034ce7c1808648f.tar.gz |
build: windows sharedlib support
Original Commit Message:
Added "dll" option to vcbuild.bat
Insure that Unix SO name is not used on Windows (i.e. produce a .dll file)
Insure that Node and its V8 dependency link against the Visual C++ Runtime
dynamically.
Requires backported V8 patch, see PR 7802.
Ref: https://github.com/nodejs/node/pull/7802
PR-URL: https://github.com/nodejs/node/pull/7487
Reviewed-By: Alexis Campailla <alexis@janeasystems.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
PR-URL: https://github.com/nodejs/node/pull/8084
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'common.gypi')
-rw-r--r-- | common.gypi | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/common.gypi b/common.gypi index ef3c76cc81..01ab2def6e 100644 --- a/common.gypi +++ b/common.gypi @@ -12,6 +12,7 @@ 'python%': 'python', 'node_shared%': 'false', + 'force_dynamic_crt%': 0, 'node_use_v8_platform%': 'true', 'node_use_bundled_v8%': 'true', 'node_module_version%': '', @@ -78,11 +79,24 @@ ['OS == "android"', { 'cflags': [ '-fPIE' ], 'ldflags': [ '-fPIE', '-pie' ] + }], + ['node_shared=="true"', { + 'msvs_settings': { + 'VCCLCompilerTool': { + 'RuntimeLibrary': 3, # MultiThreadedDebugDLL (/MDd) + } + } + }], + ['node_shared=="false"', { + 'msvs_settings': { + 'VCCLCompilerTool': { + 'RuntimeLibrary': 1 # MultiThreadedDebug (/MTd) + } + } }] ], 'msvs_settings': { 'VCCLCompilerTool': { - 'RuntimeLibrary': 1, # static debug 'Optimization': 0, # /Od, no optimization 'MinimalRebuild': 'false', 'OmitFramePointers': 'false', @@ -115,11 +129,24 @@ ['OS == "android"', { 'cflags': [ '-fPIE' ], 'ldflags': [ '-fPIE', '-pie' ] + }], + ['node_shared=="true"', { + 'msvs_settings': { + 'VCCLCompilerTool': { + 'RuntimeLibrary': 2 # MultiThreadedDLL (/MD) + } + } + }], + ['node_shared=="false"', { + 'msvs_settings': { + 'VCCLCompilerTool': { + 'RuntimeLibrary': 0 # MultiThreaded (/MT) + } + } }] ], 'msvs_settings': { 'VCCLCompilerTool': { - 'RuntimeLibrary': 0, # static release 'Optimization': 3, # /Ox, full optimization 'FavorSizeOrSpeed': 1, # /Ot, favour speed over size 'InlineFunctionExpansion': 2, # /Ob2, inline anything eligible |