Add some initial BSD support for the xorg server. Incomplete on NetBSD,
OpenBSD, and non-i386/amd64 FreeBSD for sure. Plus I haven't actually run it yet.
This commit is contained in:
parent
51eb6c83a3
commit
12fbcfefe6
12
ChangeLog
12
ChangeLog
|
@ -1,3 +1,15 @@
|
|||
2005-09-13 Eric Anholt <anholt@FreeBSD.org>
|
||||
|
||||
* configure.ac:
|
||||
* hw/xfree86/Makefile.am:
|
||||
* hw/xfree86/os-support/bsd/Makefile.am:
|
||||
* include/dix-config.h.in:
|
||||
* include/xorg-config.h.in:
|
||||
* include/xorg-server.h.in:
|
||||
Add some initial BSD support for the xorg server. Incomplete on NetBSD,
|
||||
OpenBSD, and non-i386/amd64 FreeBSD for sure. Plus I haven't actually
|
||||
run it yet.
|
||||
|
||||
2005-09-12 Eric Anholt <anholt@FreeBSD.org>
|
||||
|
||||
* configure.ac:
|
||||
|
|
102
configure.ac
102
configure.ac
|
@ -96,7 +96,8 @@ AC_CHECK_LIB(m, sqrt)
|
|||
AC_CHECK_HEADERS([ndbm.h dbm.h rpcsvc/dbm.h])
|
||||
|
||||
dnl AGPGART headers
|
||||
AC_CHECK_HEADERS([linux/agpgart.h sys/agpio.h])
|
||||
AC_CHECK_HEADERS([linux/agpgart.h sys/agpio.h], AGP=yes)
|
||||
AM_CONDITIONAL(AGP, [test "x$AGP" == xyes])
|
||||
|
||||
dnl APM header
|
||||
AC_CHECK_HEADERS([linux/apm_bios.h])
|
||||
|
@ -108,6 +109,31 @@ AM_CONDITIONAL(FBDEVHW, [test "x$FBDEV" = xyes])
|
|||
dnl MTRR header
|
||||
AC_CHECK_HEADERS([asm/mtrr.h])
|
||||
|
||||
dnl BSD MTRR header
|
||||
AC_CHECK_HEADERS([sys/memrange.h], ac_cv_memrange_h=yes)
|
||||
if test "x$ac_cv_memrange_h" == xyes; then
|
||||
AC_DEFINE(HAS_MTRR_SUPPORT, 1, [Define to 1 if BSD MTRR support is
|
||||
available])
|
||||
fi
|
||||
|
||||
dnl A NetBSD MTRR header
|
||||
AC_CHECK_HEADERS([machine/mtrr.h], ac_cv_mtrr_h=yes)
|
||||
if test "x$ac_cv_mtrr_h" == xyes; then
|
||||
AC_DEFINE(HAS_MTRR_BUILTIN, 1, [Define to 1 if NetBSD built-in MTRR
|
||||
support is available])
|
||||
fi
|
||||
|
||||
dnl FreeBSD kldload support (sys/linker.h)
|
||||
AC_CACHE_CHECK([for sys/linker.h],
|
||||
ac_cv_sys_linker_h,
|
||||
[AC_TRY_RUN([
|
||||
#include <sys/param.h>
|
||||
#include <sys/linker.h>
|
||||
],
|
||||
[ac_cv_sys_linker_h=yes],
|
||||
[ac_cv_sys_linker_h=no])])
|
||||
AM_CONDITIONAL(FREEBSD_KLDLOAD, [test "x$ac_cv_sys_linker_h" == xyes])
|
||||
|
||||
AC_CACHE_CHECK([for SYSV IPC],
|
||||
ac_cv_sysv_ipc,
|
||||
[AC_TRY_RUN([
|
||||
|
@ -136,21 +162,78 @@ use_x86_asm="no"
|
|||
dnl Override defaults as needed for specific platforms:
|
||||
|
||||
case $host_cpu in
|
||||
sparc*)
|
||||
xorg_bus_sparc="yes"
|
||||
xorg_loader_sparcmuldiv="yes"
|
||||
alpha*)
|
||||
ALPHA_VIDEO=yes
|
||||
case $host_os in
|
||||
*netbsd*) AC_DEFINE(USE_ALPHA_PIO, 1, [NetBSD PIO alpha IO]) ;;
|
||||
esac
|
||||
;;
|
||||
arm*)
|
||||
ARM_VIDEO=yes
|
||||
;;
|
||||
i*86)
|
||||
xorg_bus_ix86pci="yes"
|
||||
use_x86_asm="yes"
|
||||
I386_VIDEO=yes
|
||||
case $host_os in
|
||||
*linux*) DEFAULT_INT10=vm86 ;;
|
||||
*bsd*) xorg_bus_ix86pci="no" ;;
|
||||
*freebsd*) xorg_bus_ix86pci="no"
|
||||
AC_DEFINE(USE_DEV_IO) ;;
|
||||
*netbsd*) xorg_bus_ix86pci="no"
|
||||
AC_DEFINE(USE_I386_IOPL) ;;
|
||||
*openbsd*) xorg_bus_ix86pci="no"
|
||||
AC_DEFINE(USE_I386_IOPL) ;;
|
||||
esac
|
||||
;;
|
||||
x86_64*)
|
||||
use_x86_asm="yes"
|
||||
powerpc*)
|
||||
PPC_VIDEO=yes
|
||||
case $host_os in
|
||||
*freebsd*) DEFAULT_INT10=stub ;;
|
||||
esac
|
||||
;;
|
||||
sparc*)
|
||||
xorg_bus_sparc="yes"
|
||||
xorg_loader_sparcmuldiv="yes"
|
||||
SPARC64_VIDEO=yes
|
||||
BSD_ARCH_SOURCES="sparc64_video.c ioperm_noop.c"
|
||||
;;
|
||||
x86_64*|amd64*)
|
||||
xorg_bus_ix86pci="yes"
|
||||
use_x86_asm="yes"
|
||||
I386_VIDEO=yes
|
||||
case $host_os in
|
||||
*freebsd*) AC_DEFINE(USE_DEV_IO, 1, [BSD /dev/io]) ;;
|
||||
*netbsd*) AC_DEFINE(USE_I386_IOPL, 1, [BSD i386 iopl]) ;;
|
||||
*openbsd*) AC_DEFINE(USE_AMD64_IOPL, 1, [BSD AMD64 iopl]) ;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
dnl BSD *_video.c selection
|
||||
AM_CONDITIONAL(ALPHA_VIDEO, [test "x$ALPHA_VIDEO" == xyes])
|
||||
AM_CONDITIONAL(ARM_VIDEO, [test "x$ARM_VIDEO" == xyes])
|
||||
AM_CONDITIONAL(I386_VIDEO, [test "x$I386_VIDEO" == xyes])
|
||||
AM_CONDITIONAL(PPC_VIDEO, [test "x$PPC_VIDEO" == xyes])
|
||||
AM_CONDITIONAL(SPARC64_VIDEO, [test "x$SPARC64_VIDEO" == xyes])
|
||||
|
||||
dnl it would be nice to autodetect these *CONS_SUPPORTs
|
||||
case $host_os in
|
||||
*freebsd*)
|
||||
AC_DEFINE(CSRG_BASED, 1, [System is BSD-like])
|
||||
AC_DEFINE(PCCONS_SUPPORT, 1, [System has PC console])
|
||||
AC_DEFINE(PCVT_SUPPORT, 1, [System has PCVT console])
|
||||
AC_DEFINE(SYSCONS_SUPPORT, 1, [System has syscons console])
|
||||
;;
|
||||
*netbsd*)
|
||||
AC_DEFINE(CSRG_BASED, 1, [System is BSD-like])
|
||||
AC_DEFINE(PCCONS_SUPPORT, 1, [System has PC console])
|
||||
AC_DEFINE(WSCONS_SUPPORT, 1, [System has wscons console])
|
||||
;;
|
||||
*openbsd*)
|
||||
AC_DEFINE(CSRG_BASED, 1, [System is BSD-like])
|
||||
AC_DEFINE(PCCONS_SUPPORT, 1, [System has PC console])
|
||||
AC_DEFINE(WSCONS_SUPPORT, 1, [System has wscons console])
|
||||
;;
|
||||
esac
|
||||
|
||||
|
@ -585,7 +668,9 @@ if test "x$XORG" = xyes; then
|
|||
XORG_CFLAGS="$XORGSERVER_CFLAGS -DHAVE_XORG_CONFIG_H"
|
||||
XORG_CORE_LIBS="$DIX_LIB"
|
||||
XORG_LIBS="$MI_LIB $FIXES_LIB $XEXT_LIB $XTRAP_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $MIEXT_LAYER_LIB $XI_LIB $XKB_LIB $COMPOSITE_LIB $XPSTUBS_LIB $OS_LIB"
|
||||
|
||||
|
||||
AC_CHECK_LIB([dl], [dlopen], XORG_LIBS="$XORG_LIBS -ldl")
|
||||
|
||||
case $host_os in
|
||||
linux*)
|
||||
XORG_OS="linux"
|
||||
|
@ -940,6 +1025,7 @@ hw/xfree86/i2c/Makefile
|
|||
hw/xfree86/int10/Makefile
|
||||
hw/xfree86/loader/Makefile
|
||||
hw/xfree86/os-support/Makefile
|
||||
hw/xfree86/os-support/bsd/Makefile
|
||||
hw/xfree86/os-support/bus/Makefile
|
||||
hw/xfree86/os-support/drm/Makefile
|
||||
hw/xfree86/os-support/misc/Makefile
|
||||
|
|
|
@ -49,8 +49,7 @@ XORG_LIBS = \
|
|||
|
||||
Xorg_LDADD = $(XORG_LIBS) \
|
||||
@XSERVER_LIBS@ \
|
||||
dixmods/libxorgxkb.la \
|
||||
-ldl
|
||||
dixmods/libxorgxkb.la
|
||||
|
||||
Xorg_LDFLAGS = $(LD_EXPORT_SYMBOLS_FLAG)
|
||||
|
||||
|
|
76
hw/xfree86/os-support/bsd/Makefile.am
Normal file
76
hw/xfree86/os-support/bsd/Makefile.am
Normal file
|
@ -0,0 +1,76 @@
|
|||
noinst_LTLIBRARIES = libbsd.la
|
||||
|
||||
# FIXME: Add USB mouse support?
|
||||
|
||||
# FIXME: APM support.
|
||||
APM_SOURCES = $(srcdir)/../shared/pm_noop.c
|
||||
|
||||
if FREEBSD_KLDLOAD
|
||||
KMOD_SOURCES = bsd_kmod.c
|
||||
else
|
||||
KMOD_SOURCES = $(srcdir)/../shared/kmod_noop.c
|
||||
endif
|
||||
|
||||
# FIXME: Non-i386/ia64 resource support.
|
||||
RES_SOURCES = $(srcdir)/../shared/stdResource.c
|
||||
|
||||
if AGP
|
||||
AGP_SOURCES = $(srcdir)/../linux/lnx_agp.c
|
||||
else
|
||||
AGP_SOURCES = $(srcdir)/../shared/agp_noop.c
|
||||
endif
|
||||
|
||||
if ALPHA_VIDEO
|
||||
# Cheat here and piggyback other alpha bits on ALPHA_VIDEO.
|
||||
ARCH_SOURCES = \
|
||||
alpha_video.c \
|
||||
bsd_ev56.c \
|
||||
bsd_axp.c \
|
||||
$(srcdir)/../shared/xf86Axp.c
|
||||
endif
|
||||
|
||||
if ARM_VIDEO
|
||||
ARCH_SOURCES = arm_video.c
|
||||
endif
|
||||
|
||||
if I386_VIDEO
|
||||
ARCH_SOURCES = i386_video.c
|
||||
endif
|
||||
|
||||
if PPC_VIDEO
|
||||
ARCH_SOURCES = ppc_video.c
|
||||
endif
|
||||
|
||||
if SPARC64_VIDEO
|
||||
# Cheat here and piggyback other sparc64 bits on SPARC64_VIDEO.
|
||||
ARCH_SOURCES = \
|
||||
sparc64_video.c \
|
||||
$(srcdir)/../shared/ioperm_noop.c
|
||||
endif
|
||||
|
||||
# FIXME: NetBSD Aperture defines (configure.ac)
|
||||
AM_CFLAGS = -DUSESTDRES -DUSE_DEV_IO $(XORG_CFLAGS)
|
||||
|
||||
INCLUDES = $(XORG_INCS)
|
||||
|
||||
libbsd_la_SOURCES = \
|
||||
$(srcdir)/../shared/at_scancode.c \
|
||||
$(srcdir)/../shared/libc_wrapper.c \
|
||||
$(srcdir)/../shared/posix_tty.c \
|
||||
$(srcdir)/../shared/sigio.c \
|
||||
$(srcdir)/../shared/std_kbdEv.c \
|
||||
$(srcdir)/../shared/stdPci.c \
|
||||
$(srcdir)/../shared/vidmem.c \
|
||||
bsd_VTsw.c \
|
||||
bsd_init.c \
|
||||
bsd_io.c \
|
||||
bsd_kbd.c \
|
||||
bsd_KbdMap.c \
|
||||
bsd_mouse.c \
|
||||
$(ARCH_SOURCES) \
|
||||
$(AGP_SOURCES) \
|
||||
$(APM_SOURCES) \
|
||||
$(AXP_SOURCES) \
|
||||
$(DRI_SOURCES) \
|
||||
$(KMOD_SOURCES) \
|
||||
$(RES_SOURCES)
|
|
@ -391,4 +391,7 @@
|
|||
/* Define to location of RGB database */
|
||||
#undef RGB_PATH
|
||||
|
||||
/* System is BSD-like */
|
||||
#undef CSRG_BASED
|
||||
|
||||
#endif /* _DIX_CONFIG_H_ */
|
||||
|
|
|
@ -79,4 +79,37 @@
|
|||
/* Building vgahw module */
|
||||
#undef WITH_VGAHW
|
||||
|
||||
/* Define to 1 if NetBSD built-in MTRR support is available */
|
||||
#undef HAS_MTRR_BUILTIN
|
||||
|
||||
/* Define to 1 if BSD MTRR support is available */
|
||||
#undef HAS_MTRR_SUPPORT
|
||||
|
||||
/* NetBSD PIO alpha IO */
|
||||
#undef USE_ALPHA_PIO
|
||||
|
||||
/* BSD AMD64 iopl */
|
||||
#undef USE_AMD64_IOPL
|
||||
|
||||
/* BSD /dev/io */
|
||||
#undef USE_DEV_IO
|
||||
|
||||
/* BSD i386 iopl */
|
||||
#undef USE_I386_IOPL
|
||||
|
||||
/* System is BSD-like */
|
||||
#undef CSRG_BASED
|
||||
|
||||
/* System has PC console */
|
||||
#undef PCCONS_SUPPORT
|
||||
|
||||
/* System has PCVT console */
|
||||
#undef PCVT_SUPPORT
|
||||
|
||||
/* System has syscons console */
|
||||
#undef SYSCONS_SUPPORT
|
||||
|
||||
/* System has wscons console */
|
||||
#undef WSCONS_SUPPORT
|
||||
|
||||
#endif /* _XORG_CONFIG_H_ */
|
||||
|
|
|
@ -226,4 +226,19 @@
|
|||
/* Building vgahw module */
|
||||
#undef WITH_VGAHW
|
||||
|
||||
/* System is BSD-like */
|
||||
#undef CSRG_BASED
|
||||
|
||||
/* System has PC console */
|
||||
#undef PCCONS_SUPPORT
|
||||
|
||||
/* System has PCVT console */
|
||||
#undef PCVT_SUPPORT
|
||||
|
||||
/* System has syscons console */
|
||||
#undef SYSCONS_SUPPORT
|
||||
|
||||
/* System has wscons console */
|
||||
#undef WSCONS_SUPPORT
|
||||
|
||||
#endif /* _XORG_SERVER_H_ */
|
||||
|
|
Loading…
Reference in New Issue
Block a user