Home | History | Annotate | Line # | Download | only in dist
      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