Unbreak xf86-video-mga build after removal of the direct rendering module.

This commit is contained in:
matthieu 2010-05-24 07:40:21 +00:00
parent ff0e073749
commit 5e69f52304
17 changed files with 748 additions and 258 deletions

View File

@ -1,9 +1,7 @@
# $OpenBSD: Makefile.bsd-wrapper,v 1.4 2008/03/25 23:41:50 matthieu Exp $
# $OpenBSD: Makefile.bsd-wrapper,v 1.5 2010/05/24 07:40:21 matthieu Exp $
.include <bsd.xconf.mk>
.if ${XENOCARA_BUILD_DRI:L} != "yes"
CONFIGURE_ARGS+= --disable-dri
.endif
.include <bsd.xorg.mk>

View File

@ -90,6 +90,7 @@ am__remove_distdir = \
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
@ -199,7 +200,6 @@ build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
distcleancheck_listfiles = @distcleancheck_listfiles@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@

View File

@ -7636,29 +7636,23 @@ dnl
dnl Copyright 2005-2006 Sun Microsystems, Inc. All rights reserved.
dnl
dnl Permission is hereby granted, free of charge, to any person obtaining a
dnl copy of this software and associated documentation files (the
dnl "Software"), to deal in the Software without restriction, including
dnl without limitation the rights to use, copy, modify, merge, publish,
dnl distribute, and/or sell copies of the Software, and to permit persons
dnl to whom the Software is furnished to do so, provided that the above
dnl copyright notice(s) and this permission notice appear in all copies of
dnl the Software and that both the above copyright notice(s) and this
dnl permission notice appear in supporting documentation.
dnl copy of this software and associated documentation files (the "Software"),
dnl to deal in the Software without restriction, including without limitation
dnl the rights to use, copy, modify, merge, publish, distribute, sublicense,
dnl and/or sell copies of the Software, and to permit persons to whom the
dnl Software is furnished to do so, subject to the following conditions:
dnl
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
dnl OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
dnl HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
dnl INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
dnl FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
dnl NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
dnl WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
dnl The above copyright notice and this permission notice (including the next
dnl paragraph) shall be included in all copies or substantial portions of the
dnl Software.
dnl
dnl Except as contained in this notice, the name of a copyright holder
dnl shall not be used in advertising or otherwise to promote the sale, use
dnl or other dealings in this Software without prior written authorization
dnl of the copyright holder.
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
dnl IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
dnl FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
dnl THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
dnl LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
dnl FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
dnl DEALINGS IN THE SOFTWARE.
# XORG_MACROS_VERSION(required-version)
# -------------------------------------
@ -7676,7 +7670,7 @@ dnl of the copyright holder.
# See the "minimum version" comment for each macro you use to see what
# version you require.
m4_defun([XORG_MACROS_VERSION],[
m4_define([vers_have], [1.3.0])
m4_define([vers_have], [1.6.1])
m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.])))
m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.])))
m4_if(m4_cmp(maj_have, maj_needed), 0,,
@ -7840,7 +7834,7 @@ fi
AC_PATH_PROG(LINUXDOC, linuxdoc)
AC_PATH_PROG(PS2PDF, ps2pdf)
AC_MSG_CHECKING([Whether to build documentation])
AC_MSG_CHECKING([whether to build documentation])
if test x$HAVE_DEFS_ENT != x && test x$LINUXDOC != x ; then
BUILDDOC=yes
@ -7852,7 +7846,7 @@ AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes])
AC_MSG_RESULT([$BUILDDOC])
AC_MSG_CHECKING([Whether to build pdf documentation])
AC_MSG_CHECKING([whether to build pdf documentation])
if test x$PS2PDF != x && test x$BUILD_PDFDOC != xno; then
BUILDPDFDOC=yes
@ -7900,7 +7894,7 @@ AC_PATH_PROG(DOCBOOKPDF, docbook2pdf)
AC_PATH_PROG(DOCBOOKHTML, docbook2html)
AC_PATH_PROG(DOCBOOKTXT, docbook2txt)
AC_MSG_CHECKING([Whether to build text documentation])
AC_MSG_CHECKING([whether to build text documentation])
if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKTXT != x &&
test x$BUILD_TXTDOC != xno; then
BUILDTXTDOC=yes
@ -7908,7 +7902,7 @@ fi
AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes])
AC_MSG_RESULT([$BUILDTXTDOC])
AC_MSG_CHECKING([Whether to build PDF documentation])
AC_MSG_CHECKING([whether to build PDF documentation])
if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPDF != x &&
test x$BUILD_PDFDOC != xno; then
BUILDPDFDOC=yes
@ -7916,7 +7910,7 @@ fi
AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes])
AC_MSG_RESULT([$BUILDPDFDOC])
AC_MSG_CHECKING([Whether to build PostScript documentation])
AC_MSG_CHECKING([whether to build PostScript documentation])
if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPS != x &&
test x$BUILD_PSDOC != xno; then
BUILDPSDOC=yes
@ -7924,7 +7918,7 @@ fi
AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes])
AC_MSG_RESULT([$BUILDPSDOC])
AC_MSG_CHECKING([Whether to build HTML documentation])
AC_MSG_CHECKING([whether to build HTML documentation])
if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKHTML != x &&
test x$BUILD_HTMLDOC != xno; then
BUILDHTMLDOC=yes
@ -7943,6 +7937,490 @@ AC_SUBST(MAKE_PDF)
AC_SUBST(MAKE_HTML)
]) # XORG_CHECK_DOCBOOK
# XORG_WITH_XMLTO([MIN-VERSION])
# ----------------
# Minimum version: 1.5.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-xmlto option, it allows maximum flexibilty in making decisions
# as whether or not to use the xmlto package.
#
# Interface to module:
# HAVE_XMLTO: used in makefiles to conditionally generate documentation
# XMLTO: returns the path of the xmlto program found
# returns the path set by the user in the environment
# --with-xmlto: 'yes' user instructs the module to use xmlto
# 'no' user instructs the module not to use xmlto
#
# If the user sets the value of XMLTO, AC_PATH_PROG skips testing the path.
#
AC_DEFUN([XORG_WITH_XMLTO],[
AC_ARG_VAR([XMLTO], [Path to xmlto command])
AC_ARG_WITH(xmlto,
AS_HELP_STRING([--with-xmlto],
[Use xmlto to regenerate documentation (default: yes, if installed)]),
[use_xmlto=$withval], [use_xmlto=auto])
if test "x$use_xmlto" = x"auto"; then
AC_PATH_PROG([XMLTO], [xmlto])
if test "x$XMLTO" = "x"; then
AC_MSG_WARN([xmlto not found - documentation targets will be skipped])
have_xmlto=no
else
have_xmlto=yes
fi
elif test "x$use_xmlto" = x"yes" ; then
AC_PATH_PROG([XMLTO], [xmlto])
if test "x$XMLTO" = "x"; then
AC_MSG_ERROR([--with-xmlto=yes specified but xmlto not found in PATH])
fi
have_xmlto=yes
elif test "x$use_xmlto" = x"no" ; then
if test "x$XMLTO" != "x"; then
AC_MSG_WARN([ignoring XMLTO environment variable since --with-xmlto=no was specified])
fi
have_xmlto=no
else
AC_MSG_ERROR([--with-xmlto expects 'yes' or 'no'])
fi
m4_ifval([$1],
[if test "$have_xmlto" = yes; then
# scrape the xmlto version
AC_MSG_CHECKING([the xmlto version])
xmlto_version=`$XMLTO --version 2>/dev/null | cut -d' ' -f3`
AC_MSG_RESULT([$xmlto_version])
AS_VERSION_COMPARE([$xmlto_version], [$1],
[if test "x$use_xmlto" = xauto; then
AC_MSG_WARN([xmlto version $xmlto_version found, but $1 needed])
have_xmlto=no
else
AC_MSG_ERROR([xmlto version $xmlto_version found, but $1 needed])
fi])
fi])
AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes])
]) # XORG_WITH_XMLTO
# XORG_WITH_ASCIIDOC([MIN-VERSION])
# ----------------
# Minimum version: 1.5.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-asciidoc option, it allows maximum flexibilty in making decisions
# as whether or not to use the asciidoc package.
#
# Interface to module:
# HAVE_ASCIIDOC: used in makefiles to conditionally generate documentation
# ASCIIDOC: returns the path of the asciidoc program found
# returns the path set by the user in the environment
# --with-asciidoc: 'yes' user instructs the module to use asciidoc
# 'no' user instructs the module not to use asciidoc
#
# If the user sets the value of ASCIIDOC, AC_PATH_PROG skips testing the path.
#
AC_DEFUN([XORG_WITH_ASCIIDOC],[
AC_ARG_VAR([ASCIIDOC], [Path to asciidoc command])
AC_ARG_WITH(asciidoc,
AS_HELP_STRING([--with-asciidoc],
[Use asciidoc to regenerate documentation (default: yes, if installed)]),
[use_asciidoc=$withval], [use_asciidoc=auto])
if test "x$use_asciidoc" = x"auto"; then
AC_PATH_PROG([ASCIIDOC], [asciidoc])
if test "x$ASCIIDOC" = "x"; then
AC_MSG_WARN([asciidoc not found - documentation targets will be skipped])
have_asciidoc=no
else
have_asciidoc=yes
fi
elif test "x$use_asciidoc" = x"yes" ; then
AC_PATH_PROG([ASCIIDOC], [asciidoc])
if test "x$ASCIIDOC" = "x"; then
AC_MSG_ERROR([--with-asciidoc=yes specified but asciidoc not found in PATH])
fi
have_asciidoc=yes
elif test "x$use_asciidoc" = x"no" ; then
if test "x$ASCIIDOC" != "x"; then
AC_MSG_WARN([ignoring ASCIIDOC environment variable since --with-asciidoc=no was specified])
fi
have_asciidoc=no
else
AC_MSG_ERROR([--with-asciidoc expects 'yes' or 'no'])
fi
m4_ifval([$1],
[if test "$have_asciidoc" = yes; then
# scrape the asciidoc version
AC_MSG_CHECKING([the asciidoc version])
asciidoc_version=`$ASCIIDOC --version 2>/dev/null | cut -d' ' -f2`
AC_MSG_RESULT([$asciidoc_version])
AS_VERSION_COMPARE([$asciidoc_version], [$1],
[if test "x$use_asciidoc" = xauto; then
AC_MSG_WARN([asciidoc version $asciidoc_version found, but $1 needed])
have_asciidoc=no
else
AC_MSG_ERROR([asciidoc version $asciidoc_version found, but $1 needed])
fi])
fi])
AM_CONDITIONAL([HAVE_ASCIIDOC], [test "$have_asciidoc" = yes])
]) # XORG_WITH_ASCIIDOC
# XORG_WITH_DOXYGEN([MIN-VERSION])
# --------------------------------
# Minimum version: 1.5.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-doxygen option, it allows maximum flexibilty in making decisions
# as whether or not to use the doxygen package.
#
# Interface to module:
# HAVE_DOXYGEN: used in makefiles to conditionally generate documentation
# DOXYGEN: returns the path of the doxygen program found
# returns the path set by the user in the environment
# --with-doxygen: 'yes' user instructs the module to use doxygen
# 'no' user instructs the module not to use doxygen
#
# If the user sets the value of DOXYGEN, AC_PATH_PROG skips testing the path.
#
AC_DEFUN([XORG_WITH_DOXYGEN],[
AC_ARG_VAR([DOXYGEN], [Path to doxygen command])
AC_ARG_WITH(doxygen,
AS_HELP_STRING([--with-doxygen],
[Use doxygen to regenerate documentation (default: yes, if installed)]),
[use_doxygen=$withval], [use_doxygen=auto])
if test "x$use_doxygen" = x"auto"; then
AC_PATH_PROG([DOXYGEN], [doxygen])
if test "x$DOXYGEN" = "x"; then
AC_MSG_WARN([doxygen not found - documentation targets will be skipped])
have_doxygen=no
else
have_doxygen=yes
fi
elif test "x$use_doxygen" = x"yes" ; then
AC_PATH_PROG([DOXYGEN], [doxygen])
if test "x$DOXYGEN" = "x"; then
AC_MSG_ERROR([--with-doxygen=yes specified but doxygen not found in PATH])
fi
have_doxygen=yes
elif test "x$use_doxygen" = x"no" ; then
if test "x$DOXYGEN" != "x"; then
AC_MSG_WARN([ignoring DOXYGEN environment variable since --with-doxygen=no was specified])
fi
have_doxygen=no
else
AC_MSG_ERROR([--with-doxygen expects 'yes' or 'no'])
fi
m4_ifval([$1],
[if test "$have_doxygen" = yes; then
# scrape the doxygen version
AC_MSG_CHECKING([the doxygen version])
doxygen_version=`$DOXYGEN --version 2>/dev/null`
AC_MSG_RESULT([$doxygen_version])
AS_VERSION_COMPARE([$doxygen_version], [$1],
[if test "x$use_doxygen" = xauto; then
AC_MSG_WARN([doxygen version $doxygen_version found, but $1 needed])
have_doxygen=no
else
AC_MSG_ERROR([doxygen version $doxygen_version found, but $1 needed])
fi])
fi])
AM_CONDITIONAL([HAVE_DOXYGEN], [test "$have_doxygen" = yes])
]) # XORG_WITH_DOXYGEN
# XORG_WITH_GROFF
# ----------------
# Minimum version: 1.6.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-groff option, it allows maximum flexibilty in making decisions
# as whether or not to use the groff package.
#
# Interface to module:
# HAVE_GROFF: used in makefiles to conditionally generate documentation
# HAVE_GROFF_MM: the memorandum macros (-mm) package
# HAVE_GROFF_MS: the -ms macros package
# GROFF: returns the path of the groff program found
# returns the path set by the user in the environment
# --with-groff: 'yes' user instructs the module to use groff
# 'no' user instructs the module not to use groff
#
# If the user sets the value of GROFF, AC_PATH_PROG skips testing the path.
#
# OS and distros often splits groff in a basic and full package, the former
# having the groff program and the later having devices, fonts and macros
# Checking for the groff executable is not enough.
#
# If macros are missing, we cannot assume that groff is useless, so we don't
# unset HAVE_GROFF or GROFF env variables.
# HAVE_GROFF_?? can never be true while HAVE_GROFF is false.
#
AC_DEFUN([XORG_WITH_GROFF],[
AC_ARG_VAR([GROFF], [Path to groff command])
AC_ARG_WITH(groff,
AS_HELP_STRING([--with-groff],
[Use groff to regenerate documentation (default: yes, if installed)]),
[use_groff=$withval], [use_groff=auto])
if test "x$use_groff" = x"auto"; then
AC_PATH_PROG([GROFF], [groff])
if test "x$GROFF" = "x"; then
AC_MSG_WARN([groff not found - documentation targets will be skipped])
have_groff=no
else
have_groff=yes
fi
elif test "x$use_groff" = x"yes" ; then
AC_PATH_PROG([GROFF], [groff])
if test "x$GROFF" = "x"; then
AC_MSG_ERROR([--with-groff=yes specified but groff not found in PATH])
fi
have_groff=yes
elif test "x$use_groff" = x"no" ; then
if test "x$GROFF" != "x"; then
AC_MSG_WARN([ignoring GROFF environment variable since --with-groff=no was specified])
fi
have_groff=no
else
AC_MSG_ERROR([--with-groff expects 'yes' or 'no'])
fi
# We have groff, test for the presence of the macro packages
if test "x$have_groff" = x"yes"; then
AC_MSG_CHECKING([for ${GROFF} -ms macros])
if ${GROFF} -ms -I. /dev/null >/dev/null 2>&1 ; then
groff_ms_works=yes
else
groff_ms_works=no
fi
AC_MSG_RESULT([$groff_ms_works])
AC_MSG_CHECKING([for ${GROFF} -mm macros])
if ${GROFF} -mm -I. /dev/null >/dev/null 2>&1 ; then
groff_mm_works=yes
else
groff_mm_works=no
fi
AC_MSG_RESULT([$groff_mm_works])
fi
AM_CONDITIONAL([HAVE_GROFF], [test "$have_groff" = yes])
AM_CONDITIONAL([HAVE_GROFF_MS], [test "$groff_ms_works" = yes])
AM_CONDITIONAL([HAVE_GROFF_MM], [test "$groff_mm_works" = yes])
]) # XORG_WITH_GROFF
# XORG_WITH_FOP
# ----------------
# Minimum version: 1.6.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-fop option, it allows maximum flexibilty in making decisions
# as whether or not to use the fop package.
#
# Interface to module:
# HAVE_FOP: used in makefiles to conditionally generate documentation
# FOP: returns the path of the fop program found
# returns the path set by the user in the environment
# --with-fop: 'yes' user instructs the module to use fop
# 'no' user instructs the module not to use fop
#
# If the user sets the value of FOP, AC_PATH_PROG skips testing the path.
#
AC_DEFUN([XORG_WITH_FOP],[
AC_ARG_VAR([FOP], [Path to fop command])
AC_ARG_WITH(fop,
AS_HELP_STRING([--with-fop],
[Use fop to regenerate documentation (default: yes, if installed)]),
[use_fop=$withval], [use_fop=auto])
if test "x$use_fop" = x"auto"; then
AC_PATH_PROG([FOP], [fop])
if test "x$FOP" = "x"; then
AC_MSG_WARN([fop not found - documentation targets will be skipped])
have_fop=no
else
have_fop=yes
fi
elif test "x$use_fop" = x"yes" ; then
AC_PATH_PROG([FOP], [fop])
if test "x$FOP" = "x"; then
AC_MSG_ERROR([--with-fop=yes specified but fop not found in PATH])
fi
have_fop=yes
elif test "x$use_fop" = x"no" ; then
if test "x$FOP" != "x"; then
AC_MSG_WARN([ignoring FOP environment variable since --with-fop=no was specified])
fi
have_fop=no
else
AC_MSG_ERROR([--with-fop expects 'yes' or 'no'])
fi
AM_CONDITIONAL([HAVE_FOP], [test "$have_fop" = yes])
]) # XORG_WITH_FOP
# XORG_WITH_PS2PDF
# ----------------
# Minimum version: 1.6.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a module to test for the
# presence of the tool and obtain it's path in separate variables. Coupled with
# the --with-ps2pdf option, it allows maximum flexibilty in making decisions
# as whether or not to use the ps2pdf package.
#
# Interface to module:
# HAVE_PS2PDF: used in makefiles to conditionally generate documentation
# PS2PDF: returns the path of the ps2pdf program found
# returns the path set by the user in the environment
# --with-ps2pdf: 'yes' user instructs the module to use ps2pdf
# 'no' user instructs the module not to use ps2pdf
#
# If the user sets the value of PS2PDF, AC_PATH_PROG skips testing the path.
#
AC_DEFUN([XORG_WITH_PS2PDF],[
AC_ARG_VAR([PS2PDF], [Path to ps2pdf command])
AC_ARG_WITH(ps2pdf,
AS_HELP_STRING([--with-ps2pdf],
[Use ps2pdf to regenerate documentation (default: yes, if installed)]),
[use_ps2pdf=$withval], [use_ps2pdf=auto])
if test "x$use_ps2pdf" = x"auto"; then
AC_PATH_PROG([PS2PDF], [ps2pdf])
if test "x$PS2PDF" = "x"; then
AC_MSG_WARN([ps2pdf not found - documentation targets will be skipped])
have_ps2pdf=no
else
have_ps2pdf=yes
fi
elif test "x$use_ps2pdf" = x"yes" ; then
AC_PATH_PROG([PS2PDF], [ps2pdf])
if test "x$PS2PDF" = "x"; then
AC_MSG_ERROR([--with-ps2pdf=yes specified but ps2pdf not found in PATH])
fi
have_ps2pdf=yes
elif test "x$use_ps2pdf" = x"no" ; then
if test "x$PS2PDF" != "x"; then
AC_MSG_WARN([ignoring PS2PDF environment variable since --with-ps2pdf=no was specified])
fi
have_ps2pdf=no
else
AC_MSG_ERROR([--with-ps2pdf expects 'yes' or 'no'])
fi
AM_CONDITIONAL([HAVE_PS2PDF], [test "$have_ps2pdf" = yes])
]) # XORG_WITH_PS2PDF
# XORG_ENABLE_DOCS (enable_docs=yes)
# ----------------
# Minimum version: 1.6.0
#
# Documentation tools are not always available on all platforms and sometimes
# not at the appropriate level. This macro enables a builder to skip all
# documentation targets except traditional man pages.
# Combined with the specific tool checking macros XORG_WITH_*, it provides
# maximum flexibilty in controlling documentation building.
# Refer to:
# XORG_WITH_XMLTO --with-xmlto
# XORG_WITH_ASCIIDOC --with-asciidoc
# XORG_WITH_DOXYGEN --with-doxygen
# XORG_WITH_FOP --with-fop
# XORG_WITH_GROFF --with-groff
# XORG_WITH_PS2PDF --with-ps2pdf
#
# Interface to module:
# ENABLE_DOCS: used in makefiles to conditionally generate documentation
# --enable-docs: 'yes' user instructs the module to generate docs
# 'no' user instructs the module not to generate docs
# parm1: specify the default value, yes or no.
#
AC_DEFUN([XORG_ENABLE_DOCS],[
default=$1
if test "x$default" = x ; then
default="yes"
fi
AC_ARG_ENABLE(docs,
AS_HELP_STRING([--enable-docs],
[Enable building the documentation (default: yes)]),
[build_docs=$enableval], [build_docs=$default])
AM_CONDITIONAL(ENABLE_DOCS, [test x$build_docs = xyes])
AC_MSG_CHECKING([whether to build documentation])
AC_MSG_RESULT([$build_docs])
]) # XORG_ENABLE_DOCS
# XORG_ENABLE_DEVEL_DOCS (enable_devel_docs=yes)
# ----------------
# Minimum version: 1.6.0
#
# This macro enables a builder to skip all developer documentation.
# Combined with the specific tool checking macros XORG_WITH_*, it provides
# maximum flexibilty in controlling documentation building.
# Refer to:
# XORG_WITH_XMLTO --with-xmlto
# XORG_WITH_ASCIIDOC --with-asciidoc
# XORG_WITH_DOXYGEN --with-doxygen
# XORG_WITH_FOP --with-fop
# XORG_WITH_GROFF --with-groff
# XORG_WITH_PS2PDF --with-ps2pdf
#
# Interface to module:
# ENABLE_DEVEL_DOCS: used in makefiles to conditionally generate developer docs
# --enable-devel-docs: 'yes' user instructs the module to generate developer docs
# 'no' user instructs the module not to generate developer docs
# parm1: specify the default value, yes or no.
#
AC_DEFUN([XORG_ENABLE_DEVEL_DOCS],[
devel_default=$1
if test "x$devel_default" = x ; then
devel_default="yes"
fi
AC_ARG_ENABLE(devel-docs,
AS_HELP_STRING([--enable-devel-docs],
[Enable building the developer documentation (default: yes)]),
[build_devel_docs=$enableval], [build_devel_docs=$devel_default])
AM_CONDITIONAL(ENABLE_DEVEL_DOCS, [test x$build_devel_docs = xyes])
AC_MSG_CHECKING([whether to build developer documentation])
AC_MSG_RESULT([$build_devel_docs])
]) # XORG_ENABLE_DEVEL_DOCS
# XORG_ENABLE_SPECS (enable_specs=yes)
# ----------------
# Minimum version: 1.6.0
#
# This macro enables a builder to skip all functional specification targets.
# Combined with the specific tool checking macros XORG_WITH_*, it provides
# maximum flexibilty in controlling documentation building.
# Refer to:
# XORG_WITH_XMLTO --with-xmlto
# XORG_WITH_ASCIIDOC --with-asciidoc
# XORG_WITH_DOXYGEN --with-doxygen
# XORG_WITH_FOP --with-fop
# XORG_WITH_GROFF --with-groff
# XORG_WITH_PS2PDF --with-ps2pdf
#
# Interface to module:
# ENABLE_SPECS: used in makefiles to conditionally generate specs
# --enable-specs: 'yes' user instructs the module to generate specs
# 'no' user instructs the module not to generate specs
# parm1: specify the default value, yes or no.
#
AC_DEFUN([XORG_ENABLE_SPECS],[
spec_default=$1
if test "x$spec_default" = x ; then
spec_default="yes"
fi
AC_ARG_ENABLE(specs,
AS_HELP_STRING([--enable-specs],
[Enable building the specs (default: yes)]),
[build_specs=$enableval], [build_specs=$spec_default])
AM_CONDITIONAL(ENABLE_SPECS, [test x$build_specs = xyes])
AC_MSG_CHECKING([whether to build functional specifications])
AC_MSG_RESULT([$build_specs])
]) # XORG_ENABLE_SPECS
# XORG_CHECK_MALLOC_ZERO
# ----------------------
# Minimum version: 1.0.0
@ -7972,7 +8450,8 @@ main() {
exit(m0 == 0 || r0 == 0 || c0 == 0 ? 0 : 1);
}],
[MALLOC_ZERO_RETURNS_NULL=yes],
[MALLOC_ZERO_RETURNS_NULL=no])
[MALLOC_ZERO_RETURNS_NULL=no],
[MALLOC_ZERO_RETURNS_NULL=yes])
fi
AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL])
@ -8074,7 +8553,7 @@ AC_REQUIRE([AC_PROG_CC])
if test "x$GCC" = xyes ; then
CWARNFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \
-Wmissing-declarations -Wnested-externs -fno-strict-aliasing \
-Wbad-function-cast"
-Wbad-function-cast -Wformat=2"
case `$CC -dumpversion` in
3.4.* | 4.*)
CWARNFLAGS="$CWARNFLAGS -Wold-style-definition -Wdeclaration-after-statement"
@ -8087,7 +8566,6 @@ else
fi
fi
AC_SUBST(CWARNFLAGS)
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
]) # XORG_CWARNFLAGS
# XORG_STRICT_OPTION
@ -8130,8 +8608,28 @@ XORG_CWARNFLAGS
XORG_STRICT_OPTION
XORG_RELEASE_VERSION
XORG_CHANGELOG
XORG_INSTALL
XORG_MANPAGE_SECTIONS
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])],
[AC_SUBST([AM_DEFAULT_VERBOSITY], [1])])
]) # XORG_DEFAULT_OPTIONS
# XORG_INSTALL()
# ----------------
# Minimum version: 1.4.0
#
# Defines the variable INSTALL_CMD as the command to copy
# INSTALL from $prefix/share/util-macros.
#
AC_DEFUN([XORG_INSTALL], [
AC_REQUIRE([PKG_PROG_PKG_CONFIG])
macros_datadir=`$PKG_CONFIG --print-errors --variable=pkgdatadir xorg-macros`
INSTALL_CMD="(cp -f "$macros_datadir/INSTALL" \$(top_srcdir)/.INSTALL.tmp && \
mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \
|| (rm -f \$(top_srcdir)/.INSTALL.tmp; touch \$(top_srcdir)/INSTALL; \
echo 'util-macros \"pkgdatadir\" from xorg-macros.pc not found: installing possibly empty INSTALL.' >&2)"
AC_SUBST([INSTALL_CMD])
]) # XORG_INSTALL
dnl Copyright 2005 Red Hat, Inc
dnl
dnl Permission to use, copy, modify, distribute, and sell this software and its
@ -8201,14 +8699,13 @@ AC_DEFUN([XORG_RELEASE_VERSION],[
# Defines the variable CHANGELOG_CMD as the command to generate
# ChangeLog from git.
#
# Arrange that distcleancheck ignores ChangeLog left over by distclean.
#
AC_DEFUN([XORG_CHANGELOG], [
CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \
mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \
CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp && \
mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \
|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \
echo 'git directory not found: installing possibly empty changelog.' >&2)"
AC_SUBST([CHANGELOG_CMD])
AC_SUBST([distcleancheck_listfiles], ['find . -type f ! -name ChangeLog -print'])
]) # XORG_CHANGELOG
dnl Copyright 2005 Red Hat, Inc

View File

@ -35,6 +35,12 @@
/* Have xf86ModeBandwidth */
#undef HAVE_XF86MODEBANDWIDTH
/* Enable DRI driver support */
#undef MGADRI
/* Enable developmental DRI driver support */
#undef MGADRI_DEVEL
/* Name of package */
#undef PACKAGE
@ -73,9 +79,3 @@
/* Version number of package */
#undef VERSION
/* Enable DRI driver support */
#undef XF86DRI
/* Enable developmental DRI driver support */
#undef XF86DRI_DEVEL

View File

@ -927,7 +927,6 @@ MISC_MAN_DIR
DRIVER_MAN_DIR
ADMIN_MAN_DIR
CHANGELOG_CMD
distcleancheck_listfiles
LIBOBJS
LTLIBOBJS'
ac_subst_files=''
@ -4495,7 +4494,7 @@ ia64-*-hpux*)
;;
*-*-irix6*)
# Find out which ABI we are using.
echo '#line 4498 "configure"' > conftest.$ac_ext
echo '#line 4497 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@ -7603,11 +7602,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:7606: $lt_compile\"" >&5)
(eval echo "\"\$as_me:7605: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
echo "$as_me:7610: \$? = $ac_status" >&5
echo "$as_me:7609: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@ -7893,11 +7892,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:7896: $lt_compile\"" >&5)
(eval echo "\"\$as_me:7895: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
echo "$as_me:7900: \$? = $ac_status" >&5
echo "$as_me:7899: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@ -7997,11 +7996,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:8000: $lt_compile\"" >&5)
(eval echo "\"\$as_me:7999: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
echo "$as_me:8004: \$? = $ac_status" >&5
echo "$as_me:8003: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@ -10397,7 +10396,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
#line 10400 "configure"
#line 10399 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@ -10497,7 +10496,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
#line 10500 "configure"
#line 10499 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@ -12906,11 +12905,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:12909: $lt_compile\"" >&5)
(eval echo "\"\$as_me:12908: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
echo "$as_me:12913: \$? = $ac_status" >&5
echo "$as_me:12912: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@ -13010,11 +13009,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:13013: $lt_compile\"" >&5)
(eval echo "\"\$as_me:13012: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
echo "$as_me:13017: \$? = $ac_status" >&5
echo "$as_me:13016: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@ -14593,11 +14592,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:14596: $lt_compile\"" >&5)
(eval echo "\"\$as_me:14595: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
echo "$as_me:14600: \$? = $ac_status" >&5
echo "$as_me:14599: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@ -14697,11 +14696,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:14700: $lt_compile\"" >&5)
(eval echo "\"\$as_me:14699: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
echo "$as_me:14704: \$? = $ac_status" >&5
echo "$as_me:14703: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@ -16912,11 +16911,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:16915: $lt_compile\"" >&5)
(eval echo "\"\$as_me:16914: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
echo "$as_me:16919: \$? = $ac_status" >&5
echo "$as_me:16918: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@ -17202,11 +17201,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:17205: $lt_compile\"" >&5)
(eval echo "\"\$as_me:17204: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
echo "$as_me:17209: \$? = $ac_status" >&5
echo "$as_me:17208: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@ -17306,11 +17305,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:17309: $lt_compile\"" >&5)
(eval echo "\"\$as_me:17308: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
echo "$as_me:17313: \$? = $ac_status" >&5
echo "$as_me:17312: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@ -21693,12 +21692,12 @@ $as_echo "yes" >&6; }
fi
cat >>confdefs.h <<\_ACEOF
#define XF86DRI 1
#define MGADRI 1
_ACEOF
cat >>confdefs.h <<\_ACEOF
#define XF86DRI_DEVEL 1
#define MGADRI_DEVEL 1
_ACEOF
fi
@ -22322,12 +22321,11 @@ _ACEOF
CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \
mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \
CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp && \
mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \
|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \
echo 'git directory not found: installing possibly empty changelog.' >&2)"
distcleancheck_listfiles='find . -type f ! -name ChangeLog -print'
ac_config_files="$ac_config_files Makefile src/Makefile man/Makefile util/Makefile"

View File

@ -104,8 +104,8 @@ AC_MSG_RESULT([$DRI])
AM_CONDITIONAL(DRI, test "x$DRI" = xyes)
if test "x$DRI" = xyes; then
PKG_CHECK_MODULES(DRI, [libdrm >= 2.0 xf86driproto])
AC_DEFINE(XF86DRI,1,[Enable DRI driver support])
AC_DEFINE(XF86DRI_DEVEL,1,[Enable developmental DRI driver support])
AC_DEFINE(MGADRI,1,[Enable DRI driver support])
AC_DEFINE(MGADRI_DEVEL,1,[Enable developmental DRI driver support])
fi
save_CFLAGS="$CFLAGS"

View File

@ -192,7 +192,6 @@ build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
distcleancheck_listfiles = @distcleancheck_listfiles@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@

View File

@ -227,7 +227,6 @@ build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
distcleancheck_listfiles = @distcleancheck_listfiles@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@

View File

@ -29,7 +29,7 @@
#include "xf86DDC.h"
#include "xf86xv.h"
#ifdef XF86DRI
#ifdef MGADRI
#include "xf86drm.h"
#define _XF86DRI_SERVER_
@ -593,14 +593,14 @@ typedef struct {
int expandRemaining;
int expandHeight;
int expandY;
#ifdef XF86DRI
#ifdef MGADRI
Bool directRenderingEnabled;
DRIInfoPtr pDRIInfo;
int drmFD;
int numVisualConfigs;
__GLXvisualConfig* pVisualConfigs;
MGAConfigPrivPtr pVisualConfigsPriv;
MGADRIServerPrivatePtr DRIServerInfo;
XF86DRIServerPrivatePtr DRIServerInfo;
MGARegRec DRContextRegs;
@ -750,13 +750,13 @@ void MGAPointerMoved(int index, int x, int y);
void MGAInitVideo(ScreenPtr pScreen);
void MGAResetVideo(ScrnInfoPtr pScrn);
#ifdef XF86DRI
#ifdef MGADRI
#define MGA_FRONT 0x1
#define MGA_BACK 0x2
#define MGA_DEPTH 0x4
Bool MGADRIScreenInit( ScreenPtr pScreen );
Bool XF86DRIScreenInit( ScreenPtr pScreen );
void MGADRICloseScreen( ScreenPtr pScreen );
Bool MGADRIFinishScreenInit( ScreenPtr pScreen );

View File

@ -457,7 +457,7 @@ static void MGASwapContextShared( ScreenPtr pScreen )
* this doesn't happen *every time the mouse moves*...
*/
static void
MGADRISwapContext( ScreenPtr pScreen, DRISyncType syncType,
XF86DRISwapContext( ScreenPtr pScreen, DRISyncType syncType,
DRIContextType oldContextType, void *oldContext,
DRIContextType newContextType, void *newContext )
{
@ -470,7 +470,7 @@ MGADRISwapContext( ScreenPtr pScreen, DRISyncType syncType,
}
static void
MGADRISwapContextShared( ScreenPtr pScreen, DRISyncType syncType,
XF86DRISwapContextShared( ScreenPtr pScreen, DRISyncType syncType,
DRIContextType oldContextType, void *oldContext,
DRIContextType newContextType, void *newContext )
{
@ -526,7 +526,7 @@ static Bool MGADRIBootstrapDMA(ScreenPtr pScreen)
{
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
MGAPtr pMga = MGAPTR(pScrn);
MGADRIServerPrivatePtr pMGADRIServer = pMga->DRIServerInfo;
XF86DRIServerPrivatePtr pXF86DRIServer = pMga->DRIServerInfo;
int ret;
int requested_agp_mode;
int count;
@ -548,7 +548,7 @@ static Bool MGADRIBootstrapDMA(ScreenPtr pScreen)
}
if ( (pMGADRIServer->drm_version_minor >= 2) && !pMga->useOldDmaInit ) {
if ( (pXF86DRIServer->drm_version_minor >= 2) && !pMga->useOldDmaInit ) {
drm_mga_dma_bootstrap_t dma_bs;
@ -567,10 +567,10 @@ static Bool MGADRIBootstrapDMA(ScreenPtr pScreen)
}
pMga->agpMode = dma_bs.agp_mode;
pMGADRIServer->agp.size = dma_bs.agp_size;
pXF86DRIServer->agp.size = dma_bs.agp_size;
pMGADRIServer->agpTextures.handle = dma_bs.texture_handle;
pMGADRIServer->agpTextures.size = dma_bs.texture_size;
pXF86DRIServer->agpTextures.handle = dma_bs.texture_handle;
pXF86DRIServer->agpTextures.size = dma_bs.texture_size;
}
else {
unsigned long mode;
@ -579,7 +579,7 @@ static Bool MGADRIBootstrapDMA(ScreenPtr pScreen)
if ( pMga->forcePciDma ) {
const char * const msg = (pMGADRIServer->drm_version_minor < 2)
const char * const msg = (pXF86DRIServer->drm_version_minor < 2)
? "DRM version is too old (3.2 or later required)"
: "old DMA init path was requested";
@ -628,28 +628,28 @@ static Bool MGADRIBootstrapDMA(ScreenPtr pScreen)
}
}
pMGADRIServer->agp.size = pMga->agpSize * 1024 * 1024;
pXF86DRIServer->agp.size = pMga->agpSize * 1024 * 1024;
pMGADRIServer->warp.offset = 0;
pMGADRIServer->warp.size = MGA_WARP_UCODE_SIZE;
pXF86DRIServer->warp.offset = 0;
pXF86DRIServer->warp.size = MGA_WARP_UCODE_SIZE;
pMGADRIServer->primary.offset = (pMGADRIServer->warp.offset +
pMGADRIServer->warp.size);
pMGADRIServer->primary.size = 1024 * 1024;
pXF86DRIServer->primary.offset = (pXF86DRIServer->warp.offset +
pXF86DRIServer->warp.size);
pXF86DRIServer->primary.size = 1024 * 1024;
pMGADRIServer->buffers.offset = (pMGADRIServer->primary.offset +
pMGADRIServer->primary.size);
pMGADRIServer->buffers.size = MGA_NUM_BUFFERS * MGA_BUFFER_SIZE;
pXF86DRIServer->buffers.offset = (pXF86DRIServer->primary.offset +
pXF86DRIServer->primary.size);
pXF86DRIServer->buffers.size = MGA_NUM_BUFFERS * MGA_BUFFER_SIZE;
pMGADRIServer->agpTextures.offset = (pMGADRIServer->buffers.offset +
pMGADRIServer->buffers.size);
pXF86DRIServer->agpTextures.offset = (pXF86DRIServer->buffers.offset +
pXF86DRIServer->buffers.size);
pMGADRIServer->agpTextures.size = (pMGADRIServer->agp.size -
pMGADRIServer->agpTextures.offset);
pXF86DRIServer->agpTextures.size = (pXF86DRIServer->agp.size -
pXF86DRIServer->agpTextures.offset);
ret = drmAgpAlloc( pMga->drmFD, pMGADRIServer->agp.size,
0, NULL, &pMGADRIServer->agp.handle );
ret = drmAgpAlloc( pMga->drmFD, pXF86DRIServer->agp.size,
0, NULL, &pXF86DRIServer->agp.handle );
if ( ret < 0 ) {
xf86DrvMsg( pScreen->myNum, X_ERROR, "[agp] Out of memory (%d)\n", ret );
drmAgpRelease( pMga->drmFD );
@ -657,12 +657,12 @@ static Bool MGADRIBootstrapDMA(ScreenPtr pScreen)
}
xf86DrvMsg( pScreen->myNum, X_INFO,
"[agp] %d kB allocated with handle 0x%08x\n",
pMGADRIServer->agp.size/1024,
(unsigned int) pMGADRIServer->agp.handle );
pXF86DRIServer->agp.size/1024,
(unsigned int) pXF86DRIServer->agp.handle );
if ( drmAgpBind( pMga->drmFD, pMGADRIServer->agp.handle, 0 ) < 0 ) {
if ( drmAgpBind( pMga->drmFD, pXF86DRIServer->agp.handle, 0 ) < 0 ) {
xf86DrvMsg( pScreen->myNum, X_ERROR, "[agp] Could not bind memory\n" );
drmAgpFree( pMga->drmFD, pMGADRIServer->agp.handle );
drmAgpFree( pMga->drmFD, pXF86DRIServer->agp.handle );
drmAgpRelease( pMga->drmFD );
return FALSE;
}
@ -670,51 +670,51 @@ static Bool MGADRIBootstrapDMA(ScreenPtr pScreen)
/* WARP microcode space
*/
if ( drmAddMap( pMga->drmFD,
pMGADRIServer->warp.offset,
pMGADRIServer->warp.size,
pXF86DRIServer->warp.offset,
pXF86DRIServer->warp.size,
DRM_AGP, DRM_READ_ONLY,
&pMGADRIServer->warp.handle ) < 0 ) {
&pXF86DRIServer->warp.handle ) < 0 ) {
xf86DrvMsg( pScreen->myNum, X_ERROR,
"[agp] Could not add WARP microcode mapping\n" );
return FALSE;
}
xf86DrvMsg( pScreen->myNum, X_INFO,
"[agp] WARP microcode handle = 0x%08x\n",
(unsigned int) pMGADRIServer->warp.handle );
(unsigned int) pXF86DRIServer->warp.handle );
/* Primary DMA space
*/
if ( drmAddMap( pMga->drmFD,
pMGADRIServer->primary.offset,
pMGADRIServer->primary.size,
pXF86DRIServer->primary.offset,
pXF86DRIServer->primary.size,
DRM_AGP, DRM_READ_ONLY,
&pMGADRIServer->primary.handle ) < 0 ) {
&pXF86DRIServer->primary.handle ) < 0 ) {
xf86DrvMsg( pScreen->myNum, X_ERROR,
"[agp] Could not add primary DMA mapping\n" );
return FALSE;
}
xf86DrvMsg( pScreen->myNum, X_INFO,
"[agp] Primary DMA handle = 0x%08x\n",
(unsigned int) pMGADRIServer->primary.handle );
(unsigned int) pXF86DRIServer->primary.handle );
/* DMA buffers
*/
if ( drmAddMap( pMga->drmFD,
pMGADRIServer->buffers.offset,
pMGADRIServer->buffers.size,
pXF86DRIServer->buffers.offset,
pXF86DRIServer->buffers.size,
DRM_AGP, 0,
&pMGADRIServer->buffers.handle ) < 0 ) {
&pXF86DRIServer->buffers.handle ) < 0 ) {
xf86DrvMsg( pScreen->myNum, X_ERROR,
"[agp] Could not add DMA buffers mapping\n" );
return FALSE;
}
xf86DrvMsg( pScreen->myNum, X_INFO,
"[agp] DMA buffers handle = 0x%08x\n",
(unsigned int) pMGADRIServer->buffers.handle );
(unsigned int) pXF86DRIServer->buffers.handle );
count = drmAddBufs( pMga->drmFD,
MGA_NUM_BUFFERS, MGA_BUFFER_SIZE,
DRM_AGP_BUFFER, pMGADRIServer->buffers.offset );
DRM_AGP_BUFFER, pXF86DRIServer->buffers.offset );
if ( count <= 0 ) {
xf86DrvMsg( pScrn->scrnIndex, X_INFO,
"[drm] failure adding %d %d byte DMA buffers\n",
@ -725,16 +725,16 @@ static Bool MGADRIBootstrapDMA(ScreenPtr pScreen)
"[drm] Added %d %d byte DMA buffers\n",
count, MGA_BUFFER_SIZE );
i = mylog2(pMGADRIServer->agpTextures.size / MGA_NR_TEX_REGIONS);
i = mylog2(pXF86DRIServer->agpTextures.size / MGA_NR_TEX_REGIONS);
if(i < MGA_LOG_MIN_TEX_REGION_SIZE)
i = MGA_LOG_MIN_TEX_REGION_SIZE;
pMGADRIServer->agpTextures.size = (pMGADRIServer->agpTextures.size >> i) << i;
pXF86DRIServer->agpTextures.size = (pXF86DRIServer->agpTextures.size >> i) << i;
if ( drmAddMap( pMga->drmFD,
pMGADRIServer->agpTextures.offset,
pMGADRIServer->agpTextures.size,
pXF86DRIServer->agpTextures.offset,
pXF86DRIServer->agpTextures.size,
DRM_AGP, 0,
&pMGADRIServer->agpTextures.handle ) < 0 ) {
&pXF86DRIServer->agpTextures.handle ) < 0 ) {
xf86DrvMsg( pScreen->myNum, X_ERROR,
"[agp] Could not add agpTexture mapping\n" );
return FALSE;
@ -742,37 +742,37 @@ static Bool MGADRIBootstrapDMA(ScreenPtr pScreen)
xf86DrvMsg( pScreen->myNum, X_INFO,
"[agp] agpTexture handle = 0x%08x\n",
(unsigned int) pMGADRIServer->agpTextures.handle );
(unsigned int) pXF86DRIServer->agpTextures.handle );
xf86DrvMsg( pScreen->myNum, X_INFO,
"[agp] agpTexture size: %d kb\n", pMGADRIServer->agpTextures.size/1024 );
"[agp] agpTexture size: %d kb\n", pXF86DRIServer->agpTextures.size/1024 );
pMGADRIServer->registers.size = MGAIOMAPSIZE;
pXF86DRIServer->registers.size = MGAIOMAPSIZE;
if ( drmAddMap( pMga->drmFD,
(drm_handle_t) MGA_IO_ADDRESS(pMga),
pMGADRIServer->registers.size,
pXF86DRIServer->registers.size,
DRM_REGISTERS, DRM_READ_ONLY,
&pMGADRIServer->registers.handle ) < 0 ) {
&pXF86DRIServer->registers.handle ) < 0 ) {
xf86DrvMsg( pScreen->myNum, X_ERROR,
"[drm] Could not add MMIO registers mapping\n" );
return FALSE;
}
xf86DrvMsg( pScreen->myNum, X_INFO,
"[drm] Registers handle = 0x%08x\n",
(unsigned int) pMGADRIServer->registers.handle );
(unsigned int) pXF86DRIServer->registers.handle );
pMGADRIServer->status.size = SAREA_MAX;
pXF86DRIServer->status.size = SAREA_MAX;
if ( drmAddMap( pMga->drmFD, 0, pMGADRIServer->status.size,
if ( drmAddMap( pMga->drmFD, 0, pXF86DRIServer->status.size,
DRM_SHM, DRM_READ_ONLY | DRM_LOCKED | DRM_KERNEL,
&pMGADRIServer->status.handle ) < 0 ) {
&pXF86DRIServer->status.handle ) < 0 ) {
xf86DrvMsg( pScreen->myNum, X_ERROR,
"[drm] Could not add status page mapping\n" );
return FALSE;
}
xf86DrvMsg( pScreen->myNum, X_INFO,
"[drm] Status handle = 0x%08x\n",
(unsigned int) pMGADRIServer->status.handle );
(unsigned int) pXF86DRIServer->status.handle );
}
return TRUE;
@ -782,7 +782,7 @@ static Bool MGADRIKernelInit( ScreenPtr pScreen )
{
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
MGAPtr pMga = MGAPTR(pScrn);
MGADRIServerPrivatePtr pMGADRIServer = pMga->DRIServerInfo;
XF86DRIServerPrivatePtr pXF86DRIServer = pMga->DRIServerInfo;
drm_mga_init_t init;
int ret;
@ -801,28 +801,28 @@ static Bool MGADRIKernelInit( ScreenPtr pScreen )
init.maccess = pMga->MAccess;
init.fb_cpp = pScrn->bitsPerPixel / 8;
init.front_offset = pMGADRIServer->frontOffset;
init.front_pitch = pMGADRIServer->frontPitch / init.fb_cpp;
init.back_offset = pMGADRIServer->backOffset;
init.back_pitch = pMGADRIServer->backPitch / init.fb_cpp;
init.front_offset = pXF86DRIServer->frontOffset;
init.front_pitch = pXF86DRIServer->frontPitch / init.fb_cpp;
init.back_offset = pXF86DRIServer->backOffset;
init.back_pitch = pXF86DRIServer->backPitch / init.fb_cpp;
init.depth_cpp = pScrn->bitsPerPixel / 8;
init.depth_offset = pMGADRIServer->depthOffset;
init.depth_pitch = pMGADRIServer->depthPitch / init.depth_cpp;
init.depth_offset = pXF86DRIServer->depthOffset;
init.depth_pitch = pXF86DRIServer->depthPitch / init.depth_cpp;
init.texture_offset[0] = pMGADRIServer->textureOffset;
init.texture_size[0] = pMGADRIServer->textureSize;
init.texture_offset[0] = pXF86DRIServer->textureOffset;
init.texture_size[0] = pXF86DRIServer->textureSize;
init.fb_offset = pMGADRIServer->fb.handle;
init.mmio_offset = pMGADRIServer->registers.handle;
init.status_offset = pMGADRIServer->status.handle;
init.fb_offset = pXF86DRIServer->fb.handle;
init.mmio_offset = pXF86DRIServer->registers.handle;
init.status_offset = pXF86DRIServer->status.handle;
init.warp_offset = pMGADRIServer->warp.handle;
init.primary_offset = pMGADRIServer->primary.handle;
init.buffers_offset = pMGADRIServer->buffers.handle;
init.warp_offset = pXF86DRIServer->warp.handle;
init.primary_offset = pXF86DRIServer->primary.handle;
init.buffers_offset = pXF86DRIServer->buffers.handle;
init.texture_offset[1] = pMGADRIServer->agpTextures.handle;
init.texture_size[1] = pMGADRIServer->agpTextures.size;
init.texture_offset[1] = pXF86DRIServer->agpTextures.handle;
init.texture_size[1] = pXF86DRIServer->agpTextures.size;
ret = drmCommandWrite( pMga->drmFD, DRM_MGA_INIT, &init, sizeof(drm_mga_init_t));
if ( ret < 0 ) {
@ -877,18 +877,18 @@ static Bool MGADRIBuffersInit( ScreenPtr pScreen )
{
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
MGAPtr pMga = MGAPTR(pScrn);
MGADRIServerPrivatePtr pMGADRIServer = pMga->DRIServerInfo;
XF86DRIServerPrivatePtr pXF86DRIServer = pMga->DRIServerInfo;
pMGADRIServer->drmBuffers = drmMapBufs( pMga->drmFD );
if ( !pMGADRIServer->drmBuffers ) {
pXF86DRIServer->drmBuffers = drmMapBufs( pMga->drmFD );
if ( !pXF86DRIServer->drmBuffers ) {
xf86DrvMsg( pScreen->myNum, X_ERROR,
"[drm] Failed to map DMA buffers list\n" );
return FALSE;
}
xf86DrvMsg( pScreen->myNum, X_INFO,
"[drm] Mapped %d DMA buffers\n",
pMGADRIServer->drmBuffers->count );
pXF86DRIServer->drmBuffers->count );
return TRUE;
}
@ -1088,13 +1088,13 @@ static void MGADRIMoveBuffersEXA(WindowPtr pParent, DDXPointRec ptOldOrg,
}
#endif
Bool MGADRIScreenInit( ScreenPtr pScreen )
Bool XF86DRIScreenInit( ScreenPtr pScreen )
{
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
MGAPtr pMga = MGAPTR(pScrn);
DRIInfoPtr pDRIInfo;
MGADRIPtr pMGADRI;
MGADRIServerPrivatePtr pMGADRIServer;
XF86DRIServerPrivatePtr pXF86DRIServer;
if (!pMga->chip_attribs->dri_capable) {
xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "[drm] Direct rendering only supported with G200/G400/G450/G550.\n");
@ -1108,7 +1108,7 @@ Bool MGADRIScreenInit( ScreenPtr pScreen )
if ( !xf86LoaderCheckSymbol( "drmAvailable" ) ) return FALSE;
if ( !xf86LoaderCheckSymbol( "DRIQueryVersion" ) ) {
xf86DrvMsg( pScreen->myNum, X_ERROR,
"[dri] MGADRIScreenInit failed (libdri.a too old)\n" );
"[dri] XF86DRIScreenInit failed (libdri.a too old)\n" );
return FALSE;
}
@ -1118,7 +1118,7 @@ Bool MGADRIScreenInit( ScreenPtr pScreen )
DRIQueryVersion( &major, &minor, &patch );
if ( major != DRIINFO_MAJOR_VERSION || minor < DRIINFO_MINOR_VERSION ) {
xf86DrvMsg( pScreen->myNum, X_ERROR,
"[dri] MGADRIScreenInit failed because of a version mismatch.\n"
"[dri] XF86DRIScreenInit failed because of a version mismatch.\n"
"[dri] libdri version = %d.%d.%d but version %d.%d.x is needed.\n"
"[dri] Disabling the DRI.\n",
major, minor, patch,
@ -1208,9 +1208,9 @@ Bool MGADRIScreenInit( ScreenPtr pScreen )
return FALSE;
}
pMGADRIServer = (MGADRIServerPrivatePtr)
xcalloc( sizeof(MGADRIServerPrivateRec), 1 );
if ( !pMGADRIServer ) {
pXF86DRIServer = (XF86DRIServerPrivatePtr)
xcalloc( sizeof(XF86DRIServerPrivateRec), 1 );
if ( !pXF86DRIServer ) {
xfree( pMGADRI );
DRIDestroyInfoRec( pMga->pDRIInfo );
pMga->pDRIInfo = 0;
@ -1218,7 +1218,7 @@ Bool MGADRIScreenInit( ScreenPtr pScreen )
"[drm] Failed to allocate memory for private record\n" );
return FALSE;
}
pMga->DRIServerInfo = pMGADRIServer;
pMga->DRIServerInfo = pXF86DRIServer;
pDRIInfo->devPrivate = pMGADRI;
pDRIInfo->devPrivateSize = sizeof(MGADRIRec);
@ -1228,9 +1228,9 @@ Bool MGADRIScreenInit( ScreenPtr pScreen )
pDRIInfo->DestroyContext = MGADestroyContext;
if ( xf86IsEntityShared( pScrn->entityList[0] )
&& pMga->DualHeadEnabled) {
pDRIInfo->SwapContext = MGADRISwapContextShared;
pDRIInfo->SwapContext = XF86DRISwapContextShared;
} else {
pDRIInfo->SwapContext = MGADRISwapContext;
pDRIInfo->SwapContext = XF86DRISwapContext;
}
#ifdef USE_EXA
@ -1250,7 +1250,7 @@ Bool MGADRIScreenInit( ScreenPtr pScreen )
pDRIInfo->bufferRequests = DRI_ALL_WINDOWS;
if ( !DRIScreenInit( pScreen, pDRIInfo, &pMga->drmFD ) ) {
xfree( pMGADRIServer );
xfree( pXF86DRIServer );
pMga->DRIServerInfo = 0;
xfree( pDRIInfo->devPrivate );
pDRIInfo->devPrivate = 0;
@ -1288,7 +1288,7 @@ Bool MGADRIScreenInit( ScreenPtr pScreen )
version->version_minor < 1) {
/* incompatible drm library version */
xf86DrvMsg(pScreen->myNum, X_ERROR,
"[dri] MGADRIScreenInit failed because of a version mismatch.\n"
"[dri] XF86DRIScreenInit failed because of a version mismatch.\n"
"[dri] libdrm.a module version is %d.%d.%d but version 1.1.x is needed.\n"
"[dri] Disabling DRI.\n",
version->version_major,
@ -1308,7 +1308,7 @@ Bool MGADRIScreenInit( ScreenPtr pScreen )
version->version_minor < 0 ) {
/* incompatible drm version */
xf86DrvMsg( pScreen->myNum, X_ERROR,
"[dri] MGADRIScreenInit failed because of a version mismatch.\n"
"[dri] XF86DRIScreenInit failed because of a version mismatch.\n"
"[dri] mga.o kernel module version is %d.%d.%d but version 3.0.x is needed.\n"
"[dri] Disabling DRI.\n",
version->version_major,
@ -1318,15 +1318,15 @@ Bool MGADRIScreenInit( ScreenPtr pScreen )
MGADRICloseScreen( pScreen ); /* FIXME: ??? */
return FALSE;
}
pMGADRIServer->drm_version_major = version->version_major;
pMGADRIServer->drm_version_minor = version->version_minor;
pXF86DRIServer->drm_version_major = version->version_major;
pXF86DRIServer->drm_version_minor = version->version_minor;
drmFreeVersion( version );
}
}
if ( (pMga->bios.host_interface == MGA_HOST_PCI) &&
((pMGADRIServer->drm_version_minor < 2) || pMga->useOldDmaInit) ) {
((pXF86DRIServer->drm_version_minor < 2) || pMga->useOldDmaInit) ) {
/* PCI cards are supported if the DRM version is at least 3.2 and the
* user has not explicitly disabled the new DMA init path (i.e., to
* support old version of the client-side driver that don't use the
@ -1351,7 +1351,7 @@ Bool MGADRIScreenInit( ScreenPtr pScreen )
void *scratch_ptr;
int scratch_int;
DRIGetDeviceInfo(pScreen, &pMGADRIServer->fb.handle,
DRIGetDeviceInfo(pScreen, &pXF86DRIServer->fb.handle,
&scratch_int, &scratch_int,
&scratch_int, &scratch_int,
&scratch_ptr);
@ -1371,7 +1371,7 @@ Bool MGADRIFinishScreenInit( ScreenPtr pScreen )
{
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
MGAPtr pMga = MGAPTR(pScrn);
MGADRIServerPrivatePtr pMGADRIServer = pMga->DRIServerInfo;
XF86DRIServerPrivatePtr pXF86DRIServer = pMga->DRIServerInfo;
MGADRIPtr pMGADRI;
int i;
@ -1411,17 +1411,17 @@ Bool MGADRIFinishScreenInit( ScreenPtr pScreen )
pMGADRI->agpMode = pMga->agpMode;
pMGADRI->frontOffset = pMGADRIServer->frontOffset;
pMGADRI->frontPitch = pMGADRIServer->frontPitch;
pMGADRI->backOffset = pMGADRIServer->backOffset;
pMGADRI->backPitch = pMGADRIServer->backPitch;
pMGADRI->depthOffset = pMGADRIServer->depthOffset;
pMGADRI->depthPitch = pMGADRIServer->depthPitch;
pMGADRI->textureOffset = pMGADRIServer->textureOffset;
pMGADRI->textureSize = pMGADRIServer->textureSize;
pMGADRI->frontOffset = pXF86DRIServer->frontOffset;
pMGADRI->frontPitch = pXF86DRIServer->frontPitch;
pMGADRI->backOffset = pXF86DRIServer->backOffset;
pMGADRI->backPitch = pXF86DRIServer->backPitch;
pMGADRI->depthOffset = pXF86DRIServer->depthOffset;
pMGADRI->depthPitch = pXF86DRIServer->depthPitch;
pMGADRI->textureOffset = pXF86DRIServer->textureOffset;
pMGADRI->textureSize = pXF86DRIServer->textureSize;
pMGADRI->agpTextureOffset = (unsigned int)pMGADRIServer->agpTextures.handle;
pMGADRI->agpTextureSize = (unsigned int)pMGADRIServer->agpTextures.size;
pMGADRI->agpTextureOffset = (unsigned int)pXF86DRIServer->agpTextures.handle;
pMGADRI->agpTextureSize = (unsigned int)pXF86DRIServer->agpTextures.size;
pMGADRI->sarea_priv_offset = sizeof(XF86DRISAREARec);
@ -1430,20 +1430,20 @@ Bool MGADRIFinishScreenInit( ScreenPtr pScreen )
* kernel version is high enough to support interrupt based waiting.
*/
pMGADRI->registers.handle = pMGADRIServer->registers.handle;
pMGADRI->registers.size = pMGADRIServer->registers.size;
pMGADRI->primary.handle = pMGADRIServer->primary.handle;
pMGADRI->primary.size = pMGADRIServer->primary.size;
pMGADRI->registers.handle = pXF86DRIServer->registers.handle;
pMGADRI->registers.size = pXF86DRIServer->registers.size;
pMGADRI->primary.handle = pXF86DRIServer->primary.handle;
pMGADRI->primary.size = pXF86DRIServer->primary.size;
/* These are no longer used by the client-side DRI driver. They should
* be removed in the next release (i.e., 6.9 / 7.0).
*/
pMGADRI->status.handle = pMGADRIServer->status.handle;
pMGADRI->status.size = pMGADRIServer->status.size;
pMGADRI->buffers.handle = pMGADRIServer->buffers.handle;
pMGADRI->buffers.size = pMGADRIServer->buffers.size;
pMGADRI->status.handle = pXF86DRIServer->status.handle;
pMGADRI->status.size = pXF86DRIServer->status.size;
pMGADRI->buffers.handle = pXF86DRIServer->buffers.handle;
pMGADRI->buffers.size = pXF86DRIServer->buffers.size;
i = mylog2( pMGADRI->textureSize / MGA_NR_TEX_REGIONS );
if ( i < MGA_LOG_MIN_TEX_REGION_SIZE )
@ -1452,7 +1452,7 @@ Bool MGADRIFinishScreenInit( ScreenPtr pScreen )
pMGADRI->logTextureGranularity = i;
pMGADRI->textureSize = (pMGADRI->textureSize >> i) << i; /* truncate */
i = mylog2( pMGADRIServer->agpTextures.size / MGA_NR_TEX_REGIONS );
i = mylog2( pXF86DRIServer->agpTextures.size / MGA_NR_TEX_REGIONS );
if ( i < MGA_LOG_MIN_TEX_REGION_SIZE )
i = MGA_LOG_MIN_TEX_REGION_SIZE;
@ -1466,12 +1466,12 @@ void MGADRICloseScreen( ScreenPtr pScreen )
{
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
MGAPtr pMga = MGAPTR(pScrn);
MGADRIServerPrivatePtr pMGADRIServer = pMga->DRIServerInfo;
XF86DRIServerPrivatePtr pXF86DRIServer = pMga->DRIServerInfo;
drm_mga_init_t init;
if ( pMGADRIServer->drmBuffers ) {
drmUnmapBufs( pMGADRIServer->drmBuffers );
pMGADRIServer->drmBuffers = NULL;
if ( pXF86DRIServer->drmBuffers ) {
drmUnmapBufs( pXF86DRIServer->drmBuffers );
pXF86DRIServer->drmBuffers = NULL;
}
if (pMga->irq) {
@ -1485,10 +1485,10 @@ void MGADRICloseScreen( ScreenPtr pScreen )
init.func = MGA_CLEANUP_DMA;
drmCommandWrite( pMga->drmFD, DRM_MGA_INIT, &init, sizeof(drm_mga_init_t) );
if ( pMGADRIServer->agp.handle != DRM_AGP_NO_HANDLE ) {
drmAgpUnbind( pMga->drmFD, pMGADRIServer->agp.handle );
drmAgpFree( pMga->drmFD, pMGADRIServer->agp.handle );
pMGADRIServer->agp.handle = DRM_AGP_NO_HANDLE;
if ( pXF86DRIServer->agp.handle != DRM_AGP_NO_HANDLE ) {
drmAgpUnbind( pMga->drmFD, pXF86DRIServer->agp.handle );
drmAgpFree( pMga->drmFD, pXF86DRIServer->agp.handle );
pXF86DRIServer->agp.handle = DRM_AGP_NO_HANDLE;
drmAgpRelease( pMga->drmFD );
}

View File

@ -71,7 +71,7 @@ typedef struct {
int drm_version_major;
int drm_version_minor;
} MGADRIServerPrivateRec, *MGADRIServerPrivatePtr;
} XF86DRIServerPrivateRec, *XF86DRIServerPrivatePtr;
/**
* Hardware information sent from server to client-side DRI driver.

View File

@ -98,7 +98,7 @@
#include "shadowfb.h"
#include "fbdevhw.h"
#ifdef XF86DRI
#ifdef MGADRI
#include "dri.h"
#endif
@ -1474,7 +1474,7 @@ MGAPreInit(ScrnInfoPtr pScrn, int flags)
pMga = MGAPTR(pScrn);
/* Set here until dri is enabled */
#ifdef XF86DRI
#ifdef MGADRI
pMga->haveQuiescense = 1;
#endif
/* Get the entity, and make sure it is PCI. */
@ -1674,13 +1674,13 @@ MGAPreInit(ScrnInfoPtr pScrn, int flags)
}
if (pMga->DualHeadEnabled) {
#ifdef XF86DRI
#ifdef MGADRI
pMga->GetQuiescence = MGAGetQuiescenceShared;
#endif
} else { /* single-head mode */
pMga->SecondCrtc = FALSE;
pMga->HWCursor = TRUE;
#ifdef XF86DRI
#ifdef MGADRI
pMga->GetQuiescence = MGAGetQuiescence;
#endif
}
@ -1917,7 +1917,7 @@ MGAPreInit(ScrnInfoPtr pScrn, int flags)
if (pScrn->depth == 8)
pScrn->rgbBits = 8;
#ifdef XF86DRI
#ifdef MGADRI
from = X_DEFAULT;
pMga->agpMode = MGA_DEFAULT_AGP_MODE;
@ -2713,7 +2713,7 @@ MGAPreInit(ScrnInfoPtr pScrn, int flags)
}
}
#ifdef XF86DRI
#ifdef MGADRI
/* Load the dri module if requested. */
if (xf86ReturnOptValBool(pMga->Options, OPTION_DRI, FALSE)) {
xf86LoadSubModule(pScrn, "dri");
@ -3170,7 +3170,7 @@ MGA_HAL(
); /* MGA_HAL */
#endif
#ifdef XF86DRI
#ifdef MGADRI
if (pMga->directRenderingEnabled) {
DRILock(screenInfo.screens[pScrn->scrnIndex], 0);
}
@ -3242,7 +3242,7 @@ MGA_HAL(
pMga->M1currentMode = (DisplayModePtr)mode->Private;
}
#ifdef XF86DRI
#ifdef MGADRI
if (pMga->directRenderingEnabled)
DRIUnlock(screenInfo.screens[pScrn->scrnIndex]);
#endif
@ -3399,7 +3399,7 @@ MGAScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
MGAEntPtr pMgaEnt = NULL;
int f;
CARD32 VRTemp, FBTemp;
#ifdef XF86DRI
#ifdef MGADRI
MessageType driFrom = X_DEFAULT;
#endif
DPMSSetProcPtr mga_dpms_set_proc = NULL;
@ -3639,7 +3639,7 @@ MGAScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
FBStart = pMga->FbStart;
}
#ifdef XF86DRI
#ifdef MGADRI
/*
* Setup DRI after visuals have been established.
*
@ -3680,7 +3680,7 @@ MGAScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
driFrom = X_PROBED;
}
else {
pMga->directRenderingEnabled = MGADRIScreenInit(pScreen);
pMga->directRenderingEnabled = XF86DRIScreenInit(pScreen);
}
#endif
@ -3795,7 +3795,7 @@ MGAScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
MGAInitVideo(pScreen);
#ifdef XF86DRI
#ifdef MGADRI
if (pMga->directRenderingEnabled) {
/* Now that mi, drm and others have done their thing,
* complete the DRI setup.
@ -4043,7 +4043,7 @@ MGAEnterVT(int scrnIndex, int flags)
pMga = MGAPTR(pScrn);
#ifdef XF86DRI
#ifdef MGADRI
if (pMga->directRenderingEnabled) {
if (pMga->irq) {
/* Need to make sure interrupts are enabled */
@ -4069,7 +4069,7 @@ static Bool
MGAEnterVTFBDev(int scrnIndex, int flags)
{
ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
#ifdef XF86DRI
#ifdef MGADRI
ScreenPtr pScreen;
MGAPtr pMga;
@ -4108,7 +4108,7 @@ MGALeaveVT(int scrnIndex, int flags)
{
ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
vgaHWPtr hwp = VGAHWPTR(pScrn);
#ifdef XF86DRI
#ifdef MGADRI
MGAPtr pMga = MGAPTR(pScrn);
ScreenPtr pScreen;
#endif
@ -4118,7 +4118,7 @@ MGALeaveVT(int scrnIndex, int flags)
if (xf86IsPc98())
outb(0xfac, 0x00);
#ifdef XF86DRI
#ifdef MGADRI
if (pMga->directRenderingEnabled) {
pScreen = screenInfo.screens[scrnIndex];
DRILock(pScreen, 0);
@ -4163,7 +4163,7 @@ MGACloseScreen(int scrnIndex, ScreenPtr pScreen)
vgaHWUnmapMem(pScrn);
}
}
#ifdef XF86DRI
#ifdef MGADRI
if (pMga->directRenderingEnabled) {
MGADRICloseScreen(pScreen);
pMga->directRenderingEnabled=FALSE;

View File

@ -41,7 +41,7 @@
#include "mga_macros.h"
#include "exa.h"
#ifdef XF86DRI
#ifdef MGADRI
#include "mga_dri.h"
#endif
@ -763,12 +763,12 @@ mgaWaitMarker(ScreenPtr pScreen, int marker)
while (INREG (MGAREG_Status) & 0x10000);
}
#ifdef XF86DRI
#ifdef MGADRI
static void
init_dri(ScrnInfoPtr pScrn)
{
MGAPtr pMga = MGAPTR(pScrn);
MGADRIServerPrivatePtr dri = pMga->DRIServerInfo;
XF86DRIServerPrivatePtr dri = pMga->DRIServerInfo;
int cpp = pScrn->bitsPerPixel / 8;
int widthBytes = pScrn->displayWidth * cpp;
int bufferSize = ((pScrn->virtualY * widthBytes + MGA_BUFFER_ALIGN)
@ -837,7 +837,7 @@ init_dri(ScrnInfoPtr pScrn)
MGA_BUFFER_ALIGN) & ~MGA_BUFFER_ALIGN;
dri->backPitch = widthBytes;
}
#endif /* XF86DRI */
#endif /* MGADRI */
Bool
mgaExaInit(ScreenPtr pScreen)
@ -898,7 +898,7 @@ mgaExaInit(ScreenPtr pScreen)
pExa->UploadToScreen = mgaUploadToScreen;
pExa->DownloadFromScreen = mgaDownloadFromScreen;
#ifdef XF86DRI
#ifdef MGADRI
if (pMga->directRenderingEnabled)
init_dri(pScrn);
#endif

View File

@ -19,7 +19,7 @@
#define RGBEQUAL(c) (!((((c) >> 8) ^ (c)) & 0xffff))
#ifdef XF86DRI
#ifdef MGADRI
#define MGA_SYNC_XTAG 0x275f4200
#define MGABUSYWAIT() do { \
@ -66,7 +66,7 @@ while(INREG(MGAREG_DWGSYNC) != MGA_SYNC_XTAG) ; \
WAITFIFO(1); \
OUTREG(MGAREG_CXBNDRY, 0xFFFF0000); }
#ifdef XF86DRI
#ifdef MGADRI
#define CHECK_DMA_QUIESCENT(pMGA, pScrn) { \
if (!pMGA->haveQuiescense) { \
pMGA->GetQuiescence( pScrn ); \

View File

@ -322,7 +322,7 @@ MGAPreInitMergedFB(ScrnInfoPtr pScrn1, int flags)
pMga->Chipset = pMga1->Chipset;
pMga->ChipRev = pMga1->ChipRev;
#ifdef XF86DRI
#ifdef MGADRI
pMga->agpMode = pMga1->agpMode;
#endif

View File

@ -24,7 +24,7 @@
#include "miline.h"
#include "servermd.h"
#ifdef XF86DRI
#ifdef MGADRI
#include "GL/glxtokens.h"
#endif
@ -32,7 +32,7 @@
#include "mga_reg.h"
#include "mga_macros.h"
#ifdef XF86DRI
#ifdef MGADRI
#include "mga_dri.h"
#endif
@ -797,9 +797,9 @@ Bool mgaAccelInit( ScreenPtr pScreen )
break;
}
#ifdef XF86DRI
#ifdef MGADRI
if ( pMga->directRenderingEnabled ) {
MGADRIServerPrivatePtr pMGADRIServer = pMga->DRIServerInfo;
XF86DRIServerPrivatePtr pXF86DRIServer = pMga->DRIServerInfo;
BoxRec MemBox;
int cpp = pScrn->bitsPerPixel / 8;
int widthBytes = pScrn->displayWidth * cpp;
@ -807,30 +807,30 @@ Bool mgaAccelInit( ScreenPtr pScreen )
& ~MGA_BUFFER_ALIGN);
int scanlines;
pMGADRIServer->frontOffset = 0;
pMGADRIServer->frontPitch = widthBytes;
pXF86DRIServer->frontOffset = 0;
pXF86DRIServer->frontPitch = widthBytes;
/* Try for front, back, depth, and two framebuffers worth of
* pixmap cache. Should be enough for a fullscreen background
* image plus some leftovers.
*/
pMGADRIServer->textureSize = pMga->FbMapSize - 5 * bufferSize;
pXF86DRIServer->textureSize = pMga->FbMapSize - 5 * bufferSize;
/* If that gives us less than half the available memory, let's
* be greedy and grab some more. Sorry, I care more about 3D
* performance than playing nicely, and you'll get around a full
* framebuffer's worth of pixmap cache anyway.
*/
if ( pMGADRIServer->textureSize < (int)pMga->FbMapSize / 2 ) {
pMGADRIServer->textureSize = pMga->FbMapSize - 4 * bufferSize;
if ( pXF86DRIServer->textureSize < (int)pMga->FbMapSize / 2 ) {
pXF86DRIServer->textureSize = pMga->FbMapSize - 4 * bufferSize;
}
/* Check to see if there is more room available after the maximum
* scanline for textures.
*/
if ( (int)pMga->FbMapSize - maxlines * widthBytes - bufferSize * 2
> pMGADRIServer->textureSize ) {
pMGADRIServer->textureSize = (pMga->FbMapSize -
> pXF86DRIServer->textureSize ) {
pXF86DRIServer->textureSize = (pMga->FbMapSize -
maxlines * widthBytes -
bufferSize * 2);
}
@ -838,28 +838,28 @@ Bool mgaAccelInit( ScreenPtr pScreen )
/* Set a minimum usable local texture heap size. This will fit
* two 256x256x32bpp textures.
*/
if ( pMGADRIServer->textureSize < 512 * 1024 ) {
pMGADRIServer->textureOffset = 0;
pMGADRIServer->textureSize = 0;
if ( pXF86DRIServer->textureSize < 512 * 1024 ) {
pXF86DRIServer->textureOffset = 0;
pXF86DRIServer->textureSize = 0;
}
/* Reserve space for textures */
pMGADRIServer->textureOffset = (pMga->FbMapSize -
pMGADRIServer->textureSize +
pXF86DRIServer->textureOffset = (pMga->FbMapSize -
pXF86DRIServer->textureSize +
MGA_BUFFER_ALIGN) & ~MGA_BUFFER_ALIGN;
/* Reserve space for the shared depth buffer */
pMGADRIServer->depthOffset = (pMGADRIServer->textureOffset -
pXF86DRIServer->depthOffset = (pXF86DRIServer->textureOffset -
bufferSize +
MGA_BUFFER_ALIGN) & ~MGA_BUFFER_ALIGN;
pMGADRIServer->depthPitch = widthBytes;
pXF86DRIServer->depthPitch = widthBytes;
/* Reserve space for the shared back buffer */
pMGADRIServer->backOffset = (pMGADRIServer->depthOffset - bufferSize +
pXF86DRIServer->backOffset = (pXF86DRIServer->depthOffset - bufferSize +
MGA_BUFFER_ALIGN) & ~MGA_BUFFER_ALIGN;
pMGADRIServer->backPitch = widthBytes;
pXF86DRIServer->backPitch = widthBytes;
scanlines = pMGADRIServer->backOffset / widthBytes - 1;
scanlines = pXF86DRIServer->backOffset / widthBytes - 1;
if ( scanlines > maxlines ) scanlines = maxlines;
MemBox.x1 = 0;
@ -889,17 +889,17 @@ Bool mgaAccelInit( ScreenPtr pScreen )
xf86DrvMsg( pScrn->scrnIndex, X_INFO,
"Reserved back buffer at offset 0x%x\n",
pMGADRIServer->backOffset );
pXF86DRIServer->backOffset );
xf86DrvMsg( pScrn->scrnIndex, X_INFO,
"Reserved depth buffer at offset 0x%x\n",
pMGADRIServer->depthOffset );
pXF86DRIServer->depthOffset );
xf86DrvMsg( pScrn->scrnIndex, X_INFO,
"Reserved %d kb for textures at offset 0x%x\n",
pMGADRIServer->textureSize/1024,
pMGADRIServer->textureOffset );
pXF86DRIServer->textureSize/1024,
pXF86DRIServer->textureOffset );
}
else
#endif /* defined(XF86DRI) */
#endif /* defined(MGADRI) */
{
AvailFBArea.x1 = 0;
AvailFBArea.x2 = pScrn->displayWidth;

View File

@ -177,7 +177,6 @@ build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
distcleancheck_listfiles = @distcleancheck_listfiles@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@