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