configure.ac revision 79a8a9c6
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
23AC_PREREQ(2.57)
24AC_INIT([xf86-input-keyboard],
25        1.3.2,
26        [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
27        xf86-input-keyboard)
28
29# Require xorg-macros version 1.2 or newer for XORG_CWARNFLAGS and
30# XORG_CHANGELOG macros
31m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.2.1 or later before running autoconf/autogen])])
32XORG_MACROS_VERSION(1.2.1)
33
34AC_CONFIG_SRCDIR([Makefile.am])
35AC_CONFIG_AUX_DIR(.)
36AM_INIT_AUTOMAKE([dist-bzip2])
37
38AM_MAINTAINER_MODE
39
40DRIVER_NAME=kbd
41AC_SUBST([DRIVER_NAME])
42
43AM_CONFIG_HEADER([config.h])
44
45# Checks for programs.
46AC_DISABLE_STATIC
47AC_PROG_LIBTOOL
48AC_PROG_CC
49
50AH_TOP([#include "xorg-server.h"])
51
52case $host_os in
53  linux*)
54    IS_LINUX="yes"
55    # check whether struct kbd_repeat has the 'period' field.
56    # on kernels < 2.5.42 it's called 'rate' instead.
57    AC_TRY_COMPILE([
58#include <linux/kd.h>
59#ifdef __sparc__
60#include <asm/param.h>
61#include <asm/kbio.h>
62#endif
63],[
64int main () {
65        struct kbd_repeat k;
66        k.period = 0;
67        return 0;
68}],
69    [period_field="period"],
70    [period_field="rate"])
71    AC_DEFINE_UNQUOTED(LNX_KBD_PERIOD_NAME, [$period_field],
72                       [Name of the period field in struct kbd_repeat])
73    ;;
74
75  freebsd* | kfreebsd-gnu* | netbsd* | openbsd*)
76    IS_BSD="yes"
77    ;;
78
79  solaris*)
80    IS_SOLARIS="yes"
81    ;;
82
83  gnu*)
84    IS_HURD="yes"
85    ;;
86
87  *)
88    AC_MSG_ERROR([Your operating system is not supported by the kbd driver.
89                  Contact xorg@lists.freedesktop.org if you are interested in
90                  porting it.])
91    ;;
92esac
93AM_CONDITIONAL(LINUX, [test "x$IS_LINUX" = xyes])
94AM_CONDITIONAL(BSD, [test "x$IS_BSD" = xyes])
95AM_CONDITIONAL(SOLARIS, [test "x$IS_SOLARIS" = xyes])
96AM_CONDITIONAL(HURD, [test "x$IS_HURD" = xyes])
97AM_CONDITIONAL(SCO, [test "x$IS_SCO" = xyes])
98
99AC_ARG_WITH(xorg-module-dir,
100            AC_HELP_STRING([--with-xorg-module-dir=DIR],
101                           [Default xorg module directory [[default=$libdir/xorg/modules]]]),
102            [moduledir="$withval"],
103            [moduledir="$libdir/xorg/modules"])
104AC_SUBST(moduledir)
105
106# Checks for extensions
107XORG_DRIVER_CHECK_EXT(RANDR, randrproto)
108XORG_DRIVER_CHECK_EXT(XINPUT, inputproto)
109XORG_DRIVER_CHECK_EXT(XKB, kbproto)
110
111# Checks for pkg-config packages
112PKG_CHECK_MODULES(XORG, [xorg-server >= 1.2.99.0] xproto $REQUIRED_MODULES)
113sdkdir=$(pkg-config --variable=sdkdir xorg-server)
114
115XORG_CWARNFLAGS
116XORG_CFLAGS="$CWARNFLAGS $XORG_CFLAGS"
117AC_SUBST([XORG_CFLAGS])
118
119# Checks for libraries.
120
121# Checks for header files.
122AC_HEADER_STDC
123
124XORG_MANPAGE_SECTIONS
125XORG_RELEASE_VERSION
126XORG_CHANGELOG
127
128AC_OUTPUT([Makefile src/Makefile man/Makefile])
129