1f29dbc25Smrg# Copyright 2005 Adam Jackson. 2f29dbc25Smrg# 3f29dbc25Smrg# Permission is hereby granted, free of charge, to any person obtaining a 4f29dbc25Smrg# copy of this software and associated documentation files (the "Software"), 5f29dbc25Smrg# to deal in the Software without restriction, including without limitation 6f29dbc25Smrg# on the rights to use, copy, modify, merge, publish, distribute, sub 7f29dbc25Smrg# license, and/or sell copies of the Software, and to permit persons to whom 8f29dbc25Smrg# the Software is furnished to do so, subject to the following conditions: 9f29dbc25Smrg# 10f29dbc25Smrg# The above copyright notice and this permission notice (including the next 11f29dbc25Smrg# paragraph) shall be included in all copies or substantial portions of the 12f29dbc25Smrg# Software. 13f29dbc25Smrg# 14f29dbc25Smrg# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15f29dbc25Smrg# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16f29dbc25Smrg# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 17f29dbc25Smrg# ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 18f29dbc25Smrg# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 19f29dbc25Smrg# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 20f29dbc25Smrg# 21f29dbc25Smrg# Process this file with autoconf to produce a configure script 22f29dbc25Smrg 2304007ebaSmrg# Initialize Autoconf 2404007ebaSmrgAC_PREREQ(2.60) 25f29dbc25SmrgAC_INIT([xf86-video-geode], 2679d5fcd7Smrg [2.11.21], 2779d5fcd7Smrg [https://gitlab.freedesktop.org/xorg/driver/xf86-video-geode/-/issues], 28170d5fdcSmrg [xf86-video-geode], 2904007ebaSmrg [http://www.x.org/wiki/GeodeDriver]) 30f29dbc25Smrg 31f29dbc25SmrgAC_CONFIG_SRCDIR([Makefile.am]) 3204007ebaSmrgAC_CONFIG_HEADERS([config.h]) 3304007ebaSmrgAC_CONFIG_MACRO_DIR([m4]) 3404007ebaSmrgAC_CONFIG_AUX_DIR([build-aux]) 3504007ebaSmrg 3604007ebaSmrg# Initialize Automake 3779d5fcd7SmrgAM_INIT_AUTOMAKE([foreign dist-xz]) 3804007ebaSmrgAM_MAINTAINER_MODE 3904007ebaSmrg 4004007ebaSmrg# Initialize libtool 4104007ebaSmrgAC_DISABLE_STATIC 4204007ebaSmrgAC_PROG_LIBTOOL 43f29dbc25Smrg 44f29dbc25Smrg# Require xorg-macros: XORG_DEFAULT_OPTIONS 45f29dbc25Smrgm4_ifndef([XORG_MACROS_VERSION], 46f29dbc25Smrg [m4_fatal([must install xorg-macros 1.4 or later before running autoconf/autogen])]) 47f29dbc25SmrgXORG_MACROS_VERSION(1.4) 48f29dbc25SmrgXORG_DEFAULT_OPTIONS 49f29dbc25Smrg 50f29dbc25Smrg# Checks for programs. 51f29dbc25SmrgAC_DISABLE_STATIC 52f29dbc25SmrgAC_PROG_LIBTOOL 53f29dbc25Smrg 54f29dbc25SmrgAH_TOP([#include "xorg-server.h"]) 55f29dbc25Smrg 5604007ebaSmrg# ----------------------------------------------------------------------------- 5704007ebaSmrg# Configuration options 5804007ebaSmrg# ----------------------------------------------------------------------------- 5904007ebaSmrg# Define a configure option for an alternate input module directory 60f29dbc25SmrgAC_ARG_WITH(xorg-module-dir, 6104007ebaSmrg AS_HELP_STRING([--with-xorg-module-dir=DIR], 62f29dbc25Smrg [Default xorg module directory [[default=$libdir/xorg/modules]]]), 63f29dbc25Smrg [moduledir="$withval"], 64f29dbc25Smrg [moduledir="$libdir/xorg/modules"]) 6504007ebaSmrgAC_SUBST([moduledir]) 66f29dbc25Smrg 6704007ebaSmrg# Define a configure option to enable/disable lcd panel support 68f29dbc25SmrgAC_ARG_ENABLE(geodegx-panel, 6904007ebaSmrg AS_HELP_STRING([--disable-geodegx-panel], 70f29dbc25Smrg [Disable support for flatpanels with the Geode GX]), 71f29dbc25Smrg [ ], 7204007ebaSmrg [ PANEL_CPPFLAGS=-DPNL_SUP ]) 7304007ebaSmrgAC_SUBST(PANEL_CPPFLAGS) 7404007ebaSmrg 7504007ebaSmrg# Define a configure option to enable/disable ztv 7604007ebaSmrgAC_ARG_ENABLE(ztv, 7704007ebaSmrg AS_HELP_STRING([--enable-ztv], 7804007ebaSmrg [Enable Video For Linux based ZTV driver (default: auto-detected)]), 7904007ebaSmrg [ztv=$enableval], 8004007ebaSmrg [ztv=auto]) 8104007ebaSmrg 8204007ebaSmrg# Check for Video4Linux Version 2 (V4L2) availability 8304007ebaSmrgAC_CHECK_HEADERS([linux/videodev2.h],[v4l2=yes],[v4l2=no]) 8404007ebaSmrgif test "x$ztv" != "xno" ; then 8504007ebaSmrg if test "x$v4l2" = "xno" ; then 8604007ebaSmrg if test "x$ztv" = "xyes" ; then 8704007ebaSmrg # User really wants ztv but V4L2 is not found 8804007ebaSmrg AC_MSG_ERROR([ZTV driver requested, but videodev2.h not found.]) 8904007ebaSmrg fi 9004007ebaSmrg else 9104007ebaSmrg BUILD_ZTV=yes 9204007ebaSmrg fi 93f29dbc25Smrgfi 9404007ebaSmrgAM_CONDITIONAL(BUILD_ZTV, [test "x$BUILD_ZTV" = xyes]) 9504007ebaSmrg 9604007ebaSmrg# Check if GCC supports compiling in 32 bit mode for 64 bit computers 9704007ebaSmrgcase $host_cpu in 9804007ebaSmrg x86_64*|amd64*) 9904007ebaSmrg if test "x$GCC" = xyes ; then 10004007ebaSmrg SAVE_CFLAGS="$CFLAGS" 10104007ebaSmrg CFLAGS="$CFLAGS -m32" 10204007ebaSmrg AC_MSG_CHECKING([if $CC supports the -m32 Intel/AMD option]) 10304007ebaSmrg AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ 10404007ebaSmrg#include <unistd.h> 10504007ebaSmrgint 10604007ebaSmrgmain () 10704007ebaSmrg{ 10804007ebaSmrg ; 10904007ebaSmrg return 0; 11004007ebaSmrg}]])], 11104007ebaSmrg [m32_support=yes; M32_CFLAGS=-m32], 11204007ebaSmrg [m32_support=no]) 11304007ebaSmrg AC_MSG_RESULT([$m32_support]) 11404007ebaSmrg CFLAGS="$SAVE_CFLAGS" 11504007ebaSmrg fi 11604007ebaSmrg ;; 11704007ebaSmrgesac 11804007ebaSmrgAC_SUBST([M32_CFLAGS]) 119f29dbc25Smrg 12004007ebaSmrg# Store the list of server defined optional extensions in REQUIRED_MODULES 121f29dbc25SmrgXORG_DRIVER_CHECK_EXT(RANDR, randrproto) 122f29dbc25SmrgXORG_DRIVER_CHECK_EXT(RENDER, renderproto) 123f29dbc25SmrgXORG_DRIVER_CHECK_EXT(XV, videoproto) 124f29dbc25SmrgXORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto) 125f29dbc25Smrg 12604007ebaSmrg# Obtain compiler/linker options for the Geode driver dependencies 127f29dbc25SmrgPKG_CHECK_MODULES(XORG, [xorg-server xproto fontsproto $REQUIRED_MODULES]) 128f29dbc25SmrgPKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1], 129f29dbc25Smrg HAVE_XEXTPROTO_71="yes"; AC_DEFINE(HAVE_XEXTPROTO_71, 1, [xextproto 7.1 available]), 130f29dbc25Smrg HAVE_XEXTPROTO_71="no") 131f29dbc25Smrg 13204007ebaSmrg# Define a configure option to enable/disable XAA support; 13304007ebaSmrg# handles unavailability of XAA since xserver-1.13 13404007ebaSmrgAC_ARG_ENABLE(xaa, 13504007ebaSmrg AS_HELP_STRING([--enable-xaa], 13604007ebaSmrg [Enable legacy X Acceleration Architecture (XAA) [default=auto]])) 13704007ebaSmrg 13804007ebaSmrgAS_IF([test "x$enable_xaa" != "xno"], 13904007ebaSmrg [ 14004007ebaSmrg save_CFLAGS=$CFLAGS 14104007ebaSmrg save_CPPFLAGS=$CPPFLAGS 14204007ebaSmrg CFLAGS=$XORG_CFLAGS 14304007ebaSmrg CPPFLAGS="$XORG_CFLAGS" 14404007ebaSmrg AC_CHECK_HEADERS([xaa.h], have_XAA=yes, have_XAA=no) 14504007ebaSmrg CFLAGS=$save_CFLAGS 14604007ebaSmrg CPPFLAGS=$save_CPPFLAGS 14704007ebaSmrg]) 14804007ebaSmrg 14904007ebaSmrgAC_MSG_CHECKING([whether to include XAA support]) 15004007ebaSmrg 15104007ebaSmrgAS_IF([test "x$have_XAA" = "xyes"], 15204007ebaSmrg [AC_MSG_RESULT([yes])], 15304007ebaSmrg [AS_IF([test "x$enable_xaa" = "xyes"], 15404007ebaSmrg [AC_MSG_ERROR([XAA requested but not found (perhaps building against xserver-1.13 or newer?)])], 15504007ebaSmrg [AC_MSG_RESULT([no]) 15604007ebaSmrg ]) 15704007ebaSmrg]) 15804007ebaSmrg 15904007ebaSmrg# Checks for libpciaccess support. 160f29dbc25SmrgSAVE_CPPFLAGS="$CPPFLAGS" 161f29dbc25SmrgCPPFLAGS="$CPPFLAGS $XORG_CFLAGS" 162f29dbc25SmrgAC_CHECK_DECL(XSERVER_LIBPCIACCESS, 163f29dbc25Smrg [XSERVER_LIBPCIACCESS=yes],[XSERVER_LIBPCIACCESS=no], 164f29dbc25Smrg [#include "xorg-server.h"]) 165f29dbc25SmrgCPPFLAGS="$SAVE_CPPFLAGS" 166f29dbc25Smrg 167f29dbc25Smrgif test "x$XSERVER_LIBPCIACCESS" = xyes; then 168f29dbc25Smrg PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.8.0]) 169f29dbc25Smrg XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS" 170f29dbc25Smrgfi 171f29dbc25Smrg 17204007ebaSmrgAC_CONFIG_FILES([ 173f29dbc25Smrg Makefile 174f29dbc25Smrg src/Makefile 175f29dbc25Smrg]) 17604007ebaSmrgAC_OUTPUT 177