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-video-vboxvideo],
26        [1.0.1],
27        [https://gitlab.freedesktop.org/xorg/driver/xf86-video-vbox/-/issues],
28        [xf86-video-vboxvideo])
29AC_CONFIG_SRCDIR([Makefile.am])
30AC_CONFIG_HEADERS([config.h])
31AC_CONFIG_AUX_DIR(.)
32
33# Initialize Automake
34AM_INIT_AUTOMAKE([foreign dist-xz])
35
36# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS
37m4_ifndef([XORG_MACROS_VERSION],
38          [m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])])
39XORG_MACROS_VERSION(1.8)
40XORG_DEFAULT_OPTIONS
41
42# Disable some of the warnings xorg-macros.m4 sets by default that cause
43# too much noise here
44XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wno-declaration-after-statement])
45XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wno-unused-but-set-variable])
46XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wno-unused-value])
47
48# Initialize libtool
49LT_INIT([disable-static])
50
51AH_TOP([#include "xorg-server.h"])
52
53# Define a configure option for an alternate module directory
54AC_ARG_WITH(xorg-module-dir, [  --with-xorg-module-dir=DIR ],
55                             [ moduledir="$withval" ],
56                             [ moduledir="$libdir/xorg/modules" ])
57AC_SUBST(moduledir)
58
59# Store the list of server defined optional extensions in REQUIRED_MODULES
60XORG_DRIVER_CHECK_EXT(RANDR, randrproto)
61XORG_DRIVER_CHECK_EXT(RENDER, renderproto)
62XORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto)
63
64# Obtain compiler/linker options for the driver dependencies
65PKG_CHECK_MODULES(XORG, xorg-server >= 1.6 xproto fontsproto $REQUIRED_MODULES)
66PKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1],
67                  HAVE_XEXTPROTO_71="yes", HAVE_XEXTPROTO_71="no")
68
69if test "x$HAVE_XEXTPROTO_71" = xyes; then
70    AC_DEFINE(HAVE_XEXTPROTO_71, 1, [xextproto 7.1 available])
71fi
72
73save_CFLAGS="$CFLAGS"
74CFLAGS="$XORG_CFLAGS"
75AC_CHECK_DECL(xf86ConfigIsaEntity,
76	      [AC_DEFINE(HAVE_ISA, 1, [Have ISA support])],
77	      [],
78	      [#include "xf86.h"])
79CFLAGS="$save_CFLAGS"
80
81save_CFLAGS="$CFLAGS"
82CFLAGS="$XORG_CFLAGS"
83AC_CHECK_DECL(XSERVER_LIBPCIACCESS,
84              [XSERVER_LIBPCIACCESS=yes], [XSERVER_LIBPCIACCESS=no],
85              [#include "xorg-server.h"])
86CFLAGS="$save_CFLAGS"
87
88if test "x$XSERVER_LIBPCIACCESS" = xyes; then
89    PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.12.901])
90fi
91
92# Checks for library functions
93# We don't use strlcat, strlcpy, or timingsafe_memcmp, but check to quiet
94# -Wredundant-decls warning from xorg/os.h which will otherwise redefine them.
95AC_CHECK_FUNCS([strlcat strlcpy timingsafe_memcmp])
96
97DRIVER_NAME=vboxvideo
98AC_SUBST([DRIVER_NAME])
99
100AC_CONFIG_FILES([
101                Makefile
102                src/Makefile
103                man/Makefile
104])
105AC_OUTPUT
106