Add support for building Xdmx and Xvfb

This commit is contained in:
Kevin E Martin 2005-07-12 01:20:36 +00:00
parent 3fe6b5bb30
commit 02427d4d04
10 changed files with 198 additions and 53 deletions

View File

@ -1,5 +1,5 @@
module_LTLIBRARIES = libxtrap.la
noinst_LTLIBRARIES = libxtrap.la
AM_CFLAGS = $(DIX_CFLAGS)
libxtrap_la_SOURCES = xf86XTrapModule.c xtrapddmi.c xtrapdi.c xtrapdiswp.c xtrapditbl.c
libxtrap_la_SOURCES = xtrapddmi.c xtrapdi.c xtrapdiswp.c xtrapditbl.c

View File

@ -141,7 +141,8 @@ AC_ARG_ENABLE(composite, [ --enable-composite ],[COMPOSITE=$enableval],[COM
AC_ARG_ENABLE(mitshm, [ --disable-shm ],[MITSHM=$enableval],[MITSHM=yes])
AC_ARG_ENABLE(xres, [ --disable-xres ],[RES=$enableval],[RES=yes])
AC_ARG_ENABLE(xtrap, [ --enable-xtrap ],[XTRAP=$enableval],[XTRAP=no])
AC_ARG_ENABLE(record, [ --enable-record ],[RECORD=$enableval],[RECORD=no])
AC_ARG_ENABLE(record, [ --disable-record ],[RECORD=$enableval],[RECORD=yes])
AC_ARG_ENABLE(xv, [ --disable-xv ],[XV=$enableval],[XV=yes])
AC_ARG_ENABLE(screensaver, [ --disable-screensaver ],[SCREENSAVER=$enableval],[SCREENSAVER=yes])
AC_ARG_ENABLE(xdmcp, [ --disable-xdmcp ],[XDMCP=$enableval],[XDMCP=auto])
AC_ARG_ENABLE(xdm-auth-1, [ --disable-xdm-auth-1 ],[XDMAUTH=$enableval],[XDMAUTH=auto])
@ -153,6 +154,7 @@ AC_ARG_ENABLE(xf86misc, [ --disable-xf86misc ],[XF86MISC=$enableval],[XF86
AC_ARG_ENABLE(xcsecurity, AS_HELP_STRING([--enable-xcsecurity],[Build Security extension (default: disabled)]),[XCSECURITY=$enableval],[XCSECURITY=no])
AC_ARG_ENABLE(xorg, AS_HELP_STRING([--enable-xorg],[Build Xorg server (default: auto)]),[XORG=$enableval],[XORG=auto])
AC_ARG_ENABLE(dmx, AS_HELP_STRING([--enable-dmx],[Build DMX server (default: disabled)]),[DMX=$enableval],[DMX=no])
AC_ARG_ENABLE(xvfb, AS_HELP_STRING([--enable-xvfb],[Build Xvfb server (default: auto)]),[XVFB=$enableval],[XVFB=auto])
AC_ARG_ENABLE(xwin, AS_HELP_STRING([--enable-xwin],[Build XWin server (default: auto)]),[XWIN=$enableval],[XWIN=auto])
AC_ARG_ENABLE(xevie, AS_HELP_STRING([--enable-xevie],[Build XEvIE extension (default: disabled)]), [XEVIE=$enableval],[XEVIE=no])
@ -180,6 +182,12 @@ AC_ARG_WITH(module-dir, [ --with-module-dir=DIR ],
AC_ARG_WITH(builder-addr, [ --with-builder-addr=ADDRESS ],
[ BUILDERADDR="$withval" ],
[ BUILDERADDR="xorg@lists.freedesktop.org" ])
AC_ARG_WITH(os-name, [ --with-os-name=OSNAME ],
[ OSNAME="$withval" ],
[ OSNAME="UNKNOWN" ])
AC_ARG_WITH(os-vendor, [ --with-os-vendor=OSVENDOR ],
[ OSVENDOR="$withval" ],
[ OSVENDOR="" ])
AM_CONDITIONAL(INT10_VM86, [test x$INT10 = xvm86])
AM_CONDITIONAL(INT10_X86EMU, [test x$INT10 = xx86emu])
@ -197,7 +205,7 @@ AC_DEFINE(SHAPE,1,[Support SHAPE extension])
AM_CONDITIONAL(DMX, [test x$DMX = xyes])
if test "$DMX" = yes; then
PKG_CHECK_MODULES([DMXMODULES],[xmuu xextproto x11 xrender xfont])
PKG_CHECK_MODULES([DMXMODULES],[xmuu xextproto x11 xrender xfont xi dmxproto])
if test "$GLX" = yes; then
PKG_CHECK_MODULES(GL,gl)
fi
@ -213,6 +221,13 @@ fi
AC_MSG_RESULT([$XORG])
AM_CONDITIONAL(XORG, [test x$XORG = xyes])
AC_MSG_CHECKING([whether to build Xvfb DDX])
if test x$XVFB = xauto; then
XVFB="yes"
fi
AC_MSG_RESULT([$XVFB])
AM_CONDITIONAL(XVFB, [test x$XVFB = xyes])
dnl
dnl Definitions for XWin DDX
dnl
@ -323,12 +338,15 @@ AC_SUBST([XKB])
AM_CONDITIONAL(XTRAP, [test x$XTRAP = xyes])
if test "$XTRAP" = yes; then
AC_DEFINE(XTRAP,1,[Support XTrap extension])
EXTENSION_LIBS="$EXTENSION_LIBS "'$(top_builddir)/XTrap/libxtrap.la'
DMX_EXTENSIONS="$DMX_EXTENSIONS "'$(top_builddir)/XTrap/libxtrap.la'
fi
AM_CONDITIONAL(RECORD, [test x$RECORD = xyes])
if test "$RECORD" = yes; then
AC_DEFINE(RECORD,1,[Support Record extension])
AC_DEFINE(XRECORD,1,[Support Record extension])
REQUIRED_MODULES="$REQUIRED_MODULES recordproto"
EXTENSION_LIBS="$EXTENSION_LIBS "'$(top_builddir)/record/librecord.la'
DMX_EXTENSIONS="$DMX_EXTENSIONS "'$(top_builddir)/record/librecord.la'
fi
AM_CONDITIONAL(SCREENSAVER, [test x$SCREENSAVER = xyes])
@ -463,6 +481,8 @@ AC_DEFINE_UNQUOTED(COMPILEDDEFAULTFONTPATH, ["$FONTPATH"], [Default font path])
AC_DEFINE_UNQUOTED(XVENDORNAME,["$VENDOR_STRING"], [Vendor name])
AC_DEFINE_UNQUOTED(XORG_RELEASE, ["$VENDOR_RELEASE"], [Vendor release])
AC_DEFINE_UNQUOTED(BUILDERADDR, ["$BUILDERADDR"], [Builder address])
AC_DEFINE_UNQUOTED(OSNAME, ["$OSNAME"], [Operating System Name])
AC_DEFINE_UNQUOTED(OSVENDOR, ["$OSVENDOR"], [Operating System Vendor])
dnl
dnl A bunch of configuration values which shouldn't be optional
@ -514,6 +534,7 @@ MI_LIB='$(top_builddir)/mi/libmi.la'
MINIMI_LIB='$(top_builddir)/mi/libminimi.la'
MI_EXT_LIB='$(top_builddir)/mi/libmiext.la'
MI_INC='-I$(top_srcdir)/mi'
FB_LIB='$(top_builddir)/fb/libfb.la'
FB_INC='-I$(top_srcdir)/fb'
DAMAGE_LIB='$(top_builddir)/miext/damage/libdamage.la'
DAMAGE_INC='-I$(top_srcdir)/miext/damage'
@ -531,8 +552,9 @@ XSERVER_LIBS="${XSERVER_LIBS} -lm -lz"
XORG_CORE_LIBS="$DIX_LIB"
XORG_LIBS="$MI_LIB $XI_LIB $XKB_LIB $COMPOSITE_LIB $DAMAGE_LIB $EXTENSION_LIBS $XPSTUBS_LIB $OS_LIB"
XVFB_LIBS="$FB_LIB $MI_LIB $XI_LIB $XKB_LIB $COMPOSITE_LIB $DAMAGE_LIB $LAYER_LIB $EXTENSION_LIBS $XPSTUBS_LIB $OS_LIB"
XWIN_LIBS="$FB_LIB $MI_LIB $XI_LIB $XKB_LIB $COMPOSITE_LIB $DAMAGE_LIB $LAYER_LIB $EXTENSION_LIBS $XPSTUBS_LIB $OS_LIB $SHADOW_LIB"
XDMX_LIBS="$OS_LIB $DAMAGE_LIB $MINIMI_LIB $XKB_LIB $XI_LIB $DMX_EXTENSIONS"
XDMX_LIBS="$FB_LIB $MI_LIB $XI_LIB $XKB_LIB $DAMAGE_LIB $DMX_EXTENSIONS $OS_LIB $SHADOW_LIB"
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'
XORG_INCS="$XORG_DDXINCS $XORG_OSINCS"
@ -575,6 +597,7 @@ test x$XORG = xyes && case $host_os in
esac
AC_SUBST([XORG_CORE_LIBS])
AC_SUBST([XORG_LIBS])
AC_SUBST([XVFB_LIBS])
AC_SUBST([XWIN_LIBS])
AC_SUBST([EXTENSION_LIBS])
AC_SUBST([XDMX_LIBS])
@ -732,9 +755,11 @@ hw/xfree86/xf1bpp/Makefile
hw/xfree86/xf4bpp/Makefile
hw/xfree86/xf8_16bpp/Makefile
hw/xfree86/xf8_32wid/Makefile
hw/dmx/config/Makefile
hw/dmx/input/Makefile
hw/dmx/glxProxy/Makefile
hw/dmx/Makefile
hw/vfb/Makefile
hw/xwin/Makefile
xorg-server.pc
])

View File

@ -6,6 +6,10 @@ if XORG
XORG_SUBDIRS = xfree86
endif
if XVFB
XVFB_SUBDIRS = vfb
endif
if XWIN
XWIN_SUBDIRS = xwin
endif
@ -13,4 +17,5 @@ endif
SUBDIRS = \
$(XORG_SUBDIRS) \
$(XWIN_SUBDIRS) \
$(XVFB_SUBDIRS) \
$(DMX_SUBDIRS)

View File

@ -1,4 +1,4 @@
SUBDIRS = input
SUBDIRS = input config
bin_PROGRAMS = Xdmx
if XINERAMA
@ -30,55 +30,23 @@ Xdmx_SOURCES = dmxinit.c \
dmxstat.c \
dmxsync.c \
dmxextension.c \
miinitext.c \
dmxpict.c \
libc_wrapper.c \
$(top_srcdir)/fb/fbcmap.c \
$(top_srcdir)/Xext/dmx.c \
$(top_srcdir)/mi/miinitext.c \
$(GLX_SRCS)
#if COMPOSITE
#Xdmx_SOURCES += fakecw.c
#endif
miinitext.c:
echo "#include <config.h>" > $@
echo "#undef HAVE_CONFIG_H" >> $@
echo "#define DMXEXT" >> $@
echo "#undef BEZIER " >> $@
echo "#undef PEXEXT " >> $@
echo "#undef MULTIBUFFER " >> $@
echo "#undef XV " >> $@
echo "#undef XIE " >> $@
echo "#undef DBE " >> $@
echo "#undef XF86VIDMODE " >> $@
echo "#undef XF86MISC " >> $@
echo "#undef XFreeXDGA " >> $@
echo "#undef XF86DRI " >> $@
echo "#undef MITSHM " >> $@
echo "#undef TOGCUP " >> $@
echo "#undef DPSEXT " >> $@
echo "#undef MITMISC " >> $@
echo "#undef SCREENSAVER " >> $@
echo "#undef RANDR " >> $@
echo "#undef XFIXES " >> $@
echo "#undef DAMAGE " >> $@
echo "#undef COMPOSITE " >> $@
echo "#undef FONTCACHE " >> $@
echo "#undef XFree86LOADER " >> $@
echo "#include \"$(top_srcdir)/mi/miinitext.c\"" >> $@
DISTCLEANFILES = miinitext.c libc_wrapper.c
libc_wrapper.c:
echo "#define SELF_CONTAINED_WRAPPER" > $@
echo "#include \"$(top_srcdir)/hw/xorg/os-support/shared/libc_wrapper.c\"" >> $@
Xdmx_LDFLAGS = -rdynamic
Xdmx_LDADD = $(XORG_CORE_LIBS) $(top_srcdir)/hw/xorg/os-support/@XORG_OS_SUBDIR@/lib@XORG_OS_SUBDIR@.a \
$(XDMX_LIBS) $(GLX_LIBS) $(top_srcdir)/miext/shadow/.libs/libshadow.a $(top_srcdir)/fb/.libs/libfb.a \
$(top_srcdir)/hw/xorg/dummylib/libdummy.a input/libdmxinput.a \
config/libdmxconfig.a -lfl $(XDMCP_LIBS) @DMXMODULES_LIBS@ -lXi
Xdmx_LDADD = $(XORG_CORE_LIBS) \
$(XDMX_LIBS) \
$(GLX_LIBS) \
input/libdmxinput.a \
config/libdmxconfig.a \
@DMXMODULES_LIBS@
Xdmx_CFLAGS = @DMXMODULES_CFLAGS@
Xdmx_CFLAGS = -DHAVE_DMX_CONFIG_H @DMXMODULES_CFLAGS@ -DXFree86Server

13
hw/dmx/config/Makefile.am Normal file
View File

@ -0,0 +1,13 @@
noinst_LIBRARIES = libdmxconfig.a
LIBSRCS = parser.y scanner.l dmxparse.c dmxprint.c dmxcompat.c dmxconfig.c
parser.h: parser.c
scanner.c: scanner.l parser.h
CLEANFILES = parser.c parser.h scanner.c
libdmxconfig_a_SOURCES = $(LIBSRCS)
AM_CFLAGS = -I.. -DHAVE_DMX_CONFIG_H @DMXMODULES_CFLAGS@
AM_YFLAGS = -d

98
hw/dmx/dmx-config.h Normal file
View File

@ -0,0 +1,98 @@
/*
* Copyright 2005 Red Hat Inc., Raleigh, North Carolina.
*
* All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
* "Software"), to deal in the Software without restriction, including
* without limitation on the rights to use, copy, modify, merge,
* publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice (including the
* next paragraph) shall be included in all copies or substantial
* portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NON-INFRINGEMENT. IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS
* BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
* ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
/*
* Authors:
* Kevin E. Martin <kem@redhat.com>
*
*/
/** \file
* Provide configuration #define's and #undef's to build Xdmx in X.Org's
* modular source tree.
*/
#ifndef DMX_CONFIG_H
#define DMX_CONFIG_H
#include <dix-config.h>
/*
* Note 1: This is a signed int that is printed as a decimal number.
* Since we want to make it human-interpretable, the fields are
* defined as:
* 2147483648
* AAbbyymmdd
* AA: major version 01-20
* bb: minor version 00-99
* yy: year 00-99 [See Note 2]
* mm: month 01-12
* dd: day 01-31
*
* Note 2: The default epoch for the year is 2000.
* To change the default epoch, change the DMX_VENDOR_RELEASE
* macro below, bumb the minor version number, and change
* xdpyinfo to key off the major/minor version to determine the
* new epoch. Remember to do this on January 1, 2100 and every
* 100 years thereafter.
*/
#define DMX_VENDOR_RELEASE(major,minor,year,month,day) \
((major) * 100000000) + \
((minor) * 1000000) + \
((year-2000) * 10000) + \
((month) * 100) + \
((day) * 1)
#define VENDOR_RELEASE DMX_VENDOR_RELEASE(1,2,2004,6,30)
#define VENDOR_STRING "DMX Project"
/* Enable the DMX extension */
#define DMXEXT
/* Disable the extensions that are not currently supported */
#undef BEZIER
#undef PEXEXT
#undef MULTIBUFFER
#undef XV
#undef XIE
#undef DBE
#undef XF86VIDMODE
#undef XF86MISC
#undef XFreeXDGA
#undef XF86DRI
#undef MITSHM
#undef TOGCUP
#undef DPSEXT
#undef MITMISC
#undef SCREENSAVER
#undef RANDR
#undef XFIXES
#undef DAMAGE
#undef COMPOSITE
#undef FONTCACHE
#undef XFree86LOADER
#endif /* DMX_CONFIG_H */

View File

@ -7,5 +7,13 @@ DMXSRCS = dmxinputinit.c dmxarg.c dmxsigio.c dmxevents.c \
dmxxinput.c dmxmotion.c dmxeq.c dmxmap.c
libdmxinput_a_SOURCES = ChkNotMaskEv.c $(RAWSRCS) $(USBSRCS) $(DRVSRCS) $(DMXSRCS) $(LIBSRCS)
AM_CFLAGS = -I..
libdmxinput_a_SOURCES = ChkNotMaskEv.c \
$(RAWSRCS) \
$(USBSRCS) \
$(DRVSRCS) \
$(DMXSRCS) \
$(LIBSRCS)
AM_CFLAGS = -I.. -I../../xfree86/common \
-DHAVE_DMX_CONFIG_H \
@DMXMODULES_CFLAGS@

22
hw/vfb/Makefile.am Normal file
View File

@ -0,0 +1,22 @@
bin_PROGRAMS = Xvfb
SRCS = InitInput.c \
InitOutput.c \
$(top_srcdir)/Xext/dpmsstubs.c \
$(top_srcdir)/mi/miinitext.c \
$(top_srcdir)/fb/fbcmap.c
Xvfb_SOURCES = $(SRCS)
Xvfb_LDADD = $(XORG_CORE_LIBS) \
$(XVFB_LIBS) \
$(XSERVER_LIBS) \
$(EXTENSION_LIBS) \
$(XVFBMODULES_LIBS)
Xvfb_LDFLAGS =
AM_CFLAGS = -DHAVE_DIX_CONFIG_H \
-DNO_HW_ONLY_EXTS \
-DNO_MODULE_EXTS \
$(XVFBMODULES_CFLAGS)

View File

@ -6,6 +6,12 @@
/* Builder address */
#undef BUILDERADDR
/* Operating System Name */
#undef OSNAME
/* Operating System Vendor */
#undef OSVENDOR
/* Default font path */
#undef COMPILEDDEFAULTFONTPATH
@ -217,7 +223,7 @@
#undef RANDR
/* Support Record extension */
#undef RECORD
#undef XRECORD
/* Support RENDER extension */
#undef RENDER

View File

@ -1,4 +1,4 @@
module_LTLIBRARIES = libshadow.la
noinst_LTLIBRARIES = libshadow.la
AM_CFLAGS = $(DIX_CFLAGS)