• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  'target_defaults': {
3    'defines': [ '_U_=' ]
4  },
5  'variables': {
6    'ngtcp2_sources': [
7      'ngtcp2/lib/ngtcp2_acktr.c',
8      'ngtcp2/lib/ngtcp2_addr.c',
9      'ngtcp2/lib/ngtcp2_balloc.c',
10      'ngtcp2/lib/ngtcp2_bbr.c',
11      'ngtcp2/lib/ngtcp2_bbr2.c',
12      'ngtcp2/lib/ngtcp2_buf.c',
13      'ngtcp2/lib/ngtcp2_cc.c',
14      'ngtcp2/lib/ngtcp2_cid.c',
15      'ngtcp2/lib/ngtcp2_conn.c',
16      'ngtcp2/lib/ngtcp2_conv.c',
17      'ngtcp2/lib/ngtcp2_crypto.c',
18      'ngtcp2/lib/ngtcp2_err.c',
19      'ngtcp2/lib/ngtcp2_gaptr.c',
20      'ngtcp2/lib/ngtcp2_idtr.c',
21      'ngtcp2/lib/ngtcp2_ksl.c',
22      'ngtcp2/lib/ngtcp2_log.c',
23      'ngtcp2/lib/ngtcp2_map.c',
24      'ngtcp2/lib/ngtcp2_mem.c',
25      'ngtcp2/lib/ngtcp2_objalloc.c',
26      'ngtcp2/lib/ngtcp2_opl.c',
27      'ngtcp2/lib/ngtcp2_path.c',
28      'ngtcp2/lib/ngtcp2_pkt.c',
29      'ngtcp2/lib/ngtcp2_pmtud.c',
30      'ngtcp2/lib/ngtcp2_ppe.c',
31      'ngtcp2/lib/ngtcp2_pq.c',
32      'ngtcp2/lib/ngtcp2_pv.c',
33      'ngtcp2/lib/ngtcp2_qlog.c',
34      'ngtcp2/lib/ngtcp2_range.c',
35      'ngtcp2/lib/ngtcp2_ringbuf.c',
36      'ngtcp2/lib/ngtcp2_rob.c',
37      'ngtcp2/lib/ngtcp2_rst.c',
38      'ngtcp2/lib/ngtcp2_rtb.c',
39      'ngtcp2/lib/ngtcp2_str.c',
40      'ngtcp2/lib/ngtcp2_strm.c',
41      'ngtcp2/lib/ngtcp2_vec.c',
42      'ngtcp2/lib/ngtcp2_version.c',
43      'ngtcp2/lib/ngtcp2_window_filter.c',
44      'ngtcp2/crypto/shared.c'
45    ],
46    'ngtcp2_sources_openssl': [
47      'ngtcp2/crypto/openssl/openssl.c'
48    ],
49    'ngtcp2_sources_boringssl': [
50      'ngtcp2/crypto/boringssl/boringssl.c'
51    ],
52    'nghttp3_sources': [
53      'nghttp3/lib/nghttp3_balloc.c',
54      'nghttp3/lib/nghttp3_buf.c',
55      'nghttp3/lib/nghttp3_conn.c',
56      'nghttp3/lib/nghttp3_conv.c',
57      'nghttp3/lib/nghttp3_debug.c',
58      'nghttp3/lib/nghttp3_err.c',
59      'nghttp3/lib/nghttp3_frame.c',
60      'nghttp3/lib/nghttp3_gaptr.c',
61      'nghttp3/lib/nghttp3_http.c',
62      'nghttp3/lib/nghttp3_idtr.c',
63      'nghttp3/lib/nghttp3_ksl.c',
64      'nghttp3/lib/nghttp3_map.c',
65      'nghttp3/lib/nghttp3_mem.c',
66      'nghttp3/lib/nghttp3_objalloc.c',
67      'nghttp3/lib/nghttp3_opl.c',
68      'nghttp3/lib/nghttp3_pq.c',
69      'nghttp3/lib/nghttp3_qpack.c',
70      'nghttp3/lib/nghttp3_qpack_huffman.c',
71      'nghttp3/lib/nghttp3_qpack_huffman_data.c',
72      'nghttp3/lib/nghttp3_range.c',
73      'nghttp3/lib/nghttp3_rcbuf.c',
74      'nghttp3/lib/nghttp3_ringbuf.c',
75      'nghttp3/lib/nghttp3_str.c',
76      'nghttp3/lib/nghttp3_stream.c',
77      'nghttp3/lib/nghttp3_tnode.c',
78      'nghttp3/lib/nghttp3_vec.c',
79      'nghttp3/lib/nghttp3_version.c'
80    ]
81  },
82  'targets': [
83    {
84      'target_name': 'ngtcp2',
85      'type': 'static_library',
86      'include_dirs': [
87        '',
88        'ngtcp2/lib/includes/',
89        'ngtcp2/crypto/includes/',
90        'ngtcp2/lib/',
91        'ngtcp2/crypto/',
92      ],
93      'defines': [
94        'BUILDING_NGTCP2',
95        'NGTCP2_STATICLIB',
96      ],
97      'conditions': [
98        ['node_shared_openssl=="false"', {
99          'dependencies': [
100            '../openssl/openssl.gyp:openssl'
101          ]
102        }],
103        ['OS=="win"', {
104          'defines': [
105            'WIN32',
106            '_WINDOWS',
107            'HAVE_CONFIG_H',
108          ],
109          'msvs_settings': {
110            'VCCLCompilerTool': {
111              'CompileAs': '1'
112            },
113          },
114        }],
115        ['OS=="linux" or OS=="android"', {
116          'defines': [
117            'HAVE_ARPA_INET_H',
118            'HAVE_NETINET_IN_H',
119          ],
120        }],
121      ],
122      'direct_dependent_settings': {
123        'defines': [
124          'NGTCP2_STATICLIB',
125        ],
126        'include_dirs': [
127          '',
128          'ngtcp2/lib/includes',
129          'ngtcp2/crypto/includes',
130          'ngtcp2/crypto',
131        ]
132      },
133      'sources': [
134        '<@(ngtcp2_sources)',
135        '<@(ngtcp2_sources_openssl)',
136      ]
137    },
138    {
139      'target_name': 'nghttp3',
140      'type': 'static_library',
141      'include_dirs': [
142        'nghttp3/lib/includes/',
143        'nghttp3/lib/'
144      ],
145      'defines': [
146        'BUILDING_NGHTTP3',
147        'NGHTTP3_STATICLIB'
148      ],
149      'dependencies': [
150        'ngtcp2'
151      ],
152      'conditions': [
153        ['OS=="win"', {
154          'defines': [
155            'WIN32',
156            '_WINDOWS',
157            'HAVE_CONFIG_H',
158          ],
159          'msvs_settings': {
160            'VCCLCompilerTool': {
161              'CompileAs': '1'
162            },
163          },
164        }],
165        ['OS=="linux" or OS=="android"', {
166          'defines': [
167            'HAVE_ARPA_INET_H',
168            'HAVE_NETINET_IN_H',
169          ],
170        }],
171      ],
172      'direct_dependent_settings': {
173        'defines': [
174          'NGHTTP3_STATICLIB'
175        ],
176        'include_dirs': [
177          'nghttp3/lib/includes'
178        ]
179      },
180      'sources': [
181        '<@(nghttp3_sources)'
182      ]
183    }
184  ]
185}
186