From 673f65be1430c609a29a9310d71929f79184d97e Mon Sep 17 00:00:00 2001 From: murgatroid99 Date: Mon, 1 Feb 2016 11:19:07 -0800 Subject: [PATCH] Add working Node artifact builder for all platforms --- binding.gyp | 25 +++++---- templates/binding.gyp.template | 25 +++++---- .../grpc_artifact_linux_x64/Dockerfile | 5 ++ .../grpc_artifact_linux_x86/Dockerfile | 5 ++ tools/jenkins/docker_run.sh | 2 + tools/run_tests/artifact_targets.py | 47 +++++++++++++--- tools/run_tests/build_artifact_node.bat | 55 +++++++++++++++++++ tools/run_tests/build_artifact_node.sh | 47 ++++++++++++++++ 8 files changed, 184 insertions(+), 27 deletions(-) create mode 100644 tools/run_tests/build_artifact_node.bat create mode 100755 tools/run_tests/build_artifact_node.sh diff --git a/binding.gyp b/binding.gyp index 651c2e13af3..c8048327fe4 100644 --- a/binding.gyp +++ b/binding.gyp @@ -44,7 +44,10 @@ ], 'conditions': [ ['OS == "win"', { - "include_dirs": [ "third_party/boringssl/include" ], + "include_dirs": [ + "third_party/boringssl/include", + "third_party/zlib" + ], "defines": [ '_WIN32_WINNT=0x0600', 'WIN32_LEAN_AND_MEAN', @@ -63,19 +66,20 @@ "ws2_32" ] }, { # OS != "win" + 'variables': { + 'config': '0. # io.js always reports versions >0 and always exports ALPN symbols. # Therefore, Node's major version will be truthy if and only if it - # supports ALPN. The output of "node -v" is v[major].[minor].[patch], - # like "v4.1.1" in a recent version. We use cut to split by period and - # take the first field (resulting in "v[major]"), then use cut again - # to take all but the first character, removing the "v". + # supports ALPN. The target is "[major].[minor].[patch]". We split by + # periods and take the first field to get the major version. 'defines': [ - 'TSI_OPENSSL_ALPN_SUPPORT=0. # io.js always reports versions >0 and always exports ALPN symbols. # Therefore, Node's major version will be truthy if and only if it - # supports ALPN. The output of "node -v" is v[major].[minor].[patch], - # like "v4.1.1" in a recent version. We use cut to split by period and - # take the first field (resulting in "v[major]"), then use cut again - # to take all but the first character, removing the "v". + # supports ALPN. The target is "[major].[minor].[patch]". We split by + # periods and take the first field to get the major version. 'defines': [ - 'TSI_OPENSSL_ALPN_SUPPORT=