Skip to content

Commit

Permalink
deps: add defines to nghttp3/ngtcp2 gyp configs
Browse files Browse the repository at this point in the history
This commit adds two defines to ngtcp2, 'HAVE_ARPA_INET_H' and
'HAVE_NETINET_IN_H', and one define to nghttp3, 'HAVE_ARPA_INET_H' when
the operating system in use is linux.

The motivation for this is that currently, there are compiler warnings
generated for these libraries similar to the following:

../deps/ngtcp2/lib/ngtcp2_conv.c: In function ‘ngtcp2_put_uint16be’:
../deps/ngtcp2/lib/ngtcp2_conv.c:129:7: warning:
implicit declaration of function ‘htons’ [-Wimplicit-function-declaration]
  129 |   n = htons(n);
      |       ^~~~~

The inclusion of 'arpa/inet.h' is guarded by the 'HAVE_ARPA_INET_H'
macro (see deps/ngtcp2/lib/ngtcp2_conv.h).

These headers are checked by the ngtcp2 and nghttp3 builds using CMake's
CheckIncludeFile, and if they are available the above macros are defined.

I'm not sure if we need to have something similar to those checks or
ifit is alright to add these defines for certain operating systems.
Hopefully others will chime in and advice on how to handle this in the
best way.

PR-URL: #33942
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
  • Loading branch information
danbev authored and jasnell committed Jun 22, 2020
1 parent c7d859e commit a0cbd67
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 0 deletions.
5 changes: 5 additions & 0 deletions deps/nghttp3/nghttp3.gyp
Expand Up @@ -26,6 +26,11 @@
},
},
}],
['OS=="linux"', {
'defines': [
'HAVE_ARPA_INET_H',
],
}],
],
'direct_dependent_settings': {
'defines': [ 'NGHTTP3_STATICLIB' ],
Expand Down
6 changes: 6 additions & 0 deletions deps/ngtcp2/ngtcp2.gyp
Expand Up @@ -33,6 +33,12 @@
},
},
}],
['OS=="linux"', {
'defines': [
'HAVE_ARPA_INET_H',
'HAVE_NETINET_IN_H',
],
}],
],
'direct_dependent_settings': {
'defines': [ 'NGTCP2_STATICLIB' ],
Expand Down

0 comments on commit a0cbd67

Please sign in to comment.