summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAndreas Schneider <asn@samba.org>2019-10-21 17:08:08 +0200
committerAndreas Schneider <asn@cryptomilk.org>2019-10-23 08:23:12 +0000
commit263bec1b8d0744da73dd92e4a361fb7430289ab3 (patch)
tree1ecbdfa31ad7fab65c6aff320f7ec61815762567 /lib
parent1b69795c5bbc2ed24c54f8295fd3d9e4e0a0f938 (diff)
downloadsamba-263bec1b8d0744da73dd92e4a361fb7430289ab3.tar.gz
replace: Only link libnsl and libsocket if requrired
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14168 Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Alexander Bokovoy <ab@samba.org> Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org> Autobuild-Date(master): Wed Oct 23 08:23:13 UTC 2019 on sn-devel-184
Diffstat (limited to 'lib')
-rw-r--r--lib/replace/wscript36
1 files changed, 31 insertions, 5 deletions
diff --git a/lib/replace/wscript b/lib/replace/wscript
index e4da1a71a4c..898c2f16445 100644
--- a/lib/replace/wscript
+++ b/lib/replace/wscript
@@ -202,10 +202,35 @@ def configure(conf):
conf.CHECK_TYPE_IN('sig_atomic_t', 'signal.h', define='HAVE_SIG_ATOMIC_T_TYPE')
conf.CHECK_FUNCS('sigsetmask siggetmask sigprocmask sigblock sigaction sigset')
- conf.CHECK_FUNCS_IN('''inet_ntoa inet_aton inet_ntop inet_pton connect gethostbyname
- getaddrinfo getnameinfo freeaddrinfo gai_strerror socketpair''',
- 'socket nsl', checklibc=True,
- headers='sys/socket.h netinet/in.h arpa/inet.h netdb.h')
+ # Those functions are normally available in libc
+ if not conf.CHECK_FUNCS('''
+ inet_ntoa
+ inet_aton
+ inet_ntop
+ inet_pton
+ connect
+ gethostbyname
+ getaddrinfo
+ getnameinfo
+ freeaddrinfo
+ gai_strerror
+ socketpair''',
+ headers='sys/socket.h netinet/in.h arpa/inet.h netdb.h'):
+ conf.CHECK_FUNCS_IN('''
+ inet_ntoa
+ inet_aton
+ inet_ntop
+ inet_pton
+ connect
+ gethostbyname
+ getaddrinfo
+ getnameinfo
+ freeaddrinfo
+ gai_strerror
+ socketpair''',
+ 'socket nsl',
+ headers='sys/socket.h netinet/in.h arpa/inet.h netdb.h')
+ conf.DEFINE('REPLACE_REQUIRES_LIBSOCKET_LIBNSL', 1)
conf.CHECK_FUNCS('memset_s memset_explicit')
@@ -848,6 +873,7 @@ def build(bld):
extra_libs = ''
if bld.CONFIG_SET('HAVE_LIBBSD'): extra_libs += ' bsd'
if bld.CONFIG_SET('HAVE_LIBRT'): extra_libs += ' rt'
+ if bld.CONFIG_SET('REPLACE_REQUIRES_LIBSOCKET_LIBNSL'): extra_libs += ' socket nsl'
bld.SAMBA_SUBSYSTEM('LIBREPLACE_HOSTCC',
REPLACE_HOSTCC_SOURCE,
@@ -887,7 +913,7 @@ def build(bld):
# at the moment:
# hide_symbols=bld.BUILTIN_LIBRARY('replace'),
private_library=True,
- deps='crypt dl nsl socket attr' + extra_libs)
+ deps='crypt dl attr' + extra_libs)
replace_test_cflags = ''
if bld.CONFIG_SET('HAVE_WNO_FORMAT_TRUNCATION'):