configure.ac revision fc5a983d
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-video-nv],
25        2.1.10,
26        [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
27        xf86-video-nv)
28
29AC_CONFIG_SRCDIR([Makefile.am])
30AM_CONFIG_HEADER([config.h])
31AC_CONFIG_AUX_DIR(.)
32
33AM_INIT_AUTOMAKE([dist-bzip2])
34
35AM_MAINTAINER_MODE
36
37# Checks for programs.
38AC_DISABLE_STATIC
39AC_PROG_LIBTOOL
40AC_PROG_CC
41
42AH_TOP([#include "xorg-server.h"])
43
44# Options
45AC_ARG_WITH(xorg-module-dir,
46            AC_HELP_STRING([--with-xorg-module-dir=DIR],
47                           [Default xorg module directory [[default=$libdir/xorg/modules]]]),
48            [moduledir="$withval"],
49            [moduledir="$libdir/xorg/modules"])
50
51AC_ARG_WITH(xserver-source,AC_HELP_STRING([--with-xserver-source=XSERVER_SOURCE],
52                                          [Path to X server source tree]),
53                           [ XSERVER_SOURCE="$withval" ],
54                           [ XSERVER_SOURCE="" ])
55
56# Checks for extensions
57XORG_DRIVER_CHECK_EXT(RANDR, randrproto)
58XORG_DRIVER_CHECK_EXT(RENDER, renderproto)
59XORG_DRIVER_CHECK_EXT(XV, videoproto)
60XORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto)
61
62# Checks for pkg-config packages
63PKG_CHECK_MODULES(XORG, [xorg-server >= 1.2 xproto fontsproto $REQUIRED_MODULES])
64sdkdir=$(pkg-config --variable=sdkdir xorg-server)
65
66# Checks for libraries.
67
68# Checks for header files.
69AC_HEADER_STDC
70
71save_CFLAGS="$CFLAGS"
72CFLAGS="$XORG_CFLAGS"
73
74# RandR 1.2
75AC_CHECK_HEADER(xf86Modes.h,[BUILD_XMODES=no],[BUILD_XMODES=yes],[#include "xorg-server.h"])
76
77# PCI rework
78AC_CHECK_DECL(XSERVER_LIBPCIACCESS,
79              [XSERVER_LIBPCIACCESS=yes],[XSERVER_LIBPCIACCESS=no],
80              [#include "xorg-server.h"])
81if test "x$XSERVER_LIBPCIACCESS" = "xyes"; then
82    PKG_CHECK_MODULES(PCIACCESS, [pciaccess >= 0.8.0])
83fi
84
85CFLAGS="$save_CFLAGS"
86
87AM_CONDITIONAL(BUILD_XMODES, test "x$BUILD_XMODES" = xyes)
88if test "x$XSERVER_SOURCE" != x; then
89    if test -d "$XSERVER_SOURCE"; then
90        XSERVER_SOURCE=`cd "$XSERVER_SOURCE" && pwd`
91        if test -f "$XSERVER_SOURCE/hw/xfree86/modes/xf86Modes.h" -a -f "$XSERVER_SOURCE/hw/xfree86/parser/xf86Parser.h"; then
92            :
93        else
94            AC_ERROR([Server source at $XSERVER_SOURCE doesn't have the new mode code])
95        fi
96    else
97        AC_ERROR([Can't find xserver-source path $XSERVER_SOURCE])
98    fi
99fi
100if test "x$BUILD_XMODES" = xno; then
101    AC_MSG_NOTICE([X server has new mode code])
102    XMODES_CFLAGS=
103    parser_dir=
104    modes_dir=
105else
106    if test "x$XSERVER_SOURCE" = x; then
107            AC_MSG_NOTICE([X server is missing new mode code and --with-xserver-source not specified, using local copy])
108            AC_MSG_NOTICE([If you're building from git, please read compat/README])
109            parser_dir='$(top_srcdir)/compat/parser'
110            modes_dir='$(top_srcdir)/compat/modes'
111    else
112            AC_MSG_NOTICE([Using mode code from $XSERVER_SOURCE])
113            parser_dir="$XSERVER_SOURCE/hw/xfree86/parser"
114            modes_dir="$XSERVER_SOURCE/hw/xfree86/modes"
115    fi
116    XMODES_CFLAGS="-DXF86_MODES_RENAME -I\"$modes_dir\" -I\"$parser_dir\""
117    AC_DEFINE(BUILD_XMODES, 1,[X server doesn't have built-in mode code, so we need to build it])
118fi
119AC_SUBST([XMODES_CFLAGS])
120AC_SUBST([parser_dir])
121AC_SUBST([modes_dir])
122
123# Substitutions
124AC_SUBST([XORG_CFLAGS])
125AC_SUBST([moduledir])
126
127DRIVER_NAME=nv
128AC_SUBST([DRIVER_NAME])
129
130XORG_MANPAGE_SECTIONS
131XORG_RELEASE_VERSION
132
133AC_OUTPUT([
134	Makefile
135	src/Makefile
136	man/Makefile
137	compat/Makefile
138])
139