summaryrefslogtreecommitdiffstats
path: root/ktalkd
diff options
context:
space:
mode:
authorOBATA Akio <[email protected]>2019-04-20 16:46:15 +0900
committerOBATA Akio <[email protected]>2019-04-20 18:08:58 +0900
commit7537d9ef7d526052ca051d93692b290b5fb64d88 (patch)
treec2fdc0e11e5aa7cfe7e1998a3477cd657c6f9b6d /ktalkd
parent2c18879814fa01d3bd9de69625c8ff1791f793b6 (diff)
downloadtdenetwork-7537d9ef7d526052ca051d93692b290b5fb64d88.tar.gz
tdenetwork-7537d9ef7d526052ca051d93692b290b5fb64d88.zip
Change to check `strerror` and `fdopen` with CMake
It is hard to update list of "available" platforms. Signed-off-by: OBATA Akio <[email protected]>
Diffstat (limited to 'ktalkd')
-rw-r--r--ktalkd/ConfigureChecks.cmake3
-rw-r--r--ktalkd/mail.local/mail.local.c7
2 files changed, 8 insertions, 2 deletions
diff --git a/ktalkd/ConfigureChecks.cmake b/ktalkd/ConfigureChecks.cmake
index 923854b0..d10b5ea4 100644
--- a/ktalkd/ConfigureChecks.cmake
+++ b/ktalkd/ConfigureChecks.cmake
@@ -17,6 +17,9 @@ check_include_file( utmp.h HAVE_UTMP_H )
check_include_file( utmpx.h HAVE_UTMPX_H )
check_function_exists( vsnprintf HAVE_VSNPRINTF )
+check_function_exists( strerror HAVE_STRERROR )
+check_symbol_exists( strerror "string.h" HAVE_STRERROR_PROTO )
+check_symbol_exists( fdopen "stdio.h" HAVE_FDOPEN_PROTO )
if( ${CMAKE_SYSTEM_NAME} STREQUAL "Linux" )
set( PROC_FIND_USER 1 CACHE INTERNAL "" FORCE )
diff --git a/ktalkd/mail.local/mail.local.c b/ktalkd/mail.local/mail.local.c
index 9c90d272..c88351dd 100644
--- a/ktalkd/mail.local/mail.local.c
+++ b/ktalkd/mail.local/mail.local.c
@@ -232,8 +232,11 @@ static char copyright[] =
# define _BSD_VA_LIST_ va_list
#endif
-#if !defined(BSD4_4) && !defined(linux) && !defined(_UNIXWARE)
+#ifndef HAVE_STRERROR_PROTO
extern char *strerror __P((int));
+#endif
+
+#ifndef HAVE_FDOPEN_PROTO
extern FILE *fdopen __P((int, const char *));
#endif
@@ -831,7 +834,7 @@ e_to_sys(num)
}
}
-#if !defined(BSD4_4) && !defined(__osf__) && !defined(__GLIBC__)
+#ifndef HAVE_STRERROR
char *
strerror(eno)