1bbe1b32bSmrgdnl Copyright 2005 Red Hat, Inc. 2bbe1b32bSmrgdnl 3bbe1b32bSmrgdnl Permission to use, copy, modify, distribute, and sell this software and its 4bbe1b32bSmrgdnl documentation for any purpose is hereby granted without fee, provided that 5bbe1b32bSmrgdnl the above copyright notice appear in all copies and that both that 6bbe1b32bSmrgdnl copyright notice and this permission notice appear in supporting 7bbe1b32bSmrgdnl documentation, and that the name of Red Hat not be used in 8bbe1b32bSmrgdnl advertising or publicity pertaining to distribution of the software without 9bbe1b32bSmrgdnl specific, written prior permission. Red Hat makes no 10bbe1b32bSmrgdnl representations about the suitability of this software for any purpose. It 11bbe1b32bSmrgdnl is provided "as is" without express or implied warranty. 12bbe1b32bSmrgdnl 13bbe1b32bSmrgdnl RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 14bbe1b32bSmrgdnl INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 15bbe1b32bSmrgdnl EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR 16bbe1b32bSmrgdnl CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 17bbe1b32bSmrgdnl DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 18bbe1b32bSmrgdnl TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 19bbe1b32bSmrgdnl PERFORMANCE OF THIS SOFTWARE. 20bbe1b32bSmrgdnl 21bbe1b32bSmrgdnl Process this file with autoconf to create configure. 22bbe1b32bSmrg 2330f8ce46Smrg# Initialize Autoconf 24ce6676dbSmrgAC_PREREQ([2.60]) 2530f8ce46SmrgAC_INIT([xfs], 26e1db7cd1Smrg [1.2.2], 27e1db7cd1Smrg [https://gitlab.freedesktop.org/xorg/app/xfs/-/issues], 2830f8ce46Smrg [xfs]) 29ce6676dbSmrg# Set common system defines for POSIX extensions, such as _GNU_SOURCE 30ce6676dbSmrg# Must be called before any macros that run the compiler (like AC_PROG_LIBTOOL) 31ce6676dbSmrgAC_USE_SYSTEM_EXTENSIONS 3234f90d55SmrgAC_CONFIG_HEADERS([config.h]) 3330f8ce46SmrgAC_CONFIG_MACRO_DIR([m4]) 34bbe1b32bSmrg 3530f8ce46Smrg# Initialize Automake 3676028eb6SmrgAM_INIT_AUTOMAKE([foreign dist-xz subdir-objects]) 37bbe1b32bSmrg 3830f8ce46Smrg# Require xorg-macros minimum of 1.10 for HAVE_STYLESHEETS in XORG_CHECK_SGML_DOCTOOLS 3930f8ce46Smrgm4_ifndef([XORG_MACROS_VERSION], 4030f8ce46Smrg [m4_fatal([must install xorg-macros 1.10 or later before running autoconf/autogen])]) 4130f8ce46SmrgXORG_MACROS_VERSION(1.10) 4230f8ce46SmrgXORG_DEFAULT_OPTIONS 4330f8ce46SmrgXORG_ENABLE_DEVEL_DOCS 4430f8ce46SmrgXORG_WITH_XMLTO(0.0.20) 4530f8ce46SmrgXORG_WITH_FOP 4630f8ce46SmrgXORG_CHECK_SGML_DOCTOOLS(1.5) 4730f8ce46SmrgXORG_WITH_LINT 48bbe1b32bSmrg 49e1db7cd1Smrg# Checks for typedefs, structures, and compiler characteristics. 50e1db7cd1SmrgAC_SYS_LARGEFILE 51e1db7cd1Smrg 52bbe1b32bSmrgAC_CHECK_HEADERS([stdint.h]) 53bbe1b32bSmrg 54bbe1b32bSmrgAC_ARG_WITH(default-config-file, 55bbe1b32bSmrg AS_HELP_STRING([--with-default-config-file=PATH], 56bbe1b32bSmrg [comma-separated list of paths to look for config file when not specified (default: ${sysconfdir}/X11/fs/config)]), 57bbe1b32bSmrg [CONFIG_FILE="$withval"], [CONFIG_FILE="${sysconfdir}/X11/fs/config"]) 58bbe1b32bSmrg 59bbe1b32bSmrgDEFAULT_CONFIG_FILE=`echo ${CONFIG_FILE} | sed 's/,/\\\\\\\\\\\",\\\\\\\\\\\"/'g` 6030f8ce46SmrgAX_DEFINE_DIR([DEFAULT_CONFIG_FILE], DEFAULT_CONFIG_FILE, 61bbe1b32bSmrg [comma-separated list of strings for config file paths when not specified]) 62bbe1b32bSmrg 63bbe1b32bSmrg# generate text for the man page 64bbe1b32bSmrgcase $CONFIG_FILE in 65bbe1b32bSmrg *,*) 66ce6676dbSmrg CONFIG_FILE_DESC="the first file found from the list:" 67bbe1b32bSmrg CONFIG_FILE_PATH=`echo ${CONFIG_FILE} | sed 's/,/\\\\\\\\fR, \\\\\\\\fI/g'` 68bbe1b32bSmrg ;; 69bbe1b32bSmrg *) 70bbe1b32bSmrg CONFIG_FILE_DESC="the default file," 71bbe1b32bSmrg CONFIG_FILE_PATH="${CONFIG_FILE}" 72bbe1b32bSmrg ;; 73bbe1b32bSmrgesac 74bbe1b32bSmrgAC_SUBST([CONFIG_FILE_DESC]) 75bbe1b32bSmrgAC_SUBST([CONFIG_FILE_PATH]) 76bbe1b32bSmrg 7730f8ce46Smrg# Require X.Org's font util macros 1.1 or later for XORG_FONTROOTDIR 7830f8ce46Smrgm4_ifndef([XORG_FONT_MACROS_VERSION], 7930f8ce46Smrg [m4_fatal([must install X.Org font-util 1.1 or later before running autoconf/autogen])]) 8030f8ce46SmrgXORG_FONT_MACROS_VERSION(1.1) 8130f8ce46Smrg 8230f8ce46SmrgXORG_FONTROOTDIR 8334f90d55SmrgXORG_FONTSUBDIR(FONTMISCDIR, fontmiscdir, misc) 8434f90d55SmrgXORG_FONTSUBDIR(FONTOTFDIR, fontotfdir, OTF) 8534f90d55SmrgXORG_FONTSUBDIR(FONTTTFDIR, fontttfdir, TTF) 8634f90d55SmrgXORG_FONTSUBDIR(FONTTYPE1DIR, fonttype1dir, Type1) 8734f90d55SmrgXORG_FONTSUBDIR(FONT75DPIDIR, font75dpidir, 75dpi) 8834f90d55SmrgXORG_FONTSUBDIR(FONT100DPIDIR, font100dpidir, 100dpi) 8930f8ce46Smrg 90ce6676dbSmrg# Determine font path to put in config file 91ce6676dbSmrg# Uses --default-font-path if set, otherwise checks for /etc/X11/fontpath.d, 9234f90d55Smrg# otherwise uses standard subdirectories of FONTROOTDIR. When cross 9334f90d55Smrg# compiling, assume default font path uses standard FONTROOTDIR directories. 9434f90d55SmrgDEFAULT_FONT_PATH="${FONTMISCDIR}/,${FONTTTFDIR}/,${FONTOTFDIR}/,${FONTTYPE1DIR}/,${FONT100DPIDIR}/,${FONT75DPIDIR}/" 9534f90d55Smrgif test "$cross_compiling" != yes; then 9634f90d55Smrg AC_CHECK_FILE([${sysconfdir}/X11/fontpath.d], 9734f90d55Smrg [DEFAULT_FONT_PATH='catalogue:${sysconfdir}/X11/fontpath.d'], 9834f90d55Smrg [case $host_os in 9934f90d55Smrg darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;; 10034f90d55Smrg esac]) 10134f90d55Smrgfi 10234f90d55SmrgAC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [Comma separated list of font dirs]), 10334f90d55Smrg [ FONTPATH="$withval" ], 10434f90d55Smrg [ FONTPATH="${DEFAULT_FONT_PATH}" ]) 10534f90d55Smrg 10634f90d55SmrgAC_MSG_CHECKING([for default font path]) 10734f90d55SmrgAC_MSG_RESULT([$FONTPATH]) 10834f90d55Smrg 109ce6676dbSmrgAC_SUBST([FONTPATH]) 110ce6676dbSmrg 111ce6676dbSmrg# Option to enable support for starting from inetd 112ce6676dbSmrgAC_ARG_ENABLE(inetd, 113ce6676dbSmrg AS_HELP_STRING([--enable-inetd], 114ce6676dbSmrg [Support -inetd flag for starting from inetd (default: enabled)]), 115ce6676dbSmrg [INETD=$enableval], [INETD=yes]) 116ce6676dbSmrgif test "x$INETD" = xyes; then 117ce6676dbSmrg AC_DEFINE(XFS_INETD, 1, [Build support for starting from inetd]) 118ce6676dbSmrgfi 119ce6676dbSmrg 120ce6676dbSmrg# Option to enable support for logging to syslog 121ce6676dbSmrgAC_ARG_ENABLE(syslog, 122ce6676dbSmrg AS_HELP_STRING([--enable-syslog], 123ce6676dbSmrg [Support option for logging via syslog (default: enabled)]), 124ce6676dbSmrg [SYSLOG=$enableval], [SYSLOG=yes]) 125ce6676dbSmrgif test "x$SYSLOG" = xyes; then 126ce6676dbSmrg AC_DEFINE(USE_SYSLOG, 1, [Build support for logging via syslog]) 127ce6676dbSmrgfi 128ce6676dbSmrg 129ce6676dbSmrg 130ce6676dbSmrg# Checks for system functions / libraries 131ce6676dbSmrgAC_CHECK_FUNCS([daemon]) 132ce6676dbSmrg 133bbe1b32bSmrg# Checks for pkg-config packages 134e1db7cd1Smrg# - xproto >= 7.0.25 required for _X_COLD in <X11/Xfuncproto.h> 13540c5823bSmrg# - xfont >= 2.0.1 for new server API 136e1db7cd1SmrgPKG_CHECK_MODULES(XFS, xproto >= 7.0.25 xfont2 >= 2.0.1 xtrans) 137bbe1b32bSmrg 1388f34cbf9Ssnjcase "$host_os" in 1398f34cbf9Ssnj cygwin*|mingw*) 1408f34cbf9Ssnj CFLAGS="$CFLAGS -DFD_SETSIZE=256" 1418f34cbf9Ssnj LDFLAGS="$LDFLAGS -Wl,--export-all" ;; 1428f34cbf9Ssnjesac 1438f34cbf9Ssnj 144bbe1b32bSmrg# Transport selection macro from xtrans.m4 145bbe1b32bSmrgXTRANS_CONNECTION_FLAGS 146bbe1b32bSmrg 14730f8ce46SmrgAC_CONFIG_FILES([Makefile 14830f8ce46Smrg config/Makefile 14930f8ce46Smrg doc/Makefile 15030f8ce46Smrg man/Makefile]) 15130f8ce46SmrgAC_OUTPUT 152