configure.ac revision fc5a983d
1fc5a983dSmrg# Copyright 2005 Adam Jackson. 2fc5a983dSmrg# 3fc5a983dSmrg# Permission is hereby granted, free of charge, to any person obtaining a 4fc5a983dSmrg# copy of this software and associated documentation files (the "Software"), 5fc5a983dSmrg# to deal in the Software without restriction, including without limitation 6fc5a983dSmrg# on the rights to use, copy, modify, merge, publish, distribute, sub 7fc5a983dSmrg# license, and/or sell copies of the Software, and to permit persons to whom 8fc5a983dSmrg# the Software is furnished to do so, subject to the following conditions: 9fc5a983dSmrg# 10fc5a983dSmrg# The above copyright notice and this permission notice (including the next 11fc5a983dSmrg# paragraph) shall be included in all copies or substantial portions of the 12fc5a983dSmrg# Software. 13fc5a983dSmrg# 14fc5a983dSmrg# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15fc5a983dSmrg# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16fc5a983dSmrg# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 17fc5a983dSmrg# ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 18fc5a983dSmrg# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 19fc5a983dSmrg# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 20fc5a983dSmrg# 21fc5a983dSmrg# Process this file with autoconf to produce a configure script 22fc5a983dSmrg 23fc5a983dSmrgAC_PREREQ(2.57) 24fc5a983dSmrgAC_INIT([xf86-video-nv], 25fc5a983dSmrg 2.1.10, 26fc5a983dSmrg [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], 27fc5a983dSmrg xf86-video-nv) 28fc5a983dSmrg 29fc5a983dSmrgAC_CONFIG_SRCDIR([Makefile.am]) 30fc5a983dSmrgAM_CONFIG_HEADER([config.h]) 31fc5a983dSmrgAC_CONFIG_AUX_DIR(.) 32fc5a983dSmrg 33fc5a983dSmrgAM_INIT_AUTOMAKE([dist-bzip2]) 34fc5a983dSmrg 35fc5a983dSmrgAM_MAINTAINER_MODE 36fc5a983dSmrg 37fc5a983dSmrg# Checks for programs. 38fc5a983dSmrgAC_DISABLE_STATIC 39fc5a983dSmrgAC_PROG_LIBTOOL 40fc5a983dSmrgAC_PROG_CC 41fc5a983dSmrg 42fc5a983dSmrgAH_TOP([#include "xorg-server.h"]) 43fc5a983dSmrg 44fc5a983dSmrg# Options 45fc5a983dSmrgAC_ARG_WITH(xorg-module-dir, 46fc5a983dSmrg AC_HELP_STRING([--with-xorg-module-dir=DIR], 47fc5a983dSmrg [Default xorg module directory [[default=$libdir/xorg/modules]]]), 48fc5a983dSmrg [moduledir="$withval"], 49fc5a983dSmrg [moduledir="$libdir/xorg/modules"]) 50fc5a983dSmrg 51fc5a983dSmrgAC_ARG_WITH(xserver-source,AC_HELP_STRING([--with-xserver-source=XSERVER_SOURCE], 52fc5a983dSmrg [Path to X server source tree]), 53fc5a983dSmrg [ XSERVER_SOURCE="$withval" ], 54fc5a983dSmrg [ XSERVER_SOURCE="" ]) 55fc5a983dSmrg 56fc5a983dSmrg# Checks for extensions 57fc5a983dSmrgXORG_DRIVER_CHECK_EXT(RANDR, randrproto) 58fc5a983dSmrgXORG_DRIVER_CHECK_EXT(RENDER, renderproto) 59fc5a983dSmrgXORG_DRIVER_CHECK_EXT(XV, videoproto) 60fc5a983dSmrgXORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto) 61fc5a983dSmrg 62fc5a983dSmrg# Checks for pkg-config packages 63fc5a983dSmrgPKG_CHECK_MODULES(XORG, [xorg-server >= 1.2 xproto fontsproto $REQUIRED_MODULES]) 64fc5a983dSmrgsdkdir=$(pkg-config --variable=sdkdir xorg-server) 65fc5a983dSmrg 66fc5a983dSmrg# Checks for libraries. 67fc5a983dSmrg 68fc5a983dSmrg# Checks for header files. 69fc5a983dSmrgAC_HEADER_STDC 70fc5a983dSmrg 71fc5a983dSmrgsave_CFLAGS="$CFLAGS" 72fc5a983dSmrgCFLAGS="$XORG_CFLAGS" 73fc5a983dSmrg 74fc5a983dSmrg# RandR 1.2 75fc5a983dSmrgAC_CHECK_HEADER(xf86Modes.h,[BUILD_XMODES=no],[BUILD_XMODES=yes],[#include "xorg-server.h"]) 76fc5a983dSmrg 77fc5a983dSmrg# PCI rework 78fc5a983dSmrgAC_CHECK_DECL(XSERVER_LIBPCIACCESS, 79fc5a983dSmrg [XSERVER_LIBPCIACCESS=yes],[XSERVER_LIBPCIACCESS=no], 80fc5a983dSmrg [#include "xorg-server.h"]) 81fc5a983dSmrgif test "x$XSERVER_LIBPCIACCESS" = "xyes"; then 82fc5a983dSmrg PKG_CHECK_MODULES(PCIACCESS, [pciaccess >= 0.8.0]) 83fc5a983dSmrgfi 84fc5a983dSmrg 85fc5a983dSmrgCFLAGS="$save_CFLAGS" 86fc5a983dSmrg 87fc5a983dSmrgAM_CONDITIONAL(BUILD_XMODES, test "x$BUILD_XMODES" = xyes) 88fc5a983dSmrgif test "x$XSERVER_SOURCE" != x; then 89fc5a983dSmrg if test -d "$XSERVER_SOURCE"; then 90fc5a983dSmrg XSERVER_SOURCE=`cd "$XSERVER_SOURCE" && pwd` 91fc5a983dSmrg if test -f "$XSERVER_SOURCE/hw/xfree86/modes/xf86Modes.h" -a -f "$XSERVER_SOURCE/hw/xfree86/parser/xf86Parser.h"; then 92fc5a983dSmrg : 93fc5a983dSmrg else 94fc5a983dSmrg AC_ERROR([Server source at $XSERVER_SOURCE doesn't have the new mode code]) 95fc5a983dSmrg fi 96fc5a983dSmrg else 97fc5a983dSmrg AC_ERROR([Can't find xserver-source path $XSERVER_SOURCE]) 98fc5a983dSmrg fi 99fc5a983dSmrgfi 100fc5a983dSmrgif test "x$BUILD_XMODES" = xno; then 101fc5a983dSmrg AC_MSG_NOTICE([X server has new mode code]) 102fc5a983dSmrg XMODES_CFLAGS= 103fc5a983dSmrg parser_dir= 104fc5a983dSmrg modes_dir= 105fc5a983dSmrgelse 106fc5a983dSmrg if test "x$XSERVER_SOURCE" = x; then 107fc5a983dSmrg AC_MSG_NOTICE([X server is missing new mode code and --with-xserver-source not specified, using local copy]) 108fc5a983dSmrg AC_MSG_NOTICE([If you're building from git, please read compat/README]) 109fc5a983dSmrg parser_dir='$(top_srcdir)/compat/parser' 110fc5a983dSmrg modes_dir='$(top_srcdir)/compat/modes' 111fc5a983dSmrg else 112fc5a983dSmrg AC_MSG_NOTICE([Using mode code from $XSERVER_SOURCE]) 113fc5a983dSmrg parser_dir="$XSERVER_SOURCE/hw/xfree86/parser" 114fc5a983dSmrg modes_dir="$XSERVER_SOURCE/hw/xfree86/modes" 115fc5a983dSmrg fi 116fc5a983dSmrg XMODES_CFLAGS="-DXF86_MODES_RENAME -I\"$modes_dir\" -I\"$parser_dir\"" 117fc5a983dSmrg AC_DEFINE(BUILD_XMODES, 1,[X server doesn't have built-in mode code, so we need to build it]) 118fc5a983dSmrgfi 119fc5a983dSmrgAC_SUBST([XMODES_CFLAGS]) 120fc5a983dSmrgAC_SUBST([parser_dir]) 121fc5a983dSmrgAC_SUBST([modes_dir]) 122fc5a983dSmrg 123fc5a983dSmrg# Substitutions 124fc5a983dSmrgAC_SUBST([XORG_CFLAGS]) 125fc5a983dSmrgAC_SUBST([moduledir]) 126fc5a983dSmrg 127fc5a983dSmrgDRIVER_NAME=nv 128fc5a983dSmrgAC_SUBST([DRIVER_NAME]) 129fc5a983dSmrg 130fc5a983dSmrgXORG_MANPAGE_SECTIONS 131fc5a983dSmrgXORG_RELEASE_VERSION 132fc5a983dSmrg 133fc5a983dSmrgAC_OUTPUT([ 134fc5a983dSmrg Makefile 135fc5a983dSmrg src/Makefile 136fc5a983dSmrg man/Makefile 137fc5a983dSmrg compat/Makefile 138fc5a983dSmrg]) 139