bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

inet_ntop, inet_pton: fix link errors on Haiku


From: Bruno Haible
Subject: inet_ntop, inet_pton: fix link errors on Haiku
Date: Sun, 29 Oct 2017 02:00:01 +0100
User-agent: KMail/5.1.3 (Linux/4.4.0-97-generic; KDE/5.18.0; x86_64; ; )

On Haiku, the functions inet_ntop, inet_pton require linking with "-lnetwork".
But INET_NTOP_LIB and INET_PTON_LIB come out as empty. This leads to a
link error:

gcc-x86  -g -O2  -L/boot/home/config/lib -o test-inet_ntop test-inet_ntop.o 
libtests.a ../gllib/libgnu.a libtests.a   
test-inet_ntop.o: In function `main':
/boot/home/testdir-posix/build/gltests/../../gltests/test-inet_ntop.c:49: 
undefined reference to `inet_ntop'
collect2: error: ld returned 1 exit status

This fixes it.


2017-10-28  Bruno Haible  <address@hidden>

        inet_ntop, inet_pton: Determine needed library correctly on Haiku.
        * m4/inet_ntop.m4 (gl_FUNC_INET_NTOP): Search also in libnetwork.
        * m4/inet_pton.m4 (gl_FUNC_INET_PTON): Likewise.

diff --git a/m4/inet_ntop.m4 b/m4/inet_ntop.m4
index f4ac237..9532647 100644
--- a/m4/inet_ntop.m4
+++ b/m4/inet_ntop.m4
@@ -1,4 +1,4 @@
-# inet_ntop.m4 serial 19
+# inet_ntop.m4 serial 20
 dnl Copyright (C) 2005-2006, 2008-2017 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -16,6 +16,7 @@ AC_DEFUN([gl_FUNC_INET_NTOP],
   dnl Most platforms that provide inet_ntop define it in libc.
   dnl Solaris 8..10 provide inet_ntop in libnsl instead.
   dnl Solaris 2.6..7 provide inet_ntop in libresolv instead.
+  dnl Haiku provides it in -lnetwork.
   dnl Native Windows provides it in -lws2_32 instead, with a declaration in
   dnl <ws2tcpip.h>, and it uses stdcall calling convention, not cdecl
   dnl (hence we cannot use AC_CHECK_FUNCS, AC_SEARCH_LIBS to find it).
@@ -35,7 +36,7 @@ AC_DEFUN([gl_FUNC_INET_NTOP],
     fi
   else
     gl_save_LIBS=$LIBS
-    AC_SEARCH_LIBS([inet_ntop], [nsl resolv], [],
+    AC_SEARCH_LIBS([inet_ntop], [nsl resolv network], [],
       [AC_CHECK_FUNCS([inet_ntop])
        if test $ac_cv_func_inet_ntop = no; then
          HAVE_INET_NTOP=0
diff --git a/m4/inet_pton.m4 b/m4/inet_pton.m4
index 407c29c..9dc02b4 100644
--- a/m4/inet_pton.m4
+++ b/m4/inet_pton.m4
@@ -1,4 +1,4 @@
-# inet_pton.m4 serial 17
+# inet_pton.m4 serial 18
 dnl Copyright (C) 2006, 2008-2017 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -16,6 +16,7 @@ AC_DEFUN([gl_FUNC_INET_PTON],
   dnl Most platforms that provide inet_pton define it in libc.
   dnl Solaris 8..10 provide inet_pton in libnsl instead.
   dnl Solaris 2.6..7 provide inet_pton in libresolv instead.
+  dnl Haiku provides it in -lnetwork.
   dnl Native Windows provides it in -lws2_32 instead, with a declaration in
   dnl <ws2tcpip.h>, and it uses stdcall calling convention, not cdecl
   dnl (hence we cannot use AC_CHECK_FUNCS, AC_SEARCH_LIBS to find it).
@@ -35,7 +36,7 @@ AC_DEFUN([gl_FUNC_INET_PTON],
     fi
   else
     gl_save_LIBS=$LIBS
-    AC_SEARCH_LIBS([inet_pton], [nsl resolv], [],
+    AC_SEARCH_LIBS([inet_pton], [nsl resolv network], [],
       [AC_CHECK_FUNCS([inet_pton])
        if test $ac_cv_func_inet_pton = no; then
          HAVE_INET_PTON=0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]