summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOBATA Akio <obache@wizdas.com>2020-08-17 16:07:14 +0900
committerTDE Gitea <gitea@mirror.git.trinitydesktop.org>2020-08-17 14:47:16 +0000
commit6886dd7e96d475b64ac3c41a96a759c7d5fa2be9 (patch)
tree4257d2fac9b897fb3d79182a014468e5337a799c
parentf65c9e6665bf5bed20710e6a278d4fa83a6b32a8 (diff)
downloadtdelibs-6886dd7e96d475b64ac3c41a96a759c7d5fa2be9.tar.gz
tdelibs-6886dd7e96d475b64ac3c41a96a759c7d5fa2be9.zip
Add `getservbyname_r` prototype detection to CMake
OpenBSD's prototype is differ than glibc's one, but it is declared. Signed-off-by: OBATA Akio <obache@wizdas.com>
-rw-r--r--CMakeLists.txt1
-rw-r--r--config.h.cmake2
-rw-r--r--tdecore/network/kresolver_p.h2
3 files changed, 2 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 35137c8fe..73a14594c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -395,6 +395,7 @@ check_function_exists( getpeername HAVE_GETPEERNAME )
check_function_exists( getprotobyname_r HAVE_GETPROTOBYNAME_R )
check_function_exists( getpt HAVE_GETPT )
check_function_exists( getservbyname_r HAVE_GETSERVBYNAME_R )
+check_symbol_exists( getservbyname_r "netdb.h" HAVE_DECL_GETSERVBYNAME_R )
check_function_exists( getservbyport_r HAVE_GETSERVBYPORT_R )
check_function_exists( getsockname HAVE_GETSOCKNAME )
check_function_exists( getsockopt HAVE_GETSOCKOPT )
diff --git a/config.h.cmake b/config.h.cmake
index 049450d34..b2f38c0fc 100644
--- a/config.h.cmake
+++ b/config.h.cmake
@@ -168,7 +168,7 @@
#cmakedefine HAVE_CUPS_1_6 1
/* Define to 1 if you have the declaration of `getservbyname_r', and to 0 if you don't. */
-#undef HAVE_DECL_GETSERVBYNAME_R
+#cmakedefine01 HAVE_DECL_GETSERVBYNAME_R
/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'. */
#cmakedefine HAVE_DIRENT_H 1
diff --git a/tdecore/network/kresolver_p.h b/tdecore/network/kresolver_p.h
index 9cc139458..7f74c6fe6 100644
--- a/tdecore/network/kresolver_p.h
+++ b/tdecore/network/kresolver_p.h
@@ -48,7 +48,6 @@ extern TQMutex getXXbyYYmutex;
#endif
/* some systems have the functions, but don't declare them */
-#ifndef __OpenBSD__
#if defined(HAVE_GETSERVBYNAME_R) && !HAVE_DECL_GETSERVBYNAME_R
extern "C" {
struct servent;
@@ -70,7 +69,6 @@ extern "C" {
struct protoent** result);
}
#endif
-#endif
/* decide whether res_init is thread-safe or not */
#if defined(__GLIBC__)