xserver: Branch 'xorg-server-1.4-apple' - 3 commits

Jeremy Huddleston jeremyhu at kemper.freedesktop.org
Wed Apr 16 21:49:27 PDT 2008


 configure.ac                    |   10 +++++++++-
 hw/xquartz/xpr/Makefile.am      |    2 --
 hw/xquartz/xpr/xprScreen.c      |    4 +++-
 miext/rootless/README.txt       |    4 ----
 miext/rootless/rootlessConfig.h |    3 +--
 miext/rootless/rootlessGC.c     |    8 ++++----
 6 files changed, 17 insertions(+), 14 deletions(-)

New commits:
commit 6d3d344b5b95b6dc4166556d03cfd8c9576dc3f0
Author: Jeremy Huddleston <jeremyhu at freedesktop.org>
Date:   Wed Apr 16 21:49:19 2008 -0700

    XQuartz: Don't use composite.

diff --git a/configure.ac b/configure.ac
index 87785a5..125f1f3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -495,7 +495,7 @@ AC_ARG_ENABLE(glx-tls,        AS_HELP_STRING([--enable-glx-tls], [Build GLX with
                                 [GLX_USE_TLS=no])
 
 dnl Extensions.
-AC_ARG_ENABLE(composite,      AS_HELP_STRING([--disable-composite], [Build Composite extension (default: enabled)]), [COMPOSITE=$enableval], [COMPOSITE=yes])
+AC_ARG_ENABLE(composite,      AS_HELP_STRING([--disable-composite], [Build Composite extension (default: enabled)]), [COMPOSITE=$enableval], [COMPOSITE=auto])
 AC_ARG_ENABLE(mitshm,         AS_HELP_STRING([--disable-shm], [Build SHM extension (default: enabled)]), [MITSHM=$enableval], [MITSHM=yes])
 AC_ARG_ENABLE(xres,           AS_HELP_STRING([--disable-xres], [Build XRes extension (default: enabled)]), [RES=$enableval], [RES=yes])
 AC_ARG_ENABLE(xtrap,          AS_HELP_STRING([--disable-xtrap], [Build XTrap extension (default: enabled)]), [XTRAP=$enableval], [XTRAP=yes])
@@ -694,6 +694,14 @@ if test "x$XVMC" = xyes; then
 	AC_DEFINE(XvMCExtension, 1, [Build XvMC extension])
 fi
 
+dnl XQuartz DDX Detection... Yes, it's ugly to have it here... but we need to disable COMPOSITE for 
+if test "x$COMPOSITE" = xauto; then
+	case $host_os in
+		darwin*)
+			[ "x$XQUARTZ" = xyes -o "x$XQUARTZ" = xauto ] && COMPOSITE=no
+			;;
+	esac
+fi
 
 AM_CONDITIONAL(COMPOSITE, [test "x$COMPOSITE" = xyes])
 if test "x$COMPOSITE" = xyes; then
diff --git a/hw/xquartz/xpr/Makefile.am b/hw/xquartz/xpr/Makefile.am
index 6523561..f6ede8b 100644
--- a/hw/xquartz/xpr/Makefile.am
+++ b/hw/xquartz/xpr/Makefile.am
@@ -27,7 +27,6 @@ Xquartz_LDADD = \
 	$(top_builddir)/miext/shadow/libshadow.la \
 	$(top_builddir)/fb/libfb.la \
 	$(top_builddir)/mi/libmi.la \
-	$(top_builddir)/composite/libcomposite.la \
 	$(top_builddir)/damageext/libdamageext.la \
 	$(top_builddir)/miext/damage/libdamage.la \
 	$(top_builddir)/xfixes/libxfixes.la \
commit 180ec128adef11a9a90cea1189dc31ac5de8359f
Author: Jeremy Huddleston <jeremyhu at freedesktop.org>
Date:   Wed Apr 16 21:48:52 2008 -0700

    Xquartz: Don't need to link against rlAccel since we don't use it

diff --git a/hw/xquartz/xpr/Makefile.am b/hw/xquartz/xpr/Makefile.am
index b4d67c7..6523561 100644
--- a/hw/xquartz/xpr/Makefile.am
+++ b/hw/xquartz/xpr/Makefile.am
@@ -40,7 +40,6 @@ Xquartz_LDADD = \
 	$(top_builddir)/record/librecord.la \
 	$(top_builddir)/XTrap/libxtrap.la \
 	$(top_builddir)/miext/rootless/librootless.la \
-	$(top_builddir)/miext/rootless/accel/librlAccel.la \
 	$(DARWIN_LIBS) $(XSERVER_LIBS) $(XSERVER_SYS_LIBS) -lXplugin
 
 Xquartz_LDFLAGS =  \
commit 7b4b89c1da02d712f08589d5d4f445bbe4b0404c
Author: Jeremy Huddleston <jeremyhu at freedesktop.org>
Date:   Thu Apr 3 16:29:43 2008 -0700

    XQuartz: Don't enable rootless accelerated functionality... crashy...
    (cherry picked from commit cdb4c291d8c10c3a9ea59d8e79275a30d2ea82b4)

diff --git a/hw/xquartz/xpr/xprScreen.c b/hw/xquartz/xpr/xprScreen.c
index 78dcd4b..150c4bd 100644
--- a/hw/xquartz/xpr/xprScreen.c
+++ b/hw/xquartz/xpr/xprScreen.c
@@ -356,7 +356,9 @@ xprSetupScreen(int index, ScreenPtr pScreen)
 {
     // Initialize accelerated rootless drawing
     // Note that this must be done before DamageSetup().
-    RootlessAccelInit(pScreen);
+
+    // These are crashing ugly... better to be stable and not crash for now.
+    //RootlessAccelInit(pScreen);
 
 #ifdef DAMAGE
     // The Damage extension needs to wrap underneath the
diff --git a/miext/rootless/README.txt b/miext/rootless/README.txt
index ffd1790..2c3fbb0 100644
--- a/miext/rootless/README.txt
+++ b/miext/rootless/README.txt
@@ -76,10 +76,6 @@ rootlessConfig.h to specify compile time options for its platform.
         The following compile-time options are defined in 
 rootlessConfig.h:
 
-      o ROOTLESS_ACCEL: If true, use the optional rootless acceleration
-        functions where possible to a accelerate X11 drawing primitives.
-        If false, all drawing will be done with fb.
-
       o ROOTLESS_GLOBAL_COORDS: This option controls the way that frame
         coordinates are passed to the rootless implementation. If false,
         the coordinates are passed per screen relative to the origin of 
diff --git a/miext/rootless/rootlessConfig.h b/miext/rootless/rootlessConfig.h
index ab0187e..50bac3f 100644
--- a/miext/rootless/rootlessConfig.h
+++ b/miext/rootless/rootlessConfig.h
@@ -36,12 +36,12 @@
 
 #ifdef __APPLE__
 
-# define ROOTLESS_ACCEL TRUE
 # define ROOTLESS_GLOBAL_COORDS TRUE
 # define ROOTLESS_PROTECT_ALPHA TRUE
 # define ROOTLESS_REDISPLAY_DELAY 10
 # define ROOTLESS_RESIZE_GRAVITY TRUE
 # undef  ROOTLESS_TRACK_DAMAGE
+/*# define ROOTLESSDEBUG*/
 
 /* Bit mask for alpha channel with a particular number of bits per
    pixel. Note that we only care for 32bpp data. Mac OS X uses planar
@@ -52,7 +52,6 @@
 
 #if defined(__CYGWIN__) || defined(WIN32)
 
-# define ROOTLESS_ACCEL YES
 # define ROOTLESS_GLOBAL_COORDS TRUE
 # define ROOTLESS_PROTECT_ALPHA NO
 # define ROOTLESS_REDISPLAY_DELAY 10
diff --git a/miext/rootless/rootlessGC.c b/miext/rootless/rootlessGC.c
index 7e0778e..d4a5436 100644
--- a/miext/rootless/rootlessGC.c
+++ b/miext/rootless/rootlessGC.c
@@ -118,7 +118,7 @@ static GCOps rootlessGCOps = {
 
 /*
    There are two issues we must contend with when drawing. These are
-   controlled with ROOTLESS_PROTECT_ALPHA and ROOTLESS_ACCEL.
+   controlled with ROOTLESS_PROTECT_ALPHA and RootlessAccelInit().
 
    If ROOTLESS_PROTECT_ALPHA is set, we have to make sure that the alpha
    channel of the on screen windows is always opaque. fb makes this harder
@@ -141,9 +141,9 @@ static GCOps rootlessGCOps = {
    from another window since its alpha channel must also be opaque.
 
    The other issue to consider is that the rootless implementation may
-   provide accelerated drawing functions if ROOTLESS_ACCEL is set. For some
-   drawing primitives we swap in rootless acceleration functions, which use
-   the accelerated drawing functions where possible.
+   provide accelerated drawing functions if RootlessAccelInit() is called.For 
+   some drawing primitives we swap in rootless acceleration functions, which
+   use the accelerated drawing functions where possible.
 
    Where both alpha protection and acceleration is used, it is even a bigger
    win to relax the planemask to all ones because most accelerated drawing


More information about the xorg-commit mailing list