2008-08-03 11:30:03 +04:00
|
|
|
|
# Process this file with autoconf to produce a configure script
|
|
|
|
|
|
2016-03-04 09:21:49 +03:00
|
|
|
|
AC_PREREQ(2.65)
|
2021-04-29 15:12:58 +03:00
|
|
|
|
AC_INIT([xrdp], [0.9.16], [xrdp-devel@googlegroups.com])
|
2013-06-12 12:08:42 +04:00
|
|
|
|
AC_CONFIG_HEADERS(config_ac.h:config_ac-h.in)
|
2016-02-12 10:40:27 +03:00
|
|
|
|
AM_INIT_AUTOMAKE([1.7.2 foreign])
|
2016-02-10 11:16:06 +03:00
|
|
|
|
AC_CONFIG_MACRO_DIR([m4])
|
2008-08-03 11:30:03 +04:00
|
|
|
|
AC_PROG_CC
|
|
|
|
|
AC_C_CONST
|
|
|
|
|
AC_PROG_LIBTOOL
|
2017-01-01 11:54:19 +03:00
|
|
|
|
|
2014-10-28 01:44:17 +03:00
|
|
|
|
PKG_PROG_PKG_CONFIG
|
2017-01-01 11:54:19 +03:00
|
|
|
|
if test "x$PKG_CONFIG" = "x"; then
|
|
|
|
|
AC_MSG_ERROR([please install pkg-config])
|
|
|
|
|
fi
|
2015-03-12 14:22:35 +03:00
|
|
|
|
|
2016-12-17 00:49:33 +03:00
|
|
|
|
AC_CONFIG_SUBDIRS([libpainter librfxcodec])
|
2016-12-12 10:09:15 +03:00
|
|
|
|
|
2016-02-12 09:15:22 +03:00
|
|
|
|
# Use silent rules by default if supported by Automake
|
|
|
|
|
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
|
|
|
|
|
2015-03-12 14:22:35 +03:00
|
|
|
|
case $host_os in
|
|
|
|
|
*linux*)
|
|
|
|
|
linux=yes
|
|
|
|
|
;;
|
2017-01-27 04:02:41 +03:00
|
|
|
|
*kfreebsd*)
|
|
|
|
|
linux=yes # only used in instfiles/ so that’s ok for us for now
|
|
|
|
|
;;
|
2015-03-12 14:22:35 +03:00
|
|
|
|
*freebsd*)
|
|
|
|
|
freebsd=yes
|
|
|
|
|
;;
|
|
|
|
|
*netbsd*)
|
|
|
|
|
netbsd=yes
|
|
|
|
|
;;
|
|
|
|
|
*openbsd*)
|
|
|
|
|
openbsd=yes
|
|
|
|
|
;;
|
2018-01-30 12:00:24 +03:00
|
|
|
|
*darwin*)
|
|
|
|
|
macos=yes
|
|
|
|
|
;;
|
2015-03-12 14:22:35 +03:00
|
|
|
|
esac
|
|
|
|
|
|
|
|
|
|
AM_CONDITIONAL(LINUX, [test "x$linux" = xyes])
|
|
|
|
|
AM_CONDITIONAL(FREEBSD, [test "x$freebsd" = xyes])
|
|
|
|
|
AM_CONDITIONAL(OPENBSD, [test "x$openbsd" = xyes])
|
|
|
|
|
AM_CONDITIONAL(NETBSD, [test "x$netbsd" = xyes])
|
2018-01-30 12:00:24 +03:00
|
|
|
|
AM_CONDITIONAL(MACOS, [test "x$macos" = xyes])
|
2015-03-12 14:22:35 +03:00
|
|
|
|
|
2017-03-15 07:45:50 +03:00
|
|
|
|
AC_ARG_WITH([socketdir],
|
|
|
|
|
[AS_HELP_STRING([--with-socketdir=DIR],
|
|
|
|
|
[Use directory for UNIX sockets (default: /tmp/.xrdp)])],
|
|
|
|
|
[], [with_socketdir="/tmp/.xrdp"])
|
|
|
|
|
AC_SUBST([socketdir], [$with_socketdir])
|
|
|
|
|
|
2012-05-26 21:15:45 +04:00
|
|
|
|
AC_ARG_WITH([systemdsystemunitdir],
|
2018-05-24 08:09:45 +03:00
|
|
|
|
AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files, no to disable]),
|
2017-01-18 05:53:27 +03:00
|
|
|
|
[], [
|
|
|
|
|
if test "x$linux" = xyes; then
|
|
|
|
|
with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)
|
|
|
|
|
fi
|
|
|
|
|
])
|
|
|
|
|
|
2012-05-26 21:15:45 +04:00
|
|
|
|
if test "x$with_systemdsystemunitdir" != xno; then
|
|
|
|
|
AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
|
|
|
|
|
fi
|
|
|
|
|
AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ])
|
|
|
|
|
|
2021-04-20 17:50:21 +03:00
|
|
|
|
AC_ARG_ENABLE(tests,
|
|
|
|
|
AC_HELP_STRING([--enable-tests],
|
|
|
|
|
[Ensure dependencies for the tests are installed]),
|
|
|
|
|
[ensure_tests_deps=yes], [])
|
2020-12-15 13:55:26 +03:00
|
|
|
|
AC_ARG_ENABLE(pam, AS_HELP_STRING([--enable-pam],
|
2014-10-28 01:32:56 +03:00
|
|
|
|
[Build PAM support (default: yes)]),
|
|
|
|
|
[], [enable_pam=yes])
|
|
|
|
|
AM_CONDITIONAL(SESMAN_NOPAM, [test x$enable_pam != xyes])
|
2017-09-22 02:13:05 +03:00
|
|
|
|
AC_ARG_ENABLE(vsock, AS_HELP_STRING([--enable-vsock],
|
|
|
|
|
[Build AF_VSOCK support (default: no)]),
|
|
|
|
|
[], [enable_vsock=no])
|
2015-03-10 07:36:52 +03:00
|
|
|
|
AC_ARG_ENABLE(ipv6, AS_HELP_STRING([--enable-ipv6],
|
|
|
|
|
[Build IPv6 support (default: no, experimental)]),
|
|
|
|
|
[], [enable_ipv6=no])
|
2015-07-01 07:19:38 +03:00
|
|
|
|
AC_ARG_ENABLE(ipv6only, AS_HELP_STRING([--enable-ipv6only],
|
|
|
|
|
[Build IPv6-only (default: no)]),
|
|
|
|
|
[], [enable_ipv6only=no])
|
2008-08-09 12:35:05 +04:00
|
|
|
|
AC_ARG_ENABLE(kerberos, AS_HELP_STRING([--enable-kerberos],
|
2020-12-15 13:55:26 +03:00
|
|
|
|
[Build kerberos support (prefer --enable-pam if available) (default: no)]),
|
2014-10-28 01:22:22 +03:00
|
|
|
|
[], [enable_kerberos=no])
|
2014-11-21 16:22:15 +03:00
|
|
|
|
AC_ARG_ENABLE(bsd, AS_HELP_STRING([--enable-bsd],
|
|
|
|
|
[Build BSD auth support (default: no)]),
|
|
|
|
|
[bsd=true], [bsd=false])
|
|
|
|
|
AM_CONDITIONAL(SESMAN_BSD, [test x$bsd = xtrue])
|
2014-10-28 01:22:22 +03:00
|
|
|
|
AM_CONDITIONAL(SESMAN_KERBEROS, [test x$enable_kerberos = xyes])
|
2008-08-09 12:35:05 +04:00
|
|
|
|
AC_ARG_ENABLE(pamuserpass, AS_HELP_STRING([--enable-pamuserpass],
|
2020-12-15 13:55:26 +03:00
|
|
|
|
[Build PAM userpass support (default: no)]),
|
2014-10-28 01:22:22 +03:00
|
|
|
|
[], [enable_pamuserpass=no])
|
|
|
|
|
AM_CONDITIONAL(SESMAN_PAMUSERPASS, [test x$enable_pamuserpass = xyes])
|
2016-12-31 07:00:46 +03:00
|
|
|
|
AC_ARG_ENABLE(pam-config, AS_HELP_STRING([--enable-pam-config=CONF],
|
2018-03-24 17:50:17 +03:00
|
|
|
|
[Select PAM config to install: arch, debian, redhat, suse, freebsd, macos, unix
|
2016-12-31 07:00:46 +03:00
|
|
|
|
(default: autodetect)]))
|
|
|
|
|
|
2021-05-19 13:19:43 +03:00
|
|
|
|
# Development options. devel_all is first as this provides a default for
|
|
|
|
|
# the others
|
|
|
|
|
AC_ARG_ENABLE(devel_all, AS_HELP_STRING([--enable-devel-all],
|
|
|
|
|
[Enable all development options (default: no)]),
|
|
|
|
|
[devel_all=$enableval], [devel_all=no])
|
|
|
|
|
AC_ARG_ENABLE(devel_debug, AS_HELP_STRING([--enable-devel-debug],
|
|
|
|
|
[Build exes with no optimisation and debugging symbols (default: no)]),
|
|
|
|
|
[devel_debug=$enableval], [devel_debug=$devel_all])
|
|
|
|
|
AM_CONDITIONAL(DEVEL_DEBUG, [test x$devel_debug = xyes ])
|
|
|
|
|
AC_ARG_ENABLE(devel_logging, AS_HELP_STRING([--enable-devel-logging],
|
|
|
|
|
[Enable development logging (default: no)]),
|
|
|
|
|
[devel_logging=$enableval], [devel_logging=$devel_all])
|
2021-05-19 13:34:41 +03:00
|
|
|
|
AC_ARG_ENABLE(devel_streamcheck, AS_HELP_STRING([--enable-devel-streamcheck],
|
|
|
|
|
[Add range-check/abort to stream primitives (default: no)]),
|
|
|
|
|
[devel_streamcheck=$enableval], [devel_streamcheck=$devel_all])
|
2021-05-19 13:19:43 +03:00
|
|
|
|
|
2013-05-03 13:07:02 +04:00
|
|
|
|
AC_ARG_ENABLE(neutrinordp, AS_HELP_STRING([--enable-neutrinordp],
|
|
|
|
|
[Build neutrinordp module (default: no)]),
|
2014-10-28 01:22:22 +03:00
|
|
|
|
[], [enable_neutrinordp=no])
|
|
|
|
|
AM_CONDITIONAL(XRDP_NEUTRINORDP, [test x$enable_neutrinordp = xyes])
|
2012-04-08 09:41:46 +04:00
|
|
|
|
AC_ARG_ENABLE(jpeg, AS_HELP_STRING([--enable-jpeg],
|
|
|
|
|
[Build jpeg module (default: no)]),
|
2014-10-28 01:22:22 +03:00
|
|
|
|
[], [enable_jpeg=no])
|
|
|
|
|
AM_CONDITIONAL(XRDP_JPEG, [test x$enable_jpeg = xyes])
|
2013-09-16 22:14:48 +04:00
|
|
|
|
AC_ARG_ENABLE(tjpeg, AS_HELP_STRING([--enable-tjpeg],
|
2014-03-25 04:55:04 +04:00
|
|
|
|
[Build turbo jpeg module (default: no)]),
|
2014-10-28 01:22:22 +03:00
|
|
|
|
[], [enable_tjpeg=no])
|
|
|
|
|
AM_CONDITIONAL(XRDP_TJPEG, [test x$enable_tjpeg = xyes])
|
2012-11-03 10:10:36 +04:00
|
|
|
|
AC_ARG_ENABLE(fuse, AS_HELP_STRING([--enable-fuse],
|
|
|
|
|
[Build fuse(clipboard file / drive redir) (default: no)]),
|
2014-10-28 01:22:22 +03:00
|
|
|
|
[], [enable_fuse=no])
|
|
|
|
|
AM_CONDITIONAL(XRDP_FUSE, [test x$enable_fuse = xyes])
|
2012-11-11 05:53:08 +04:00
|
|
|
|
AC_ARG_ENABLE(xrdpvr, AS_HELP_STRING([--enable-xrdpvr],
|
|
|
|
|
[Build xrdpvr module (default: no)]),
|
2014-10-28 01:22:22 +03:00
|
|
|
|
[], [enable_xrdpvr=no])
|
|
|
|
|
AM_CONDITIONAL(XRDP_XRDPVR, [test x$enable_xrdpvr = xyes])
|
2017-07-28 08:02:04 +03:00
|
|
|
|
AC_ARG_ENABLE(fdkaac, AS_HELP_STRING([--enable-fdkaac],
|
|
|
|
|
[Build aac(audio codec) (default: no)]),
|
|
|
|
|
[], [enable_fdkaac=no])
|
|
|
|
|
AM_CONDITIONAL(XRDP_FDK_AAC, [test x$enable_fdkaac = xyes])
|
2015-01-10 10:31:28 +03:00
|
|
|
|
AC_ARG_ENABLE(opus, AS_HELP_STRING([--enable-opus],
|
|
|
|
|
[Build opus(audio codec) (default: no)]),
|
|
|
|
|
[], [enable_opus=no])
|
|
|
|
|
AM_CONDITIONAL(XRDP_OPUS, [test x$enable_opus = xyes])
|
2016-07-14 03:44:07 +03:00
|
|
|
|
AC_ARG_ENABLE(mp3lame, AS_HELP_STRING([--enable-mp3lame],
|
|
|
|
|
[Build lame mp3(audio codec) (default: no)]),
|
|
|
|
|
[], [enable_mp3lame=no])
|
|
|
|
|
AM_CONDITIONAL(XRDP_MP3LAME, [test x$enable_mp3lame = xyes])
|
2016-08-09 06:02:10 +03:00
|
|
|
|
AC_ARG_ENABLE(pixman, AS_HELP_STRING([--enable-pixman],
|
|
|
|
|
[Use pixman library (default: no)]),
|
2016-08-12 08:18:26 +03:00
|
|
|
|
[], [enable_pixman=no])
|
2016-08-09 06:02:10 +03:00
|
|
|
|
AM_CONDITIONAL(XRDP_PIXMAN, [test x$enable_pixman = xyes])
|
2017-02-26 22:26:56 +03:00
|
|
|
|
|
|
|
|
|
AC_ARG_ENABLE(painter, AS_HELP_STRING([--disable-painter],
|
2017-05-16 11:27:30 +03:00
|
|
|
|
[Do not use included painter library (default: no)]),
|
2017-02-26 22:26:56 +03:00
|
|
|
|
[], [enable_painter=yes])
|
2016-12-16 08:17:50 +03:00
|
|
|
|
AM_CONDITIONAL(XRDP_PAINTER, [test x$enable_painter = xyes])
|
2017-02-26 22:26:56 +03:00
|
|
|
|
|
|
|
|
|
AC_ARG_ENABLE(rfxcodec, AS_HELP_STRING([--disable-rfxcodec],
|
2017-05-16 11:27:30 +03:00
|
|
|
|
[Do not use included librfxcodec library (default: no)]),
|
2017-02-26 22:26:56 +03:00
|
|
|
|
[], [enable_rfxcodec=yes])
|
|
|
|
|
AM_CONDITIONAL(XRDP_RFXCODEC, [test x$enable_rfxcodec = xyes])
|
2009-10-09 22:20:56 +04:00
|
|
|
|
|
2019-10-23 08:48:15 +03:00
|
|
|
|
AC_ARG_ENABLE(rdpsndaudin, AS_HELP_STRING([--enable-rdpsndaudin],
|
|
|
|
|
[Use rdpsnd audio in (default: no)]),
|
|
|
|
|
[], [enable_rdpsndaudin=no])
|
|
|
|
|
AM_CONDITIONAL(XRDP_RDPSNDAUDIN, [test x$enable_rdpsndaudin = xyes])
|
|
|
|
|
|
2021-06-30 15:48:00 +03:00
|
|
|
|
AC_ARG_WITH(imlib2, AC_HELP_STRING([--with-imlib2=ARG], [imlib2 library to use (yes/no/auto/<path>)]),,)
|
|
|
|
|
|
2021-06-04 16:43:18 +03:00
|
|
|
|
# Obsolete options
|
|
|
|
|
AC_ARG_ENABLE(xrdpdebug, AS_HELP_STRING([--enable-xrdpdebug],
|
|
|
|
|
[This option is no longer supported - use --enable-devel-all]))
|
|
|
|
|
|
|
|
|
|
if test "x$enable_xrdpdebug" != x; then
|
|
|
|
|
AC_MSG_ERROR([--enable-xrdpdebug must be replaced with one or more --enable-devel-* options])
|
|
|
|
|
fi
|
|
|
|
|
|
2020-07-22 06:03:09 +03:00
|
|
|
|
# configure compiler options and CFLAGS
|
|
|
|
|
AX_GCC_FUNC_ATTRIBUTE([format])
|
|
|
|
|
AX_TYPE_SOCKLEN_T
|
|
|
|
|
AX_CFLAGS_WARN_ALL
|
|
|
|
|
AX_APPEND_COMPILE_FLAGS([-Wwrite-strings])
|
|
|
|
|
|
|
|
|
|
AM_COND_IF([LINUX],
|
|
|
|
|
[AX_APPEND_COMPILE_FLAGS([-Werror])]) # bsd has warnings that have not been fixed yet
|
|
|
|
|
|
2021-05-19 13:19:43 +03:00
|
|
|
|
AM_COND_IF([DEVEL_DEBUG],
|
2020-07-22 06:03:09 +03:00
|
|
|
|
[AX_APPEND_COMPILE_FLAGS([-g -O0])],
|
|
|
|
|
[AX_APPEND_COMPILE_FLAGS([-O2])])
|
|
|
|
|
|
2016-12-20 21:38:04 +03:00
|
|
|
|
# Don't fail without working nasm if rfxcodec is not enabled
|
|
|
|
|
if test "x$enable_rfxcodec" != xyes; then
|
|
|
|
|
with_simd=no
|
|
|
|
|
export with_simd
|
|
|
|
|
fi
|
|
|
|
|
|
2016-11-30 03:25:37 +03:00
|
|
|
|
# Check if -ldl is needed to use dlopen()
|
|
|
|
|
DLOPEN_LIBS=
|
|
|
|
|
AC_CHECK_FUNC(dlopen, [],
|
|
|
|
|
[AC_CHECK_LIB(dl, dlopen, [DLOPEN_LIBS=-ldl])])
|
|
|
|
|
AC_SUBST(DLOPEN_LIBS)
|
|
|
|
|
|
2009-10-09 22:20:56 +04:00
|
|
|
|
# checking for openssl
|
2016-12-25 09:30:44 +03:00
|
|
|
|
PKG_CHECK_MODULES([OPENSSL], [openssl >= 0.9.8], [],
|
2016-11-30 04:00:09 +03:00
|
|
|
|
[AC_MSG_ERROR([please install libssl-dev or openssl-devel])])
|
2009-10-09 22:20:56 +04:00
|
|
|
|
|
2017-01-15 11:42:35 +03:00
|
|
|
|
# look for openssl binary
|
|
|
|
|
OPENSSL_BIN=`$PKG_CONFIG --variable=exec_prefix openssl`/bin
|
|
|
|
|
AC_PATH_PROGS([OPENSSL], [openssl], [:], [$OPENSSL_BIN:$PATH])
|
|
|
|
|
|
2020-12-15 13:55:26 +03:00
|
|
|
|
# checking for PAM variation
|
2015-03-10 12:01:20 +03:00
|
|
|
|
# Linux-PAM is used in Linux systems
|
|
|
|
|
# OpenPAM is used by FreeBSD, NetBSD, DragonFly BSD and OS X
|
|
|
|
|
# OpenBSD uses BSD Authentication rather than both PAMs
|
|
|
|
|
AC_CHECK_HEADER([security/_pam_types.h],
|
|
|
|
|
[AC_DEFINE([HAVE__PAM_TYPES_H], 1, [Using Linux-PAM], [])])
|
|
|
|
|
AC_CHECK_HEADER([security/pam_constants.h],
|
|
|
|
|
[AC_DEFINE([HAVE_PAM_CONSTANTS_H], 1, [Using OpenPAM], [])])
|
|
|
|
|
|
2021-06-30 15:48:00 +03:00
|
|
|
|
# Find imlib2
|
|
|
|
|
case "$with_imlib2" in
|
|
|
|
|
no) AC_MSG_NOTICE([imlib2 will not be supported])
|
|
|
|
|
use_imlib2=no
|
|
|
|
|
;;
|
|
|
|
|
'' | auto)
|
|
|
|
|
PKG_CHECK_MODULES([IMLIB2], [imlib2 >= 1.4.10],
|
|
|
|
|
[use_imlib2=yes],
|
|
|
|
|
[use_imlib2=no])
|
|
|
|
|
;;
|
|
|
|
|
yes)
|
|
|
|
|
PKG_CHECK_MODULES([IMLIB2], [imlib2 >= 1.4.10],
|
|
|
|
|
[use_imlib2=yes],
|
|
|
|
|
[AC_MSG_ERROR([please install libimlib2-dev or imlib2-devel])])
|
|
|
|
|
;;
|
|
|
|
|
*)
|
|
|
|
|
AC_MSG_CHECKING([for imlib2 in $with_imlib2])
|
|
|
|
|
if test -d $with_imlib2/lib; then
|
|
|
|
|
IMLIB2_LIBS="-L $with_imlib2/lib -lImlib2"
|
|
|
|
|
elif test -d $with_imlib2/lib64; then
|
|
|
|
|
IMLIB2_LIBS="-L $with_imlib2/lib64 -lImlib2"
|
|
|
|
|
else
|
|
|
|
|
AC_MSG_RESULT([no])
|
|
|
|
|
AC_MSG_ERROR([Can't find libImlib2 in $with_imlib2])
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if test -f $with_imlib2/include/Imlib2.h; then
|
|
|
|
|
IMLIB2_CFLAGS="-I $with_imlib2/include"
|
|
|
|
|
else
|
|
|
|
|
AC_MSG_RESULT([no])
|
|
|
|
|
AC_MSG_ERROR([Can't find $with_imlib2/include/Imlib2.h])
|
|
|
|
|
fi
|
|
|
|
|
AC_MSG_RESULT([yes])
|
|
|
|
|
AC_SUBST([IMLIB2_LIBS])
|
|
|
|
|
AC_SUBST([IMLIB2_CFLAGS])
|
|
|
|
|
use_imlib2=yes
|
|
|
|
|
esac
|
|
|
|
|
|
|
|
|
|
if test x$use_imlib2 = xyes; then
|
|
|
|
|
AC_DEFINE([USE_IMLIB2],1, [Compile with imlib2 support])
|
|
|
|
|
fi
|
|
|
|
|
|
2020-12-15 13:55:26 +03:00
|
|
|
|
# Check only one auth mechanism is specified, and give it a name
|
|
|
|
|
auth_cnt=0
|
|
|
|
|
auth_mech="Builtin"
|
|
|
|
|
if test x$enable_pam = xyes
|
|
|
|
|
then
|
|
|
|
|
auth_cnt=`expr $auth_cnt + 1`
|
|
|
|
|
auth_mech="PAM"
|
|
|
|
|
fi
|
|
|
|
|
if test x$bsd = xtrue
|
|
|
|
|
then
|
|
|
|
|
auth_cnt=`expr $auth_cnt + 1`
|
|
|
|
|
auth_mech="BSD"
|
|
|
|
|
fi
|
|
|
|
|
if test x$enable_kerberos = xyes
|
|
|
|
|
then
|
|
|
|
|
auth_cnt=`expr $auth_cnt + 1`
|
|
|
|
|
auth_mech="Kerberos"
|
|
|
|
|
fi
|
|
|
|
|
if test x$enable_pamuserpass = xyes
|
|
|
|
|
then
|
|
|
|
|
auth_cnt=`expr $auth_cnt + 1`
|
|
|
|
|
auth_mech="PAM userpass"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if test $auth_cnt -gt 1
|
|
|
|
|
then
|
|
|
|
|
AC_MSG_ERROR([--enable-pam, --enable-bsd, --enable-pamuserpass and --enable-kerberos are mutually exclusive])
|
|
|
|
|
fi
|
|
|
|
|
|
2009-10-09 22:20:56 +04:00
|
|
|
|
# checking if pam should be autodetected.
|
2014-10-28 01:32:56 +03:00
|
|
|
|
if test "x$enable_pam" = "xyes"
|
2009-10-09 22:20:56 +04:00
|
|
|
|
then
|
2020-12-15 13:55:26 +03:00
|
|
|
|
if test -z "$enable_bsd"
|
2009-10-09 22:20:56 +04:00
|
|
|
|
then
|
2020-12-15 13:55:26 +03:00
|
|
|
|
AC_CHECK_HEADER([security/pam_appl.h], [],
|
|
|
|
|
[AC_MSG_ERROR([please install libpam0g-dev or pam-devel])])
|
2009-10-09 22:20:56 +04:00
|
|
|
|
fi
|
2016-12-31 07:00:46 +03:00
|
|
|
|
if test "x$enable_pam_config" = "x"; then
|
|
|
|
|
PAM_RULES="auto"
|
|
|
|
|
else
|
|
|
|
|
pam_config_file="$srcdir/instfiles/pam.d/xrdp-sesman.$enable_pam_config"
|
|
|
|
|
if test -f "$pam_config_file"; then
|
|
|
|
|
PAM_RULES="$enable_pam_config"
|
|
|
|
|
else
|
|
|
|
|
AC_MSG_ERROR([PAM file "$pam_config_file" is not available])
|
|
|
|
|
fi
|
|
|
|
|
fi
|
2009-10-09 22:20:56 +04:00
|
|
|
|
fi
|
|
|
|
|
|
2016-12-31 07:00:46 +03:00
|
|
|
|
AC_SUBST(PAM_RULES)
|
|
|
|
|
|
2021-05-19 13:19:43 +03:00
|
|
|
|
# Add define for development options to config_ac.h
|
|
|
|
|
AC_DEFINE([CONFIG_AC_H],1, [Allow sources to check config_ac.h is included])
|
|
|
|
|
if test x$devel_logging = xyes
|
|
|
|
|
then
|
|
|
|
|
AC_DEFINE([USE_DEVEL_LOGGING],1,[Enable development logging])
|
|
|
|
|
fi
|
|
|
|
|
|
2021-05-19 13:34:41 +03:00
|
|
|
|
if test x$devel_streamcheck = xyes
|
|
|
|
|
then
|
|
|
|
|
AC_DEFINE([USE_DEVEL_STREAMCHECK],1,[Enable development stream checking])
|
|
|
|
|
fi
|
|
|
|
|
|
2017-09-22 02:13:05 +03:00
|
|
|
|
if test "x$enable_vsock" = "xyes"
|
|
|
|
|
then
|
|
|
|
|
enable_vsock=yes
|
|
|
|
|
AC_CHECK_HEADERS([linux/socket.h linux/vm_sockets.h],
|
|
|
|
|
[AC_DEFINE([XRDP_ENABLE_VSOCK], 1, [Enable AF_VSOCK])],
|
|
|
|
|
[],
|
|
|
|
|
[#include <sys/socket.h>])
|
|
|
|
|
fi
|
|
|
|
|
|
2015-07-01 07:19:38 +03:00
|
|
|
|
if test "x$enable_ipv6only" = "xyes"
|
|
|
|
|
then
|
|
|
|
|
enable_ipv6=yes
|
|
|
|
|
AC_DEFINE([XRDP_ENABLE_IPV6ONLY],1,[Enable IPv6 only])
|
|
|
|
|
fi
|
|
|
|
|
|
2015-03-10 07:36:52 +03:00
|
|
|
|
if test "x$enable_ipv6" = "xyes"
|
|
|
|
|
then
|
|
|
|
|
AC_DEFINE([XRDP_ENABLE_IPV6],1,[Enable IPv6])
|
|
|
|
|
fi
|
|
|
|
|
|
2021-02-05 14:44:43 +03:00
|
|
|
|
if test "x$enable_pam" = "xyes"
|
2013-02-07 14:08:28 +04:00
|
|
|
|
then
|
2021-02-05 14:44:43 +03:00
|
|
|
|
AC_DEFINE([USE_PAM],1,[Enable PAM])
|
2013-02-07 14:08:28 +04:00
|
|
|
|
fi
|
|
|
|
|
|
2013-05-03 13:07:02 +04:00
|
|
|
|
AS_IF( [test "x$enable_neutrinordp" = "xyes"] , [PKG_CHECK_MODULES(FREERDP, freerdp >= 1.0.0)] )
|
|
|
|
|
|
2012-08-02 21:48:59 +04:00
|
|
|
|
# checking for libjpeg
|
2014-10-28 01:22:22 +03:00
|
|
|
|
if test "x$enable_jpeg" = "xyes"
|
2012-04-08 09:41:46 +04:00
|
|
|
|
then
|
|
|
|
|
AC_CHECK_HEADER([jpeglib.h], [],
|
|
|
|
|
[AC_MSG_ERROR([please install libjpeg-dev or libjpeg-devel])])
|
|
|
|
|
fi
|
|
|
|
|
|
2012-11-03 10:10:36 +04:00
|
|
|
|
# checking for fuse
|
2014-10-28 01:22:22 +03:00
|
|
|
|
if test "x$enable_fuse" = "xyes"
|
2012-11-03 10:10:36 +04:00
|
|
|
|
then
|
2015-03-18 05:40:15 +03:00
|
|
|
|
PKG_CHECK_MODULES([FUSE], [fuse >= 2.6], [],
|
|
|
|
|
[AC_MSG_ERROR([please install libfuse-dev or fuse-devel])])
|
2012-11-03 10:10:36 +04:00
|
|
|
|
fi
|
|
|
|
|
|
2017-07-28 08:02:04 +03:00
|
|
|
|
# checking for fdk aac
|
|
|
|
|
if test "x$enable_fdkaac" = "xyes"
|
|
|
|
|
then
|
2017-08-02 02:33:58 +03:00
|
|
|
|
PKG_CHECK_MODULES([FDKAAC], [fdk-aac >= 0.1.0], [],
|
2017-07-28 10:36:04 +03:00
|
|
|
|
[AC_MSG_ERROR([please install libfdk-aac-dev or fdk-aac-devel])])
|
2017-07-28 08:02:04 +03:00
|
|
|
|
fi
|
|
|
|
|
|
2015-01-10 10:31:28 +03:00
|
|
|
|
# checking for opus
|
|
|
|
|
if test "x$enable_opus" = "xyes"
|
|
|
|
|
then
|
|
|
|
|
AC_CHECK_HEADER([opus/opus.h], [],
|
|
|
|
|
[AC_MSG_ERROR([please install libopus-dev or opus-devel])])
|
|
|
|
|
fi
|
|
|
|
|
|
2016-07-14 03:44:07 +03:00
|
|
|
|
# checking for lame mp3
|
|
|
|
|
if test "x$enable_mp3lame" = "xyes"
|
|
|
|
|
then
|
|
|
|
|
AC_CHECK_HEADER([lame/lame.h], [],
|
|
|
|
|
[AC_MSG_ERROR([please install libmp3lame-dev or lamemp3-devel])])
|
|
|
|
|
fi
|
|
|
|
|
|
2016-12-04 23:01:35 +03:00
|
|
|
|
AS_IF( [test "x$enable_pixman" = "xyes"] , [PKG_CHECK_MODULES(PIXMAN, pixman-1 >= 0.1.0)] )
|
2016-08-09 06:02:10 +03:00
|
|
|
|
|
2014-03-24 04:45:40 +04:00
|
|
|
|
# checking for TurboJPEG
|
2014-10-28 01:22:22 +03:00
|
|
|
|
if test "x$enable_tjpeg" = "xyes"
|
2014-03-24 23:03:17 +04:00
|
|
|
|
then
|
2014-03-24 04:45:40 +04:00
|
|
|
|
if test ! -z "$TURBOJPEG_PATH"
|
|
|
|
|
then
|
|
|
|
|
# env var TURBOJPEG_PATH has been defined, use that
|
|
|
|
|
AC_CHECK_HEADER([$TURBOJPEG_PATH/include/turbojpeg.h], [],
|
|
|
|
|
[AC_MSG_ERROR([could not find TurboJPEG in dir specified by env variable TURBOJPEG_PATH ($TURBOJPEG_PATH)])])
|
|
|
|
|
|
|
|
|
|
AC_SUBST(TurboJpegIncDir, ["-I$TURBOJPEG_PATH/include"])
|
|
|
|
|
AC_SUBST(TurboJpegLibDir, ["-L$TURBOJPEG_PATH/lib -Wl,-rpath -Wl,$TURBOJPEG_PATH/lib"])
|
|
|
|
|
elif test -e /opt/libjpeg-turbo/lib64
|
|
|
|
|
then
|
|
|
|
|
# TurboJPEG has been installed to /opt on a 64 bit m/c
|
|
|
|
|
AC_SUBST(TurboJpegIncDir, ["-I/opt/libjpeg-turbo/include"])
|
|
|
|
|
AC_SUBST(TurboJpegLibDir, ["-L/opt/libjpeg-turbo/lib64 -Wl,-rpath -Wl,/opt/libjpeg-turbo/lib64"])
|
|
|
|
|
elif test -e /opt/libjpeg-turbo/lib32
|
|
|
|
|
then
|
|
|
|
|
# TurboJPEG has been installed to /opt on a 32 bit m/c
|
|
|
|
|
AC_SUBST(TurboJpegIncDir, ["-I/opt/libjpeg-turbo/include"])
|
|
|
|
|
AC_SUBST(TurboJpegLibDir, ["-L/opt/libjpeg-turbo/lib32 -Wl,-rpath -Wl,/opt/libjpeg-turbo/lib32"])
|
|
|
|
|
else
|
|
|
|
|
# check in default location
|
|
|
|
|
AC_CHECK_HEADER([/usr/include/turbojpeg.h], [],
|
|
|
|
|
[AC_MSG_ERROR([please install TurboJPEG ])])
|
|
|
|
|
AC_SUBST(TurboJpegIncDir, [""])
|
|
|
|
|
AC_SUBST(TurboJpegLibDir, [""])
|
|
|
|
|
fi
|
2014-03-24 23:03:17 +04:00
|
|
|
|
fi
|
2014-03-24 04:45:40 +04:00
|
|
|
|
|
2016-01-30 22:42:39 +03:00
|
|
|
|
AC_PATH_XTRA
|
|
|
|
|
if test "x$no_x" == "xyes"; then
|
|
|
|
|
AC_MSG_ERROR([please install libx11-dev or libX11-devel])
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
save_CFLAGS="$CFLAGS"
|
|
|
|
|
CFLAGS="$CFLAGS $X_CFLAGS"
|
|
|
|
|
|
|
|
|
|
# checking for Xfixes
|
2009-10-11 09:33:30 +04:00
|
|
|
|
AC_CHECK_HEADER([X11/extensions/Xfixes.h], [],
|
2016-12-31 11:51:13 +03:00
|
|
|
|
[AC_MSG_ERROR([please install libxfixes-dev or libXfixes-devel])],
|
2009-10-11 09:33:30 +04:00
|
|
|
|
[#include <X11/Xlib.h>])
|
2016-01-30 22:42:39 +03:00
|
|
|
|
|
|
|
|
|
# checking for Xrandr
|
2014-03-18 00:12:46 +04:00
|
|
|
|
AC_CHECK_HEADER([X11/extensions/Xrandr.h], [],
|
|
|
|
|
[AC_MSG_ERROR([please install libxrandr-dev or libXrandr-devel])],
|
|
|
|
|
[#include <X11/Xlib.h>])
|
2009-10-09 22:20:56 +04:00
|
|
|
|
|
2016-01-30 22:42:39 +03:00
|
|
|
|
CFLAGS="$save_CFLAGS"
|
|
|
|
|
|
2021-04-20 16:57:51 +03:00
|
|
|
|
# perform unit tests if libcheck found
|
2021-04-20 17:50:21 +03:00
|
|
|
|
if test "x$ensure_tests_deps" == "xyes"; then
|
|
|
|
|
PKG_CHECK_MODULES([CHECK], [check >= 0.10.0],
|
|
|
|
|
[perform_unit_tests=yes],
|
|
|
|
|
[AC_MSG_ERROR([please install check, the unit test framework])])
|
|
|
|
|
else
|
|
|
|
|
PKG_CHECK_MODULES([CHECK], [check >= 0.10.0],
|
|
|
|
|
[perform_unit_tests=yes],
|
|
|
|
|
[perform_unit_tests=no])
|
|
|
|
|
fi
|
2021-04-20 16:57:51 +03:00
|
|
|
|
|
|
|
|
|
if test "x$perform_unit_tests" == "xyes"; then
|
|
|
|
|
AC_MSG_NOTICE([libcheck found, unit tests will be performed])
|
|
|
|
|
else
|
|
|
|
|
AC_MSG_NOTICE([libcheck not found, unit tests will be skipped])
|
|
|
|
|
fi
|
|
|
|
|
# -- end perform unit tests
|
2021-03-29 00:55:19 +03:00
|
|
|
|
|
2016-02-10 21:24:09 +03:00
|
|
|
|
AC_SUBST([moduledir], '${libdir}/xrdp')
|
|
|
|
|
|
2016-12-25 01:48:02 +03:00
|
|
|
|
AC_ARG_ENABLE([strict-locations],
|
|
|
|
|
[AS_HELP_STRING([--enable-strict-locations],
|
|
|
|
|
[Use standard Autoconf install directories unless overridden
|
2018-05-10 12:28:34 +03:00
|
|
|
|
(default: use /etc and /var)])],
|
|
|
|
|
[], [enable_strict_locations=no])
|
2016-12-25 01:48:02 +03:00
|
|
|
|
|
|
|
|
|
if test "x$enable_strict_locations" != "xyes"; then
|
|
|
|
|
sysconfdir="/etc";
|
|
|
|
|
localstatedir="/var";
|
2008-08-12 09:19:59 +04:00
|
|
|
|
fi
|
2016-11-17 22:57:10 +03:00
|
|
|
|
|
2016-11-21 08:58:31 +03:00
|
|
|
|
PKG_INSTALLDIR
|
2016-11-17 22:57:10 +03:00
|
|
|
|
|
2016-11-29 11:42:48 +03:00
|
|
|
|
AC_CHECK_HEADERS([sys/prctl.h])
|
|
|
|
|
|
2016-11-18 03:35:33 +03:00
|
|
|
|
AC_CONFIG_FILES([
|
|
|
|
|
common/Makefile
|
|
|
|
|
docs/Makefile
|
|
|
|
|
docs/man/Makefile
|
|
|
|
|
genkeymap/Makefile
|
|
|
|
|
instfiles/default/Makefile
|
|
|
|
|
instfiles/init.d/Makefile
|
|
|
|
|
instfiles/Makefile
|
|
|
|
|
instfiles/pam.d/Makefile
|
|
|
|
|
instfiles/pulse/Makefile
|
|
|
|
|
instfiles/rc.d/Makefile
|
|
|
|
|
keygen/Makefile
|
|
|
|
|
libxrdp/Makefile
|
|
|
|
|
Makefile
|
|
|
|
|
mc/Makefile
|
|
|
|
|
neutrinordp/Makefile
|
|
|
|
|
pkgconfig/Makefile
|
|
|
|
|
pkgconfig/xrdp.pc
|
2016-11-18 03:04:35 +03:00
|
|
|
|
pkgconfig/xrdp-uninstalled.pc
|
2016-11-18 03:35:33 +03:00
|
|
|
|
sesman/chansrv/Makefile
|
|
|
|
|
sesman/libscp/Makefile
|
|
|
|
|
sesman/Makefile
|
|
|
|
|
sesman/tools/Makefile
|
2021-02-27 23:58:05 +03:00
|
|
|
|
tests/Makefile
|
2021-03-29 00:55:19 +03:00
|
|
|
|
tests/common/Makefile
|
2021-02-27 23:58:05 +03:00
|
|
|
|
tests/memtest/Makefile
|
2021-07-07 13:36:29 +03:00
|
|
|
|
tests/xrdp/Makefile
|
2021-03-26 04:31:54 +03:00
|
|
|
|
tools/Makefile
|
|
|
|
|
tools/devel/Makefile
|
|
|
|
|
tools/devel/tcp_proxy/Makefile
|
2016-11-18 03:35:33 +03:00
|
|
|
|
vnc/Makefile
|
|
|
|
|
xrdpapi/Makefile
|
|
|
|
|
xrdp/Makefile
|
|
|
|
|
xrdpvr/Makefile
|
|
|
|
|
xup/Makefile
|
2016-11-17 22:57:10 +03:00
|
|
|
|
])
|
2008-08-09 12:35:05 +04:00
|
|
|
|
|
2021-03-29 00:55:19 +03:00
|
|
|
|
AC_REQUIRE_AUX_FILE([tap-driver.sh])
|
2016-11-18 03:35:33 +03:00
|
|
|
|
AC_OUTPUT
|
2018-05-01 02:27:03 +03:00
|
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
|
echo "xrdp will be compiled with:"
|
|
|
|
|
echo ""
|
2021-05-19 13:19:43 +03:00
|
|
|
|
echo " mp3lame $enable_mp3lame"
|
|
|
|
|
echo " opus $enable_opus"
|
|
|
|
|
echo " fdkaac $enable_fdkaac"
|
|
|
|
|
echo " jpeg $enable_jpeg"
|
|
|
|
|
echo " turbo jpeg $enable_tjpeg"
|
|
|
|
|
echo " rfxcodec $enable_rfxcodec"
|
|
|
|
|
echo " painter $enable_painter"
|
|
|
|
|
echo " pixman $enable_pixman"
|
|
|
|
|
echo " fuse $enable_fuse"
|
|
|
|
|
echo " ipv6 $enable_ipv6"
|
|
|
|
|
echo " ipv6only $enable_ipv6only"
|
|
|
|
|
echo " vsock $enable_vsock"
|
|
|
|
|
echo " auth mechanism $auth_mech"
|
|
|
|
|
echo " rdpsndaudin $enable_rdpsndaudin"
|
|
|
|
|
echo
|
2021-06-30 15:48:00 +03:00
|
|
|
|
if test x$use_imlib2 = xyes; then
|
|
|
|
|
echo " with imlib2 yes"
|
|
|
|
|
else
|
|
|
|
|
echo " with imlib2 no"
|
|
|
|
|
fi
|
|
|
|
|
echo
|
2021-05-19 13:19:43 +03:00
|
|
|
|
echo " development logging $devel_logging"
|
2021-05-19 13:34:41 +03:00
|
|
|
|
echo " development streamcheck $devel_streamcheck"
|
2018-05-01 02:27:03 +03:00
|
|
|
|
echo ""
|
|
|
|
|
echo " strict_locations $enable_strict_locations"
|
|
|
|
|
echo " prefix $prefix"
|
|
|
|
|
echo " exec_prefix $exec_prefix"
|
|
|
|
|
echo " libdir $libdir"
|
|
|
|
|
echo " bindir $bindir"
|
|
|
|
|
echo " sysconfdir $sysconfdir"
|
2020-09-08 20:16:09 +03:00
|
|
|
|
echo ""
|
2021-04-20 17:50:21 +03:00
|
|
|
|
echo " unit tests performable $perform_unit_tests"
|
2021-04-20 16:57:51 +03:00
|
|
|
|
echo ""
|
2020-09-08 20:16:09 +03:00
|
|
|
|
echo " CFLAGS = $CFLAGS"
|
|
|
|
|
echo " LDFLAGS = $LDFLAGS"
|
2018-06-26 11:26:32 +03:00
|
|
|
|
|
2018-06-26 11:57:07 +03:00
|
|
|
|
# xrdp_configure_options.h will be written to the build directory, not the source directory
|
|
|
|
|
echo '#define XRDP_CONFIGURE_OPTIONS \' > ./xrdp_configure_options.h
|
|
|
|
|
./config.status --config | xargs -n 1 | sed -e 's/^/" /' -e 's/$/\\n" \\/' >> ./xrdp_configure_options.h
|
|
|
|
|
echo '""' >> ./xrdp_configure_options.h
|
2018-06-26 11:26:32 +03:00
|
|
|
|
|