diff --git a/tools/install.py b/tools/install.py index 48943de91b..0012a7ea83 100755 --- a/tools/install.py +++ b/tools/install.py @@ -118,6 +118,14 @@ def npm_files(action): else: assert(0) # unhandled action type +def subdir_files(path, dest, action): + ret = {} + for dirpath, dirnames, filenames in os.walk(path): + files = [dirpath + '/' + f for f in filenames if f.endswith('.h')] + ret[dest + dirpath.replace(path, '')] = files + for subdir, files in ret.items(): + action(files, subdir + '/') + def files(action): action(['out/Release/node'], 'bin/node') @@ -133,6 +141,34 @@ def files(action): if 'true' == variables.get('node_install_npm'): npm_files(action) + action([ + 'config.gypi', + 'src/node.h', + 'src/node_buffer.h', + 'src/node_internals.h', + 'src/node_object_wrap.h', + 'src/node_version.h', + ], 'include/node/') + + 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) + + if 'false' == variables.get('node_shared_openssl'): + action(['deps/openssl/config/opensslconf.h'], 'include/node/openssl/') + subdir_files('deps/openssl/include/openssl', 'include/node/openssl/', action) + + if 'false' == variables.get('node_shared_v8'): + subdir_files('deps/v8/include', 'include/node/', action) + + if 'false' == variables.get('node_shared_zlib'): + action([ + 'deps/zlib/zconf.h', + 'deps/zlib/zlib.h', + ], 'include/node/') + def run(args): global dst_dir, node_prefix, target_defaults, variables