summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHanno Böck <hanno@gentoo.org>2006-09-16 14:21:20 +0000
committerHanno Böck <hanno@gentoo.org>2006-09-16 14:21:20 +0000
commitb19359934c40ca2006f4696ecb3e134443f4e35b (patch)
treed2a512312a1bbaea1c9c8c623ce03929be1a90e7 /x11-wm/compiz
parentStable on hppa. See bug #147061. (diff)
downloadgentoo-2-b19359934c40ca2006f4696ecb3e134443f4e35b.tar.gz
gentoo-2-b19359934c40ca2006f4696ecb3e134443f4e35b.tar.bz2
gentoo-2-b19359934c40ca2006f4696ecb3e134443f4e35b.zip
compiz initial commit
(Portage version: 2.1.2_pre1)
Diffstat (limited to 'x11-wm/compiz')
-rw-r--r--x11-wm/compiz/ChangeLog12
-rw-r--r--x11-wm/compiz/Manifest36
-rw-r--r--x11-wm/compiz/compiz-0.0.13_pre20060916.ebuild59
-rw-r--r--x11-wm/compiz/files/03-composite-cube-logo.patch43
-rw-r--r--x11-wm/compiz/files/04-fbconfig-depth-fix.patch31
-rw-r--r--x11-wm/compiz/files/06-glfinish.patch23
-rw-r--r--x11-wm/compiz/files/07-cow.patch120
-rwxr-xr-xx11-wm/compiz/files/compiz-aiglx5
-rw-r--r--x11-wm/compiz/files/digest-compiz-0.0.13_pre200609163
-rw-r--r--x11-wm/compiz/metadata.xml6
10 files changed, 338 insertions, 0 deletions
diff --git a/x11-wm/compiz/ChangeLog b/x11-wm/compiz/ChangeLog
new file mode 100644
index 000000000000..38844982cfc0
--- /dev/null
+++ b/x11-wm/compiz/ChangeLog
@@ -0,0 +1,12 @@
+# ChangeLog for x11-wm/compiz
+# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/compiz/ChangeLog,v 1.1 2006/09/16 14:21:20 hanno Exp $
+
+*compiz-0.0.13_pre20060916 (16 Sep 2006)
+
+ 16 Sep 2006; Hanno Boeck <hanno@gentoo.org>
+ +files/03-composite-cube-logo.patch, +files/04-fbconfig-depth-fix.patch,
+ +files/06-glfinish.patch, +files/07-cow.patch, +files/compiz-aiglx,
+ +compiz-0.0.13_pre20060916.ebuild:
+ Initial commit of compiz.
+
diff --git a/x11-wm/compiz/Manifest b/x11-wm/compiz/Manifest
new file mode 100644
index 000000000000..5bc4a3505a7e
--- /dev/null
+++ b/x11-wm/compiz/Manifest
@@ -0,0 +1,36 @@
+AUX 03-composite-cube-logo.patch 1515 RMD160 4a260a03d1c60143f4ef395d7808d34ad713199e SHA1 1f59965528e060febb6a50997233f597038fae04 SHA256 91430c1f127609f111696356955cd18e908e6689187e7689604db91c6ae6b4c1
+MD5 39a51dfca89bde69a2a6333102e85308 files/03-composite-cube-logo.patch 1515
+RMD160 4a260a03d1c60143f4ef395d7808d34ad713199e files/03-composite-cube-logo.patch 1515
+SHA256 91430c1f127609f111696356955cd18e908e6689187e7689604db91c6ae6b4c1 files/03-composite-cube-logo.patch 1515
+AUX 04-fbconfig-depth-fix.patch 722 RMD160 035bef41021d3d7be1f769e443ff3a23d57a82f4 SHA1 d0dcef58317bffa490479b1fdfda929ed2bad030 SHA256 edd8e95c4ad40a05ba60740c6775a616b41c7910453a240b45984495fce86e5a
+MD5 f0d9fe04ca0f7f4129ed4fbeebfcdc29 files/04-fbconfig-depth-fix.patch 722
+RMD160 035bef41021d3d7be1f769e443ff3a23d57a82f4 files/04-fbconfig-depth-fix.patch 722
+SHA256 edd8e95c4ad40a05ba60740c6775a616b41c7910453a240b45984495fce86e5a files/04-fbconfig-depth-fix.patch 722
+AUX 06-glfinish.patch 492 RMD160 fed138881ec79179a3d5eb67be35b88e221808d0 SHA1 0416dda22d05c400ade46f9d1c633daf3aa3abea SHA256 4ff47e2d079045637ef5a5b27d577d0d16ce40e7e8fec79280d916233af67db3
+MD5 3a049b520d0557dc6d7644e909be00b3 files/06-glfinish.patch 492
+RMD160 fed138881ec79179a3d5eb67be35b88e221808d0 files/06-glfinish.patch 492
+SHA256 4ff47e2d079045637ef5a5b27d577d0d16ce40e7e8fec79280d916233af67db3 files/06-glfinish.patch 492
+AUX 07-cow.patch 3521 RMD160 d92415814b41d3fef570a2fbdf594270c7e3ccbb SHA1 c3c789542d9d7cfa5b9e4e4453d3dc095798366a SHA256 ae2a755f9260cf110029f00d85cc81a134a49a6b3439cb578c6012bafcb2d4b8
+MD5 6162c9336db7722556da7d265ec3fd06 files/07-cow.patch 3521
+RMD160 d92415814b41d3fef570a2fbdf594270c7e3ccbb files/07-cow.patch 3521
+SHA256 ae2a755f9260cf110029f00d85cc81a134a49a6b3439cb578c6012bafcb2d4b8 files/07-cow.patch 3521
+AUX compiz-aiglx 265 RMD160 37d3081e301632a16046de03d12c8678cbcca8fc SHA1 5fe59bdfd8da36232a3e9e66c36d54dc605a28e8 SHA256 9023e874ca548b66eed763e3688507150366a345dcaa4c242f5daae3e2ec391a
+MD5 fa09c8b3c2843864839716d60217512e files/compiz-aiglx 265
+RMD160 37d3081e301632a16046de03d12c8678cbcca8fc files/compiz-aiglx 265
+SHA256 9023e874ca548b66eed763e3688507150366a345dcaa4c242f5daae3e2ec391a files/compiz-aiglx 265
+DIST compiz-20060916.tar.bz2 336009 RMD160 bee7ff7083dd752257b7a9cf6f7d9f06f257a79c SHA1 0e0c18ef6858c7b1dbcd4c148908a420de24f71f SHA256 afd6d930cb739e7fe2e9246ba3c522d90d626991c8bf9dee2753c80543527ba7
+EBUILD compiz-0.0.13_pre20060916.ebuild 1300 RMD160 750cd41461c822aee72140e08eadeab0b403d61d SHA1 0929add4da81f6f122358d632d49fc5b59f52953 SHA256 189d5c6c8c54a666e4e7e99cc6d486932419cc4d4c82e14913da23cfba556b04
+MD5 5f76cd916780272edf7ccea79aeacc71 compiz-0.0.13_pre20060916.ebuild 1300
+RMD160 750cd41461c822aee72140e08eadeab0b403d61d compiz-0.0.13_pre20060916.ebuild 1300
+SHA256 189d5c6c8c54a666e4e7e99cc6d486932419cc4d4c82e14913da23cfba556b04 compiz-0.0.13_pre20060916.ebuild 1300
+MISC ChangeLog 413 RMD160 503555f5f67ce12bf9f27b5cd52ece01b774c4ab SHA1 ea43e77488730c5f2539d3a0b71297c2ca8c7cbe SHA256 58ca71ab8b2d7421f961ba9ce7849275e4f11db8560f2fcfab442fc34becc05e
+MD5 4da24a6ed1341b0ead7401f1388673fe ChangeLog 413
+RMD160 503555f5f67ce12bf9f27b5cd52ece01b774c4ab ChangeLog 413
+SHA256 58ca71ab8b2d7421f961ba9ce7849275e4f11db8560f2fcfab442fc34becc05e ChangeLog 413
+MISC metadata.xml 217 RMD160 3b01d5dab901ee93217f72b711954d3cccbb1717 SHA1 e304788b60dd2cf214d360a21d267e8635474d98 SHA256 2f5dfc1eb79d2d9ee02663da6e1449f499c3a37b7f4cc2391e18d7789a314669
+MD5 a72a06a37ca4e5905085ebff07fe9e9e metadata.xml 217
+RMD160 3b01d5dab901ee93217f72b711954d3cccbb1717 metadata.xml 217
+SHA256 2f5dfc1eb79d2d9ee02663da6e1449f499c3a37b7f4cc2391e18d7789a314669 metadata.xml 217
+MD5 69b1f0729f4f6b9ccef7b2686f4754c5 files/digest-compiz-0.0.13_pre20060916 250
+RMD160 2584745ce23559d170db51a0c694888d46e15230 files/digest-compiz-0.0.13_pre20060916 250
+SHA256 dee6344540521c7180173a2662a2816341de22256bbee8023bd27da077f31c7d files/digest-compiz-0.0.13_pre20060916 250
diff --git a/x11-wm/compiz/compiz-0.0.13_pre20060916.ebuild b/x11-wm/compiz/compiz-0.0.13_pre20060916.ebuild
new file mode 100644
index 000000000000..ef00d1bed827
--- /dev/null
+++ b/x11-wm/compiz/compiz-0.0.13_pre20060916.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/compiz/compiz-0.0.13_pre20060916.ebuild,v 1.1 2006/09/16 14:21:20 hanno Exp $
+
+inherit eutils autotools
+
+SRC_URI="http://www.schokokeks.org/~hanno/snapshots/${PN}-${PV##*_pre}.tar.bz2"
+
+PATCHES="${FILESDIR}/03-composite-cube-logo.patch
+ ${FILESDIR}/04-fbconfig-depth-fix.patch
+ ${FILESDIR}/06-glfinish.patch
+ ${FILESDIR}/07-cow.patch"
+
+S=${WORKDIR}/${PN}
+
+DESCRIPTION="compiz 3D composite- and windowmanager"
+HOMEPAGE="http://en.opensuse.org/Compiz"
+LICENSE="X11"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="dbus svg"
+
+DEPEND=">=media-libs/mesa-6.5.1
+ >=media-libs/glitz-0.5.6
+ >=x11-base/xorg-server-1.1.1-r1
+ x11-libs/startup-notification
+ media-libs/libpng
+ x11-libs/libXdamage
+ x11-libs/libXrandr
+ x11-libs/libXcomposite
+ x11-libs/libwnck
+ gnome-base/gnome-desktop
+ gnome-base/control-center
+ svg? ( gnome-base/librsvg )
+ dbus? ( sys-apps/dbus )"
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ epatch ${PATCHES}
+}
+
+src_compile() {
+ eautoreconf || die
+ glib-gettextize --copy --force || die
+
+ econf --with-gl-libs="-Wl,-R/usr/$(get_libdir)/opengl/xorg-x11/lib/ -lGL" \
+ --disable-kde \
+ --enable-gnome \
+ `use_enable svg librsvg` \
+ `use_enable dbus` || die
+
+ emake || die
+}
+
+src_install() {
+ make DESTDIR=${D} install || die
+ dobin ${FILESDIR}/compiz-aiglx
+}
diff --git a/x11-wm/compiz/files/03-composite-cube-logo.patch b/x11-wm/compiz/files/03-composite-cube-logo.patch
new file mode 100644
index 000000000000..c777257a52d1
--- /dev/null
+++ b/x11-wm/compiz/files/03-composite-cube-logo.patch
@@ -0,0 +1,43 @@
+Composite cube logo against background color.
+
+From: Kristian Høgsberg <krh@redhat.com>
+
+
+---
+
+ plugins/cube.c | 17 +++++++++++++++++
+ 1 files changed, 17 insertions(+), 0 deletions(-)
+
+diff --git a/plugins/cube.c b/plugins/cube.c
+index 31edd5c..339d843 100644
+--- a/plugins/cube.c
++++ b/plugins/cube.c
+@@ -1162,11 +1162,28 @@ cubePaintTransformedScreen (CompScreen
+
+ if (cs->invert == 1 && s->size == 4 && cs->texture.name)
+ {
++ glTexEnvf (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE);
++
++ glTexEnvf (GL_TEXTURE_ENV, GL_COMBINE_RGB, GL_INTERPOLATE);
++ glTexEnvf (GL_TEXTURE_ENV, GL_SOURCE0_RGB, GL_TEXTURE0);
++ glTexEnvf (GL_TEXTURE_ENV, GL_SOURCE1_RGB, GL_PRIMARY_COLOR);
++ glTexEnvf (GL_TEXTURE_ENV, GL_SOURCE2_RGB, GL_TEXTURE0);
++ glTexEnvf (GL_TEXTURE_ENV, GL_OPERAND0_RGB, GL_SRC_COLOR);
++ glTexEnvf (GL_TEXTURE_ENV, GL_OPERAND1_RGB, GL_SRC_COLOR);
++ glTexEnvf (GL_TEXTURE_ENV, GL_OPERAND2_RGB, GL_SRC_ALPHA);
++
++ glTexEnvf (GL_TEXTURE_ENV, GL_COMBINE_ALPHA, GL_REPLACE);
++ glTexEnvf (GL_TEXTURE_ENV, GL_SOURCE0_ALPHA, GL_PREVIOUS);
++ glTexEnvf (GL_TEXTURE_ENV, GL_OPERAND0_ALPHA, GL_SRC_ALPHA);
++
+ enableTexture (s, &cs->texture, COMP_TEXTURE_FILTER_GOOD);
++
+ glTexCoordPointer (2, GL_FLOAT, 0, cs->tc);
+ glDrawArrays (GL_TRIANGLE_FAN, 0, cs->nvertices >> 1);
+ disableTexture (s, &cs->texture);
+ glDisableClientState (GL_TEXTURE_COORD_ARRAY);
++
++ glTexEnvi (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
+ }
+ else
+ {
diff --git a/x11-wm/compiz/files/04-fbconfig-depth-fix.patch b/x11-wm/compiz/files/04-fbconfig-depth-fix.patch
new file mode 100644
index 000000000000..29dbdc96de34
--- /dev/null
+++ b/x11-wm/compiz/files/04-fbconfig-depth-fix.patch
@@ -0,0 +1,31 @@
+Make sure the depth of the corresponding match for the fbconfig we pick.
+
+From: Kristian Høgsberg <krh@redhat.com>
+
+
+---
+
+ src/screen.c | 10 ++++++++++
+ 1 files changed, 10 insertions(+), 0 deletions(-)
+
+diff --git a/src/screen.c b/src/screen.c
+index 9ec30d5..75c6abc 100644
+--- a/src/screen.c
++++ b/src/screen.c
+@@ -1309,6 +1309,16 @@ addScreen (CompDisplay *display,
+
+ for (j = 0; j < nElements; j++)
+ {
++ {
++ XVisualInfo *vi;
++ int visual_depth;
++ vi = glXGetVisualFromFBConfig(dpy, fbConfigs[j]);
++ visual_depth = vi->depth;
++ XFree(vi);
++ if (visual_depth != i)
++ continue;
++ }
++
+ (*s->getFBConfigAttrib) (dpy,
+ fbConfigs[j],
+ GLX_ALPHA_SIZE,
diff --git a/x11-wm/compiz/files/06-glfinish.patch b/x11-wm/compiz/files/06-glfinish.patch
new file mode 100644
index 000000000000..2c7b2a1609bc
--- /dev/null
+++ b/x11-wm/compiz/files/06-glfinish.patch
@@ -0,0 +1,23 @@
+Add glFinish() after drawing a frame to work-around throttling problems.
+
+From: Kristian Høgsberg <krh@redhat.com>
+
+
+---
+
+ src/display.c | 2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/src/display.c b/src/display.c
+index 7cf12e1..c44b2a2 100644
+--- a/src/display.c
++++ b/src/display.c
+@@ -2079,6 +2079,8 @@ eventLoop (void)
+
+ (*s->donePaintScreen) (s);
+
++ glFinish ();
++
+ /* remove destroyed windows */
+ while (s->pendingDestroys)
+ {
diff --git a/x11-wm/compiz/files/07-cow.patch b/x11-wm/compiz/files/07-cow.patch
new file mode 100644
index 000000000000..aa0550b13003
--- /dev/null
+++ b/x11-wm/compiz/files/07-cow.patch
@@ -0,0 +1,120 @@
+--- ./src/display.c.cow 2006-08-29 19:48:53.000000000 -0400
++++ ./src/display.c 2006-08-29 18:11:46.000000000 -0400
+@@ -1998,7 +1998,7 @@
+ PAINT_SCREEN_REGION_MASK |
+ PAINT_SCREEN_FULL_MASK);
+
+- glXSwapBuffers (s->display->display, s->root);
++ glXSwapBuffers (s->display->display, s->output);
+ }
+ else if (s->damageMask & COMP_SCREEN_DAMAGE_REGION_MASK)
+ {
+@@ -2022,7 +2022,7 @@
+ y = s->height - pBox->y2;
+
+ (*s->copySubBuffer) (s->display->display,
+- s->root,
++ s->output,
+ pBox->x1, y,
+ pBox->x2 - pBox->x1,
+ pBox->y2 - pBox->y1);
+@@ -2071,7 +2071,7 @@
+ &s->region,
+ PAINT_SCREEN_FULL_MASK);
+
+- glXSwapBuffers (s->display->display, s->root);
++ glXSwapBuffers (s->display->display, s->output);
+ }
+ }
+
+--- ./src/screen.c.cow 2006-08-29 14:11:48.000000000 -0400
++++ ./src/screen.c 2006-08-29 18:19:32.000000000 -0400
+@@ -40,6 +40,8 @@
+ #include <X11/Xatom.h>
+ #include <X11/Xproto.h>
+ #include <X11/extensions/Xrandr.h>
++#include <X11/extensions/Xcomposite.h>
++#include <X11/extensions/shape.h>
+ #include <X11/cursorfont.h>
+
+ #include <compiz.h>
+@@ -878,6 +880,25 @@
+ (unsigned char *) data, 1);
+ }
+
++static void
++makeOutputWindow (CompScreen *s)
++{
++ Display *dpy = s->display->display;
++ XserverRegion region;
++
++ s->overlay = XCompositeGetOverlayWindow (dpy, s->root);
++ s->output = s->overlay;
++
++ region = XFixesCreateRegion (dpy, NULL, 0);
++
++ XFixesSetWindowShapeRegion (dpy,
++ s->output,
++ ShapeInput,
++ 0, 0, region);
++
++ XFixesDestroyRegion (dpy, region);
++}
++
+ Bool
+ addScreen (CompDisplay *display,
+ int screenNum,
+@@ -1045,6 +1066,8 @@
+
+ s->grabWindow = None;
+
++ makeOutputWindow (s);
++
+ templ.visualid = XVisualIDFromVisual (s->attrib.visual);
+
+ visinfo = XGetVisualInfo (dpy, VisualIDMask, &templ, &nvisinfo);
+@@ -1174,7 +1197,7 @@
+ s->copySubBuffer = (GLXCopySubBufferProc)
+ getProcAddress (s, "glXCopySubBufferMESA");
+
+- glXMakeCurrent (dpy, s->root, s->ctx);
++ glXMakeCurrent (dpy, s->output, s->ctx);
+ currentRoot = s->root;
+
+ glExtensions = (const char *) glGetString (GL_EXTENSIONS);
+@@ -2844,7 +2867,7 @@
+ {
+ if (currentRoot != s->root)
+ {
+- glXMakeCurrent (s->display->display, s->root, s->ctx);
++ glXMakeCurrent (s->display->display, s->output, s->ctx);
+ currentRoot = s->root;
+
+ s->pendingCommands = TRUE;
+--- ./include/compiz.h.cow 2006-08-29 19:36:02.000000000 -0400
++++ ./include/compiz.h 2006-08-29 15:46:43.000000000 -0400
+@@ -1288,6 +1288,8 @@
+ Region damage;
+ unsigned long damageMask;
+ Window root;
++ Window overlay;
++ Window output;
+ XWindowAttributes attrib;
+ Window grabWindow;
+ CompFBConfig glxPixmapFBConfigs[MAX_DEPTH + 1];
+--- ./src/event.c.cow 2006-08-29 21:37:29.000000000 -0400
++++ ./src/event.c 2006-08-29 21:39:03.000000000 -0400
+@@ -1145,7 +1145,12 @@
+ s = findScreenAtDisplay (d, event->xcreatewindow.parent);
+ if (s)
+ {
+- addWindow (s, event->xcreatewindow.window, getTopWindow (s));
++ /* The first time some client asks for the composite
++ * overlay window, the X server creates it, which causes
++ * an errorneous CreateNotify event. We catch it and
++ * ignore it. */
++ if (s->overlay != event->xcreatewindow.window)
++ addWindow (s, event->xcreatewindow.window, getTopWindow (s));
+ }
+ break;
+ case DestroyNotify:
diff --git a/x11-wm/compiz/files/compiz-aiglx b/x11-wm/compiz/files/compiz-aiglx
new file mode 100755
index 000000000000..117a864e8ef0
--- /dev/null
+++ b/x11-wm/compiz/files/compiz-aiglx
@@ -0,0 +1,5 @@
+# Start window decorator
+gnome-window-decorator --replace &
+
+# Start compiz
+LIBGL_ALWAYS_INDIRECT=1 compiz --replace --indirect-rendering --strict-binding gconf move resize minimize place decoration wobbly cube rotate scale switcher zoom fade screenshot water dbus
diff --git a/x11-wm/compiz/files/digest-compiz-0.0.13_pre20060916 b/x11-wm/compiz/files/digest-compiz-0.0.13_pre20060916
new file mode 100644
index 000000000000..e70008a76fef
--- /dev/null
+++ b/x11-wm/compiz/files/digest-compiz-0.0.13_pre20060916
@@ -0,0 +1,3 @@
+MD5 89a0078ac97dc08972ed347850a9c09c compiz-20060916.tar.bz2 336009
+RMD160 bee7ff7083dd752257b7a9cf6f7d9f06f257a79c compiz-20060916.tar.bz2 336009
+SHA256 afd6d930cb739e7fe2e9246ba3c522d90d626991c8bf9dee2753c80543527ba7 compiz-20060916.tar.bz2 336009
diff --git a/x11-wm/compiz/metadata.xml b/x11-wm/compiz/metadata.xml
new file mode 100644
index 000000000000..efa54454de71
--- /dev/null
+++ b/x11-wm/compiz/metadata.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>no-herd</herd>
+<maintainer><email>hanno@gentoo.org</email></maintainer>
+</pkgmetadata>