1 # 2 # Copyright 2003 Keith Packard, Noah Levitt 3 # 4 # Permission to use, copy, modify, distribute, and sell this software and its 5 # documentation for any purpose is hereby granted without fee, provided that 6 # the above copyright notice appear in all copies and that both that 7 # copyright notice and this permission notice appear in supporting 8 # documentation, and that the name of Keith Packard not be used in 9 # advertising or publicity pertaining to distribution of the software without 10 # specific, written prior permission. Keith Packard makes no 11 # representations about the suitability of this software for any purpose. It 12 # is provided "as is" without express or implied warranty. 13 # 14 # KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 15 # INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 16 # EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR 17 # CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 18 # DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 19 # TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 20 # PERFORMANCE OF THIS SOFTWARE. 21 # 22 23 # Initialize Autoconf 24 AC_PREREQ([2.60]) 25 AC_INIT([libXdmcp], [1.1.5], 26 [https://gitlab.freedesktop.org/xorg/lib/libxdmcp/-/issues], [libXdmcp]) 27 AC_CONFIG_SRCDIR([Makefile.am]) 28 AC_CONFIG_HEADERS([config.h]) 29 AC_CONFIG_MACRO_DIRS([m4]) 30 31 # Set common system defines for POSIX extensions, such as _GNU_SOURCE 32 # Must be called before any macros that run the compiler (like LT_INIT) 33 # to avoid autoconf errors. 34 AC_USE_SYSTEM_EXTENSIONS 35 36 # Initialize Automake 37 AM_INIT_AUTOMAKE([foreign dist-xz]) 38 39 # Initialize libtool 40 LT_INIT([win32-dll]) 41 42 # Require xorg-macros minimum of 1.16 for unit testing with memory checks 43 m4_ifndef([XORG_MACROS_VERSION], 44 [m4_fatal([must install xorg-macros 1.16 or later before running autoconf/autogen])]) 45 XORG_MACROS_VERSION(1.16) 46 XORG_DEFAULT_OPTIONS 47 XORG_ENABLE_DOCS 48 XORG_WITH_XMLTO(0.0.22) 49 XORG_WITH_FOP 50 XORG_WITH_XSLTPROC 51 XORG_CHECK_SGML_DOCTOOLS(1.8) 52 53 # Checks for programs. 54 AC_PROG_LN_S 55 56 # Checks for header files. 57 AC_CHECK_HEADERS([sys/random.h]) 58 59 # Checks for libraries. 60 AC_SEARCH_LIBS([recvfrom],[socket]) 61 62 case $host_os in 63 *mingw*) 64 AC_CHECK_LIB([ws2_32],[main]) 65 ;; 66 *) 67 ;; 68 esac 69 70 # Checks for non-standard functions and fallback to libbsd if we can 71 # We only check for arc4random_buf, because if we have that, we don't 72 # need/use getentropy. 73 AC_LINK_IFELSE([AC_LANG_CALL([], [arc4random_buf])], 74 [TRY_LIBBSD="no"], [TRY_LIBBSD="yes"]) 75 AS_IF([test "x$TRY_LIBBSD" = "xyes"], 76 [PKG_CHECK_MODULES([LIBBSD], [libbsd-overlay], [ 77 CFLAGS="$CFLAGS $LIBBSD_CFLAGS" 78 LIBS="$LIBS $LIBBSD_LIBS" 79 ], [:])]) 80 81 # Checks for library functions. 82 AC_CHECK_FUNCS([srand48 lrand48 arc4random_buf getentropy]) 83 84 # Obtain compiler/linker options for dependencies 85 PKG_CHECK_MODULES(XDMCP, xproto) 86 87 if test -f ${srcdir}/Wraphelp.c; then 88 AC_DEFINE(HASXDMAUTH,1,[Has Wraphelp.c needed for XDM AUTH protocols]) 89 HASXDMAUTH=yes 90 else 91 HASXDMAUTH=no 92 fi 93 94 AM_CONDITIONAL(HASXDMAUTH,test x$HASXDMAUTH = xyes) 95 96 # Allow checking code with lint, sparse, etc. 97 XORG_WITH_LINT 98 XORG_LINT_LIBRARY([Xdmcp]) 99 100 # --enable-unit-tests 101 XORG_ENABLE_UNIT_TESTS([yes]) 102 103 AC_CONFIG_FILES([Makefile 104 doc/Makefile 105 test/Makefile 106 xdmcp.pc]) 107 AC_OUTPUT 108