summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Gottwald <alexander.gottwald@s1999.tu-chemnitz.de>2005-07-04 22:18:40 +0000
committerAlexander Gottwald <alexander.gottwald@s1999.tu-chemnitz.de>2005-07-04 22:18:40 +0000
commit048045a9e714fc85c26028c4de36dff47644b826 (patch)
tree11bb25bf639eea792e8720d342f83064004deacc
parent508cdb5cb01a91b1bf3ef31da80b6b1d36286bf0 (diff)
Add XWin DDX, make Xorg DDX conditional Make XF86VidMode and XF86Misc
conditional Add XWin DDX Added DDXTIME, DDXOSFATALERROR, DDXOSVERRORF and DDXBEFORERESET Added fbcmap.c Added miinitext.c Added -I$(top_srcdir)/Xext/extmod to INCLUDES
-rw-r--r--ChangeLog23
-rw-r--r--configure.ac113
-rw-r--r--fb/Makefile.am3
-rw-r--r--hw/Makefile.am7
-rw-r--r--hw/xwin/Makefile.am144
-rw-r--r--include/dix-config.h.in12
-rw-r--r--include/xwin-config.h.in24
-rw-r--r--mi/Makefile.am2
-rw-r--r--xkb/Makefile.am2
9 files changed, 316 insertions, 14 deletions
diff --git a/ChangeLog b/ChangeLog
index 489832e84..d436fc7bc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,26 @@
+2005-07-05 Alexander Gottwald <ago@freedesktop.org>
+
+ * configure.ac:
+ * hw/Makefile.am:
+ Add XWin DDX, make Xorg DDX conditional
+ Make XF86VidMode and XF86Misc conditional
+
+ * include/xwin-config.h.in:
+ * hw/xwin/Makefile.am:
+ Add XWin DDX
+
+ * include/dix-config.h.in:
+ Added DDXTIME, DDXOSFATALERROR, DDXOSVERRORF and DDXBEFORERESET
+
+ * fb/Makefile.am:
+ Added fbcmap.c
+
+ * mi/Makefile.am:
+ Added miinitext.c
+
+ * xkb/Makefile.am:
+ Added -I$(top_srcdir)/Xext/extmod to INCLUDES
+
2005-07-02 Daniel Stone <daniel@freedesktop.org>
* acinclude.m4:
diff --git a/configure.ac b/configure.ac
index f6e3380d9..ea958f0ae 100644
--- a/configure.ac
+++ b/configure.ac
@@ -38,9 +38,11 @@ dnl drivers.
AC_CONFIG_HEADERS(include/xorg-server.h)
dnl dix-config.h covers most of the DIX (i.e. everything but the DDX, not just
dnl dix/).
-AC_CONFIG_HEADERS(include/xorg-config.h)
-dnl xorg-config.h covers the Xorg DDX.
AC_CONFIG_HEADERS(include/dix-config.h)
+dnl xorg-config.h covers the Xorg DDX.
+AC_CONFIG_HEADERS(include/xorg-config.h)
+dnl xwin-config.h covers the XWin DDX.
+AC_CONFIG_HEADERS(include/xwin-config.h)
AC_PROG_CC
AM_PROG_AS
@@ -50,6 +52,8 @@ AC_LIBTOOL_WIN32_DLL
AC_PROG_LIBTOOL
AC_PROG_MAKE_SET
PKG_PROG_PKG_CONFIG
+AC_PROG_LEX
+AC_PROG_YACC
AC_HEADER_DIRENT
AC_HEADER_STDC
@@ -144,14 +148,19 @@ AC_ARG_ENABLE(xdm-auth-1, [ --disable-xdm-auth-1 ],[XDMAUTH=$enableval],[XDM
AC_ARG_ENABLE(glx, [ --enable-glx ],[GLX=$enableval],[GLX=no])
AC_ARG_ENABLE(dri, [ --enable-dri ],[DRI=$enableval],[DRI=no])
AC_ARG_ENABLE(xinerama, [ --disable-xinerama ],[XINERAMA=$enableval],[XINERAMA=yes])
+AC_ARG_ENABLE(xf86vidmode, [ --disable-xf86vidmode ],[XF86VIDMODE=$enableval],[XF86VIDMODE=yes])
+AC_ARG_ENABLE(xf86misc, [ --disable-xf86misc ],[XF86MISC=$enableval],[XF86MISC=yes])
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(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])
# Transport selection
AC_ARG_ENABLE(unix-transport,[ --disable-unix-transport ], [UNIXCONN=$enableval], [UNIXCONN=yes])
AC_ARG_ENABLE(tcp-transport, [ --disable-tcp-transport ], [TCPCONN=$enableval], [TCPCONN=yes])
AC_ARG_ENABLE(ipv6, [ --disable-ipv6 ], [IPV6CONN=$enableval], [IPV6CONN=yes])
+AC_ARG_ENABLE(debug, [ --enable-debug ], [DEBUGGING=$enableval],[DEBUGGING=no])
AC_ARG_WITH(int10, AS_HELP_STRING([--with-int10=BACKEND],[int10 backend: vm86, x86emu or stub]),
[INT10="$withval"],
@@ -186,11 +195,6 @@ AC_SUBST([extdir])
AC_DEFINE(SHAPE,1,[Support SHAPE extension])
-AM_CONDITIONAL(XV, [test x$XV = xyes])
-if test "$XV" = yes; then
- AC_DEFINE(XV,1,[Support Xv Extension])
-fi
-
AM_CONDITIONAL(DMX, [test x$DMX = xyes])
if test "$DMX" = yes; then
PKG_CHECK_MODULES([DMXMODULES],[xmuu xextproto x11 xrender xfont])
@@ -199,6 +203,83 @@ if test "$DMX" = yes; then
fi
fi
+AC_MSG_CHECKING([whether to build Xorg DDX])
+if test x$XORG = xauto; then
+ XORG="yes"
+ case $host_os in
+ cygwin*) XORG="no" ;;
+ esac
+fi
+AC_MSG_RESULT([$XORG])
+AM_CONDITIONAL(XORG, [test x$XORG = xyes])
+
+dnl
+dnl Definitions for XWin DDX
+dnl
+
+AC_MSG_CHECKING([whether to build XWin DDX])
+if test x$XWIN = xauto; then
+ case $host_os in
+ cygwin*) XWIN="yes" ;;
+ mingw*) XWIN="yes" ;;
+ *) XWIN="no" ;;
+ esac
+fi
+AC_MSG_RESULT([$XWIN])
+
+if test "$XWIN" = yes; then
+ XWIN_SERVER_NAME=XWin
+ case $host_os in
+ cygwin*)
+ PKG_CHECK_MODULES([XWINMODULES],[x11 xdmcp xau xfont])
+ AC_DEFINE(HAS_DEVWINDOWS,1,[Cygwin has /dev/windows for signaling new win32 messages])
+ ;;
+ mingw*)
+ PKG_CHECK_MODULES([XWINMODULES],[x11 xdmcp xau xfont])
+ XWIN_SERVER_NAME=Xming
+ AC_DEFINE(RELOCATE_PROJECTROOT,1,[Make PROJECT_ROOT relative to the xserver location])
+ AC_DEFINE(HAS_WINSOCK,1,[Use Windows sockets])
+ XWIN_SYSTEM_LIBS=-lwinsock2
+ ;;
+ esac
+ AC_SUBST(XWIN_SERVER_NAME)
+ AC_SUBST(XWIN_SYSTEM_LIBS)
+
+ if test "x$DEBUGGING" = xyes; then
+ AC_DEFINE(CYGDEBUG,1,[Simple debug messages])
+ AC_DEFINE(CYGWINDOWING_DEBUG,1,[Debug messages for window handling])
+ AC_DEFINE(CYGMULTIWINDOW_DEBUG,1,[Debug window manager])
+ fi
+
+ AC_DEFINE(DDXOSINIT,1,[Use OsVendorInit])
+ AC_DEFINE(DDXTIME,1,[Use GetTimeInMillis])
+ AC_DEFINE(DDXOSFATALERROR,1,[Use OsVendorFatalError])
+ AC_DEFINE(DDXOSVERRORF,1,[Use OsVendorVErrorF])
+ AC_DEFINE(DDXBEFORERESET,1,[Use ddxBeforeReset ])
+ if test "$XF86VIDMODE" = yes; then
+ AC_MSG_NOTICE([Disabling XF86VidMode extension])
+ XF86VIDMODE=no
+ fi
+ if test "$XF86MISC" = yes; then
+ AC_MSG_NOTICE([Disabling XF86Misc extension])
+ XF86MISC=no
+ fi
+fi
+AM_CONDITIONAL(XWIN, [test x$XWIN = xyes])
+AM_CONDITIONAL(XWIN_MULTIWINDOW, [test x$XWIN = xyes && true])
+AM_CONDITIONAL(XWIN_MULTIWINDOWEXTWM, [test x$XWIN = xyes && false])
+AM_CONDITIONAL(XWIN_CLIPBOARD, [test x$XWIN = xyes && true])
+AM_CONDITIONAL(XWIN_GLX_WINDOWS, [test x$XWIN = xyes && false])
+AM_CONDITIONAL(XWIN_NATIVEGDI, [test x$XWIN = xyes && false])
+AM_CONDITIONAL(XWIN_PRIMARYFB, [test x$XWIN = xyes && true])
+AM_CONDITIONAL(XWIN_RANDR, [test x$XWIN = xyes && true])
+AM_CONDITIONAL(XWIN_XV, [test x$XWIN = xyes -a x$XV = xyes])
+
+AM_CONDITIONAL(XV, [test x$XV = xyes])
+if test "$XV" = yes; then
+ AC_DEFINE(XV,1,[Support Xv Extension])
+fi
+
AM_CONDITIONAL(COMPOSITE, [test x$COMPOSITE = xyes])
if test "$COMPOSITE" = yes; then
AC_DEFINE(COMPOSITE,1,[Support Composite Extension])
@@ -387,7 +468,9 @@ EXTENSION_INCS="$EXTENSION_INCS "-I'$(top_srcdir)/randr'
AC_DEFINE(DDXOSINIT,1,[Use OsVendorInit])
AC_DEFINE(SERVER_LOCK,1,[Use a lock to prevent multiple servers on a display])
AC_DEFINE(SMART_SCHEDULE,1,[Include time-based scheduler])
-AC_DEFINE(NDEBUG,1,[Disable some debugging code])
+if test x$DEBUGGING != xyes; then
+ AC_DEFINE(NDEBUG,1,[Disable some debugging code])
+fi
AC_DEFINE(USE_RGB_TXT,1,[Use rgb.txt directly])
AC_DEFINE(MITMISC,1,[Support MIT Misc extension])
AC_DEFINE(XTEST,1,[Support XTest extension])
@@ -396,8 +479,12 @@ AC_DEFINE(XCMISC,1,[Support XCMisc extension])
AC_DEFINE(BIGREQS,1,[Support BigRequests extension])
AC_DEFINE(PIXPRIV,1,[Support pixmap privates])
AC_DEFINE(XFIXES,1,[Support XFixes extension])
-AC_DEFINE(XF86VIDMODE,1,[Support XFree86 Video Mode extension])
-AC_DEFINE(XF86MISC,1,[Support XFree86 miscellaneous extensions])
+if test x$XF86VIDMODE = xyes; then
+ AC_DEFINE(XF86VIDMODE,1,[Support XFree86 Video Mode extension])
+fi
+if test x$XF86MIS = xyes; then
+ AC_DEFINE(XF86MISC,1,[Support XFree86 miscellaneous extensions])
+fi
# must come first as it uses stuff in Shape -d
EXTENSION_LIBS='$(top_builddir)/xfixes/libxfixes.la'" $EXTENSION_LIBS"
EXTENSION_INCS="$EXTENSION_INCS "'-I$(top_srcdir)/xfixes'
@@ -421,6 +508,7 @@ FB_INC='-I$(top_srcdir)/fb'
DAMAGE_LIB='$(top_builddir)/miext/damage/libdamage.la'
DAMAGE_INC='-I$(top_srcdir)/miext/damage'
SHADOW_INC='-I$(top_srcdir)/miext/shadow'
+SHADOW_LIB='$(top_builddir)/miext/shadow/libshadow.la'
LAYER_LIB='$(top_builddir)/miext/layer/liblayer.la'
XPSTUBS_LIB='$(top_builddir)/dix/libxpstubs.la'
XKB_LIB='$(top_builddir)/xkb/libxkb.la'
@@ -433,6 +521,7 @@ XSERVER_LIBS="${XSERVER_LIBS} -lm -lz"
XORG_CORE_LIBS="$DIX_LIB"
XORG_LIBS="$FB_LIB $MI_LIB $XI_LIB $XKB_LIB $COMPOSITE_LIB $DAMAGE_LIB $LAYER_LIB $EXTENSION_LIBS $XPSTUBS_LIB $OS_LIB $SHADOW_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"
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'
@@ -445,7 +534,7 @@ else
fi
AC_DEFINE_UNQUOTED(X_BYTE_ORDER,[$ENDIAN],[Endian order])
XORG_CFLAGS="$XORGSERVER_CFLAGS -DHAVE_XORG_CONFIG_H"
-case $host_os in
+test x$XORG = xyes && case $host_os in
linux-gnu*)
XORG_OS="linux"
XORG_OS_SUBDIR="linux"
@@ -476,6 +565,7 @@ case $host_os in
esac
AC_SUBST([XORG_CORE_LIBS])
AC_SUBST([XORG_LIBS])
+AC_SUBST([XWIN_LIBS])
AC_SUBST([EXTENSION_LIBS])
AC_SUBST([XDMX_LIBS])
AC_SUBST([XORG_INCS])
@@ -626,5 +716,6 @@ hw/xfree86/xf8_32wid/Makefile
hw/dmx/input/Makefile
hw/dmx/glxProxy/Makefile
hw/dmx/Makefile
+hw/xwin/Makefile
xorg-server.pc
])
diff --git a/fb/Makefile.am b/fb/Makefile.am
index 4f82f6db4..43d5674c3 100644
--- a/fb/Makefile.am
+++ b/fb/Makefile.am
@@ -16,6 +16,7 @@ libfb_la_SOURCES = \
fbbstore.c \
fbcompose.c \
fbcopy.c \
+ fbcmap.c \
fbfill.c \
fbfillrect.c \
fbfillsp.c \
@@ -47,5 +48,3 @@ libfb_la_SOURCES = \
fbedgeimp.h \
fbmmx.c \
fbmmx.h
-
-EXTRA_DIST = fbcmap.c
diff --git a/hw/Makefile.am b/hw/Makefile.am
index 26343e56b..2a25ae2be 100644
--- a/hw/Makefile.am
+++ b/hw/Makefile.am
@@ -2,8 +2,15 @@ if DMX
DMX_SUBDIRS = dmx
endif
+if XORG
XORG_SUBDIRS = xfree86
+endif
+
+if XWIN
+XWIN_SUBDIRS = xwin
+endif
SUBDIRS = \
$(XORG_SUBDIRS) \
+ $(XWIN_SUBDIRS) \
$(DMX_SUBDIRS)
diff --git a/hw/xwin/Makefile.am b/hw/xwin/Makefile.am
new file mode 100644
index 000000000..7bbbf0fd7
--- /dev/null
+++ b/hw/xwin/Makefile.am
@@ -0,0 +1,144 @@
+bin_PROGRAMS = XWin
+
+if XWIN_CLIPBOARD
+SRCS_CLIPBOARD = \
+ winclipboardinit.c \
+ winclipboardtextconv.c \
+ winclipboardthread.c \
+ winclipboardunicode.c \
+ winclipboardwndproc.c \
+ winclipboardwrappers.c \
+ winclipboardxevents.c
+DEFS_CLIPBOARD = -DXWIN_CLIPBOARD
+endif
+
+if XWIN_GLX_WINDOWS
+SRCS_GLX_WINDOWS = \
+ winpriv.c
+DEFS_GLX_WINDOWS = -DXWIN_GLX_WINDOWS
+endif
+
+if XWIN_MULTIWINDOW
+SRCS_MULTIWINDOW = \
+ winmultiwindowshape.c \
+ winmultiwindowwindow.c \
+ winmultiwindowwm.c \
+ winmultiwindowwndproc.c
+DEFS_MULTIWINDOW = -DXWIN_MULTIWINDOW
+endif
+
+if XWIN_MULTIWINDOWEXTWM
+SRCS_MULTIWINDOWEXTWM = \
+ winwin32rootless.c \
+ winwin32rootlesswindow.c \
+ winwin32rootlesswndproc.c \
+ winwindowswm.c
+DEFS_MULTIWINDOWEXTWM = -DXWIN_MULTIWINDOWEXTWM
+endif
+
+if XWIN_NATIVEGDI
+SRCS_NATIVEGDI = \
+ winclip.c \
+ winfillsp.c \
+ winfont.c \
+ wingc.c \
+ wingetsp.c \
+ winnativegdi.c \
+ winpixmap.c \
+ winpntwin.c \
+ winpolyline.c \
+ winpushpxl.c \
+ winrop.c \
+ winsetsp.c
+DEFS_NATIVEGDI = -DXWIN_NATIVEGDI
+endif
+
+if XWIN_PRIMARYFB
+SRCS_PRIMARYFB = \
+ winpfbdd.c
+DEFS_PRIMARYFB = -DXWIN_PRIMARYFB
+endif
+
+if XWIN_RANDR
+SRCS_RANDR = \
+ winrandr.c
+DEFS_RANDR = -DXWIN_RANDR
+endif
+
+if XWIN_XV
+SRCS_XV = \
+ winvideo.c
+DEFS_XV = -DXWIN_XV
+endif
+
+SRCS = InitInput.c \
+ InitOutput.c \
+ winallpriv.c \
+ winauth.c \
+ winblock.c \
+ wincmap.c \
+ winconfig.c \
+ wincreatewnd.c \
+ wincursor.c \
+ windialogs.c \
+ winengine.c \
+ winerror.c \
+ winglobals.c \
+ winkeybd.c \
+ winkeyhook.c \
+ winmisc.c \
+ winmouse.c \
+ winmsg.c \
+ winmultiwindowclass.c \
+ winmultiwindowicons.c \
+ winprefs.c \
+ winprefsyacc.y \
+ winprefslex.l \
+ winprocarg.c \
+ winregistry.c \
+ winscrinit.c \
+ winshaddd.c \
+ winshadddnl.c \
+ winshadgdi.c \
+ wintrayicon.c \
+ winvalargs.c \
+ winwakeup.c \
+ winwindow.c \
+ winwndproc.c \
+ $(SRCS_CLIPBOARD) \
+ $(SRCS_GLX_WINDOWS) \
+ $(SRCS_MULTIWINDOW) \
+ $(SRCS_MULTIWINDOWEXTWM) \
+ $(SRCS_NATIVEGDI) \
+ $(SRCS_PRIMARYFB) \
+ $(SRCS_RANDR) \
+ $(SRCS_XV)
+
+ DEFS = $(DEFS_CLIPBOARD) \
+ $(DEFS_GLX_WINDOWS) \
+ $(DEFS_MULTIWINDOW) \
+ $(DEFS_MULTIWINDOWEXTWM) \
+ $(DEFS_NATIVEGDI) \
+ $(DEFS_PRIMARYFB) \
+ $(DEFS_RANDR) \
+ $(DEFS_XV)
+
+XWin_SOURCES = $(SRCS)
+
+INCLUDES = -I$(top_srcdir)/miext/rootless \
+ -I$(top_srcdir)/miext/rootless/safeAlpha
+
+XWin_LDADD = $(XORG_CORE_LIBS) \
+ $(top_builddir)/fb/libfb.la \
+ $(XWIN_LIBS) \
+ $(XWINMODULES_LIBS)
+
+XWin_LDFLAGS = -mwindows -static
+
+winprefsyacc.h: winprefsyacc.c
+winprefslex.c: winprefslex.l winprefsyacc.c winprefsyacc.h
+
+AM_YFLAGS = -d
+AM_LFLAGS = -i
+AM_CFLAGS = -DHAVE_XWIN_CONFIG_H \
+ $(XWINMODULES_CFLAGS)
diff --git a/include/dix-config.h.in b/include/dix-config.h.in
index 7ad520509..a50f59829 100644
--- a/include/dix-config.h.in
+++ b/include/dix-config.h.in
@@ -26,6 +26,18 @@
/* Use OsVendorInit */
#undef DDXOSINIT
+/* Use GetTimeInMillis */
+#undef DDXTIME
+
+/* Use OsVendorFatalError */
+#undef DDXOSFATALERROR
+
+/* Use OsVendorVErrorF */
+#undef DDXOSVERRORF
+
+/* Use ddxBeforeReset */
+#undef DDXBEFORERESET
+
/* Build DPMS extension */
#undef DPMSExtension
diff --git a/include/xwin-config.h.in b/include/xwin-config.h.in
new file mode 100644
index 000000000..d19e690a7
--- /dev/null
+++ b/include/xwin-config.h.in
@@ -0,0 +1,24 @@
+/*
+ * xwin-config.h.in
+ *
+ * This file has all defines used in the xwin ddx
+ *
+ */
+#include <dix-config.h>
+
+/* XFree86 based Xserver */
+#undef XFree86Server
+
+/* Winsock networking */
+#undef HAS_WINSOCK
+
+/* Cygwin has /dev/windows for signaling new win32 messages */
+#undef HAS_DEVWINDOWS
+
+/* Switch on debug messages */
+#undef CYGDEBUG
+#undef CYGWINDOWING_DEBUG
+#undef CYGMULTIWINDOW_DEBUG
+
+/* Do we require our own snprintf? */
+#undef NEED_SNPRINTF
diff --git a/mi/Makefile.am b/mi/Makefile.am
index ff1fec605..4ee67f301 100644
--- a/mi/Makefile.am
+++ b/mi/Makefile.am
@@ -68,6 +68,6 @@ libminimi_la_SOURCES = \
mizerclip.c \
mizerline.c
-libmi_la_SOURCES = $(libminimi_la_SOURCES)
+libmi_la_SOURCES = $(libminimi_la_SOURCES) miinitext.c
INCLUDES = -I$(top_srcdir)/mfb
diff --git a/xkb/Makefile.am b/xkb/Makefile.am
index d4142b6df..d51566734 100644
--- a/xkb/Makefile.am
+++ b/xkb/Makefile.am
@@ -51,3 +51,5 @@ libxkb_la_SOURCES = $(DDX_SRCS) $(DIX_SRCS) $(XI_SRCS) $(XKBFILE_SRCS) \
$(X11_SRCS)
EXTRA_DIST = xkb.h xkbDflts.h
+
+INCLUDES = -I$(top_srcdir)/Xext/extmod