Skip to content

Commit

Permalink
deps: reintroduce supporting shared c-ares builds
Browse files Browse the repository at this point in the history
As of cc192f0e we've now in sync with upstream which means that we
also can allow our users to build against a shared version of c-ares.

Note: It is still up to users to make sure that the library version
is on par with what Node.js bundles.

This "reverts" commit 25fa5c4.

PR-URL: #5775
Reviewed-By: Fedor Indutny <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
  • Loading branch information
jbergstroem committed Apr 5, 2016
1 parent ea63f79 commit 2253be9
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 2 deletions.
25 changes: 25 additions & 0 deletions configure
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,27 @@ shared_optgroup.add_option('--shared-zlib-libpath',
dest='shared_zlib_libpath',
help='a directory to search for the shared zlib DLL')

shared_optgroup.add_option('--shared-cares',
action='store_true',
dest='shared_libcares',
help='link to a shared cares DLL instead of static linking')

shared_optgroup.add_option('--shared-cares-includes',
action='store',
dest='shared_libcares_includes',
help='directory containing cares header files')

shared_optgroup.add_option('--shared-cares-libname',
action='store',
dest='shared_libcares_libname',
default='cares',
help='alternative lib name to link to [default: %default]')

shared_optgroup.add_option('--shared-cares-libpath',
action='store',
dest='shared_libcares_libpath',
help='a directory to search for the shared cares DLL')

parser.add_option_group(shared_optgroup)

parser.add_option('--systemtap-includes',
Expand Down Expand Up @@ -1125,6 +1146,10 @@ configure_node(output)
configure_library('zlib', output)
configure_library('http_parser', output)
configure_library('libuv', output)
configure_library('libcares', output)
# stay backwards compatible with shared cares builds
output['variables']['node_shared_cares'] = \
output['variables'].pop('node_shared_libcares')
configure_v8(output)
configure_openssl(output)
configure_intl(output)
Expand Down
6 changes: 5 additions & 1 deletion node.gyp
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
'node_no_browser_globals%': 'false',
'node_shared_zlib%': 'false',
'node_shared_http_parser%': 'false',
'node_shared_cares%': 'false',
'node_shared_libuv%': 'false',
'node_use_openssl%': 'true',
'node_shared_openssl%': 'false',
Expand Down Expand Up @@ -107,7 +108,6 @@

'dependencies': [
'node_js2c#host',
'deps/cares/cares.gyp:cares',
'deps/v8/tools/gyp/v8.gyp:v8',
'deps/v8/tools/gyp/v8.gyp:v8_libplatform'
],
Expand Down Expand Up @@ -391,6 +391,10 @@
'dependencies': [ 'deps/http_parser/http_parser.gyp:http_parser' ],
}],

[ 'node_shared_cares=="false"', {
'dependencies': [ 'deps/cares/cares.gyp:cares' ],
}],

[ 'node_shared_libuv=="false"', {
'dependencies': [ 'deps/uv/uv.gyp:libuv' ],
}],
Expand Down
4 changes: 3 additions & 1 deletion tools/install.py
Original file line number Diff line number Diff line change
Expand Up @@ -164,9 +164,11 @@ def headers(action):
if sys.platform.startswith('aix'):
action(['out/Release/node.exp'], 'include/node/')

subdir_files('deps/cares/include', 'include/node/', action)
subdir_files('deps/v8/include', 'include/node/', action)

if 'false' == variables.get('node_shared_cares'):
subdir_files('deps/cares/include', 'include/node/', action)

if 'false' == variables.get('node_shared_libuv'):
subdir_files('deps/uv/include', 'include/node/', action)

Expand Down

0 comments on commit 2253be9

Please sign in to comment.