xtrans.m4 revision af928962
173143b9aSmrgdnl 2af928962Smrgdnl Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 3af928962Smrgdnl 4af928962Smrgdnl Permission is hereby granted, free of charge, to any person obtaining a 5af928962Smrgdnl copy of this software and associated documentation files (the "Software"), 6af928962Smrgdnl to deal in the Software without restriction, including without limitation 7af928962Smrgdnl the rights to use, copy, modify, merge, publish, distribute, sublicense, 8af928962Smrgdnl and/or sell copies of the Software, and to permit persons to whom the 9af928962Smrgdnl Software is furnished to do so, subject to the following conditions: 10af928962Smrgdnl 11af928962Smrgdnl The above copyright notice and this permission notice (including the next 12af928962Smrgdnl paragraph) shall be included in all copies or substantial portions of the 13af928962Smrgdnl Software. 14af928962Smrgdnl 15af928962Smrgdnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16af928962Smrgdnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17af928962Smrgdnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 18af928962Smrgdnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19af928962Smrgdnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 20af928962Smrgdnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 21af928962Smrgdnl DEALINGS IN THE SOFTWARE. 22af928962Smrgdnl 2373143b9aSmrg 2473143b9aSmrg# XTRANS_TCP_FLAGS() 2573143b9aSmrg# ------------------ 2673143b9aSmrg# Find needed libraries for TCP sockets, and check for IPv6 support 2773143b9aSmrgAC_DEFUN([XTRANS_TCP_FLAGS],[ 2873143b9aSmrg # SVR4 hides these in libraries other than libc 2973143b9aSmrg AC_SEARCH_LIBS(socket, [socket]) 3073143b9aSmrg AC_SEARCH_LIBS(gethostbyname, [nsl]) 31b53e5eeaSmrg if test "$ac_cv_search_socket$ac_cv_search_gethostbyname" = "nono"; then 32b53e5eeaSmrg AC_HAVE_LIBRARY([ws2_32]) 33b53e5eeaSmrg fi 3473143b9aSmrg 3573143b9aSmrg # Needs to come after above checks for libsocket & libnsl for SVR4 systems 3673143b9aSmrg AC_ARG_ENABLE(ipv6, 378d4c0f7bSmrg AC_HELP_STRING([--enable-ipv6],[Enable IPv6 support]), 3873143b9aSmrg [IPV6CONN=$enableval], 3973143b9aSmrg [AC_CHECK_FUNC(getaddrinfo,[IPV6CONN=yes],[IPV6CONN=no])]) 4073143b9aSmrg AC_MSG_CHECKING([if IPv6 support should be built]) 4173143b9aSmrg if test "$IPV6CONN" = "yes"; then 4273143b9aSmrg AC_DEFINE(IPv6,1,[Support IPv6 for TCP connections]) 4373143b9aSmrg fi 4473143b9aSmrg AC_MSG_RESULT($IPV6CONN) 4573143b9aSmrg 4673143b9aSmrg # 4.3BSD-Reno added a new member to struct sockaddr_in 4773143b9aSmrg AC_CHECK_MEMBER([struct sockaddr_in.sin_len], 4873143b9aSmrg AC_DEFINE([BSD44SOCKETS],1, 4973143b9aSmrg [Define to 1 if `struct sockaddr_in' has a `sin_len' member]), [], [ 5073143b9aSmrg#include <sys/types.h> 5173143b9aSmrg#include <sys/socket.h> 5273143b9aSmrg#include <netinet/in.h> 5373143b9aSmrg ]) 5473143b9aSmrg 5573143b9aSmrg # POSIX.1g changed the type of pointer passed to getsockname/getpeername/etc. 5673143b9aSmrg AC_CHECK_TYPES([socklen_t], [], [], [ 5773143b9aSmrgAC_INCLUDES_DEFAULT 5873143b9aSmrg#include <sys/socket.h>]) 5973143b9aSmrg 6073143b9aSmrg]) # XTRANS_TCP_FLAGS 6173143b9aSmrg 6273143b9aSmrg# XTRANS_CONNECTION_FLAGS() 6373143b9aSmrg# ------------------------- 6473143b9aSmrg# Standard checks for which Xtrans transports to use by the Xorg packages 6573143b9aSmrg# that use Xtrans functions 6673143b9aSmrgAC_DEFUN([XTRANS_CONNECTION_FLAGS],[ 6773143b9aSmrg AC_REQUIRE([AC_CANONICAL_HOST]) 6873143b9aSmrg AC_REQUIRE([AC_TYPE_SIGNAL]) 6973143b9aSmrg [case $host_os in 7073143b9aSmrg mingw*) unixdef="no" ;; 7173143b9aSmrg *) unixdef="yes" ;; 7273143b9aSmrg esac] 7373143b9aSmrg AC_ARG_ENABLE(unix-transport, 7473143b9aSmrg AC_HELP_STRING([--enable-unix-transport],[Enable UNIX domain socket transport]), 7573143b9aSmrg [UNIXCONN=$enableval], [UNIXCONN=$unixdef]) 7673143b9aSmrg AC_MSG_CHECKING([if Xtrans should support UNIX socket connections]) 7773143b9aSmrg if test "$UNIXCONN" = "yes"; then 7873143b9aSmrg AC_DEFINE(UNIXCONN,1,[Support UNIX socket connections]) 7973143b9aSmrg fi 8073143b9aSmrg AC_MSG_RESULT($UNIXCONN) 8173143b9aSmrg AC_ARG_ENABLE(tcp-transport, 8273143b9aSmrg AC_HELP_STRING([--enable-tcp-transport],[Enable TCP socket transport]), 8373143b9aSmrg [TCPCONN=$enableval], [TCPCONN=yes]) 8473143b9aSmrg AC_MSG_CHECKING([if Xtrans should support TCP socket connections]) 8573143b9aSmrg AC_MSG_RESULT($TCPCONN) 8673143b9aSmrg if test "$TCPCONN" = "yes"; then 8773143b9aSmrg AC_DEFINE(TCPCONN,1,[Support TCP socket connections]) 8873143b9aSmrg XTRANS_TCP_FLAGS 8973143b9aSmrg fi 9073143b9aSmrg [case $host_os in 9173143b9aSmrg solaris*|sco*|sysv4*) localdef="yes" ;; 9273143b9aSmrg *) localdef="no" ;; 9373143b9aSmrg esac] 9473143b9aSmrg AC_ARG_ENABLE(local-transport, 9573143b9aSmrg AC_HELP_STRING([--enable-local-transport],[Enable os-specific local transport]), 9673143b9aSmrg [LOCALCONN=$enableval], [LOCALCONN=$localdef]) 9773143b9aSmrg AC_MSG_CHECKING([if Xtrans should support os-specific local connections]) 9873143b9aSmrg AC_MSG_RESULT($LOCALCONN) 9973143b9aSmrg if test "$LOCALCONN" = "yes"; then 10073143b9aSmrg AC_DEFINE(LOCALCONN,1,[Support os-specific local connections]) 10173143b9aSmrg fi 10273143b9aSmrg 10373143b9aSmrg]) # XTRANS_CONNECTION_FLAGS 10473143b9aSmrg 10573143b9aSmrg 10673143b9aSmrg# XTRANS_SECURE_RPC_FLAGS() 10773143b9aSmrg# ------------------------- 10873143b9aSmrg# Check for Secure RPC functions - must come after XTRANS_TCP_FLAGS 10973143b9aSmrg# so that any necessary networking libraries are already found 11073143b9aSmrgAC_DEFUN([XTRANS_SECURE_RPC_FLAGS], 11173143b9aSmrg[AC_REQUIRE([XTRANS_TCP_FLAGS]) 11273143b9aSmrg AC_ARG_ENABLE(secure-rpc, 11373143b9aSmrg AC_HELP_STRING([--enable-secure-rpc],[Enable Secure RPC]), 11473143b9aSmrg [SECURE_RPC=$enableval], [SECURE_RPC="try"]) 11573143b9aSmrg 11673143b9aSmrg if test "x$SECURE_RPC" = "xyes" -o "x$SECURE_RPC" = "xtry" ; then 11773143b9aSmrg FOUND_SECURE_RPC="no" 11873143b9aSmrg AC_CHECK_FUNCS([authdes_seccreate authdes_create], 11973143b9aSmrg [FOUND_SECURE_RPC="yes"]) 12073143b9aSmrg if test "x$FOUND_SECURE_RPC" = "xno" ; then 12173143b9aSmrg if test "x$SECURE_RPC" = "xyes" ; then 12273143b9aSmrg AC_MSG_ERROR([Secure RPC requested, but required functions not found]) 12373143b9aSmrg fi 12473143b9aSmrg SECURE_RPC="no" 12573143b9aSmrg else 12673143b9aSmrg dnl FreeBSD keeps getsecretkey in librpcsvc 12773143b9aSmrg AC_SEARCH_LIBS(getsecretkey, [rpcsvc]) 12873143b9aSmrg SECURE_RPC="yes" 12973143b9aSmrg fi 13073143b9aSmrg fi 13173143b9aSmrg AC_MSG_CHECKING([if Secure RPC authentication ("SUN-DES-1") should be supported]) 13273143b9aSmrg if test "x$SECURE_RPC" = "xyes" ; then 13373143b9aSmrg AC_DEFINE(SECURE_RPC, 1, [Support Secure RPC ("SUN-DES-1") authentication for X11 clients]) 13473143b9aSmrg fi 13573143b9aSmrg AC_MSG_RESULT($SECURE_RPC) 13673143b9aSmrg]) # XTRANS_SECURE_RPC_FLAGS 13773143b9aSmrg 138