1 2# Initialize Autoconf 3AC_PREREQ(2.60) 4AC_INIT([libSM], [1.2.6], 5 [https://gitlab.freedesktop.org/xorg/lib/libsm/-/issues], [libSM]) 6AC_CONFIG_SRCDIR([Makefile.am]) 7AC_CONFIG_HEADERS([config.h]) 8AC_CONFIG_MACRO_DIRS([m4]) 9 10# Initialize Automake 11AM_INIT_AUTOMAKE([foreign dist-xz]) 12 13# Initialize libtool 14LT_INIT 15 16# Require xorg-macros minimum of 1.12 for DocBook external references 17m4_ifndef([XORG_MACROS_VERSION], 18 [m4_fatal([must install xorg-macros 1.12 or later before running autoconf/autogen])]) 19XORG_MACROS_VERSION(1.12) 20XORG_DEFAULT_OPTIONS 21XORG_ENABLE_DOCS 22XORG_WITH_XMLTO(0.0.22) 23XORG_WITH_FOP 24XORG_WITH_XSLTPROC 25XORG_CHECK_SGML_DOCTOOLS(1.8) 26 27# Check for UUID support 28AC_ARG_WITH(libuuid, AS_HELP_STRING([--with-libuuid], [Build with libuuid support for client IDs])) 29 30PKG_PROG_PKG_CONFIG() 31AC_CHECK_FUNCS([uuid_create], [], [ 32 if test x"$with_libuuid" != xno && test x"$have_system_uuid" != xyes; then 33 PKG_CHECK_MODULES(LIBUUID, uuid, [HAVE_LIBUUID=yes], [HAVE_LIBUUID=no]) 34 fi 35 if test x"$with_libuuid" = xyes && test x"$HAVE_LIBUUID" = xno; then 36 AC_MSG_ERROR([requested libuuid support but uuid.pc not found 37 and LIBUUID_CFLAGS and LIBUUID_LIBS not set]) 38 fi 39]) 40UUID_LIB_PRIVATE="" 41UUID_PC="" 42if test x"$HAVE_LIBUUID" = xyes ; then 43 PKG_CHECK_EXISTS(uuid, [UUID_PC="uuid"]) 44 if test x"$UUID_PC" = x ; then 45 UUID_LIB_PRIVATE="$LIBUUID_LIBS" 46 fi 47fi 48AC_SUBST([UUID_LIB_PRIVATE]) 49AC_SUBST([UUID_PC]) 50 51AM_CONDITIONAL(WITH_LIBUUID, test x"$HAVE_LIBUUID" = xyes) 52 53# If UUID support is not found, fall back to using network addresses 54# to generate client ids 55AS_IF([test x"$HAVE_LIBUUID" != xyes && test x"$ac_cv_func_uuid_create" != xyes], 56 [genid_module="xtrans" 57# Needed to check for TCP & IPv6 support and set flags appropriately 58XTRANS_CONNECTION_FLAGS 59AC_CHECK_FUNCS([getaddrinfo]) ]) 60 61# Obtain compiler/linker options for dependencies 62PKG_CHECK_MODULES(SM, [ice >= 1.1.0 xproto $genid_module]) 63 64 65AC_CONFIG_FILES([Makefile 66 doc/Makefile 67 src/Makefile 68 sm.pc]) 69AC_OUTPUT 70