UNPKG

59.8 kBPlain TextView Raw
1# GRPC Node gyp file
2# This currently builds the Node extension and dependencies
3# This file has been automatically generated from a template file.
4# Please look at the templates directory instead.
5# This file can be regenerated from the template by running
6# tools/buildgen/generate_projects.sh
7
8# Copyright 2015 gRPC authors.
9#
10# Licensed under the Apache License, Version 2.0 (the "License");
11# you may not use this file except in compliance with the License.
12# You may obtain a copy of the License at
13#
14# http://www.apache.org/licenses/LICENSE-2.0
15#
16# Unless required by applicable law or agreed to in writing, software
17# distributed under the License is distributed on an "AS IS" BASIS,
18# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19# See the License for the specific language governing permissions and
20# limitations under the License.
21
22# Some of this file is built with the help of
23# https://n8.io/converting-a-c-library-to-gyp/
24{
25 'variables': {
26 'runtime%': 'node',
27 # Some Node installations use the system installation of OpenSSL, and on
28 # some systems, the system OpenSSL still does not have ALPN support. This
29 # will let users recompile gRPC to work without ALPN.
30 'grpc_alpn%': 'true',
31 # Indicates that the library should be built with gcov.
32 'grpc_gcov%': 'false',
33 # Indicates that the library should be built with compatibility for musl
34 # libc, so that it can run on Alpine Linux. This is only necessary if not
35 # building on Alpine Linux
36 'grpc_alpine%': 'false'
37 },
38 'target_defaults': {
39 'configurations': {
40 'Release': {
41 'cflags': [
42 '-O2',
43 '-Wframe-larger-than=16384',
44 ],
45 'defines': [
46 'NDEBUG',
47 ],
48 },
49 'Debug': {
50 'cflags': [
51 '-O0',
52 ],
53 'defines': [
54 '_DEBUG',
55 'DEBUG',
56 ],
57 },
58 },
59 'cflags': [
60 '-g',
61 '-Wall',
62 '-Wextra',
63 '-Werror',
64 '-Wno-long-long',
65 '-Wno-unused-parameter',
66 '-DOSATOMIC_USE_INLINED=1',
67 '-Wno-deprecated-declarations',
68 '-Ithird_party/nanopb',
69 '-DPB_FIELD_32BIT',
70 '-fvisibility=hidden',
71 ],
72 'ldflags': [
73 '-g',
74 ],
75 'cflags_c': [
76 '-Werror',
77 '-std=c99'
78 ],
79 'cflags_cc': [
80 '-Werror',
81 '-std=c++1y'
82 ],
83 'include_dirs': [
84 'deps/grpc',
85 'deps/grpc/include',
86 'deps/grpc/src/core/ext/upb-generated',
87 'deps/grpc/third_party/abseil-cpp',
88 'deps/grpc/third_party/address_sorting/include',
89 'deps/grpc/third_party/cares',
90 'deps/grpc/third_party/cares/cares',
91 'deps/grpc/third_party/nanopb',
92 'deps/grpc/third_party/upb',
93 'deps/grpc/third_party/upb/generated_for_cmake',
94 ],
95 'defines': [
96 'PB_FIELD_32BIT',
97 'GPR_BACKWARDS_COMPATIBILITY_MODE',
98 'GRPC_ARES=1',
99 'GRPC_UV',
100 'GRPC_NODE_VERSION="1.23.0"',
101 'CARES_STATICLIB',
102 'CARES_SYMBOL_HIDING'
103 ],
104 'defines!': [
105 'OPENSSL_THREADS'
106 ],
107 'conditions': [
108 ['grpc_gcov=="true"', {
109 'cflags': [
110 '-O0',
111 '-fprofile-arcs',
112 '-ftest-coverage',
113 '-Wno-return-type',
114 ],
115 'defines': [
116 '_DEBUG',
117 'DEBUG',
118 'GPR_GCOV',
119 ],
120 'ldflags': [
121 '-fprofile-arcs',
122 '-ftest-coverage',
123 '-rdynamic',
124 '-lstdc++',
125 ],
126 }],
127 ['grpc_alpine=="true"', {
128 'defines': [
129 'GPR_MUSL_LIBC_COMPAT'
130 ]
131 }],
132 # This is the condition for using boringssl
133 ['OS=="win" or runtime=="electron"', {
134 "include_dirs": [
135 "deps/grpc/third_party/boringssl/include"
136 ],
137 "defines": [
138 'OPENSSL_NO_ASM'
139 ]
140 }, {
141 'conditions': [
142 ["target_arch=='ia32'", {
143 "include_dirs": [ "<(node_root_dir)/deps/openssl/config/piii" ]
144 }],
145 ["target_arch=='x64'", {
146 "include_dirs": [ "<(node_root_dir)/deps/openssl/config/k8" ]
147 }],
148 ["target_arch=='arm'", {
149 "include_dirs": [ "<(node_root_dir)/deps/openssl/config/arm" ]
150 }],
151 ['grpc_alpn=="true"', {
152 'defines': [
153 'TSI_OPENSSL_ALPN_SUPPORT=1'
154 ],
155 }, {
156 'defines': [
157 'TSI_OPENSSL_ALPN_SUPPORT=0'
158 ],
159 }]
160 ],
161 'include_dirs': [
162 '<(node_root_dir)/deps/openssl/openssl/include',
163 ]
164 }],
165 ['OS == "win"', {
166 "include_dirs": [
167 "deps/grpc/third_party/zlib"
168 ],
169 "defines": [
170 '_WIN32_WINNT=0x0600',
171 'WIN32_LEAN_AND_MEAN',
172 '_HAS_EXCEPTIONS=0',
173 'UNICODE',
174 '_UNICODE',
175 'NOMINMAX',
176 ],
177 "msvs_settings": {
178 'VCCLCompilerTool': {
179 'RuntimeLibrary': 1, # static debug
180 }
181 },
182 "libraries": [
183 "ws2_32"
184 ]
185 }, { # OS != "win"
186 'include_dirs': [
187 '<(node_root_dir)/deps/zlib'
188 ]
189 }],
190 ['OS == "mac"', {
191 'xcode_settings': {
192 'OTHER_CFLAGS': [
193 '-g',
194 '-Wall',
195 '-Wextra',
196 '-Werror',
197 '-Wno-long-long',
198 '-Wno-unused-parameter',
199 '-DOSATOMIC_USE_INLINED=1',
200 '-Wno-deprecated-declarations',
201 '-Ithird_party/nanopb',
202 '-DPB_FIELD_32BIT',
203 '-fvisibility=hidden',
204 ],
205 'OTHER_CPLUSPLUSFLAGS': [
206 '-g',
207 '-Wall',
208 '-Wextra',
209 '-Werror',
210 '-Wno-long-long',
211 '-Wno-unused-parameter',
212 '-DOSATOMIC_USE_INLINED=1',
213 '-Wno-deprecated-declarations',
214 '-Ithird_party/nanopb',
215 '-DPB_FIELD_32BIT',
216 '-fvisibility=hidden',
217 '-stdlib=libc++',
218 '-std=c++1y',
219 '-Wno-error=deprecated-declarations'
220 ],
221 },
222 }]
223 ]
224 },
225 'conditions': [
226 ['OS=="win" or runtime=="electron"', {
227 'targets': [
228 {
229 'target_name': 'boringssl',
230 'product_prefix': 'lib',
231 'type': 'static_library',
232 'cflags': [
233 '-Wno-implicit-fallthrough'
234 ],
235 'defines': [
236 '_XOPEN_SOURCE=700'
237 ],
238 'dependencies': [
239 ],
240 'sources': [
241 'deps/grpc/src/boringssl/err_data.c',
242 'deps/grpc/third_party/boringssl/crypto/asn1/a_bitstr.c',
243 'deps/grpc/third_party/boringssl/crypto/asn1/a_bool.c',
244 'deps/grpc/third_party/boringssl/crypto/asn1/a_d2i_fp.c',
245 'deps/grpc/third_party/boringssl/crypto/asn1/a_dup.c',
246 'deps/grpc/third_party/boringssl/crypto/asn1/a_enum.c',
247 'deps/grpc/third_party/boringssl/crypto/asn1/a_gentm.c',
248 'deps/grpc/third_party/boringssl/crypto/asn1/a_i2d_fp.c',
249 'deps/grpc/third_party/boringssl/crypto/asn1/a_int.c',
250 'deps/grpc/third_party/boringssl/crypto/asn1/a_mbstr.c',
251 'deps/grpc/third_party/boringssl/crypto/asn1/a_object.c',
252 'deps/grpc/third_party/boringssl/crypto/asn1/a_octet.c',
253 'deps/grpc/third_party/boringssl/crypto/asn1/a_print.c',
254 'deps/grpc/third_party/boringssl/crypto/asn1/a_strnid.c',
255 'deps/grpc/third_party/boringssl/crypto/asn1/a_time.c',
256 'deps/grpc/third_party/boringssl/crypto/asn1/a_type.c',
257 'deps/grpc/third_party/boringssl/crypto/asn1/a_utctm.c',
258 'deps/grpc/third_party/boringssl/crypto/asn1/a_utf8.c',
259 'deps/grpc/third_party/boringssl/crypto/asn1/asn1_lib.c',
260 'deps/grpc/third_party/boringssl/crypto/asn1/asn1_par.c',
261 'deps/grpc/third_party/boringssl/crypto/asn1/asn_pack.c',
262 'deps/grpc/third_party/boringssl/crypto/asn1/f_enum.c',
263 'deps/grpc/third_party/boringssl/crypto/asn1/f_int.c',
264 'deps/grpc/third_party/boringssl/crypto/asn1/f_string.c',
265 'deps/grpc/third_party/boringssl/crypto/asn1/tasn_dec.c',
266 'deps/grpc/third_party/boringssl/crypto/asn1/tasn_enc.c',
267 'deps/grpc/third_party/boringssl/crypto/asn1/tasn_fre.c',
268 'deps/grpc/third_party/boringssl/crypto/asn1/tasn_new.c',
269 'deps/grpc/third_party/boringssl/crypto/asn1/tasn_typ.c',
270 'deps/grpc/third_party/boringssl/crypto/asn1/tasn_utl.c',
271 'deps/grpc/third_party/boringssl/crypto/asn1/time_support.c',
272 'deps/grpc/third_party/boringssl/crypto/base64/base64.c',
273 'deps/grpc/third_party/boringssl/crypto/bio/bio.c',
274 'deps/grpc/third_party/boringssl/crypto/bio/bio_mem.c',
275 'deps/grpc/third_party/boringssl/crypto/bio/connect.c',
276 'deps/grpc/third_party/boringssl/crypto/bio/fd.c',
277 'deps/grpc/third_party/boringssl/crypto/bio/file.c',
278 'deps/grpc/third_party/boringssl/crypto/bio/hexdump.c',
279 'deps/grpc/third_party/boringssl/crypto/bio/pair.c',
280 'deps/grpc/third_party/boringssl/crypto/bio/printf.c',
281 'deps/grpc/third_party/boringssl/crypto/bio/socket.c',
282 'deps/grpc/third_party/boringssl/crypto/bio/socket_helper.c',
283 'deps/grpc/third_party/boringssl/crypto/bn_extra/bn_asn1.c',
284 'deps/grpc/third_party/boringssl/crypto/bn_extra/convert.c',
285 'deps/grpc/third_party/boringssl/crypto/buf/buf.c',
286 'deps/grpc/third_party/boringssl/crypto/bytestring/asn1_compat.c',
287 'deps/grpc/third_party/boringssl/crypto/bytestring/ber.c',
288 'deps/grpc/third_party/boringssl/crypto/bytestring/cbb.c',
289 'deps/grpc/third_party/boringssl/crypto/bytestring/cbs.c',
290 'deps/grpc/third_party/boringssl/crypto/chacha/chacha.c',
291 'deps/grpc/third_party/boringssl/crypto/cipher_extra/cipher_extra.c',
292 'deps/grpc/third_party/boringssl/crypto/cipher_extra/derive_key.c',
293 'deps/grpc/third_party/boringssl/crypto/cipher_extra/e_aesccm.c',
294 'deps/grpc/third_party/boringssl/crypto/cipher_extra/e_aesctrhmac.c',
295 'deps/grpc/third_party/boringssl/crypto/cipher_extra/e_aesgcmsiv.c',
296 'deps/grpc/third_party/boringssl/crypto/cipher_extra/e_chacha20poly1305.c',
297 'deps/grpc/third_party/boringssl/crypto/cipher_extra/e_null.c',
298 'deps/grpc/third_party/boringssl/crypto/cipher_extra/e_rc2.c',
299 'deps/grpc/third_party/boringssl/crypto/cipher_extra/e_rc4.c',
300 'deps/grpc/third_party/boringssl/crypto/cipher_extra/e_ssl3.c',
301 'deps/grpc/third_party/boringssl/crypto/cipher_extra/e_tls.c',
302 'deps/grpc/third_party/boringssl/crypto/cipher_extra/tls_cbc.c',
303 'deps/grpc/third_party/boringssl/crypto/cmac/cmac.c',
304 'deps/grpc/third_party/boringssl/crypto/conf/conf.c',
305 'deps/grpc/third_party/boringssl/crypto/cpu-aarch64-fuchsia.c',
306 'deps/grpc/third_party/boringssl/crypto/cpu-aarch64-linux.c',
307 'deps/grpc/third_party/boringssl/crypto/cpu-arm-linux.c',
308 'deps/grpc/third_party/boringssl/crypto/cpu-arm.c',
309 'deps/grpc/third_party/boringssl/crypto/cpu-intel.c',
310 'deps/grpc/third_party/boringssl/crypto/cpu-ppc64le.c',
311 'deps/grpc/third_party/boringssl/crypto/crypto.c',
312 'deps/grpc/third_party/boringssl/crypto/curve25519/spake25519.c',
313 'deps/grpc/third_party/boringssl/crypto/dh/check.c',
314 'deps/grpc/third_party/boringssl/crypto/dh/dh.c',
315 'deps/grpc/third_party/boringssl/crypto/dh/dh_asn1.c',
316 'deps/grpc/third_party/boringssl/crypto/dh/params.c',
317 'deps/grpc/third_party/boringssl/crypto/digest_extra/digest_extra.c',
318 'deps/grpc/third_party/boringssl/crypto/dsa/dsa.c',
319 'deps/grpc/third_party/boringssl/crypto/dsa/dsa_asn1.c',
320 'deps/grpc/third_party/boringssl/crypto/ec_extra/ec_asn1.c',
321 'deps/grpc/third_party/boringssl/crypto/ecdh/ecdh.c',
322 'deps/grpc/third_party/boringssl/crypto/ecdsa_extra/ecdsa_asn1.c',
323 'deps/grpc/third_party/boringssl/crypto/engine/engine.c',
324 'deps/grpc/third_party/boringssl/crypto/err/err.c',
325 'deps/grpc/third_party/boringssl/crypto/evp/digestsign.c',
326 'deps/grpc/third_party/boringssl/crypto/evp/evp.c',
327 'deps/grpc/third_party/boringssl/crypto/evp/evp_asn1.c',
328 'deps/grpc/third_party/boringssl/crypto/evp/evp_ctx.c',
329 'deps/grpc/third_party/boringssl/crypto/evp/p_dsa_asn1.c',
330 'deps/grpc/third_party/boringssl/crypto/evp/p_ec.c',
331 'deps/grpc/third_party/boringssl/crypto/evp/p_ec_asn1.c',
332 'deps/grpc/third_party/boringssl/crypto/evp/p_ed25519.c',
333 'deps/grpc/third_party/boringssl/crypto/evp/p_ed25519_asn1.c',
334 'deps/grpc/third_party/boringssl/crypto/evp/p_rsa.c',
335 'deps/grpc/third_party/boringssl/crypto/evp/p_rsa_asn1.c',
336 'deps/grpc/third_party/boringssl/crypto/evp/pbkdf.c',
337 'deps/grpc/third_party/boringssl/crypto/evp/print.c',
338 'deps/grpc/third_party/boringssl/crypto/evp/scrypt.c',
339 'deps/grpc/third_party/boringssl/crypto/evp/sign.c',
340 'deps/grpc/third_party/boringssl/crypto/ex_data.c',
341 'deps/grpc/third_party/boringssl/crypto/fipsmodule/bcm.c',
342 'deps/grpc/third_party/boringssl/crypto/fipsmodule/is_fips.c',
343 'deps/grpc/third_party/boringssl/crypto/hkdf/hkdf.c',
344 'deps/grpc/third_party/boringssl/crypto/lhash/lhash.c',
345 'deps/grpc/third_party/boringssl/crypto/mem.c',
346 'deps/grpc/third_party/boringssl/crypto/obj/obj.c',
347 'deps/grpc/third_party/boringssl/crypto/obj/obj_xref.c',
348 'deps/grpc/third_party/boringssl/crypto/pem/pem_all.c',
349 'deps/grpc/third_party/boringssl/crypto/pem/pem_info.c',
350 'deps/grpc/third_party/boringssl/crypto/pem/pem_lib.c',
351 'deps/grpc/third_party/boringssl/crypto/pem/pem_oth.c',
352 'deps/grpc/third_party/boringssl/crypto/pem/pem_pk8.c',
353 'deps/grpc/third_party/boringssl/crypto/pem/pem_pkey.c',
354 'deps/grpc/third_party/boringssl/crypto/pem/pem_x509.c',
355 'deps/grpc/third_party/boringssl/crypto/pem/pem_xaux.c',
356 'deps/grpc/third_party/boringssl/crypto/pkcs7/pkcs7.c',
357 'deps/grpc/third_party/boringssl/crypto/pkcs7/pkcs7_x509.c',
358 'deps/grpc/third_party/boringssl/crypto/pkcs8/p5_pbev2.c',
359 'deps/grpc/third_party/boringssl/crypto/pkcs8/pkcs8.c',
360 'deps/grpc/third_party/boringssl/crypto/pkcs8/pkcs8_x509.c',
361 'deps/grpc/third_party/boringssl/crypto/poly1305/poly1305.c',
362 'deps/grpc/third_party/boringssl/crypto/poly1305/poly1305_arm.c',
363 'deps/grpc/third_party/boringssl/crypto/poly1305/poly1305_vec.c',
364 'deps/grpc/third_party/boringssl/crypto/pool/pool.c',
365 'deps/grpc/third_party/boringssl/crypto/rand_extra/deterministic.c',
366 'deps/grpc/third_party/boringssl/crypto/rand_extra/forkunsafe.c',
367 'deps/grpc/third_party/boringssl/crypto/rand_extra/fuchsia.c',
368 'deps/grpc/third_party/boringssl/crypto/rand_extra/rand_extra.c',
369 'deps/grpc/third_party/boringssl/crypto/rand_extra/windows.c',
370 'deps/grpc/third_party/boringssl/crypto/rc4/rc4.c',
371 'deps/grpc/third_party/boringssl/crypto/refcount_c11.c',
372 'deps/grpc/third_party/boringssl/crypto/refcount_lock.c',
373 'deps/grpc/third_party/boringssl/crypto/rsa_extra/rsa_asn1.c',
374 'deps/grpc/third_party/boringssl/crypto/stack/stack.c',
375 'deps/grpc/third_party/boringssl/crypto/thread.c',
376 'deps/grpc/third_party/boringssl/crypto/thread_none.c',
377 'deps/grpc/third_party/boringssl/crypto/thread_pthread.c',
378 'deps/grpc/third_party/boringssl/crypto/thread_win.c',
379 'deps/grpc/third_party/boringssl/crypto/x509/a_digest.c',
380 'deps/grpc/third_party/boringssl/crypto/x509/a_sign.c',
381 'deps/grpc/third_party/boringssl/crypto/x509/a_strex.c',
382 'deps/grpc/third_party/boringssl/crypto/x509/a_verify.c',
383 'deps/grpc/third_party/boringssl/crypto/x509/algorithm.c',
384 'deps/grpc/third_party/boringssl/crypto/x509/asn1_gen.c',
385 'deps/grpc/third_party/boringssl/crypto/x509/by_dir.c',
386 'deps/grpc/third_party/boringssl/crypto/x509/by_file.c',
387 'deps/grpc/third_party/boringssl/crypto/x509/i2d_pr.c',
388 'deps/grpc/third_party/boringssl/crypto/x509/rsa_pss.c',
389 'deps/grpc/third_party/boringssl/crypto/x509/t_crl.c',
390 'deps/grpc/third_party/boringssl/crypto/x509/t_req.c',
391 'deps/grpc/third_party/boringssl/crypto/x509/t_x509.c',
392 'deps/grpc/third_party/boringssl/crypto/x509/t_x509a.c',
393 'deps/grpc/third_party/boringssl/crypto/x509/x509.c',
394 'deps/grpc/third_party/boringssl/crypto/x509/x509_att.c',
395 'deps/grpc/third_party/boringssl/crypto/x509/x509_cmp.c',
396 'deps/grpc/third_party/boringssl/crypto/x509/x509_d2.c',
397 'deps/grpc/third_party/boringssl/crypto/x509/x509_def.c',
398 'deps/grpc/third_party/boringssl/crypto/x509/x509_ext.c',
399 'deps/grpc/third_party/boringssl/crypto/x509/x509_lu.c',
400 'deps/grpc/third_party/boringssl/crypto/x509/x509_obj.c',
401 'deps/grpc/third_party/boringssl/crypto/x509/x509_r2x.c',
402 'deps/grpc/third_party/boringssl/crypto/x509/x509_req.c',
403 'deps/grpc/third_party/boringssl/crypto/x509/x509_set.c',
404 'deps/grpc/third_party/boringssl/crypto/x509/x509_trs.c',
405 'deps/grpc/third_party/boringssl/crypto/x509/x509_txt.c',
406 'deps/grpc/third_party/boringssl/crypto/x509/x509_v3.c',
407 'deps/grpc/third_party/boringssl/crypto/x509/x509_vfy.c',
408 'deps/grpc/third_party/boringssl/crypto/x509/x509_vpm.c',
409 'deps/grpc/third_party/boringssl/crypto/x509/x509cset.c',
410 'deps/grpc/third_party/boringssl/crypto/x509/x509name.c',
411 'deps/grpc/third_party/boringssl/crypto/x509/x509rset.c',
412 'deps/grpc/third_party/boringssl/crypto/x509/x509spki.c',
413 'deps/grpc/third_party/boringssl/crypto/x509/x_algor.c',
414 'deps/grpc/third_party/boringssl/crypto/x509/x_all.c',
415 'deps/grpc/third_party/boringssl/crypto/x509/x_attrib.c',
416 'deps/grpc/third_party/boringssl/crypto/x509/x_crl.c',
417 'deps/grpc/third_party/boringssl/crypto/x509/x_exten.c',
418 'deps/grpc/third_party/boringssl/crypto/x509/x_info.c',
419 'deps/grpc/third_party/boringssl/crypto/x509/x_name.c',
420 'deps/grpc/third_party/boringssl/crypto/x509/x_pkey.c',
421 'deps/grpc/third_party/boringssl/crypto/x509/x_pubkey.c',
422 'deps/grpc/third_party/boringssl/crypto/x509/x_req.c',
423 'deps/grpc/third_party/boringssl/crypto/x509/x_sig.c',
424 'deps/grpc/third_party/boringssl/crypto/x509/x_spki.c',
425 'deps/grpc/third_party/boringssl/crypto/x509/x_val.c',
426 'deps/grpc/third_party/boringssl/crypto/x509/x_x509.c',
427 'deps/grpc/third_party/boringssl/crypto/x509/x_x509a.c',
428 'deps/grpc/third_party/boringssl/crypto/x509v3/pcy_cache.c',
429 'deps/grpc/third_party/boringssl/crypto/x509v3/pcy_data.c',
430 'deps/grpc/third_party/boringssl/crypto/x509v3/pcy_lib.c',
431 'deps/grpc/third_party/boringssl/crypto/x509v3/pcy_map.c',
432 'deps/grpc/third_party/boringssl/crypto/x509v3/pcy_node.c',
433 'deps/grpc/third_party/boringssl/crypto/x509v3/pcy_tree.c',
434 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_akey.c',
435 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_akeya.c',
436 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_alt.c',
437 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_bcons.c',
438 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_bitst.c',
439 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_conf.c',
440 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_cpols.c',
441 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_crld.c',
442 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_enum.c',
443 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_extku.c',
444 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_genn.c',
445 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_ia5.c',
446 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_info.c',
447 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_int.c',
448 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_lib.c',
449 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_ncons.c',
450 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_pci.c',
451 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_pcia.c',
452 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_pcons.c',
453 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_pku.c',
454 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_pmaps.c',
455 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_prn.c',
456 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_purp.c',
457 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_skey.c',
458 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_sxnet.c',
459 'deps/grpc/third_party/boringssl/crypto/x509v3/v3_utl.c',
460 'deps/grpc/third_party/boringssl/ssl/bio_ssl.cc',
461 'deps/grpc/third_party/boringssl/ssl/custom_extensions.cc',
462 'deps/grpc/third_party/boringssl/ssl/d1_both.cc',
463 'deps/grpc/third_party/boringssl/ssl/d1_lib.cc',
464 'deps/grpc/third_party/boringssl/ssl/d1_pkt.cc',
465 'deps/grpc/third_party/boringssl/ssl/d1_srtp.cc',
466 'deps/grpc/third_party/boringssl/ssl/dtls_method.cc',
467 'deps/grpc/third_party/boringssl/ssl/dtls_record.cc',
468 'deps/grpc/third_party/boringssl/ssl/handoff.cc',
469 'deps/grpc/third_party/boringssl/ssl/handshake.cc',
470 'deps/grpc/third_party/boringssl/ssl/handshake_client.cc',
471 'deps/grpc/third_party/boringssl/ssl/handshake_server.cc',
472 'deps/grpc/third_party/boringssl/ssl/s3_both.cc',
473 'deps/grpc/third_party/boringssl/ssl/s3_lib.cc',
474 'deps/grpc/third_party/boringssl/ssl/s3_pkt.cc',
475 'deps/grpc/third_party/boringssl/ssl/ssl_aead_ctx.cc',
476 'deps/grpc/third_party/boringssl/ssl/ssl_asn1.cc',
477 'deps/grpc/third_party/boringssl/ssl/ssl_buffer.cc',
478 'deps/grpc/third_party/boringssl/ssl/ssl_cert.cc',
479 'deps/grpc/third_party/boringssl/ssl/ssl_cipher.cc',
480 'deps/grpc/third_party/boringssl/ssl/ssl_file.cc',
481 'deps/grpc/third_party/boringssl/ssl/ssl_key_share.cc',
482 'deps/grpc/third_party/boringssl/ssl/ssl_lib.cc',
483 'deps/grpc/third_party/boringssl/ssl/ssl_privkey.cc',
484 'deps/grpc/third_party/boringssl/ssl/ssl_session.cc',
485 'deps/grpc/third_party/boringssl/ssl/ssl_stat.cc',
486 'deps/grpc/third_party/boringssl/ssl/ssl_transcript.cc',
487 'deps/grpc/third_party/boringssl/ssl/ssl_versions.cc',
488 'deps/grpc/third_party/boringssl/ssl/ssl_x509.cc',
489 'deps/grpc/third_party/boringssl/ssl/t1_enc.cc',
490 'deps/grpc/third_party/boringssl/ssl/t1_lib.cc',
491 'deps/grpc/third_party/boringssl/ssl/tls13_both.cc',
492 'deps/grpc/third_party/boringssl/ssl/tls13_client.cc',
493 'deps/grpc/third_party/boringssl/ssl/tls13_enc.cc',
494 'deps/grpc/third_party/boringssl/ssl/tls13_server.cc',
495 'deps/grpc/third_party/boringssl/ssl/tls_method.cc',
496 'deps/grpc/third_party/boringssl/ssl/tls_record.cc',
497 'deps/grpc/third_party/boringssl/third_party/fiat/curve25519.c',
498 ],
499 'conditions': [
500 ['OS == "mac"', {
501 'xcode_settings': {
502 'MACOSX_DEPLOYMENT_TARGET': '10.9'
503 }
504 }]
505 ]
506 },
507 ],
508 }],
509 ['OS == "win" and runtime!="electron"', {
510 'targets': [
511 {
512 # IMPORTANT WINDOWS BUILD INFORMATION
513 # This library does not build on Windows without modifying the Node
514 # development packages that node-gyp downloads in order to build.
515 # Due to https://github.com/nodejs/node/issues/4932, the headers for
516 # BoringSSL conflict with the OpenSSL headers included by default
517 # when including the Node headers. The remedy for this is to remove
518 # the OpenSSL headers, from the downloaded Node development package,
519 # which is typically located in `.node-gyp` in your home directory.
520 #
521 # This is not true of Electron, which does not have OpenSSL headers.
522 'target_name': 'WINDOWS_BUILD_WARNING',
523 'rules': [
524 {
525 'rule_name': 'WINDOWS_BUILD_WARNING',
526 'extension': 'S',
527 'inputs': [
528 'package.json'
529 ],
530 'outputs': [
531 'ignore_this_part'
532 ],
533 'action': ['echo', 'IMPORTANT: Due to https://github.com/nodejs/node/issues/4932, to build this library on Windows, you must first remove <(node_root_dir)/include/node/openssl/']
534 }
535 ]
536 },
537 ]
538 }],
539 ['OS == "win"', {
540 'targets': [
541 # Only want to compile zlib under Windows
542 {
543 'target_name': 'z',
544 'product_prefix': 'lib',
545 'type': 'static_library',
546 'dependencies': [
547 ],
548 'sources': [
549 'deps/grpc/third_party/zlib/adler32.c',
550 'deps/grpc/third_party/zlib/compress.c',
551 'deps/grpc/third_party/zlib/crc32.c',
552 'deps/grpc/third_party/zlib/deflate.c',
553 'deps/grpc/third_party/zlib/gzclose.c',
554 'deps/grpc/third_party/zlib/gzlib.c',
555 'deps/grpc/third_party/zlib/gzread.c',
556 'deps/grpc/third_party/zlib/gzwrite.c',
557 'deps/grpc/third_party/zlib/infback.c',
558 'deps/grpc/third_party/zlib/inffast.c',
559 'deps/grpc/third_party/zlib/inflate.c',
560 'deps/grpc/third_party/zlib/inftrees.c',
561 'deps/grpc/third_party/zlib/trees.c',
562 'deps/grpc/third_party/zlib/uncompr.c',
563 'deps/grpc/third_party/zlib/zutil.c',
564 ]
565 },
566 ]
567 }]
568 ],
569 'targets': [
570 {
571 'target_name': 'ares',
572 'product_prefix': 'lib',
573 'type': 'static_library',
574 'sources': [
575 'deps/grpc/third_party/cares/cares/ares__close_sockets.c',
576 'deps/grpc/third_party/cares/cares/ares__get_hostent.c',
577 'deps/grpc/third_party/cares/cares/ares__read_line.c',
578 'deps/grpc/third_party/cares/cares/ares__timeval.c',
579 'deps/grpc/third_party/cares/cares/ares_cancel.c',
580 'deps/grpc/third_party/cares/cares/ares_create_query.c',
581 'deps/grpc/third_party/cares/cares/ares_data.c',
582 'deps/grpc/third_party/cares/cares/ares_destroy.c',
583 'deps/grpc/third_party/cares/cares/ares_expand_name.c',
584 'deps/grpc/third_party/cares/cares/ares_expand_string.c',
585 'deps/grpc/third_party/cares/cares/ares_fds.c',
586 'deps/grpc/third_party/cares/cares/ares_free_hostent.c',
587 'deps/grpc/third_party/cares/cares/ares_free_string.c',
588 'deps/grpc/third_party/cares/cares/ares_getenv.c',
589 'deps/grpc/third_party/cares/cares/ares_gethostbyaddr.c',
590 'deps/grpc/third_party/cares/cares/ares_gethostbyname.c',
591 'deps/grpc/third_party/cares/cares/ares_getnameinfo.c',
592 'deps/grpc/third_party/cares/cares/ares_getopt.c',
593 'deps/grpc/third_party/cares/cares/ares_getsock.c',
594 'deps/grpc/third_party/cares/cares/ares_init.c',
595 'deps/grpc/third_party/cares/cares/ares_library_init.c',
596 'deps/grpc/third_party/cares/cares/ares_llist.c',
597 'deps/grpc/third_party/cares/cares/ares_mkquery.c',
598 'deps/grpc/third_party/cares/cares/ares_nowarn.c',
599 'deps/grpc/third_party/cares/cares/ares_options.c',
600 'deps/grpc/third_party/cares/cares/ares_parse_a_reply.c',
601 'deps/grpc/third_party/cares/cares/ares_parse_aaaa_reply.c',
602 'deps/grpc/third_party/cares/cares/ares_parse_mx_reply.c',
603 'deps/grpc/third_party/cares/cares/ares_parse_naptr_reply.c',
604 'deps/grpc/third_party/cares/cares/ares_parse_ns_reply.c',
605 'deps/grpc/third_party/cares/cares/ares_parse_ptr_reply.c',
606 'deps/grpc/third_party/cares/cares/ares_parse_soa_reply.c',
607 'deps/grpc/third_party/cares/cares/ares_parse_srv_reply.c',
608 'deps/grpc/third_party/cares/cares/ares_parse_txt_reply.c',
609 'deps/grpc/third_party/cares/cares/ares_platform.c',
610 'deps/grpc/third_party/cares/cares/ares_process.c',
611 'deps/grpc/third_party/cares/cares/ares_query.c',
612 'deps/grpc/third_party/cares/cares/ares_search.c',
613 'deps/grpc/third_party/cares/cares/ares_send.c',
614 'deps/grpc/third_party/cares/cares/ares_strcasecmp.c',
615 'deps/grpc/third_party/cares/cares/ares_strdup.c',
616 'deps/grpc/third_party/cares/cares/ares_strerror.c',
617 'deps/grpc/third_party/cares/cares/ares_strsplit.c',
618 'deps/grpc/third_party/cares/cares/ares_timeout.c',
619 'deps/grpc/third_party/cares/cares/ares_version.c',
620 'deps/grpc/third_party/cares/cares/ares_writev.c',
621 'deps/grpc/third_party/cares/cares/bitncmp.c',
622 'deps/grpc/third_party/cares/cares/inet_net_pton.c',
623 'deps/grpc/third_party/cares/cares/inet_ntop.c',
624 'deps/grpc/third_party/cares/cares/windows_port.c',
625 ],
626 'defines': [
627 '_GNU_SOURCE'
628 ],
629 'conditions': [
630 ['OS == "mac"', {
631 'xcode_settings': {
632 'MACOSX_DEPLOYMENT_TARGET': '10.9'
633 },
634 'include_dirs': [
635 'deps/grpc/third_party/cares/config_darwin'
636 ],
637 'defines': [
638 'HAVE_CONFIG_H'
639 ]
640 }],
641 ['OS == "linux"', {
642 'include_dirs': [
643 'deps/grpc/third_party/cares/config_linux'
644 ],
645 'defines': [
646 'HAVE_CONFIG_H'
647 ]
648 }],
649 ['OS == "win"', {
650 'include_dirs': [
651 'deps/grpc/third_party/cares/config_windows'
652 ],
653 'defines': [
654 'HAVE_CONFIG_H'
655 ]
656 }]
657 ]
658 },
659 {
660 'target_name': 'address_sorting',
661 'product_prefix': 'lib',
662 'type': 'static_library',
663 'dependencies': [
664 ],
665 'sources': [
666 'deps/grpc/third_party/address_sorting/address_sorting.c',
667 'deps/grpc/third_party/address_sorting/address_sorting_posix.c',
668 'deps/grpc/third_party/address_sorting/address_sorting_windows.c',
669 ],
670 'conditions': [
671 ['OS == "mac"', {
672 'xcode_settings': {
673 'MACOSX_DEPLOYMENT_TARGET': '10.9'
674 }
675 }]
676 ]
677 },
678 {
679 'target_name': 'gpr',
680 'product_prefix': 'lib',
681 'type': 'static_library',
682 'dependencies': [
683 ],
684 'sources': [
685 'deps/grpc/src/core/lib/gpr/alloc.cc',
686 'deps/grpc/src/core/lib/gpr/atm.cc',
687 'deps/grpc/src/core/lib/gpr/cpu_iphone.cc',
688 'deps/grpc/src/core/lib/gpr/cpu_linux.cc',
689 'deps/grpc/src/core/lib/gpr/cpu_posix.cc',
690 'deps/grpc/src/core/lib/gpr/cpu_windows.cc',
691 'deps/grpc/src/core/lib/gpr/env_linux.cc',
692 'deps/grpc/src/core/lib/gpr/env_posix.cc',
693 'deps/grpc/src/core/lib/gpr/env_windows.cc',
694 'deps/grpc/src/core/lib/gpr/log.cc',
695 'deps/grpc/src/core/lib/gpr/log_android.cc',
696 'deps/grpc/src/core/lib/gpr/log_linux.cc',
697 'deps/grpc/src/core/lib/gpr/log_posix.cc',
698 'deps/grpc/src/core/lib/gpr/log_windows.cc',
699 'deps/grpc/src/core/lib/gpr/mpscq.cc',
700 'deps/grpc/src/core/lib/gpr/murmur_hash.cc',
701 'deps/grpc/src/core/lib/gpr/string.cc',
702 'deps/grpc/src/core/lib/gpr/string_posix.cc',
703 'deps/grpc/src/core/lib/gpr/string_util_windows.cc',
704 'deps/grpc/src/core/lib/gpr/string_windows.cc',
705 'deps/grpc/src/core/lib/gpr/sync.cc',
706 'deps/grpc/src/core/lib/gpr/sync_posix.cc',
707 'deps/grpc/src/core/lib/gpr/sync_windows.cc',
708 'deps/grpc/src/core/lib/gpr/time.cc',
709 'deps/grpc/src/core/lib/gpr/time_posix.cc',
710 'deps/grpc/src/core/lib/gpr/time_precise.cc',
711 'deps/grpc/src/core/lib/gpr/time_windows.cc',
712 'deps/grpc/src/core/lib/gpr/tls_pthread.cc',
713 'deps/grpc/src/core/lib/gpr/tmpfile_msys.cc',
714 'deps/grpc/src/core/lib/gpr/tmpfile_posix.cc',
715 'deps/grpc/src/core/lib/gpr/tmpfile_windows.cc',
716 'deps/grpc/src/core/lib/gpr/wrap_memcpy.cc',
717 'deps/grpc/src/core/lib/gprpp/arena.cc',
718 'deps/grpc/src/core/lib/gprpp/fork.cc',
719 'deps/grpc/src/core/lib/gprpp/global_config_env.cc',
720 'deps/grpc/src/core/lib/gprpp/host_port.cc',
721 'deps/grpc/src/core/lib/gprpp/thd_posix.cc',
722 'deps/grpc/src/core/lib/gprpp/thd_windows.cc',
723 'deps/grpc/src/core/lib/profiling/basic_timers.cc',
724 'deps/grpc/src/core/lib/profiling/stap_timers.cc',
725 ],
726 'conditions': [
727 ['OS == "mac"', {
728 'xcode_settings': {
729 'MACOSX_DEPLOYMENT_TARGET': '10.9'
730 }
731 }]
732 ]
733 },
734 {
735 'target_name': 'grpc',
736 'product_prefix': 'lib',
737 'type': 'static_library',
738 'dependencies': [
739 'gpr',
740 ],
741 'sources': [
742 'deps/grpc/src/core/lib/surface/init.cc',
743 'deps/grpc/src/core/lib/avl/avl.cc',
744 'deps/grpc/src/core/lib/backoff/backoff.cc',
745 'deps/grpc/src/core/lib/channel/channel_args.cc',
746 'deps/grpc/src/core/lib/channel/channel_stack.cc',
747 'deps/grpc/src/core/lib/channel/channel_stack_builder.cc',
748 'deps/grpc/src/core/lib/channel/channel_trace.cc',
749 'deps/grpc/src/core/lib/channel/channelz.cc',
750 'deps/grpc/src/core/lib/channel/channelz_registry.cc',
751 'deps/grpc/src/core/lib/channel/connected_channel.cc',
752 'deps/grpc/src/core/lib/channel/handshaker.cc',
753 'deps/grpc/src/core/lib/channel/handshaker_registry.cc',
754 'deps/grpc/src/core/lib/channel/status_util.cc',
755 'deps/grpc/src/core/lib/compression/compression.cc',
756 'deps/grpc/src/core/lib/compression/compression_args.cc',
757 'deps/grpc/src/core/lib/compression/compression_internal.cc',
758 'deps/grpc/src/core/lib/compression/message_compress.cc',
759 'deps/grpc/src/core/lib/compression/stream_compression.cc',
760 'deps/grpc/src/core/lib/compression/stream_compression_gzip.cc',
761 'deps/grpc/src/core/lib/compression/stream_compression_identity.cc',
762 'deps/grpc/src/core/lib/debug/stats.cc',
763 'deps/grpc/src/core/lib/debug/stats_data.cc',
764 'deps/grpc/src/core/lib/http/format_request.cc',
765 'deps/grpc/src/core/lib/http/httpcli.cc',
766 'deps/grpc/src/core/lib/http/parser.cc',
767 'deps/grpc/src/core/lib/iomgr/buffer_list.cc',
768 'deps/grpc/src/core/lib/iomgr/call_combiner.cc',
769 'deps/grpc/src/core/lib/iomgr/cfstream_handle.cc',
770 'deps/grpc/src/core/lib/iomgr/combiner.cc',
771 'deps/grpc/src/core/lib/iomgr/endpoint.cc',
772 'deps/grpc/src/core/lib/iomgr/endpoint_cfstream.cc',
773 'deps/grpc/src/core/lib/iomgr/endpoint_pair_posix.cc',
774 'deps/grpc/src/core/lib/iomgr/endpoint_pair_uv.cc',
775 'deps/grpc/src/core/lib/iomgr/endpoint_pair_windows.cc',
776 'deps/grpc/src/core/lib/iomgr/error.cc',
777 'deps/grpc/src/core/lib/iomgr/error_cfstream.cc',
778 'deps/grpc/src/core/lib/iomgr/ev_epoll1_linux.cc',
779 'deps/grpc/src/core/lib/iomgr/ev_epollex_linux.cc',
780 'deps/grpc/src/core/lib/iomgr/ev_poll_posix.cc',
781 'deps/grpc/src/core/lib/iomgr/ev_posix.cc',
782 'deps/grpc/src/core/lib/iomgr/ev_windows.cc',
783 'deps/grpc/src/core/lib/iomgr/exec_ctx.cc',
784 'deps/grpc/src/core/lib/iomgr/executor.cc',
785 'deps/grpc/src/core/lib/iomgr/executor/mpmcqueue.cc',
786 'deps/grpc/src/core/lib/iomgr/executor/threadpool.cc',
787 'deps/grpc/src/core/lib/iomgr/fork_posix.cc',
788 'deps/grpc/src/core/lib/iomgr/fork_windows.cc',
789 'deps/grpc/src/core/lib/iomgr/gethostname_fallback.cc',
790 'deps/grpc/src/core/lib/iomgr/gethostname_host_name_max.cc',
791 'deps/grpc/src/core/lib/iomgr/gethostname_sysconf.cc',
792 'deps/grpc/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc',
793 'deps/grpc/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc',
794 'deps/grpc/src/core/lib/iomgr/internal_errqueue.cc',
795 'deps/grpc/src/core/lib/iomgr/iocp_windows.cc',
796 'deps/grpc/src/core/lib/iomgr/iomgr.cc',
797 'deps/grpc/src/core/lib/iomgr/iomgr_custom.cc',
798 'deps/grpc/src/core/lib/iomgr/iomgr_internal.cc',
799 'deps/grpc/src/core/lib/iomgr/iomgr_posix.cc',
800 'deps/grpc/src/core/lib/iomgr/iomgr_posix_cfstream.cc',
801 'deps/grpc/src/core/lib/iomgr/iomgr_uv.cc',
802 'deps/grpc/src/core/lib/iomgr/iomgr_windows.cc',
803 'deps/grpc/src/core/lib/iomgr/is_epollexclusive_available.cc',
804 'deps/grpc/src/core/lib/iomgr/load_file.cc',
805 'deps/grpc/src/core/lib/iomgr/lockfree_event.cc',
806 'deps/grpc/src/core/lib/iomgr/polling_entity.cc',
807 'deps/grpc/src/core/lib/iomgr/pollset.cc',
808 'deps/grpc/src/core/lib/iomgr/pollset_custom.cc',
809 'deps/grpc/src/core/lib/iomgr/pollset_set.cc',
810 'deps/grpc/src/core/lib/iomgr/pollset_set_custom.cc',
811 'deps/grpc/src/core/lib/iomgr/pollset_set_windows.cc',
812 'deps/grpc/src/core/lib/iomgr/pollset_uv.cc',
813 'deps/grpc/src/core/lib/iomgr/pollset_windows.cc',
814 'deps/grpc/src/core/lib/iomgr/resolve_address.cc',
815 'deps/grpc/src/core/lib/iomgr/resolve_address_custom.cc',
816 'deps/grpc/src/core/lib/iomgr/resolve_address_posix.cc',
817 'deps/grpc/src/core/lib/iomgr/resolve_address_windows.cc',
818 'deps/grpc/src/core/lib/iomgr/resource_quota.cc',
819 'deps/grpc/src/core/lib/iomgr/sockaddr_utils.cc',
820 'deps/grpc/src/core/lib/iomgr/socket_factory_posix.cc',
821 'deps/grpc/src/core/lib/iomgr/socket_mutator.cc',
822 'deps/grpc/src/core/lib/iomgr/socket_utils_common_posix.cc',
823 'deps/grpc/src/core/lib/iomgr/socket_utils_linux.cc',
824 'deps/grpc/src/core/lib/iomgr/socket_utils_posix.cc',
825 'deps/grpc/src/core/lib/iomgr/socket_utils_uv.cc',
826 'deps/grpc/src/core/lib/iomgr/socket_utils_windows.cc',
827 'deps/grpc/src/core/lib/iomgr/socket_windows.cc',
828 'deps/grpc/src/core/lib/iomgr/tcp_client.cc',
829 'deps/grpc/src/core/lib/iomgr/tcp_client_cfstream.cc',
830 'deps/grpc/src/core/lib/iomgr/tcp_client_custom.cc',
831 'deps/grpc/src/core/lib/iomgr/tcp_client_posix.cc',
832 'deps/grpc/src/core/lib/iomgr/tcp_client_windows.cc',
833 'deps/grpc/src/core/lib/iomgr/tcp_custom.cc',
834 'deps/grpc/src/core/lib/iomgr/tcp_posix.cc',
835 'deps/grpc/src/core/lib/iomgr/tcp_server.cc',
836 'deps/grpc/src/core/lib/iomgr/tcp_server_custom.cc',
837 'deps/grpc/src/core/lib/iomgr/tcp_server_posix.cc',
838 'deps/grpc/src/core/lib/iomgr/tcp_server_utils_posix_common.cc',
839 'deps/grpc/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc',
840 'deps/grpc/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc',
841 'deps/grpc/src/core/lib/iomgr/tcp_server_windows.cc',
842 'deps/grpc/src/core/lib/iomgr/tcp_uv.cc',
843 'deps/grpc/src/core/lib/iomgr/tcp_windows.cc',
844 'deps/grpc/src/core/lib/iomgr/time_averaged_stats.cc',
845 'deps/grpc/src/core/lib/iomgr/timer.cc',
846 'deps/grpc/src/core/lib/iomgr/timer_custom.cc',
847 'deps/grpc/src/core/lib/iomgr/timer_generic.cc',
848 'deps/grpc/src/core/lib/iomgr/timer_heap.cc',
849 'deps/grpc/src/core/lib/iomgr/timer_manager.cc',
850 'deps/grpc/src/core/lib/iomgr/timer_uv.cc',
851 'deps/grpc/src/core/lib/iomgr/udp_server.cc',
852 'deps/grpc/src/core/lib/iomgr/unix_sockets_posix.cc',
853 'deps/grpc/src/core/lib/iomgr/unix_sockets_posix_noop.cc',
854 'deps/grpc/src/core/lib/iomgr/wakeup_fd_eventfd.cc',
855 'deps/grpc/src/core/lib/iomgr/wakeup_fd_nospecial.cc',
856 'deps/grpc/src/core/lib/iomgr/wakeup_fd_pipe.cc',
857 'deps/grpc/src/core/lib/iomgr/wakeup_fd_posix.cc',
858 'deps/grpc/src/core/lib/json/json.cc',
859 'deps/grpc/src/core/lib/json/json_reader.cc',
860 'deps/grpc/src/core/lib/json/json_string.cc',
861 'deps/grpc/src/core/lib/json/json_writer.cc',
862 'deps/grpc/src/core/lib/slice/b64.cc',
863 'deps/grpc/src/core/lib/slice/percent_encoding.cc',
864 'deps/grpc/src/core/lib/slice/slice.cc',
865 'deps/grpc/src/core/lib/slice/slice_buffer.cc',
866 'deps/grpc/src/core/lib/slice/slice_intern.cc',
867 'deps/grpc/src/core/lib/slice/slice_string_helpers.cc',
868 'deps/grpc/src/core/lib/surface/api_trace.cc',
869 'deps/grpc/src/core/lib/surface/byte_buffer.cc',
870 'deps/grpc/src/core/lib/surface/byte_buffer_reader.cc',
871 'deps/grpc/src/core/lib/surface/call.cc',
872 'deps/grpc/src/core/lib/surface/call_details.cc',
873 'deps/grpc/src/core/lib/surface/call_log_batch.cc',
874 'deps/grpc/src/core/lib/surface/channel.cc',
875 'deps/grpc/src/core/lib/surface/channel_init.cc',
876 'deps/grpc/src/core/lib/surface/channel_ping.cc',
877 'deps/grpc/src/core/lib/surface/channel_stack_type.cc',
878 'deps/grpc/src/core/lib/surface/completion_queue.cc',
879 'deps/grpc/src/core/lib/surface/completion_queue_factory.cc',
880 'deps/grpc/src/core/lib/surface/event_string.cc',
881 'deps/grpc/src/core/lib/surface/lame_client.cc',
882 'deps/grpc/src/core/lib/surface/metadata_array.cc',
883 'deps/grpc/src/core/lib/surface/server.cc',
884 'deps/grpc/src/core/lib/surface/validate_metadata.cc',
885 'deps/grpc/src/core/lib/surface/version.cc',
886 'deps/grpc/src/core/lib/transport/bdp_estimator.cc',
887 'deps/grpc/src/core/lib/transport/byte_stream.cc',
888 'deps/grpc/src/core/lib/transport/connectivity_state.cc',
889 'deps/grpc/src/core/lib/transport/error_utils.cc',
890 'deps/grpc/src/core/lib/transport/metadata.cc',
891 'deps/grpc/src/core/lib/transport/metadata_batch.cc',
892 'deps/grpc/src/core/lib/transport/pid_controller.cc',
893 'deps/grpc/src/core/lib/transport/static_metadata.cc',
894 'deps/grpc/src/core/lib/transport/status_conversion.cc',
895 'deps/grpc/src/core/lib/transport/status_metadata.cc',
896 'deps/grpc/src/core/lib/transport/timeout_encoding.cc',
897 'deps/grpc/src/core/lib/transport/transport.cc',
898 'deps/grpc/src/core/lib/transport/transport_op_string.cc',
899 'deps/grpc/src/core/lib/uri/uri_parser.cc',
900 'deps/grpc/src/core/lib/debug/trace.cc',
901 'deps/grpc/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc',
902 'deps/grpc/src/core/ext/transport/chttp2/transport/bin_decoder.cc',
903 'deps/grpc/src/core/ext/transport/chttp2/transport/bin_encoder.cc',
904 'deps/grpc/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc',
905 'deps/grpc/src/core/ext/transport/chttp2/transport/chttp2_transport.cc',
906 'deps/grpc/src/core/ext/transport/chttp2/transport/context_list.cc',
907 'deps/grpc/src/core/ext/transport/chttp2/transport/flow_control.cc',
908 'deps/grpc/src/core/ext/transport/chttp2/transport/frame_data.cc',
909 'deps/grpc/src/core/ext/transport/chttp2/transport/frame_goaway.cc',
910 'deps/grpc/src/core/ext/transport/chttp2/transport/frame_ping.cc',
911 'deps/grpc/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc',
912 'deps/grpc/src/core/ext/transport/chttp2/transport/frame_settings.cc',
913 'deps/grpc/src/core/ext/transport/chttp2/transport/frame_window_update.cc',
914 'deps/grpc/src/core/ext/transport/chttp2/transport/hpack_encoder.cc',
915 'deps/grpc/src/core/ext/transport/chttp2/transport/hpack_parser.cc',
916 'deps/grpc/src/core/ext/transport/chttp2/transport/hpack_table.cc',
917 'deps/grpc/src/core/ext/transport/chttp2/transport/http2_settings.cc',
918 'deps/grpc/src/core/ext/transport/chttp2/transport/huffsyms.cc',
919 'deps/grpc/src/core/ext/transport/chttp2/transport/incoming_metadata.cc',
920 'deps/grpc/src/core/ext/transport/chttp2/transport/parsing.cc',
921 'deps/grpc/src/core/ext/transport/chttp2/transport/stream_lists.cc',
922 'deps/grpc/src/core/ext/transport/chttp2/transport/stream_map.cc',
923 'deps/grpc/src/core/ext/transport/chttp2/transport/varint.cc',
924 'deps/grpc/src/core/ext/transport/chttp2/transport/writing.cc',
925 'deps/grpc/src/core/ext/transport/chttp2/alpn/alpn.cc',
926 'deps/grpc/src/core/ext/filters/http/client/http_client_filter.cc',
927 'deps/grpc/src/core/ext/filters/http/http_filters_plugin.cc',
928 'deps/grpc/src/core/ext/filters/http/message_compress/message_compress_filter.cc',
929 'deps/grpc/src/core/ext/filters/http/server/http_server_filter.cc',
930 'deps/grpc/src/core/lib/http/httpcli_security_connector.cc',
931 'deps/grpc/src/core/lib/security/context/security_context.cc',
932 'deps/grpc/src/core/lib/security/credentials/alts/alts_credentials.cc',
933 'deps/grpc/src/core/lib/security/credentials/composite/composite_credentials.cc',
934 'deps/grpc/src/core/lib/security/credentials/credentials.cc',
935 'deps/grpc/src/core/lib/security/credentials/credentials_metadata.cc',
936 'deps/grpc/src/core/lib/security/credentials/fake/fake_credentials.cc',
937 'deps/grpc/src/core/lib/security/credentials/google_default/credentials_generic.cc',
938 'deps/grpc/src/core/lib/security/credentials/google_default/google_default_credentials.cc',
939 'deps/grpc/src/core/lib/security/credentials/iam/iam_credentials.cc',
940 'deps/grpc/src/core/lib/security/credentials/jwt/json_token.cc',
941 'deps/grpc/src/core/lib/security/credentials/jwt/jwt_credentials.cc',
942 'deps/grpc/src/core/lib/security/credentials/jwt/jwt_verifier.cc',
943 'deps/grpc/src/core/lib/security/credentials/local/local_credentials.cc',
944 'deps/grpc/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc',
945 'deps/grpc/src/core/lib/security/credentials/plugin/plugin_credentials.cc',
946 'deps/grpc/src/core/lib/security/credentials/ssl/ssl_credentials.cc',
947 'deps/grpc/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc',
948 'deps/grpc/src/core/lib/security/credentials/tls/spiffe_credentials.cc',
949 'deps/grpc/src/core/lib/security/security_connector/alts/alts_security_connector.cc',
950 'deps/grpc/src/core/lib/security/security_connector/fake/fake_security_connector.cc',
951 'deps/grpc/src/core/lib/security/security_connector/load_system_roots_fallback.cc',
952 'deps/grpc/src/core/lib/security/security_connector/load_system_roots_linux.cc',
953 'deps/grpc/src/core/lib/security/security_connector/local/local_security_connector.cc',
954 'deps/grpc/src/core/lib/security/security_connector/security_connector.cc',
955 'deps/grpc/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc',
956 'deps/grpc/src/core/lib/security/security_connector/ssl_utils.cc',
957 'deps/grpc/src/core/lib/security/security_connector/tls/spiffe_security_connector.cc',
958 'deps/grpc/src/core/lib/security/transport/client_auth_filter.cc',
959 'deps/grpc/src/core/lib/security/transport/secure_endpoint.cc',
960 'deps/grpc/src/core/lib/security/transport/security_handshaker.cc',
961 'deps/grpc/src/core/lib/security/transport/server_auth_filter.cc',
962 'deps/grpc/src/core/lib/security/transport/target_authority_table.cc',
963 'deps/grpc/src/core/lib/security/transport/tsi_error.cc',
964 'deps/grpc/src/core/lib/security/util/json_util.cc',
965 'deps/grpc/src/core/lib/surface/init_secure.cc',
966 'deps/grpc/src/core/tsi/alts/crypt/aes_gcm.cc',
967 'deps/grpc/src/core/tsi/alts/crypt/gsec.cc',
968 'deps/grpc/src/core/tsi/alts/frame_protector/alts_counter.cc',
969 'deps/grpc/src/core/tsi/alts/frame_protector/alts_crypter.cc',
970 'deps/grpc/src/core/tsi/alts/frame_protector/alts_frame_protector.cc',
971 'deps/grpc/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc',
972 'deps/grpc/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc',
973 'deps/grpc/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc',
974 'deps/grpc/src/core/tsi/alts/frame_protector/frame_handler.cc',
975 'deps/grpc/src/core/tsi/alts/handshaker/alts_handshaker_client.cc',
976 'deps/grpc/src/core/tsi/alts/handshaker/alts_shared_resource.cc',
977 'deps/grpc/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc',
978 'deps/grpc/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc',
979 'deps/grpc/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc',
980 'deps/grpc/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc',
981 'deps/grpc/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc',
982 'deps/grpc/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc',
983 'deps/grpc/src/core/lib/security/credentials/alts/check_gcp_environment.cc',
984 'deps/grpc/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc',
985 'deps/grpc/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc',
986 'deps/grpc/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc',
987 'deps/grpc/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc',
988 'deps/grpc/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc',
989 'deps/grpc/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc',
990 'deps/grpc/src/core/tsi/alts/handshaker/alts_handshaker_service_api.cc',
991 'deps/grpc/src/core/tsi/alts/handshaker/alts_handshaker_service_api_util.cc',
992 'deps/grpc/src/core/tsi/alts/handshaker/alts_tsi_utils.cc',
993 'deps/grpc/src/core/tsi/alts/handshaker/transport_security_common_api.cc',
994 'deps/grpc/src/core/tsi/alts/handshaker/altscontext.pb.c',
995 'deps/grpc/src/core/tsi/alts/handshaker/handshaker.pb.c',
996 'deps/grpc/src/core/tsi/alts/handshaker/transport_security_common.pb.c',
997 'deps/grpc/third_party/nanopb/pb_common.c',
998 'deps/grpc/third_party/nanopb/pb_decode.c',
999 'deps/grpc/third_party/nanopb/pb_encode.c',
1000 'deps/grpc/src/core/tsi/transport_security.cc',
1001 'deps/grpc/src/core/ext/transport/chttp2/client/insecure/channel_create.cc',
1002 'deps/grpc/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc',
1003 'deps/grpc/src/core/ext/transport/chttp2/client/authority.cc',
1004 'deps/grpc/src/core/ext/transport/chttp2/client/chttp2_connector.cc',
1005 'deps/grpc/src/core/ext/filters/client_channel/backup_poller.cc',
1006 'deps/grpc/src/core/ext/filters/client_channel/channel_connectivity.cc',
1007 'deps/grpc/src/core/ext/filters/client_channel/client_channel.cc',
1008 'deps/grpc/src/core/ext/filters/client_channel/client_channel_channelz.cc',
1009 'deps/grpc/src/core/ext/filters/client_channel/client_channel_factory.cc',
1010 'deps/grpc/src/core/ext/filters/client_channel/client_channel_plugin.cc',
1011 'deps/grpc/src/core/ext/filters/client_channel/connector.cc',
1012 'deps/grpc/src/core/ext/filters/client_channel/global_subchannel_pool.cc',
1013 'deps/grpc/src/core/ext/filters/client_channel/health/health_check_client.cc',
1014 'deps/grpc/src/core/ext/filters/client_channel/http_connect_handshaker.cc',
1015 'deps/grpc/src/core/ext/filters/client_channel/http_proxy.cc',
1016 'deps/grpc/src/core/ext/filters/client_channel/lb_policy.cc',
1017 'deps/grpc/src/core/ext/filters/client_channel/lb_policy_registry.cc',
1018 'deps/grpc/src/core/ext/filters/client_channel/local_subchannel_pool.cc',
1019 'deps/grpc/src/core/ext/filters/client_channel/parse_address.cc',
1020 'deps/grpc/src/core/ext/filters/client_channel/proxy_mapper.cc',
1021 'deps/grpc/src/core/ext/filters/client_channel/proxy_mapper_registry.cc',
1022 'deps/grpc/src/core/ext/filters/client_channel/resolver.cc',
1023 'deps/grpc/src/core/ext/filters/client_channel/resolver_registry.cc',
1024 'deps/grpc/src/core/ext/filters/client_channel/resolver_result_parsing.cc',
1025 'deps/grpc/src/core/ext/filters/client_channel/resolving_lb_policy.cc',
1026 'deps/grpc/src/core/ext/filters/client_channel/retry_throttle.cc',
1027 'deps/grpc/src/core/ext/filters/client_channel/server_address.cc',
1028 'deps/grpc/src/core/ext/filters/client_channel/service_config.cc',
1029 'deps/grpc/src/core/ext/filters/client_channel/subchannel.cc',
1030 'deps/grpc/src/core/ext/filters/client_channel/subchannel_pool_interface.cc',
1031 'deps/grpc/src/core/ext/filters/deadline/deadline_filter.cc',
1032 'deps/grpc/src/core/ext/filters/client_channel/health/health.pb.c',
1033 'deps/grpc/src/core/tsi/fake_transport_security.cc',
1034 'deps/grpc/src/core/tsi/local_transport_security.cc',
1035 'deps/grpc/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc',
1036 'deps/grpc/src/core/tsi/ssl/session_cache/ssl_session_cache.cc',
1037 'deps/grpc/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc',
1038 'deps/grpc/src/core/tsi/ssl_transport_security.cc',
1039 'deps/grpc/src/core/tsi/transport_security_grpc.cc',
1040 'deps/grpc/src/core/ext/transport/chttp2/server/chttp2_server.cc',
1041 'deps/grpc/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc',
1042 'deps/grpc/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc',
1043 'deps/grpc/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc',
1044 'deps/grpc/src/core/ext/transport/inproc/inproc_plugin.cc',
1045 'deps/grpc/src/core/ext/transport/inproc/inproc_transport.cc',
1046 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc',
1047 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc',
1048 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc',
1049 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc',
1050 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc',
1051 'deps/grpc/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc',
1052 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/duration.pb.c',
1053 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/timestamp.pb.c',
1054 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.c',
1055 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/xds/xds.cc',
1056 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.cc',
1057 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.cc',
1058 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.cc',
1059 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc',
1060 'deps/grpc/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc',
1061 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc',
1062 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc',
1063 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc',
1064 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc',
1065 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc',
1066 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc',
1067 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc',
1068 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc',
1069 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc',
1070 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc',
1071 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc',
1072 'deps/grpc/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc',
1073 'deps/grpc/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc',
1074 'deps/grpc/src/core/ext/filters/census/grpc_context.cc',
1075 'deps/grpc/src/core/ext/filters/client_idle/client_idle_filter.cc',
1076 'deps/grpc/src/core/ext/filters/max_age/max_age_filter.cc',
1077 'deps/grpc/src/core/ext/filters/message_size/message_size_filter.cc',
1078 'deps/grpc/src/core/ext/filters/http/client_authority_filter.cc',
1079 'deps/grpc/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc',
1080 'deps/grpc/src/core/ext/filters/workarounds/workaround_utils.cc',
1081 'deps/grpc/src/core/plugin_registry/grpc_plugin_registry.cc',
1082 ],
1083 'conditions': [
1084 ['OS == "mac"', {
1085 'xcode_settings': {
1086 'MACOSX_DEPLOYMENT_TARGET': '10.9'
1087 }
1088 }]
1089 ]
1090 },
1091 {
1092 'include_dirs': [
1093 "<!(node -e \"require('nan')\")"
1094 ],
1095 'cflags': [
1096 '-pthread',
1097 '-Wno-error=deprecated-declarations',
1098 '-Wno-cast-function-type'
1099 ],
1100 "conditions": [
1101 ['OS=="win" or runtime=="electron"', {
1102 'dependencies': [
1103 "boringssl",
1104 ]
1105 }],
1106 ['OS=="win"', {
1107 'dependencies': [
1108 "z",
1109 ]
1110 }],
1111 ['OS=="linux"', {
1112 'ldflags': [
1113 '-Wl,-wrap,memcpy'
1114 ]
1115 }],
1116 ['OS == "mac"', {
1117 'xcode_settings': {
1118 'MACOSX_DEPLOYMENT_TARGET': '10.9'
1119 }
1120 }]
1121 ],
1122 "target_name": "grpc_node",
1123 "sources": [
1124 "<!@(node -p \"require('fs').readdirSync('./ext').map(f=>'ext/'+f).join(' ')\")"
1125 ],
1126 "dependencies": [
1127 "grpc",
1128 "gpr",
1129 "ares",
1130 "address_sorting"
1131 ]
1132 },
1133 {
1134 "target_name": "action_after_build",
1135 "type": "none",
1136 "dependencies": [ "<(module_name)" ],
1137 "copies": [
1138 {
1139 "files": [ "<(PRODUCT_DIR)/<(module_name).node"],
1140 "destination": "<(module_path)"
1141 }
1142 ]
1143 }
1144 ]
1145}