Right now I'm able to use Xorg with an fbdev drived device without the server stomps the inexistent PCI hardware on it. Yay!
Signed-off-by: Tiago Vignatti <[email protected]> --- configure.ac | 84 ++++++++++++++++++++++++++------------------- include/xorg-config.h.in | 3 ++ 2 files changed, 51 insertions(+), 36 deletions(-) diff --git a/configure.ac b/configure.ac index be39c76..8f4470e 100644 --- a/configure.ac +++ b/configure.ac @@ -586,6 +586,7 @@ AC_ARG_ENABLE(xaa, AS_HELP_STRING([--enable-xaa], [Build XAA (defa AC_ARG_ENABLE(vgahw, AS_HELP_STRING([--enable-vgahw], [Build Xorg with vga access (default: enabled)]), [VGAHW=$enableval], [VGAHW=yes]) AC_ARG_ENABLE(vbe, AS_HELP_STRING([--enable-vbe], [Build Xorg with VBE module (default: enabled)]), [VBE=$enableval], [VBE=yes]) AC_ARG_ENABLE(int10-module, AS_HELP_STRING([--enable-int10-module], [Build Xorg with int10 module (default: enabled)]), [INT10MODULE=$enableval], [INT10MODULE=yes]) +AC_ARG_ENABLE(pci, AS_HELP_STRING([--enable-pci], [Build Xorg with pciaccess library (default: enabled)]), [PCI=$enableval], [PCI=yes]) dnl DDXes. AC_ARG_ENABLE(xorg, AS_HELP_STRING([--enable-xorg], [Build Xorg server (default: auto)]), [XORG=$enableval], [XORG=auto]) @@ -1121,7 +1122,6 @@ if test "x$XDMAUTH" = xyes; then fi AC_DEFINE_DIR(COMPILEDDEFAULTFONTPATH, FONTPATH, [Default font path]) -AC_DEFINE_DIR(PCI_TXT_IDS_PATH, PCI_TXT_IDS_DIR, [Default PCI text file ID path]) AC_DEFINE_DIR(SERVER_MISC_CONFIG_PATH, SERVERCONFIG, [Server miscellaneous config path]) AC_DEFINE_DIR(BASE_FONT_PATH, FONTDIR, [Default base font path]) AC_DEFINE_DIR(DRI_DRIVER_PATH, DRI_DRIVER_PATH, [Default DRI driver path]) @@ -1324,10 +1324,6 @@ if test "x$XORG" = xauto; then fi AC_MSG_RESULT([$XORG]) -xorg_bus_linuxpci=no -xorg_bus_bsdpci=no -xorg_bus_sparc=no - if test "x$XORG" = xyes; then XORG_DDXINCS='-I$(top_srcdir)/hw/xfree86 -I$(top_srcdir)/hw/xfree86/include -I$(top_srcdir)/hw/xfree86/common' XORG_OSINCS='-I$(top_srcdir)/hw/xfree86/os-support -I$(top_srcdir)/hw/xfree86/os-support/bus -I$(top_srcdir)/os' @@ -1376,17 +1372,53 @@ if test "x$XORG" = xyes; then AC_SUBST([symbol_visibility]) dnl =================================================================== - PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.8.0]) - SAVE_LIBS=$LIBS - SAVE_CFLAGS=$CFLAGS - CFLAGS=$PCIACCESS_CFLAGS - LIBS=$PCIACCESS_LIBS - AC_CHECK_FUNCS([pci_system_init_dev_mem]) - AC_CHECK_FUNCS([pci_device_enable]) - LIBS=$SAVE_LIBS - CFLAGS=$SAVE_CFLAGS - XORG_SYS_LIBS="$XORG_SYS_LIBS $PCIACCESS_LIBS $DLOPEN_LIBS $GLX_SYS_LIBS" - XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS" + dnl =================================================================== + dnl ================= beginning of PCI configuration ================== + dnl =================================================================== + + xorg_bus_linuxpci=no + xorg_bus_bsdpci=no + xorg_bus_sparc=no + + AC_MSG_CHECKING([whether to build Xorg PCI functions]) + if test "x$PCI" = xyes; then + PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.8.0]) + SAVE_LIBS=$LIBS + SAVE_CFLAGS=$CFLAGS + CFLAGS=$PCIACCESS_CFLAGS + LIBS=$PCIACCESS_LIBS + AC_CHECK_FUNCS([pci_system_init_dev_mem]) + AC_CHECK_FUNCS([pci_device_enable]) + LIBS=$SAVE_LIBS + CFLAGS=$SAVE_CFLAGS + XORG_SYS_LIBS="$XORG_SYS_LIBS $PCIACCESS_LIBS $DLOPEN_LIBS $GLX_SYS_LIBS" + XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS" + AC_DEFINE(XSERVER_LIBPCIACCESS, 1, [Use libpciaccess for all pci manipulation]) + AC_DEFINE_DIR(PCI_TXT_IDS_PATH, PCI_TXT_IDS_DIR, [Default PCI text file ID path]) + + case $host_os in + linux*) + xorg_bus_linuxpci="yes" + ;; + freebsd* | kfreebsd*-gnu | dragonfly* | netbsd* | openbsd* | solaris*) + xorg_bus_bsdpci="yes" + ;; + esac + case $host_cpu in + sparc*) + xorg_bus_sparc="yes" + ;; + esac + fi + AC_MSG_RESULT([$PCI]) + + AM_CONDITIONAL([XORG_LIBPCIACCESS], [test "x$PCI" = xyes]) + AM_CONDITIONAL([XORG_BUS_LINUXPCI], [test "x$xorg_bus_linuxpci" = xyes]) + AM_CONDITIONAL([XORG_BUS_BSDPCI], [test "x$xorg_bus_bsdpci" = xyes]) + AM_CONDITIONAL([XORG_BUS_SPARC], [test "x$xorg_bus_sparc" = xyes]) + dnl =================================================================== + dnl ==================== end of PCI configuration ===================== + dnl =================================================================== case $host_os in linux*) @@ -1395,7 +1427,6 @@ if test "x$XORG" = xyes; then fi XORG_OS="linux" XORG_OS_SUBDIR="linux" - xorg_bus_linuxpci="yes" linux_acpi="no" case $host_cpu in ia64*) @@ -1415,12 +1446,10 @@ if test "x$XORG" = xyes; then freebsd* | kfreebsd*-gnu | dragonfly*) XORG_OS="freebsd" XORG_OS_SUBDIR="bsd" - xorg_bus_bsdpci="yes" ;; netbsd*) XORG_OS="netbsd" XORG_OS_SUBDIR="bsd" - xorg_bus_bsdpci="yes" ;; openbsd*) if test "x$ac_cv_BSD_APM" = xyes \ @@ -1429,14 +1458,10 @@ if test "x$XORG" = xyes; then fi XORG_OS="openbsd" XORG_OS_SUBDIR="bsd" - xorg_bus_bsdpci="yes" ;; solaris*) XORG_OS="solaris" XORG_OS_SUBDIR="solaris" - # Use the same stubs as BSD for old functions, since we now - # use libpciaccess for PCI - xorg_bus_bsdpci="yes" AC_CHECK_HEADERS([sys/kd.h]) # This really should be tests for specific features, but the #ifdef's # were done as a simple version check in XFree86 4.x and haven't been @@ -1502,15 +1527,6 @@ if test "x$XORG" = xyes; then ;; esac - case $host_cpu in - sparc*) - xorg_bus_sparc="yes" - ;; - esac - - if test "x$XORG_OS_PCI" = x ; then - XORG_OS_PCI=$XORG_OS - fi if test "x$DGA" = xauto; then PKG_CHECK_MODULES(DGA, xf86dgaproto, [DGA=yes], [DGA=no]) fi @@ -1569,7 +1585,6 @@ if test "x$XORG" = xyes; then AC_DEFINE_DIR(DEFAULT_LIBRARY_PATH, libdir, [Default library install path]) AC_DEFINE_DIR(DEFAULT_LOGPREFIX, LOGPREFIX, [Default log location]) AC_DEFINE_UNQUOTED(__VENDORDWEBSUPPORT__, ["$VENDOR_WEB"], [Vendor web address for support]) - AC_DEFINE(XSERVER_LIBPCIACCESS, 1, [Use libpciaccess for all pci manipulation]) if test "x$VGAHW" = xyes; then AC_DEFINE(WITH_VGAHW, 1, [Building vgahw module]) fi @@ -1597,9 +1612,6 @@ if test "x$XORG" = xyes; then AC_SUBST([abi_extension]) fi AM_CONDITIONAL([XORG], [test "x$XORG" = xyes]) -AM_CONDITIONAL([XORG_BUS_LINUXPCI], [test "x$xorg_bus_linuxpci" = xyes]) -AM_CONDITIONAL([XORG_BUS_BSDPCI], [test "x$xorg_bus_bsdpci" = xyes]) -AM_CONDITIONAL([XORG_BUS_SPARC], [test "x$xorg_bus_sparc" = xyes]) AM_CONDITIONAL([LINUX_IA64], [test "x$linux_ia64" = xyes]) AM_CONDITIONAL([LINUX_ALPHA], [test "x$linux_alpha" = xyes]) AM_CONDITIONAL([LNXACPI], [test "x$linux_acpi" = xyes]) diff --git a/include/xorg-config.h.in b/include/xorg-config.h.in index ebeb44a..8345cd5 100644 --- a/include/xorg-config.h.in +++ b/include/xorg-config.h.in @@ -124,4 +124,7 @@ /* Path to text files containing PCI IDs */ #undef PCI_TXT_IDS_PATH +/* Have PCI */ +#undef XSERVER_LIBPCIACCESS + #endif /* _XORG_CONFIG_H_ */ -- 1.5.6.3 _______________________________________________ xorg-devel mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-devel
