aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/kdrive/ephyr
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2009-09-09 05:23:48 +0000
committermarha <marha@users.sourceforge.net>2009-09-09 05:23:48 +0000
commit81f91c615982e50bb62708201569c33a3cd3d973 (patch)
tree4f32ecc48a3b7b5e76642f3792338263c53879bd /xorg-server/hw/kdrive/ephyr
parentb571a562410f565af2bdde52d9f7f9a23ffae04f (diff)
parenta915739887477b28d924ecc8417ee107d125bd6c (diff)
downloadvcxsrv-81f91c615982e50bb62708201569c33a3cd3d973.tar.gz
vcxsrv-81f91c615982e50bb62708201569c33a3cd3d973.tar.bz2
vcxsrv-81f91c615982e50bb62708201569c33a3cd3d973.zip
svn merge https://vcxsrv.svn.sourceforge.net/svnroot/vcxsrv/branches/released .
Diffstat (limited to 'xorg-server/hw/kdrive/ephyr')
-rw-r--r--xorg-server/hw/kdrive/ephyr/Makefile.am22
-rw-r--r--xorg-server/hw/kdrive/ephyr/Makefile.in180
-rw-r--r--xorg-server/hw/kdrive/ephyr/XF86dri.c47
-rw-r--r--xorg-server/hw/kdrive/ephyr/Xephyr.man.pre6
-rw-r--r--xorg-server/hw/kdrive/ephyr/ephyr.c39
-rw-r--r--xorg-server/hw/kdrive/ephyr/ephyrdriext.c60
-rw-r--r--xorg-server/hw/kdrive/ephyr/ephyrhostglx.c2
-rw-r--r--xorg-server/hw/kdrive/ephyr/ephyrinit.c35
-rw-r--r--xorg-server/hw/kdrive/ephyr/ephyrvideo.c2
-rw-r--r--xorg-server/hw/kdrive/ephyr/hostx.c60
-rw-r--r--xorg-server/hw/kdrive/ephyr/hostx.h3
11 files changed, 245 insertions, 211 deletions
diff --git a/xorg-server/hw/kdrive/ephyr/Makefile.am b/xorg-server/hw/kdrive/ephyr/Makefile.am
index 9380e4d0a..ec6f4450a 100644
--- a/xorg-server/hw/kdrive/ephyr/Makefile.am
+++ b/xorg-server/hw/kdrive/ephyr/Makefile.am
@@ -8,14 +8,14 @@ INCLUDES = \
-I$(top_srcdir)/exa
if XV
-LIBXEPHYR_HOSTXV=libxephyr-hostxv.a
+LIBXEPHYR_HOSTXV=libxephyr-hostxv.la
endif
if DRI
-LIBXEPHYR_HOSTDRI=libxephyr-hostdri.a
+LIBXEPHYR_HOSTDRI=libxephyr-hostdri.la
endif
-noinst_LIBRARIES = libxephyr-hostx.a $(LIBXEPHYR_HOSTXV) $(LIBXEPHYR_HOSTDRI) libxephyr.a
+noinst_LTLIBRARIES = libxephyr-hostx.la $(LIBXEPHYR_HOSTXV) $(LIBXEPHYR_HOSTDRI) libxephyr.la
bin_PROGRAMS = Xephyr
@@ -47,24 +47,24 @@ XEPHYR_SRCS = \
ephyr_draw.c \
os.c
-libxephyr_hostx_a_SOURCES = $(HOSTX_SRCS)
+libxephyr_hostx_la_SOURCES = $(HOSTX_SRCS)
if XV
-libxephyr_hostxv_a_SOURCES = $(HOSTVIDEO_SRCS)
+libxephyr_hostxv_la_SOURCES = $(HOSTVIDEO_SRCS)
endif
if DRI
-libxephyr_hostdri_a_SOURCES = $(HOSTDRI_SRCS)
+libxephyr_hostdri_la_SOURCES = $(HOSTDRI_SRCS)
endif
-libxephyr_a_SOURCES = $(XEPHYR_SRCS)
+libxephyr_la_SOURCES = $(XEPHYR_SRCS)
Xephyr_SOURCES = \
ephyrinit.c
Xephyr_LDADD = \
- libxephyr.a \
- libxephyr-hostx.a \
+ libxephyr.la \
+ libxephyr-hostx.la \
$(LIBXEPHYR_HOSTXV) \
$(LIBXEPHYR_HOSTDRI) \
$(top_builddir)/exa/libexa.la \
@@ -72,8 +72,8 @@ Xephyr_LDADD = \
@XEPHYR_LIBS@
Xephyr_DEPENDENCIES = \
- libxephyr.a \
- libxephyr-hostx.a \
+ libxephyr.la \
+ libxephyr-hostx.la \
$(LIBXEPHYR_HOSTXV) \
$(LIBXEPHYR_HOSTDRI) \
@KDRIVE_LOCAL_LIBS@
diff --git a/xorg-server/hw/kdrive/ephyr/Makefile.in b/xorg-server/hw/kdrive/ephyr/Makefile.in
index af425f7e4..150757fe1 100644
--- a/xorg-server/hw/kdrive/ephyr/Makefile.in
+++ b/xorg-server/hw/kdrive/ephyr/Makefile.in
@@ -45,8 +45,11 @@ DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(top_srcdir)/cpprules.in
subdir = hw/kdrive/ephyr
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
- $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_define_dir.m4 \
+ $(top_srcdir)/m4/dolt.m4 $(top_srcdir)/m4/libtool.m4 \
+ $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+ $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+ $(top_srcdir)/m4/shave.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
@@ -56,37 +59,35 @@ CONFIG_HEADER = $(top_builddir)/include/do-not-use-config.h \
$(top_builddir)/include/xorg-config.h \
$(top_builddir)/include/xkb-config.h \
$(top_builddir)/include/xwin-config.h \
- $(top_builddir)/include/kdrive-config.h
+ $(top_builddir)/include/kdrive-config.h \
+ $(top_builddir)/include/version-config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
-LIBRARIES = $(noinst_LIBRARIES)
-ARFLAGS = cru
-libxephyr_hostdri_a_AR = $(AR) $(ARFLAGS)
-libxephyr_hostdri_a_LIBADD =
-am__libxephyr_hostdri_a_SOURCES_DIST = ephyrdriext.c ephyrdriext.h \
+LTLIBRARIES = $(noinst_LTLIBRARIES)
+libxephyr_hostdri_la_LIBADD =
+am__libxephyr_hostdri_la_SOURCES_DIST = ephyrdriext.c ephyrdriext.h \
ephyrdri.c ephyrdri.h XF86dri.c xf86dri.h ephyrglxext.c \
ephyrglxext.h ephyrhostglx.c ephyrhostglx.h
-am__objects_1 = ephyrdriext.$(OBJEXT) ephyrdri.$(OBJEXT) \
- XF86dri.$(OBJEXT) ephyrglxext.$(OBJEXT) ephyrhostglx.$(OBJEXT)
-@DRI_TRUE@am_libxephyr_hostdri_a_OBJECTS = $(am__objects_1)
-libxephyr_hostdri_a_OBJECTS = $(am_libxephyr_hostdri_a_OBJECTS)
-libxephyr_hostx_a_AR = $(AR) $(ARFLAGS)
-libxephyr_hostx_a_LIBADD =
-am__objects_2 = hostx.$(OBJEXT)
-am_libxephyr_hostx_a_OBJECTS = $(am__objects_2)
-libxephyr_hostx_a_OBJECTS = $(am_libxephyr_hostx_a_OBJECTS)
-libxephyr_hostxv_a_AR = $(AR) $(ARFLAGS)
-libxephyr_hostxv_a_LIBADD =
-am__libxephyr_hostxv_a_SOURCES_DIST = ephyrvideo.c ephyrhostvideo.c \
+am__objects_1 = ephyrdriext.lo ephyrdri.lo XF86dri.lo ephyrglxext.lo \
+ ephyrhostglx.lo
+@DRI_TRUE@am_libxephyr_hostdri_la_OBJECTS = $(am__objects_1)
+libxephyr_hostdri_la_OBJECTS = $(am_libxephyr_hostdri_la_OBJECTS)
+@DRI_TRUE@am_libxephyr_hostdri_la_rpath =
+libxephyr_hostx_la_LIBADD =
+am__objects_2 = hostx.lo
+am_libxephyr_hostx_la_OBJECTS = $(am__objects_2)
+libxephyr_hostx_la_OBJECTS = $(am_libxephyr_hostx_la_OBJECTS)
+libxephyr_hostxv_la_LIBADD =
+am__libxephyr_hostxv_la_SOURCES_DIST = ephyrvideo.c ephyrhostvideo.c \
ephyrhostvideo.h
-am__objects_3 = ephyrvideo.$(OBJEXT) ephyrhostvideo.$(OBJEXT)
-@XV_TRUE@am_libxephyr_hostxv_a_OBJECTS = $(am__objects_3)
-libxephyr_hostxv_a_OBJECTS = $(am_libxephyr_hostxv_a_OBJECTS)
-libxephyr_a_AR = $(AR) $(ARFLAGS)
-libxephyr_a_LIBADD =
-am__objects_4 = ephyr.$(OBJEXT) ephyr_draw.$(OBJEXT) os.$(OBJEXT)
-am_libxephyr_a_OBJECTS = $(am__objects_4)
-libxephyr_a_OBJECTS = $(am_libxephyr_a_OBJECTS)
+am__objects_3 = ephyrvideo.lo ephyrhostvideo.lo
+@XV_TRUE@am_libxephyr_hostxv_la_OBJECTS = $(am__objects_3)
+libxephyr_hostxv_la_OBJECTS = $(am_libxephyr_hostxv_la_OBJECTS)
+@XV_TRUE@am_libxephyr_hostxv_la_rpath =
+libxephyr_la_LIBADD =
+am__objects_4 = ephyr.lo ephyr_draw.lo os.lo
+am_libxephyr_la_OBJECTS = $(am__objects_4)
+libxephyr_la_OBJECTS = $(am_libxephyr_la_OBJECTS)
am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(appmandir)"
PROGRAMS = $(bin_PROGRAMS)
am_Xephyr_OBJECTS = ephyrinit.$(OBJEXT)
@@ -104,13 +105,13 @@ CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@
-SOURCES = $(libxephyr_hostdri_a_SOURCES) $(libxephyr_hostx_a_SOURCES) \
- $(libxephyr_hostxv_a_SOURCES) $(libxephyr_a_SOURCES) \
- $(Xephyr_SOURCES)
-DIST_SOURCES = $(am__libxephyr_hostdri_a_SOURCES_DIST) \
- $(libxephyr_hostx_a_SOURCES) \
- $(am__libxephyr_hostxv_a_SOURCES_DIST) $(libxephyr_a_SOURCES) \
- $(Xephyr_SOURCES)
+SOURCES = $(libxephyr_hostdri_la_SOURCES) \
+ $(libxephyr_hostx_la_SOURCES) $(libxephyr_hostxv_la_SOURCES) \
+ $(libxephyr_la_SOURCES) $(Xephyr_SOURCES)
+DIST_SOURCES = $(am__libxephyr_hostdri_la_SOURCES_DIST) \
+ $(libxephyr_hostx_la_SOURCES) \
+ $(am__libxephyr_hostxv_la_SOURCES_DIST) \
+ $(libxephyr_la_SOURCES) $(Xephyr_SOURCES)
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@@ -141,6 +142,7 @@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
+AM_MAKEFLAGS = @AM_MAKEFLAGS@
APPLE_APPLICATIONS_DIR = @APPLE_APPLICATIONS_DIR@
APPLE_APPLICATION_ID = @APPLE_APPLICATION_ID@
APPLE_APPLICATION_NAME = @APPLE_APPLICATION_NAME@
@@ -161,9 +163,12 @@ CCASDEPMODE = @CCASDEPMODE@
CCASFLAGS = @CCASFLAGS@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
+CHANGELOG_CMD = @CHANGELOG_CMD@
COMPILEDDEFAULTFONTPATH = @COMPILEDDEFAULTFONTPATH@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
+CWARNFLAGS = @CWARNFLAGS@
+CXX = @CXX@
CYGPATH_W = @CYGPATH_W@
DARWIN_LIBS = @DARWIN_LIBS@
DBUS_CFLAGS = @DBUS_CFLAGS@
@@ -192,7 +197,9 @@ DRIPROTO_CFLAGS = @DRIPROTO_CFLAGS@
DRIPROTO_LIBS = @DRIPROTO_LIBS@
DRIVER_MAN_DIR = @DRIVER_MAN_DIR@
DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@
+DRI_CFLAGS = @DRI_CFLAGS@
DRI_DRIVER_PATH = @DRI_DRIVER_PATH@
+DRI_LIBS = @DRI_LIBS@
DSYMUTIL = @DSYMUTIL@
DTRACE = @DTRACE@
DUMPBIN = @DUMPBIN@
@@ -201,9 +208,13 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
+F77 = @F77@
+FC = @FC@
FGREP = @FGREP@
FILE_MAN_DIR = @FILE_MAN_DIR@
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
+GLIB_CFLAGS = @GLIB_CFLAGS@
+GLIB_LIBS = @GLIB_LIBS@
GLX_ARCH_DEFINES = @GLX_ARCH_DEFINES@
GLX_DEFINES = @GLX_DEFINES@
GL_CFLAGS = @GL_CFLAGS@
@@ -242,12 +253,13 @@ LTCOMPILE = @LTCOMPILE@
LTCXXCOMPILE = @LTCXXCOMPILE@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
+MAIN_LIB = @MAIN_LIB@
+MAKEFLAGS = @MAKEFLAGS@
MAKEINFO = @MAKEINFO@
MAKE_HTML = @MAKE_HTML@
MAKE_PDF = @MAKE_PDF@
MAKE_PS = @MAKE_PS@
MAKE_TEXT = @MAKE_TEXT@
-MESA_SOURCE = @MESA_SOURCE@
MISC_MAN_DIR = @MISC_MAN_DIR@
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
MKDIR_P = @MKDIR_P@
@@ -267,7 +279,6 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PCIACCESS_CFLAGS = @PCIACCESS_CFLAGS@
@@ -277,6 +288,7 @@ PERL = @PERL@
PKG_CONFIG = @PKG_CONFIG@
PROJECTROOT = @PROJECTROOT@
PS2PDF = @PS2PDF@
+Q = @Q@
RANLIB = @RANLIB@
RAWCPP = @RAWCPP@
RAWCPPFLAGS = @RAWCPPFLAGS@
@@ -290,11 +302,10 @@ STRIP = @STRIP@
TSLIB_CFLAGS = @TSLIB_CFLAGS@
TSLIB_LIBS = @TSLIB_LIBS@
UTILS_SYS_LIBS = @UTILS_SYS_LIBS@
-VENDOR_MAN_VERSION = @VENDOR_MAN_VERSION@
-VENDOR_NAME = @VENDOR_NAME@
+V = @V@
VENDOR_NAME_SHORT = @VENDOR_NAME_SHORT@
-VENDOR_RELEASE = @VENDOR_RELEASE@
VERSION = @VERSION@
+WINDRES = @WINDRES@
X11EXAMPLES_DEP_CFLAGS = @X11EXAMPLES_DEP_CFLAGS@
X11EXAMPLES_DEP_LIBS = @X11EXAMPLES_DEP_LIBS@
XDMCP_CFLAGS = @XDMCP_CFLAGS@
@@ -330,6 +341,7 @@ XORG_OS_SUBDIR = @XORG_OS_SUBDIR@
XORG_SYS_LIBS = @XORG_SYS_LIBS@
XPBPROXY_CFLAGS = @XPBPROXY_CFLAGS@
XPBPROXY_LIBS = @XPBPROXY_LIBS@
+XQUARTZ_SPARKLE = @XQUARTZ_SPARKLE@
XRESEXAMPLES_DEP_CFLAGS = @XRESEXAMPLES_DEP_CFLAGS@
XRESEXAMPLES_DEP_LIBS = @XRESEXAMPLES_DEP_LIBS@
XSDL_INCS = @XSDL_INCS@
@@ -354,7 +366,6 @@ YFLAGS = @YFLAGS@
__XCONFIGFILE__ = @__XCONFIGFILE__@
abi_ansic = @abi_ansic@
abi_extension = @abi_extension@
-abi_font = @abi_font@
abi_videodrv = @abi_videodrv@
abi_xinput = @abi_xinput@
abs_builddir = @abs_builddir@
@@ -377,6 +388,7 @@ build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
+distcleancheck_listfiles = @distcleancheck_listfiles@
docdir = @docdir@
driverdir = @driverdir@
dvidir = @dvidir@
@@ -408,7 +420,9 @@ psdir = @psdir@
sbindir = @sbindir@
sdkdir = @sdkdir@
sharedstatedir = @sharedstatedir@
+shavedir = @shavedir@
srcdir = @srcdir@
+symbol_visibility = @symbol_visibility@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
@@ -423,9 +437,9 @@ INCLUDES = \
-I$(top_srcdir) \
-I$(top_srcdir)/exa
-@XV_TRUE@LIBXEPHYR_HOSTXV = libxephyr-hostxv.a
-@DRI_TRUE@LIBXEPHYR_HOSTDRI = libxephyr-hostdri.a
-noinst_LIBRARIES = libxephyr-hostx.a $(LIBXEPHYR_HOSTXV) $(LIBXEPHYR_HOSTDRI) libxephyr.a
+@XV_TRUE@LIBXEPHYR_HOSTXV = libxephyr-hostxv.la
+@DRI_TRUE@LIBXEPHYR_HOSTDRI = libxephyr-hostdri.la
+noinst_LTLIBRARIES = libxephyr-hostx.la $(LIBXEPHYR_HOSTXV) $(LIBXEPHYR_HOSTDRI) libxephyr.la
HOSTX_SRCS = \
hostx.c \
hostx.h
@@ -454,16 +468,16 @@ XEPHYR_SRCS = \
ephyr_draw.c \
os.c
-libxephyr_hostx_a_SOURCES = $(HOSTX_SRCS)
-@XV_TRUE@libxephyr_hostxv_a_SOURCES = $(HOSTVIDEO_SRCS)
-@DRI_TRUE@libxephyr_hostdri_a_SOURCES = $(HOSTDRI_SRCS)
-libxephyr_a_SOURCES = $(XEPHYR_SRCS)
+libxephyr_hostx_la_SOURCES = $(HOSTX_SRCS)
+@XV_TRUE@libxephyr_hostxv_la_SOURCES = $(HOSTVIDEO_SRCS)
+@DRI_TRUE@libxephyr_hostdri_la_SOURCES = $(HOSTDRI_SRCS)
+libxephyr_la_SOURCES = $(XEPHYR_SRCS)
Xephyr_SOURCES = \
ephyrinit.c
Xephyr_LDADD = \
- libxephyr.a \
- libxephyr-hostx.a \
+ libxephyr.la \
+ libxephyr-hostx.la \
$(LIBXEPHYR_HOSTXV) \
$(LIBXEPHYR_HOSTDRI) \
$(top_builddir)/exa/libexa.la \
@@ -471,8 +485,8 @@ Xephyr_LDADD = \
@XEPHYR_LIBS@
Xephyr_DEPENDENCIES = \
- libxephyr.a \
- libxephyr-hostx.a \
+ libxephyr.la \
+ libxephyr-hostx.la \
$(LIBXEPHYR_HOSTXV) \
$(LIBXEPHYR_HOSTDRI) \
@KDRIVE_LOCAL_LIBS@
@@ -556,24 +570,22 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
-clean-noinstLIBRARIES:
- -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-libxephyr-hostdri.a: $(libxephyr_hostdri_a_OBJECTS) $(libxephyr_hostdri_a_DEPENDENCIES)
- -rm -f libxephyr-hostdri.a
- $(libxephyr_hostdri_a_AR) libxephyr-hostdri.a $(libxephyr_hostdri_a_OBJECTS) $(libxephyr_hostdri_a_LIBADD)
- $(RANLIB) libxephyr-hostdri.a
-libxephyr-hostx.a: $(libxephyr_hostx_a_OBJECTS) $(libxephyr_hostx_a_DEPENDENCIES)
- -rm -f libxephyr-hostx.a
- $(libxephyr_hostx_a_AR) libxephyr-hostx.a $(libxephyr_hostx_a_OBJECTS) $(libxephyr_hostx_a_LIBADD)
- $(RANLIB) libxephyr-hostx.a
-libxephyr-hostxv.a: $(libxephyr_hostxv_a_OBJECTS) $(libxephyr_hostxv_a_DEPENDENCIES)
- -rm -f libxephyr-hostxv.a
- $(libxephyr_hostxv_a_AR) libxephyr-hostxv.a $(libxephyr_hostxv_a_OBJECTS) $(libxephyr_hostxv_a_LIBADD)
- $(RANLIB) libxephyr-hostxv.a
-libxephyr.a: $(libxephyr_a_OBJECTS) $(libxephyr_a_DEPENDENCIES)
- -rm -f libxephyr.a
- $(libxephyr_a_AR) libxephyr.a $(libxephyr_a_OBJECTS) $(libxephyr_a_LIBADD)
- $(RANLIB) libxephyr.a
+clean-noinstLTLIBRARIES:
+ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
+ @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
+ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
+ test "$$dir" != "$$p" || dir=.; \
+ echo "rm -f \"$${dir}/so_locations\""; \
+ rm -f "$${dir}/so_locations"; \
+ done
+libxephyr-hostdri.la: $(libxephyr_hostdri_la_OBJECTS) $(libxephyr_hostdri_la_DEPENDENCIES)
+ $(LINK) $(am_libxephyr_hostdri_la_rpath) $(libxephyr_hostdri_la_OBJECTS) $(libxephyr_hostdri_la_LIBADD) $(LIBS)
+libxephyr-hostx.la: $(libxephyr_hostx_la_OBJECTS) $(libxephyr_hostx_la_DEPENDENCIES)
+ $(LINK) $(libxephyr_hostx_la_OBJECTS) $(libxephyr_hostx_la_LIBADD) $(LIBS)
+libxephyr-hostxv.la: $(libxephyr_hostxv_la_OBJECTS) $(libxephyr_hostxv_la_DEPENDENCIES)
+ $(LINK) $(am_libxephyr_hostxv_la_rpath) $(libxephyr_hostxv_la_OBJECTS) $(libxephyr_hostxv_la_LIBADD) $(LIBS)
+libxephyr.la: $(libxephyr_la_OBJECTS) $(libxephyr_la_DEPENDENCIES)
+ $(LINK) $(libxephyr_la_OBJECTS) $(libxephyr_la_LIBADD) $(LIBS)
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@@ -627,18 +639,18 @@ mostlyclean-compile:
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/XF86dri.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyr.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyr_draw.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrdri.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrdriext.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrglxext.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrhostglx.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrhostvideo.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/XF86dri.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyr.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyr_draw.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrdri.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrdriext.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrglxext.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrhostglx.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrhostvideo.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrinit.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrvideo.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hostx.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/os.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ephyrvideo.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hostx.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/os.Plo@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -771,7 +783,7 @@ distdir: $(DISTFILES)
done
check-am: all-am
check: check-am
-all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(DATA)
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA)
installdirs:
for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(appmandir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
@@ -805,7 +817,7 @@ maintainer-clean-generic:
clean: clean-am
clean-am: clean-binPROGRAMS clean-generic clean-libtool \
- clean-noinstLIBRARIES mostlyclean-am
+ clean-noinstLTLIBRARIES mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
@@ -876,7 +888,7 @@ uninstall-am: uninstall-appmanDATA uninstall-binPROGRAMS
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic clean-libtool clean-noinstLIBRARIES ctags \
+ clean-generic clean-libtool clean-noinstLTLIBRARIES ctags \
distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-appmanDATA \
diff --git a/xorg-server/hw/kdrive/ephyr/XF86dri.c b/xorg-server/hw/kdrive/ephyr/XF86dri.c
index 31f796331..e94a7f0f0 100644
--- a/xorg-server/hw/kdrive/ephyr/XF86dri.c
+++ b/xorg-server/hw/kdrive/ephyr/XF86dri.c
@@ -58,7 +58,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
/* THIS IS NOT AN X CONSORTIUM STANDARD */
-#define NEED_REPLIES
#include <X11/Xlibint.h>
#include <X11/extensions/Xext.h>
#include <X11/extensions/extutil.h>
@@ -134,11 +133,8 @@ Bool XF86DRIQueryExtension (Display *dpy, int *event_basep, int *error_basep)
}
}
-Bool XF86DRIQueryVersion(dpy, majorVersion, minorVersion, patchVersion)
- Display* dpy;
- int* majorVersion;
- int* minorVersion;
- int* patchVersion;
+Bool XF86DRIQueryVersion(Display *dpy, int *majorVersion, int *minorVersion,
+ int *patchVersion)
{
XExtDisplayInfo *info = find_display (dpy);
xXF86DRIQueryVersionReply rep;
@@ -242,10 +238,7 @@ XF86DRIOpenConnection (Display *dpy, int screen,
return True;
}
-Bool XF86DRIAuthConnection(dpy, screen, magic)
- Display* dpy;
- int screen;
- drm_magic_t magic;
+Bool XF86DRIAuthConnection(Display *dpy, int screen, drm_magic_t magic)
{
XExtDisplayInfo *info = find_display (dpy);
xXF86DRIAuthConnectionReq *req;
@@ -273,9 +266,7 @@ Bool XF86DRIAuthConnection(dpy, screen, magic)
return True;
}
-Bool XF86DRICloseConnection(dpy, screen)
- Display* dpy;
- int screen;
+Bool XF86DRICloseConnection(Display *dpy, int screen)
{
XExtDisplayInfo *info = find_display (dpy);
xXF86DRICloseConnectionReq *req;
@@ -295,14 +286,11 @@ Bool XF86DRICloseConnection(dpy, screen)
return True;
}
-Bool XF86DRIGetClientDriverName(dpy, screen, ddxDriverMajorVersion,
- ddxDriverMinorVersion, ddxDriverPatchVersion, clientDriverName)
- Display* dpy;
- int screen;
- int* ddxDriverMajorVersion;
- int* ddxDriverMinorVersion;
- int* ddxDriverPatchVersion;
- char** clientDriverName;
+Bool XF86DRIGetClientDriverName(Display *dpy, int screen,
+ int *ddxDriverMajorVersion,
+ int *ddxDriverMinorVersion,
+ int *ddxDriverPatchVersion,
+ char **clientDriverName)
{
XExtDisplayInfo *info = find_display (dpy);
xXF86DRIGetClientDriverNameReply rep;
@@ -345,13 +333,8 @@ Bool XF86DRIGetClientDriverName(dpy, screen, ddxDriverMajorVersion,
return True;
}
-Bool XF86DRICreateContextWithConfig(dpy, screen, configID, context,
- hHWContext)
- Display* dpy;
- int screen;
- int configID;
- XID* context;
- drm_context_t * hHWContext;
+Bool XF86DRICreateContextWithConfig(Display *dpy, int screen, int configID,
+ XID *context, drm_context_t *hHWContext)
{
XExtDisplayInfo *info = find_display (dpy);
xXF86DRICreateContextReply rep;
@@ -381,12 +364,8 @@ Bool XF86DRICreateContextWithConfig(dpy, screen, configID, context,
return True;
}
-Bool XF86DRICreateContext(dpy, screen, visual, context, hHWContext)
- Display* dpy;
- int screen;
- Visual* visual;
- XID* context;
- drm_context_t * hHWContext;
+Bool XF86DRICreateContext(Display *dpy, int screen, Visual *visual,
+ XID *context, drm_context_t *hHWContext)
{
return XF86DRICreateContextWithConfig( dpy, screen, visual->visualid,
context, hHWContext );
diff --git a/xorg-server/hw/kdrive/ephyr/Xephyr.man.pre b/xorg-server/hw/kdrive/ephyr/Xephyr.man.pre
index 7f0e811a2..f5e8b984d 100644
--- a/xorg-server/hw/kdrive/ephyr/Xephyr.man.pre
+++ b/xorg-server/hw/kdrive/ephyr/Xephyr.man.pre
@@ -23,8 +23,8 @@ Xephyr - X server outputting to a window on a pre-existing X display
.IR ... ]
.SH DESCRIPTION
.B Xephyr
-is a a kdrive server that outputs to a window on a pre-existing
-'host' X display.
+is a a kdrive server that outputs to a window on a pre-existing "host"
+X display.
Think
.I Xnest
but with support for modern extensions like composite, damage and randr.
@@ -75,7 +75,7 @@ round it. It doesn't appear to break anything however.
.IP \(bu 2
Keyboard handling is basic but works.
.TP \(bu 2
-Mouse button 5 probably wont work.
+Mouse button 5 probably won't work.
.SH "SEE ALSO"
X(__miscmansuffix__), Xserver(__appmansuffix__)
.SH AUTHOR
diff --git a/xorg-server/hw/kdrive/ephyr/ephyr.c b/xorg-server/hw/kdrive/ephyr/ephyr.c
index d0f02a16d..947a7ff1b 100644
--- a/xorg-server/hw/kdrive/ephyr/ephyr.c
+++ b/xorg-server/hw/kdrive/ephyr/ephyr.c
@@ -432,7 +432,7 @@ ephyrRandRGetInfo (ScreenPtr pScreen, Rotation *rotations)
RRScreenSizePtr pSize;
Rotation randr;
int n = 0;
-
+
struct { int width, height; } sizes[] =
{
{ 1600, 1200 },
@@ -454,7 +454,7 @@ ephyrRandRGetInfo (ScreenPtr pScreen, Rotation *rotations)
};
EPHYR_LOG("mark");
-
+
*rotations = RR_Rotate_All|RR_Reflect_All;
if (!hostx_want_preexisting_window (screen)
@@ -746,6 +746,7 @@ ephyrScreenFini (KdScreenInfo *screen)
void
ephyrUpdateModifierState(unsigned int state)
{
+#if 0
DeviceIntPtr pkeydev;
KeyClassPtr keyc;
int i;
@@ -756,6 +757,18 @@ ephyrUpdateModifierState(unsigned int state)
if (!pkeydev)
return;
+/* This is pretty broken.
+ *
+ * What should happen is that focus out should do as a VT switch does in
+ * traditional servers: fake releases for all keys (and buttons too, come
+ * to think of it) currently down. Then, on focus in, get the state from
+ * the host, and fake keypresses for everything currently down.
+ *
+ * So I'm leaving this broken for a little while. Sorry, folks.
+ *
+ * -daniels
+ */
+
keyc = pkeydev->key;
state = state & 0xff;
@@ -773,7 +786,7 @@ ephyrUpdateModifierState(unsigned int state)
int count = keyc->modifierKeyCount[i];
for (key = 0; key < MAP_LENGTH; key++)
- if (keyc->modifierMap[key] & mask)
+ if (keyc->xkbInfo->desc->map->modmap[key] & mask)
{
int bit;
BYTE *kptr;
@@ -793,14 +806,15 @@ ephyrUpdateModifierState(unsigned int state)
/* Modifier shoud be down, but isn't */
if (!(keyc->state & mask) && (state & mask))
for (key = 0; key < MAP_LENGTH; key++)
- if (keyc->modifierMap[key] & mask)
+ if (keyc->xkbInfo->desc->map->modmap[key] & mask)
{
- if (keyc->modifierMap[key] & mask && ephyrKbd &&
+ if (keyc->xkbInfo->desc->map->modmap[key] & mask && ephyrKbd &&
((EphyrKbdPrivate *)ephyrKbd->driverPrivate)->enabled)
KdEnqueueKeyboardEvent(ephyrKbd, key, FALSE); /* press */
break;
}
}
+#endif
}
static void
@@ -1071,7 +1085,7 @@ MouseInit (KdPointerInfo *pi)
((EphyrPointerPrivate *)pi->driverPrivate)->enabled = FALSE;
pi->nAxes = 3;
pi->nButtons = 32;
- pi->name = KdSaveString("Xephyr virtual mouse");
+ pi->name = strdup("Xephyr virtual mouse");
ephyrMouse = pi;
return Success;
}
@@ -1118,14 +1132,9 @@ EphyrKeyboardInit (KdKeyboardInfo *ki)
ErrorF("Couldn't load keymap from host\n");
return BadAlloc;
}
- ki->keySyms.minKeyCode = ephyrKeySyms.minKeyCode;
- ki->keySyms.maxKeyCode = ephyrKeySyms.maxKeyCode;
- ki->minScanCode = ki->keySyms.minKeyCode;
- ki->maxScanCode = ki->keySyms.maxKeyCode;
- ki->keySyms.mapWidth = ephyrKeySyms.mapWidth;
- xfree(ki->keySyms.map);
- ki->keySyms.map = ephyrKeySyms.map;
- ki->name = KdSaveString("Xephyr virtual keyboard");
+ ki->minScanCode = ephyrKeySyms.minKeyCode;
+ ki->maxScanCode = ephyrKeySyms.maxKeyCode;
+ ki->name = strdup("Xephyr virtual keyboard");
ephyrKbd = ki;
return Success;
}
@@ -1147,8 +1156,6 @@ EphyrKeyboardDisable (KdKeyboardInfo *ki)
static void
EphyrKeyboardFini (KdKeyboardInfo *ki)
{
- /* not xfree: we call malloc from hostx.c. */
- free(ki->keySyms.map);
ephyrKbd = NULL;
return;
}
diff --git a/xorg-server/hw/kdrive/ephyr/ephyrdriext.c b/xorg-server/hw/kdrive/ephyr/ephyrdriext.c
index a906ad170..84885d8f0 100644
--- a/xorg-server/hw/kdrive/ephyr/ephyrdriext.c
+++ b/xorg-server/hw/kdrive/ephyr/ephyrdriext.c
@@ -34,8 +34,6 @@
#include <string.h>
-#define NEED_REPLIES
-#define NEED_EVENTS
#include <X11/X.h>
#include <X11/Xproto.h>
#define _XF86DRI_SERVER_
@@ -617,10 +615,10 @@ ProcXF86DRIQueryVersion (register ClientPtr client)
{
xXF86DRIQueryVersionReply rep;
register int n;
+ REQUEST_SIZE_MATCH(xXF86DRIQueryVersionReq);
EPHYR_LOG ("enter\n") ;
- REQUEST_SIZE_MATCH(xXF86DRIQueryVersionReq);
rep.type = X_Reply;
rep.length = 0;
rep.sequenceNumber = client->sequence;
@@ -645,10 +643,10 @@ ProcXF86DRIQueryDirectRenderingCapable (register ClientPtr client)
xXF86DRIQueryDirectRenderingCapableReply rep;
Bool isCapable;
register int n;
-
- EPHYR_LOG ("enter\n") ;
REQUEST(xXF86DRIQueryDirectRenderingCapableReq);
REQUEST_SIZE_MATCH(xXF86DRIQueryDirectRenderingCapableReq);
+
+ EPHYR_LOG ("enter\n") ;
if (stuff->screen >= screenInfo.numScreens) {
client->errorValue = stuff->screen;
return BadValue;
@@ -683,10 +681,10 @@ ProcXF86DRIOpenConnection (register ClientPtr client)
xXF86DRIOpenConnectionReply rep;
drm_handle_t hSAREA;
char* busIdString;
-
- EPHYR_LOG ("enter\n") ;
REQUEST(xXF86DRIOpenConnectionReq);
REQUEST_SIZE_MATCH(xXF86DRIOpenConnectionReq);
+
+ EPHYR_LOG ("enter\n") ;
if (stuff->screen >= screenInfo.numScreens) {
client->errorValue = stuff->screen;
return BadValue;
@@ -703,8 +701,8 @@ ProcXF86DRIOpenConnection (register ClientPtr client)
rep.busIdStringLength = 0;
if (busIdString)
rep.busIdStringLength = strlen(busIdString);
- rep.length = (SIZEOF(xXF86DRIOpenConnectionReply) - SIZEOF(xGenericReply) +
- ((rep.busIdStringLength + 3) & ~3)) >> 2;
+ rep.length = bytes_to_int32(SIZEOF(xXF86DRIOpenConnectionReply) - SIZEOF(xGenericReply) +
+ pad_to_int32(rep.busIdStringLength));
rep.hSAREALow = (CARD32)(hSAREA & 0xffffffff);
#if defined(LONG64) && !defined(__linux__)
@@ -724,10 +722,10 @@ static int
ProcXF86DRIAuthConnection (register ClientPtr client)
{
xXF86DRIAuthConnectionReply rep;
-
- EPHYR_LOG ("enter\n") ;
REQUEST(xXF86DRIAuthConnectionReq);
REQUEST_SIZE_MATCH(xXF86DRIAuthConnectionReq);
+
+ EPHYR_LOG ("enter\n") ;
if (stuff->screen >= screenInfo.numScreens) {
client->errorValue = stuff->screen;
return BadValue;
@@ -750,9 +748,9 @@ ProcXF86DRIAuthConnection (register ClientPtr client)
static int
ProcXF86DRICloseConnection (register ClientPtr client)
{
- EPHYR_LOG ("enter\n") ;
REQUEST(xXF86DRICloseConnectionReq);
REQUEST_SIZE_MATCH(xXF86DRICloseConnectionReq);
+ EPHYR_LOG ("enter\n") ;
if (stuff->screen >= screenInfo.numScreens) {
client->errorValue = stuff->screen;
return BadValue;
@@ -771,10 +769,10 @@ ProcXF86DRIGetClientDriverName (register ClientPtr client)
{
xXF86DRIGetClientDriverNameReply rep;
char* clientDriverName;
-
- EPHYR_LOG ("enter\n") ;
REQUEST(xXF86DRIGetClientDriverNameReq);
REQUEST_SIZE_MATCH(xXF86DRIGetClientDriverNameReq);
+
+ EPHYR_LOG ("enter\n") ;
if (stuff->screen >= screenInfo.numScreens) {
client->errorValue = stuff->screen;
return BadValue;
@@ -791,9 +789,9 @@ ProcXF86DRIGetClientDriverName (register ClientPtr client)
rep.clientDriverNameLength = 0;
if (clientDriverName)
rep.clientDriverNameLength = strlen(clientDriverName);
- rep.length = (SIZEOF(xXF86DRIGetClientDriverNameReply) -
+ rep.length = bytes_to_int32(SIZEOF(xXF86DRIGetClientDriverNameReply) -
SIZEOF(xGenericReply) +
- ((rep.clientDriverNameLength + 3) & ~3)) >> 2;
+ pad_to_int32(rep.clientDriverNameLength));
WriteToClient(client,
sizeof(xXF86DRIGetClientDriverNameReply), (char *)&rep);
@@ -813,10 +811,10 @@ ProcXF86DRICreateContext (register ClientPtr client)
VisualPtr visual;
int i=0;
unsigned long context_id=0;
-
- EPHYR_LOG ("enter\n") ;
REQUEST(xXF86DRICreateContextReq);
REQUEST_SIZE_MATCH(xXF86DRICreateContextReq);
+
+ EPHYR_LOG ("enter\n") ;
if (stuff->screen >= screenInfo.numScreens) {
client->errorValue = stuff->screen;
return BadValue;
@@ -854,10 +852,10 @@ ProcXF86DRICreateContext (register ClientPtr client)
static int
ProcXF86DRIDestroyContext (register ClientPtr client)
{
- EPHYR_LOG ("enter\n") ;
-
REQUEST(xXF86DRIDestroyContextReq);
REQUEST_SIZE_MATCH(xXF86DRIDestroyContextReq);
+ EPHYR_LOG ("enter\n") ;
+
if (stuff->screen >= screenInfo.numScreens) {
client->errorValue = stuff->screen;
return BadValue;
@@ -1026,10 +1024,10 @@ ProcXF86DRICreateDrawable (ClientPtr client)
EphyrWindowPair *pair=NULL ;
EphyrDRIWindowPrivPtr win_priv=NULL;
int rc=0, remote_win=0;
-
- EPHYR_LOG ("enter\n") ;
REQUEST(xXF86DRICreateDrawableReq);
REQUEST_SIZE_MATCH(xXF86DRICreateDrawableReq);
+
+ EPHYR_LOG ("enter\n") ;
if (stuff->screen >= screenInfo.numScreens) {
client->errorValue = stuff->screen;
return BadValue;
@@ -1085,12 +1083,12 @@ ProcXF86DRICreateDrawable (ClientPtr client)
static int
ProcXF86DRIDestroyDrawable (register ClientPtr client)
{
- REQUEST(xXF86DRIDestroyDrawableReq);
DrawablePtr drawable=NULL;
WindowPtr window=NULL;
EphyrWindowPair *pair=NULL;
- REQUEST_SIZE_MATCH(xXF86DRIDestroyDrawableReq);
int rc=0;
+ REQUEST(xXF86DRIDestroyDrawableReq);
+ REQUEST_SIZE_MATCH(xXF86DRIDestroyDrawableReq);
EPHYR_LOG ("enter\n") ;
if (stuff->screen >= screenInfo.numScreens) {
@@ -1136,11 +1134,11 @@ ProcXF86DRIGetDrawableInfo (register ClientPtr client)
int X=0, Y=0, W=0, H=0, backX=0, backY=0, rc=0, i=0;
drm_clip_rect_t *clipRects=NULL;
drm_clip_rect_t *backClipRects=NULL;
+ REQUEST(xXF86DRIGetDrawableInfoReq);
+ REQUEST_SIZE_MATCH(xXF86DRIGetDrawableInfoReq);
EPHYR_LOG ("enter\n") ;
memset (&rep, 0, sizeof (rep)) ;
- REQUEST(xXF86DRIGetDrawableInfoReq);
- REQUEST_SIZE_MATCH(xXF86DRIGetDrawableInfoReq);
if (stuff->screen >= screenInfo.numScreens) {
client->errorValue = stuff->screen;
return BadValue;
@@ -1237,7 +1235,7 @@ ProcXF86DRIGetDrawableInfo (register ClientPtr client)
EPHYR_LOG ("num host clip rects:%d\n", (int)rep.numClipRects) ;
EPHYR_LOG ("num host back clip rects:%d\n", (int)rep.numBackClipRects) ;
- rep.length = ((rep.length + 3) & ~3) >> 2;
+ rep.length = bytes_to_int32(rep.length);
WriteToClient(client, sizeof(xXF86DRIGetDrawableInfoReply), (char *)&rep);
@@ -1267,10 +1265,10 @@ ProcXF86DRIGetDeviceInfo (register ClientPtr client)
xXF86DRIGetDeviceInfoReply rep;
drm_handle_t hFrameBuffer;
void *pDevPrivate;
-
- EPHYR_LOG ("enter\n") ;
REQUEST(xXF86DRIGetDeviceInfoReq);
REQUEST_SIZE_MATCH(xXF86DRIGetDeviceInfoReq);
+
+ EPHYR_LOG ("enter\n") ;
if (stuff->screen >= screenInfo.numScreens) {
client->errorValue = stuff->screen;
return BadValue;
@@ -1299,9 +1297,9 @@ ProcXF86DRIGetDeviceInfo (register ClientPtr client)
rep.length = 0;
if (rep.devPrivateSize) {
- rep.length = (SIZEOF(xXF86DRIGetDeviceInfoReply) -
+ rep.length = bytes_to_int32(SIZEOF(xXF86DRIGetDeviceInfoReply) -
SIZEOF(xGenericReply) +
- ((rep.devPrivateSize + 3) & ~3)) >> 2;
+ pad_to_int32(rep.devPrivateSize));
}
WriteToClient(client, sizeof(xXF86DRIGetDeviceInfoReply), (char *)&rep);
diff --git a/xorg-server/hw/kdrive/ephyr/ephyrhostglx.c b/xorg-server/hw/kdrive/ephyr/ephyrhostglx.c
index a05bba2e3..728687b46 100644
--- a/xorg-server/hw/kdrive/ephyr/ephyrhostglx.c
+++ b/xorg-server/hw/kdrive/ephyr/ephyrhostglx.c
@@ -428,7 +428,7 @@ ephyrHostGLXSendClientInfo (int32_t a_major, int32_t a_minor,
req->minor = a_minor;
size = strlen (a_extension_list) + 1;
- req->length += (size + 3) >> 2;
+ req->length += bytes_to_int32(size);
req->numbytes = size;
Data (dpy, a_extension_list, size);
diff --git a/xorg-server/hw/kdrive/ephyr/ephyrinit.c b/xorg-server/hw/kdrive/ephyr/ephyrinit.c
index e5ca089b1..27c346dd1 100644
--- a/xorg-server/hw/kdrive/ephyr/ephyrinit.c
+++ b/xorg-server/hw/kdrive/ephyr/ephyrinit.c
@@ -111,6 +111,7 @@ ddxUseMsg (void)
#endif
ErrorF("-noxv do not use XV\n");
ErrorF("-name [name] define the name in the WM_CLASS property\n");
+ ErrorF("-title [title] set the window title in the WM_NAME property\n");
ErrorF("\n");
exit(1);
@@ -245,10 +246,44 @@ ddxProcessArgument (int argc, char **argv, int i)
return 0;
}
}
+ else if (!strcmp (argv[i], "-title"))
+ {
+ if (i+1 < argc && argv[i+1][0] != '-')
+ {
+ hostx_set_title(argv[i+1]);
+ return 2;
+ }
+ else
+ {
+ UseMsg();
+ return 0;
+ }
+ }
else if (argv[i][0] == ':')
{
hostx_set_display_name(argv[i]);
}
+ /* Xnest compatibility */
+ else if (!strcmp(argv[i], "-display"))
+ {
+ hostx_set_display_name(argv[i+1]);
+ return 2;
+ }
+ else if (!strcmp(argv[i], "-sync") ||
+ !strcmp(argv[i], "-full") ||
+ !strcmp(argv[i], "-sss") ||
+ !strcmp(argv[i], "-install"))
+ {
+ return 1;
+ }
+ else if (!strcmp(argv[i], "-bw") ||
+ !strcmp(argv[i], "-class") ||
+ !strcmp(argv[i], "-geometry") ||
+ !strcmp(argv[i], "-scrns"))
+ {
+ return 2;
+ }
+ /* end Xnest compat */
return KdProcessArgument (argc, argv, i);
}
diff --git a/xorg-server/hw/kdrive/ephyr/ephyrvideo.c b/xorg-server/hw/kdrive/ephyr/ephyrvideo.c
index c4eb06607..5058ebe03 100644
--- a/xorg-server/hw/kdrive/ephyr/ephyrvideo.c
+++ b/xorg-server/hw/kdrive/ephyr/ephyrvideo.c
@@ -236,7 +236,7 @@ DoSimpleClip (BoxPtr a_dst_box,
static Bool
ephyrLocalAtomToHost (int a_local_atom, int *a_host_atom)
{
- char *atom_name=NULL;
+ const char *atom_name=NULL;
int host_atom=None ;
EPHYR_RETURN_VAL_IF_FAIL (a_host_atom, FALSE) ;
diff --git a/xorg-server/hw/kdrive/ephyr/hostx.c b/xorg-server/hw/kdrive/ephyr/hostx.c
index 9a31b0b94..7a828eb31 100644
--- a/xorg-server/hw/kdrive/ephyr/hostx.c
+++ b/xorg-server/hw/kdrive/ephyr/hostx.c
@@ -80,6 +80,7 @@ struct EphyrHostScreen
{
Window win;
Window win_pre_existing; /* Set via -parent option like xnest */
+ Window peer_win; /* Used for GL; should be at most one */
XImage *ximg;
int win_width, win_height;
int server_depth;
@@ -123,6 +124,7 @@ extern int monitorResolution;
char *ephyrResName = NULL;
int ephyrResNameFromCmd = 0;
+char *ephyrTitle = NULL;
static void
hostx_set_fullscreen_hint(void);
@@ -227,20 +229,25 @@ hostx_set_screen_number(EphyrScreenInfo screen, int number)
void
hostx_set_win_title (EphyrScreenInfo screen, char *extra_text)
{
- struct EphyrHostScreen *host_screen = host_screen_from_screen_info (screen);
-#define BUF_LEN 256
- char buf[BUF_LEN+1];
+ struct EphyrHostScreen *host_screen = host_screen_from_screen_info (screen);
- if (!host_screen)
+ if (!host_screen)
return;
- memset (buf, 0, BUF_LEN+1) ;
- snprintf (buf, BUF_LEN, "Xephyr on %s.%d %s",
- HostX.server_dpy_name,
- host_screen->mynum,
- (extra_text != NULL) ? extra_text : "");
+ if (ephyrTitle) {
+ XStoreName(HostX.dpy, host_screen->win, ephyrTitle);
+ } else {
+#define BUF_LEN 256
+ char buf[BUF_LEN+1];
- XStoreName (HostX.dpy, host_screen->win, buf);
+ memset (buf, 0, BUF_LEN+1) ;
+ snprintf (buf, BUF_LEN, "Xephyr on %s.%d %s",
+ HostX.server_dpy_name,
+ host_screen->mynum,
+ (extra_text != NULL) ? extra_text : "");
+
+ XStoreName (HostX.dpy, host_screen->win, buf);
+ }
}
int
@@ -324,6 +331,12 @@ hostx_use_resname (char *name, int fromcmd)
ephyrResNameFromCmd = fromcmd;
}
+void
+hostx_set_title (char *title)
+{
+ ephyrTitle = title;
+}
+
int
hostx_init (void)
{
@@ -592,7 +605,7 @@ hostx_calculate_color_shift(unsigned long mask)
{
int shift = 1;
/* count # of bits in mask */
- while (mask=(mask>>1)) shift++;
+ while ((mask = (mask >> 1))) shift++;
/* cmap entry is an unsigned char so adjust it by size of that */
shift = shift - sizeof(unsigned char) * 8;
if (shift < 0) shift = 0;
@@ -930,35 +943,17 @@ host_screen_from_window (Window w)
{
int index = 0;
struct EphyrHostScreen *result = NULL;
-#if 0
- unsigned int num_children = 0;
- Window root = None, parent = None, *children = NULL;
-#endif
for (index = 0 ; index < HostX.n_screens ; index++)
{
- if (HostX.screens[index].win == w)
+ if (HostX.screens[index].win == w || HostX.screens[index].peer_win == w)
{
result = &HostX.screens[index];
goto out;
}
}
-#if 0
- XQueryTree (hostx_get_display (), w, &root, &parent,
- &children, &num_children);
- if (parent == root || parent == None)
- goto out;
- result = host_screen_from_window (parent);
-#endif
out:
-#if 0
- if (children)
- {
- XFree (children);
- children = NULL;
- }
-#endif
return result;
}
@@ -1252,6 +1247,11 @@ hostx_create_window (int a_screen_number,
EPHYR_LOG_ERROR ("failed to create peer window\n") ;
goto out ;
}
+ if (HostX.screens[a_screen_number].peer_win == None) {
+ HostX.screens[a_screen_number].peer_win = win;
+ } else {
+ EPHYR_LOG_ERROR ("multiple peer windows created for same screen\n") ;
+ }
XFlush (dpy) ;
XMapWindow (dpy, win) ;
*a_host_peer = win ;
diff --git a/xorg-server/hw/kdrive/ephyr/hostx.h b/xorg-server/hw/kdrive/ephyr/hostx.h
index ebc15822a..f455b3003 100644
--- a/xorg-server/hw/kdrive/ephyr/hostx.h
+++ b/xorg-server/hw/kdrive/ephyr/hostx.h
@@ -152,6 +152,9 @@ hostx_use_preexisting_window(unsigned long win_id);
void
hostx_use_resname (char *name, int fromcmd);
+void
+hostx_set_title(char *name);
+
void
hostx_handle_signal(int signum);