1#  Copyright 2005 Adam Jackson.
2#
3#  Permission is hereby granted, free of charge, to any person obtaining a
4#  copy of this software and associated documentation files (the "Software"),
5#  to deal in the Software without restriction, including without limitation
6#  on the rights to use, copy, modify, merge, publish, distribute, sub
7#  license, and/or sell copies of the Software, and to permit persons to whom
8#  the Software is furnished to do so, subject to the following conditions:
9#
10#  The above copyright notice and this permission notice (including the next
11#  paragraph) shall be included in all copies or substantial portions of the
12#  Software.
13#
14#  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15#  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16#  FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
17#  ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
18#  IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
19#  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20#
21# Process this file with autoconf to produce a configure script
22
23# Initialize Autoconf
24AC_PREREQ([2.60])
25AC_INIT([xf86-input-mouse],
26        [1.9.5],
27        [https://gitlab.freedesktop.org/xorg/driver/xf86-input-mouse/-/issues],
28        [xf86-input-mouse])
29AC_CONFIG_SRCDIR([Makefile.am])
30AC_CONFIG_HEADERS([config.h])
31AC_CONFIG_AUX_DIR(.)
32AC_USE_SYSTEM_EXTENSIONS
33
34# Initialize Automake
35AM_INIT_AUTOMAKE([foreign dist-xz])
36
37# Initialize libtool
38AC_DISABLE_STATIC
39AC_PROG_LIBTOOL
40
41# Initialize X.Org macros
42m4_ifndef([XORG_MACROS_VERSION],
43          [m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])])
44XORG_MACROS_VERSION(1.8)
45XORG_DEFAULT_OPTIONS
46XORG_WITH_LINT
47
48# Checks for library functions
49AC_CHECK_FUNCS([asprintf timingsafe_memcmp])
50
51# Obtain compiler/linker options from server and required extensions
52PKG_CHECK_MODULES(XORG, [xorg-server >= 1.7] xproto inputproto)
53
54# Define a configure option for an alternate input module directory
55AC_ARG_WITH(xorg-module-dir,
56            AS_HELP_STRING([--with-xorg-module-dir=DIR],
57                           [Default xorg module directory [[default=$libdir/xorg/modules]]]),
58            [moduledir="$withval"],
59            [moduledir="$libdir/xorg/modules"])
60inputdir=${moduledir}/input
61AC_SUBST(inputdir)
62
63# X Server SDK location is required to install xf86-mouse-properties.h
64# This location is also relayed in the xorg-mouse.pc file
65sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server`
66
67# Workaround overriding sdkdir to be able to create a tarball when user has no
68# write permission in sdkdir. See DISTCHECK_CONFIGURE_FLAGS in Makefile.am
69AC_ARG_WITH([sdkdir], [], [sdkdir="$withval"])
70AC_SUBST([sdkdir])
71
72
73# Work out which OS mouse driver we need to build
74case $host_os in
75  linux*)
76    OS_MOUSE_NAME=lnx
77    ;;
78  freebsd*|kfreebsd*-gnu|dragonfly*|netbsd*|openbsd*)
79    OS_MOUSE_NAME=bsd
80    ;;
81  solaris*)
82    OS_MOUSE_NAME=sun
83    ;;
84  gnu*)
85    OS_MOUSE_NAME=hurd
86    ;;
87esac
88AC_SUBST([OS_MOUSE_NAME])
89
90DRIVER_NAME=mouse
91AC_SUBST([DRIVER_NAME])
92
93AC_CONFIG_FILES([Makefile
94                 xorg-mouse.pc
95                 include/Makefile
96                 src/Makefile
97                 man/Makefile])
98AC_OUTPUT
99