You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

70 lines
2.2 KiB

dnl This file is part of pilot-link.
dnl Copied from the KDE libraries admin/acinclude.m4.in
dnl
dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu)
dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org)
dnl
dnl This file is free software; you can redistribute it and/or
dnl modify it under the terms of the GNU Library General Public
dnl License as published by the Free Software Foundation; either
dnl version 2 of the License, or (at your option) any later version.
dnl
dnl This library is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
dnl Library General Public License for more details.
dnl
dnl You should have received a copy of the GNU Library General Public License
dnl along with this library; see the file COPYING.LIB. If not, write to
dnl the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
dnl Boston, MA 02110-1301, USA.
dnl Check for the type of the third argument of getsockname
AC_DEFUN([AC_CHECK_SOCKLEN_T],
[
AC_MSG_CHECKING(for socklen_t)
AC_CACHE_VAL(kde_cv_socklen_t,
[
kde_cv_socklen_t=no
AC_TRY_COMPILE([
#include <sys/types.h>
#include <sys/socket.h>
],
[
socklen_t len;
getpeername(0,0,&len);
],
[
kde_cv_socklen_t=yes
kde_cv_socklen_t_equiv=socklen_t
])
])
AC_MSG_RESULT($kde_cv_socklen_t)
if test $kde_cv_socklen_t = no; then
AC_MSG_CHECKING([for socklen_t equivalent for socket functions])
AC_CACHE_VAL(kde_cv_socklen_t_equiv,
[
kde_cv_socklen_t_equiv=int
for t in int size_t unsigned long "unsigned long"; do
AC_TRY_COMPILE([
#include <sys/types.h>
#include <sys/socket.h>
],
[
$t len;
getpeername(0,0,&len);
],
[
kde_cv_socklen_t_equiv="$t"
break
])
done
])
AC_MSG_RESULT($kde_cv_socklen_t_equiv)
fi
AC_DEFINE_UNQUOTED(pl_socklen_t, $kde_cv_socklen_t_equiv,
[type to use in place of socklen_t if not defined])
])