86 lines
3.5 KiB
Diff
86 lines
3.5 KiB
Diff
|
From 2958016c30a8d9f80a45b64e91a20d8ebf995d85 Mon Sep 17 00:00:00 2001
|
||
|
From: Andreas Schneider <asn@samba.org>
|
||
|
Date: Mon, 21 Oct 2019 17:08:08 +0200
|
||
|
Subject: [PATCH] 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
|
||
|
|
||
|
(cherry picked from commit 263bec1b8d0744da73dd92e4a361fb7430289ab3)
|
||
|
|
||
|
Autobuild-User(v4-11-test): Karolin Seeger <kseeger@samba.org>
|
||
|
Autobuild-Date(v4-11-test): Mon Nov 4 09:31:23 UTC 2019 on sn-devel-184
|
||
|
---
|
||
|
lib/replace/wscript | 36 +++++++++++++++++++++++++++++++-----
|
||
|
1 file changed, 31 insertions(+), 5 deletions(-)
|
||
|
|
||
|
diff --git a/lib/replace/wscript b/lib/replace/wscript
|
||
|
index 240d730cbee..56e2a22de49 100644
|
||
|
--- a/lib/replace/wscript
|
||
|
+++ b/lib/replace/wscript
|
||
|
@@ -190,10 +190,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')
|
||
|
|
||
|
@@ -836,6 +861,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,
|
||
|
@@ -876,7 +902,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'):
|
||
|
--
|
||
|
2.23.0
|
||
|
|