[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

compiz: Changes to 'debian-unstable'



 Makefile.in                                 |  901 
 aclocal.m4                                  | 8290 --------
 config.guess                                | 1516 -
 config.h.in                                 |  152 
 config.sub                                  | 1622 -
 config/config.guess                         | 1519 -
 config/config.sub                           | 1626 -
 config/depcomp                              |  530 
 config/install-sh                           |  323 
 config/ltmain.sh                            | 6971 -------
 config/missing                              |  360 
 config/mkinstalldirs                        |  111 
 configure                                   |27242 ----------------------------
 debian/changelog                            |   16 
 debian/compiz-manager                       |  395 
 debian/compiz.wrapper                       |   38 
 debian/control                              |   11 
 debian/copyright                            |   19 
 debian/rules                                |   57 
 depcomp                                     |  530 
 gtk/Makefile.in                             |  601 
 gtk/gnome/Makefile.in                       |  631 
 gtk/window-decorator/Makefile.in            |  643 
 gtk/window-decorator/gtk-window-decorator.c |   12 
 images/Makefile.in                          |  482 
 include/Makefile.in                         |  528 
 install-sh                                  |  323 
 intltool-extract.in                         |  861 
 intltool-merge.in                           | 1451 -
 intltool-update.in                          | 1164 -
 kde/Makefile.in                             |  601 
 kde/window-decorator/Makefile.in            |  640 
 kde/window-decorator/decorator.cpp          |    8 
 kde/window-decorator/main.cpp               |    3 
 libdecoration/Makefile.in                   |  614 
 ltmain.sh                                   | 6938 -------
 metadata/Makefile.in                        |  578 
 missing                                     |  360 
 mkinstalldirs                               |  111 
 plugins/Makefile.in                         |  912 
 po/Makefile.in.in                           |  271 
 src/Makefile.in                             |  624 
 src/action.c                                |   41 
 src/window.c                                |    7 
 44 files changed, 530 insertions(+), 70103 deletions(-)

New commits:
commit 6692513d2b31211bf58ba4e379a42ca2c931d90c
Author: Sean Finney <seanius@debian.org>
Date:   Sun Dec 16 17:46:35 2007 +0100

    use compiz-manager now instead of compiz.wrapper

diff --git a/debian/changelog b/debian/changelog
index 85b816e..97f47c6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,8 +5,14 @@ compiz (0.6.3~git20071208.25941d14-1) unstable; urgency=low
   * Remove autofoo generated content and create/remove it as part of the
     standard build process instead.
   * Similarly, add Build-Deps on autoconf and similar stuff.
-
- -- Sean Finney <seanius@debian.org>  Sat, 08 Dec 2007 13:36:38 +0100
+  * Remove the old/buggy compiz.wrapper script and now use Kristian Lyngstol's
+    compiz-manager script as a drop-in replacement for it.  This should fix
+    numerous problems with plugin settings and window decorators not behaving
+    properly.  specifically, it closes: #449389, #390929, #400583, #440095.
+    it also closes: #446901, #447345 closes: #393501, #445026.  
+  * Update copyright file accordingly.
+
+ -- Sean Finney <seanius@debian.org>  Sun, 16 Dec 2007 17:29:03 +0100
 
 compiz (0.6.3~git20071104.c9009efd-1) unstable; urgency=low
 
diff --git a/debian/compiz-manager b/debian/compiz-manager
new file mode 100644
index 0000000..15eaea7
--- /dev/null
+++ b/debian/compiz-manager
@@ -0,0 +1,395 @@
+#!/bin/sh
+# Compiz Manager wrapper script
+# 
+# Copyright (c) 2007 Kristian Lyngstøl <kristian@bohemians.org>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+#
+#
+# Contributions by: Treviño (3v1n0) <trevi55@gmail.com>, Ubuntu Packages
+#
+# Much of this code is based on Beryl code, also licensed under the GPL.
+# This script will detect what options we need to pass to compiz to get it
+# started, and start a default plugin and possibly window decorator.
+# 
+
+
+COMPIZ_BIN_PATH="/usr/bin/" # For window decorators and compiz
+PLUGIN_PATH="/usr/lib/compiz/" 
+GLXINFO="/usr/bin/glxinfo"
+KWIN="/usr/bin/kwin"
+METACITY="/usr/bin/metacity"
+COMPIZ_NAME="compiz.real" # Final name for compiz (compiz.real) 
+
+# For Xgl LD_PRELOAD
+LIBGL_NVIDIA="/usr/lib/nvidia/libGL.so.1.2.xlibmesa"
+LIBGL_FGLRX="/usr/lib/fglrx/libGL.so.1.2.xlibmesa"
+
+# Minimum amount of memory (in kilo bytes) that nVidia cards need
+# to be allowed to start
+# Set to 262144 to require 256MB
+NVIDIA_MEMORY="65536" # 64MB
+NVIDIA_SETTINGS="nvidia-settings" # Assume it's in the path by default
+
+# For detecting what driver is in use, the + is for one or more /'s
+XORG_DRIVER_PATH="/usr/lib/xorg/modules/drivers/+"
+
+FALLBACKWM="${METACITY}"
+FALLBACKWM_OPTIONS="--replace $@"
+
+# Driver whitelist
+WHITELIST="nvidia intel ati radeon i810"
+
+# blacklist based on the pci ids 
+# See http://wiki.compiz-fusion.org/Hardware/Blacklist for details
+T="   1002:5954 1002:5854 1002:5955" # ati rs480
+T="$T 1002:4153" # ATI Rv350
+T="$T 8086:2982 8086:2992 8086:29a2 8086:2a02 8086:2a12"  # intel 965
+BLACKLIST_PCIIDS="$T"
+unset T
+
+COMPIZ_OPTIONS="--ignore-desktop-hints --replace"
+COMPIZ_PLUGINS=""
+ENV=""
+
+# Use emerald by default if it exist
+USE_EMERALD="yes"
+
+# No indirect by default
+INDIRECT="no"
+
+# Default X.org log if xset q doesn't reveal it
+XORG_DEFAULT_LOG="/var/log/Xorg.0.log"
+
+# Set to yes to enable verbose
+VERBOSE="yes"
+
+# Echos the arguments if verbose
+verbose()
+{
+	if [ "x$VERBOSE" = "xyes" ]; then
+		printf "$*"
+	fi
+}
+
+# abort script and run fallback windowmanager
+abort_with_fallback_wm()
+{
+	if [ "x$SKIP_CHECKS" = "xyes" ]; then
+		verbose "SKIP_CHECKS is yes, so continuing despite problems.\n"
+		return 0;
+	fi
+	
+	if [ "x$CM_DRY" = "xyes" ]; then
+		verbose "Dry run failed: Problems detected with 3D support.'n"
+		exit 1;
+	fi
+
+	verbose "aborting and using fallback: $FALLBACKWM \n"
+
+	if [ -x $FALLBACKWM ]; then
+		exec $FALLBACKWM $FALLBACKWM_OPTIONS
+	else
+		printf "no $FALLBACKWM found, exiting\n"
+		exit 1
+	fi
+}
+
+# Check for non power of two texture support
+check_npot_texture()
+{
+	verbose "Checking for non power of two support: "
+	if glxinfo 2> /dev/null | egrep -q '(GL_ARB_texture_non_power_of_two|GL_NV_texture_rectangle|GL_EXT_texture_rectangle|GL_ARB_texture_rectangle)' ; then
+		verbose "present. \n";
+		return 0;
+	else
+		verbose "Not present. \n"
+		return 1;
+	fi
+
+}
+
+# Check for presence of FBConfig
+check_fbconfig()
+{
+	verbose "Checking for FBConfig: "
+	if [ "$INDIRECT" = "yes" ]; then
+		$GLXINFO -i | grep -q GLX.*fbconfig 
+		FB=$?
+	else
+		$GLXINFO | grep -q GLX.*fbconfig 
+		FB=$?
+	fi
+
+	if [ $FB = "0" ]; then
+		unset FB
+		verbose "present. \n"
+		return 0;
+	else
+		unset FB
+		verbose "not present. \n"
+		return 1;
+	fi
+}
+
+
+# Check for TFP
+check_tfp()
+{
+	verbose "Checking for texture_from_pixmap: "
+	if [ $($GLXINFO 2>/dev/null | grep GLX_EXT_texture_from_pixmap -c) -gt 2 ] ; then
+		verbose "present. \n"
+		return 0;
+	else
+		verbose "not present. \n"
+		if [ "$INDIRECT" = "yes" ]; then
+			unset LIBGL_ALWAYS_INDIRECT
+			INDIRECT="no"
+			return 1;
+		else
+			verbose "Trying again with indirect rendering:\n";
+			INDIRECT="yes"
+			export LIBGL_ALWAYS_INDIRECT=1
+			check_tfp;
+			return $?
+		fi
+	fi
+}
+
+# Check wether the composite extension is present
+check_composite()
+{
+	verbose "Checking for Composite extension: "
+	if xdpyinfo -queryExtensions | grep -q Composite ; then
+		verbose "present. \n";
+		return 0;
+	else
+		verbose "not present. \n";
+		return 1;
+	fi
+}
+
+# Detects if Xgl is running
+check_xgl()
+{
+	verbose "Checking for Xgl: "
+	if xvinfo | grep -q Xgl ; then
+		verbose "present. \n"
+		return 0;
+	else
+		verbose "not present. \n"
+		return 1;
+	fi
+}
+
+# Check if the nVidia card has enough video ram to make sense
+check_nvidia_memory()
+{
+	MEM=$(${NVIDIA_SETTINGS} -q VideoRam | egrep Attribute\ \'VideoRam\'\ .*: | cut -d: -f3 | sed 's/[^0-9]//g')
+	if [ $MEM -lt $NVIDIA_MEMORY ]; then
+		verbose "Less than ${NVIDIA_MEMORY}kb of memory and nVidia";
+		return 1;
+	fi
+	return 0;
+}
+
+# Check for existence if NV-GLX
+check_nvidia()
+{
+	if [ ! -z $NVIDIA_INTERNAL_TEST ]; then
+		return $NVIDIA_INTERNAL_TEST;
+	fi
+	verbose "Checking for nVidia: "
+	if xdpyinfo | grep -q NV-GLX ; then
+		verbose "present. \n"
+		NVIDIA_INTERNAL_TEST=0
+		return 0;
+	else
+		verbose "not present. \n"
+		NVIDIA_INTERNAL_TEST=1
+		return 1;
+	fi
+}
+
+# Check if the max texture size is large enough compared to the resolution
+check_texture_size()
+{
+	TEXTURE_LIMIT=$(glxinfo -l | grep GL_MAX_TEXTURE_SIZE | sed 's/.*=[^0-9]//g')
+	RESOLUTION=$(xdpyinfo  | grep -i dimensions: | sed 's/[^0-9]*pixels.*(.*).*//' | sed 's/[^0-9x]*//')
+	VRES=$(echo $RESOLUTION | sed 's/.*x//')
+	HRES=$(echo $RESOLUTION | sed 's/x.*//')
+	verbose "Comparing resolution ($RESOLUTION) to maximum 3D texture size ($TEXTURE_LIMIT): ";
+	if [ $VRES -gt $TEXTURE_LIMIT ] || [ $HRES -gt $TEXTURE_LIMIT ]; then
+		verbose "Failed.\n"
+		return 1;
+	fi
+	verbose "Passed.\n"
+	return 0
+}
+
+# check driver whitelist
+running_under_whitelisted_driver()
+{
+	LOG=$(xset q|grep "Log file"|awk '{print $3}')
+	if [ "$LOG" = "" ]; then
+	    verbose "xset q doesn't reveal the location of the log file. Using fallback $XORG_DEFAULT_LOG \n"
+	    LOG=$XORG_DEFAULT_LOG;
+	fi
+	if [ -z "$LOG" ];then
+		verbose "AIEEEEH, no Log file found \n"
+		verbose "$(xset q) \n"
+	return 0
+	fi
+	for DRV in ${WHITELIST}; do
+		if egrep -q "Loading ${XORG_DRIVER_PATH}${DRV}_drv\.so" $LOG &&
+		   ! egrep -q "Unloading ${XORG_DRIVER_PATH}${DRV}_drv\.so" $LOG; 
+		then
+			return 0
+		fi
+	done
+	verbose "No whitelisted driver found\n"
+	return 1
+}
+
+# check pciid blacklist
+have_blacklisted_pciid()
+{
+	OUTPUT=$(lspci -n)
+	for ID in ${BLACKLIST_PCIIDS}; do
+		if echo "$OUTPUT" | egrep -q "$ID"; then
+			verbose "Blacklisted PCIID '$ID' found \n"
+			return 0
+		fi
+	done
+	OUTPUT=$(lspci -vn | grep -i VGA)
+	verbose "Detected PCI ID for VGA: $OUTPUT\n"
+	return 1
+}
+
+build_env()
+{
+	if check_nvidia; then
+		ENV="__GL_YIELD=NOTHING "
+	fi
+	if [ "$INDIRECT" = "yes" ]; then
+		ENV="$ENV LIBGL_ALWAYS_INDIRECT=1 "
+	fi
+	if check_xgl; then
+		if [ -f ${LIBGL_NVIDIA} ]; then
+			ENV="$ENV LD_PRELOAD=${LIBGL_NVIDIA}"
+			verbose "Enabling Xgl with nVidia drivers...\n"
+		fi
+		if [ -f ${LIBGL_FGLRX} ]; then
+			ENV="$ENV LD_PRELOAD=${LIBGL_FGLRX}"
+			verbose "Enabling Xgl with fglrx ATi drivers...\n"
+		fi
+	fi
+
+	ENV="$ENV FROM_WRAPPER=yes"
+
+	if [ -n "$ENV" ]; then
+		export $ENV
+	fi
+}
+
+build_args()
+{
+	if [ "x$INDIRECT" = "xyes" ]; then
+		COMPIZ_OPTIONS="$COMPIZ_OPTIONS --indirect-rendering "
+	fi
+	if check_nvidia; then
+		if [ "x$INDIRECT" != "xyes" ]; then
+			COMPIZ_OPTIONS="$COMPIZ_OPTIONS --loose-binding"
+		fi
+	fi
+}
+
+####################
+# Execution begins here.
+
+# Read configuration from XDG paths
+if [ -z "$XDG_CONFIG_DIRS" ]; then
+	test -f /etc/xdg/compiz/compiz-manager && . /etc/xdg/compiz/compiz-manager
+else
+	test -f $XDG_CONFIG_DIRS/compiz/compiz-manager && . $XDG_CONFIG_DIRS/compiz/compiz-manager
+fi
+
+if [ -z "$XDG_CONFIG_HOME" ]; then
+	test -f $HOME/.config/compiz/compiz-manager && . $HOME/.config/compiz/compiz-manager
+else
+	test -f $XDG_CONFIG_HOME/compiz/compiz-manager && .  $XDG_CONFIG_HOME/compiz/compiz-manager
+fi
+
+# Don't use compiz when running the failsafe session
+if [ "x$GNOME_DESKTOP_SESSION_ID" = "xFailsafe" ]; then
+	abort_with_fallback_wm
+fi
+
+if [ "x$LIBGL_ALWAYS_INDIRECT" = "x1" ]; then
+	INDIRECT="yes";
+fi
+
+# if we run under Xgl, we can skip some tests here
+if ! check_xgl; then
+	# if vesa or vga are in use, do not even try glxinfo (LP#119341)
+	if ! running_under_whitelisted_driver || have_blacklisted_pciid; then
+		abort_with_fallback_wm
+	fi
+	# check if we have the required bits to run compiz and if not, 
+	# fallback
+	if ! check_tfp || ! check_npot_texture || ! check_composite || ! check_texture_size; then
+		abort_with_fallback_wm
+	fi
+
+	if check_nvidia && ! check_nvidia_memory; then
+		abort_with_fallback_wm
+	fi
+
+	if ! check_fbconfig; then
+		abort_with_fallback_wm
+	fi
+fi
+
+# load the ccp plugin if present and fallback to plain gconf if not
+if [ -f ${PLUGIN_PATH}libccp.so ]; then
+	COMPIZ_PLUGINS="$COMPIZ_PLUGINS ccp"
+elif [ -f ${PLUGIN_PATH}libgconf.so ]; then
+	COMPIZ_PLUGINS="$COMPIZ_PLUGINS glib gconf"
+fi
+
+# get environment
+build_env
+build_args
+
+if [ "x$CM_DRY" = "xyes" ]; then
+	verbose "Dry run finished: everything should work with regards to Compiz and 3D.\n"
+	exit 0;
+fi
+# start the gtk-window-decorator if present
+if [ -x ${COMPIZ_BIN_PATH}emerald ] && [ "$USE_EMERALD" = "yes" ]; then
+	verbose "Starting emerald\n"
+	${COMPIZ_BIN_PATH}emerald --replace &
+elif [ -x ${COMPIZ_BIN_PATH}gtk-window-decorator ] && [ -n "$GNOME_DESKTOP_SESSION_ID" ]; then
+	verbose "Starting gtk-window-decorator\n"
+	${COMPIZ_BIN_PATH}gtk-window-decorator --replace &
+elif [ -x ${COMPIZ_BIN_PATH}kde-window-decorator ] && [ -n "$KDE_FULL_SESSION" ]; then
+	verbose "Starting kde-window-decorator\n"
+	${COMPIZ_BIN_PATH}kde-window-decorator --replace &
+	FALLBACKWM="${KWIN}"
+fi
+
+${COMPIZ_BIN_PATH}${COMPIZ_NAME} $COMPIZ_OPTIONS "$@" $COMPIZ_PLUGINS || exec $FALLBACKWM $FALLBACKWM_OPTIONS
+
diff --git a/debian/compiz.wrapper b/debian/compiz.wrapper
deleted file mode 100644
index ae4bf40..0000000
--- a/debian/compiz.wrapper
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/bin/sh
-
-GLXINFO='/usr/bin/glxinfo'
-EXT_TFP='GLX_EXT_texture_from_pixmap'
-
-COMPIZ_OPTIONS="--no-fbo"
-
-# Check whether the GLX_EXT_texture_from_pixmap extension is available in
-# direct or indirect rendering contexts. If it is available only in indirect
-# rendering contexts, force compiz to use indirect rendering.
-if test `$GLXINFO 2> /dev/null | grep -c $EXT_TFP` -lt 3; then
-	echo "$EXT_TFP is not available with direct rendering."
-
-	export LIBGL_ALWAYS_INDIRECT=1
-	if test `$GLXINFO 2> /dev/null | grep -c $EXT_TFP` -lt 3; then
-		echo "$EXT_TFP is not available with indirect rendering. Aborting!"
-		unset LIBGL_ALWAYS_INDIRECT
-		exit 1
-	else
-		echo "$EXT_TFP is available with indirect rendering."
-	fi
-else
-	echo "$EXT_TFP is available with direct rendering."
-fi
-
-# start the gtk-window-decorator if present
-if [ -x /usr/bin/gtk-window-decorator ]; then
-	/usr/bin/gtk-window-decorator --replace &
-fi
-
-# load the gconf plugin if present
-if [ -f /usr/lib/compiz/libgconf.so ]; then
-	COMPIZ_PLUGINS="$COMPIZ_PLUGINS gconf"
-fi
-
-# always load the gconf plugin
-/usr/bin/compiz.real $COMPIZ_OPTIONS "$@" $COMPIZ_PLUGINS
-
diff --git a/debian/copyright b/debian/copyright
index 1f79614..143fb5b 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -110,6 +110,25 @@ The 'plane' plugin was written by Søren Sandmann <sandmann@redhat.com>:
      * Author: Søren Sandmann <sandmann@redhat.com>
      */
 
+The 'compiz-manager' script used as /usr/bin/compiz is by Kristian Lyngstol:
+
+    # Copyright (c) 2007 Kristian Lyngstøl <kristian@bohemians.org>
+    #
+    # This program is free software; you can redistribute it and/or modify
+    # it under the terms of the GNU General Public License as published by
+    # the Free Software Foundation; either version 2 of the License, or
+    # (at your option) any later version.
+    #
+    # This program is distributed in the hope that it will be useful,
+    # but WITHOUT ANY WARRANTY; without even the implied warranty of
+    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    # GNU General Public License for more details.
+    #
+    #
+    # You should have received a copy of the GNU General Public License
+    # along with this program; if not, write to the Free Software
+    # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
 ------------------------------------------------------------------------------
 -- Translations: --
 -------------------
diff --git a/debian/rules b/debian/rules
index 203daa8..4c8262e 100755
--- a/debian/rules
+++ b/debian/rules
@@ -89,7 +89,7 @@ install: build
 	dh_installdirs
 	$(MAKE) DESTDIR=$(CURDIR)/debian/tmp install
 	mv $(CURDIR)/debian/tmp/usr/bin/compiz $(CURDIR)/debian/tmp/usr/bin/compiz.real
-	$(INSTALL) --mode 0755 debian/compiz.wrapper $(CURDIR)/debian/tmp/usr/bin/compiz
+	$(INSTALL) --mode 0755 debian/compiz-manager $(CURDIR)/debian/tmp/usr/bin/compiz
 	# remove unneeded .la files
 	find $(CURDIR)/debian/tmp/usr/lib -type f -name '*.la' | xargs rm -f
 

commit 9aa8547f6e0706b5dedefd59c41c61b3ec7d1e35
Author: Sean Finney <seanius@debian.org>
Date:   Sat Dec 8 14:52:38 2007 +0100

    autofoo fixups

diff --git a/debian/changelog b/debian/changelog
index dceaa56..85b816e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,13 @@
+compiz (0.6.3~git20071208.25941d14-1) unstable; urgency=low
+
+  [Sean Finney]
+  * New upstream (git snapshot) release.
+  * Remove autofoo generated content and create/remove it as part of the
+    standard build process instead.
+  * Similarly, add Build-Deps on autoconf and similar stuff.
+
+ -- Sean Finney <seanius@debian.org>  Sat, 08 Dec 2007 13:36:38 +0100
+
 compiz (0.6.3~git20071104.c9009efd-1) unstable; urgency=low
 
   [Sean Finney]
diff --git a/debian/control b/debian/control
index 94a3cf1..6be6530 100644
--- a/debian/control
+++ b/debian/control
@@ -3,7 +3,16 @@ Section: x11
 Priority: optional
 Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
 Uploaders: Thierry Reding <thierry@gilfi.de>, David Nusinow <dnusinow@debian.org>, Sean Finney <seanius@debian.org>
-Build-Depends: debhelper (>= 5), quilt (>= 0.40), libglib2.0-dev, libgconf2-dev, libpng12-dev | libpng-dev, libxcomposite-dev (>= 1:0.3-2), libxfixes-dev (>= 1:4.0.1), libxdamage-dev (>=1:1.0.3), libxrandr-dev (>= 2:1.1.0.2), libxrender-dev (>= 1:0.9.1), libice-dev (>= 1:1.0.1), libsm-dev (>= 1:1.0.1), libgl1-mesa-dev (>= 6.5.1) | libgl-dev, libcairo-dev, librsvg2-dev, libgnome-desktop-dev, libgnome-window-settings-dev, libdbus-glib-1-dev, libwnck-dev, libgtk2.0-dev, libpango1.0-dev, x11proto-gl-dev (>= 1.4.8-1), libxinerama-dev, libxml-parser-perl, libmetacity-dev, kdebase-dev, libdbus-qt-1-dev, libfuse-dev (>= 2.7.0), xsltproc
+Build-Depends: autoconf, automake1.9, autotools-dev,
+ debhelper (>= 5), intltool, kdebase-dev, libcairo-dev, libdbus-qt-1-dev, 
+ libdbus-glib-1-dev, libfuse-dev (>= 2.7.0), libgconf2-dev, 
+ libgl1-mesa-dev (>= 6.5.1) | libgl-dev, libglib2.0-dev, libgnome-desktop-dev, 
+ libgnome-window-settings-dev, libgtk2.0-dev, libice-dev (>= 1:1.0.1), 
+ libmetacity-dev, libpango1.0-dev, libpng12-dev | libpng-dev, librsvg2-dev, 
+ libsm-dev (>= 1:1.0.1), libtool, libwnck-dev, libxcomposite-dev (>= 1:0.3-2), 
+ libxdamage-dev (>=1:1.0.3), libxfixes-dev (>= 1:4.0.1), libxinerama-dev, 
+ libxml-parser-perl, libxrandr-dev (>= 2:1.1.0.2), libxrender-dev (>= 1:0.9.1), 
+ quilt (>= 0.40), x11proto-gl-dev (>= 1.4.8-1), xsltproc
 Standards-Version: 3.7.2
 
 Package: compiz
diff --git a/debian/rules b/debian/rules
index a0c1b62..203daa8 100755
--- a/debian/rules
+++ b/debian/rules
@@ -42,33 +42,44 @@ confflags += --disable-static \
              --enable-gconf \
              --enable-gconf-dump
 
+# the following files are modified in the build process, but shouldn't be.
+# UPSTREAM_PRESERVE:=po/Makefile.in.in
+
+# the following are generated by autoconf and have no way of being deleted
+# gracefully. 
+AUTOFOO_DELETE:=aclocal.m4 config.guess config.h.in config.sub configure \
+                depcomp install-sh intltool-extract.in intltool-merge.in \
+                intltool-update.in ltmain.sh missing mkinstalldirs \
+				Makefile.in gtk/Makefile.in gtk/gnome/Makefile.in \
+				gtk/window-decorator/Makefile.in images/Makefile.in \
+				include/Makefile.in kde/Makefile.in \
+				kde/window-decorator/Makefile.in libdecoration/Makefile.in \
+				metadata/Makefile.in plugins/Makefile.in po/Makefile.in.in \
+				src/Makefile.in
+
 build: patch build-stamp
 build-stamp:
 	dh_testdir
-	
-	mkdir obj-$(DEB_BUILD_GNU_TYPE)
-	chmod +x ./configure
-	cd obj-$(DEB_BUILD_GNU_TYPE) && \
-	../configure --prefix=/usr --sysconfdir=\$${prefix}/share $(confflags) \
+	for f in $(UPSTREAM_PRESERVE); do \
+		cp -a $$f $$f.preserve; \
+	done
+	./autogen.sh --prefix=/usr --sysconfdir=\$${prefix}/share $(confflags) \
 	             CFLAGS="$(CFLAGS)" QTDIR=/usr
-	cd obj-$(DEB_BUILD_GNU_TYPE) && $(MAKE)
-	
+	$(MAKE)
 	touch $@
 
-prune:
-	rm -f po/*.gmo kde/window-decorator/*.moc.cpp
-
-clean: prune unpatch
+clean: unpatch
 	dh_testdir
 	dh_testroot
+	rm -f po/*.gmo
+	[ ! -f Makefile ] || $(MAKE) distclean
 	rm -f build-stamp
-	
-	rm -f config.cache config.log config.status
-	rm -f */config.cache */config.log */config.status
-	rm -f conftest* */conftest*
-	rm -rf autom4te.cache */autom4te.cache
-	rm -rf obj-*
-	
+	rm -f $(AUTOFOO_DELETE)
+	for f in $(UPSTREAM_PRESERVE); do \
+		if [ -f $$f.preserve ]; then \
+		cp -a $$f.preserve $$f; rm -f $$f.preserve; \
+		fi; \
+	done
 	dh_clean
 
 install: build
@@ -76,15 +87,9 @@ install: build
 	dh_testroot
 	dh_clean -k
 	dh_installdirs
-	
-	# the upstream build system needs this
-	ln -sf config/mkinstalldirs
-	cd obj-$(DEB_BUILD_GNU_TYPE) && $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install
-	rm mkinstalldirs
-	
+	$(MAKE) DESTDIR=$(CURDIR)/debian/tmp install
 	mv $(CURDIR)/debian/tmp/usr/bin/compiz $(CURDIR)/debian/tmp/usr/bin/compiz.real
 	$(INSTALL) --mode 0755 debian/compiz.wrapper $(CURDIR)/debian/tmp/usr/bin/compiz
-	
 	# remove unneeded .la files
 	find $(CURDIR)/debian/tmp/usr/lib -type f -name '*.la' | xargs rm -f
 

commit b7c9fe293b589b6da7d2909eda751dd7da6f7da7
Author: Sean Finney <seanius@debian.org>
Date:   Sat Dec 8 13:49:13 2007 +0100

    back out autofoo generated stuff

diff --git a/Makefile.in b/Makefile.in
deleted file mode 100644
index 6892e07..0000000
--- a/Makefile.in
+++ /dev/null
@@ -1,901 +0,0 @@
-# Makefile.in generated by automake 1.9.6 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005  Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-top_builddir = .
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-INSTALL = @INSTALL@
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
-	$(srcdir)/Makefile.in $(srcdir)/compiz-cube.pc.in \
-	$(srcdir)/compiz-gconf.pc.in $(srcdir)/compiz-scale.pc.in \
-	$(srcdir)/compiz.pc.in $(srcdir)/config.h.in \
-	$(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \
-	TODO config.guess config.sub depcomp install-sh ltmain.sh \
-	missing
-subdir = .
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
- configure.lineno configure.status.lineno
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = config.h
-CONFIG_CLEAN_FILES = compiz.pc compiz-cube.pc compiz-scale.pc \
-	compiz-gconf.pc
-SOURCES =
-DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-	html-recursive info-recursive install-data-recursive \
-	install-exec-recursive install-info-recursive \
-	install-recursive installcheck-recursive installdirs-recursive \
-	pdf-recursive ps-recursive uninstall-info-recursive \
-	uninstall-recursive
-am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
-am__vpath_adj = case $$p in \
-    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
-    *) f=$$p;; \
-  esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
-am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
-pkgconfigDATA_INSTALL = $(INSTALL_DATA)
-DATA = $(pkgconfig_DATA)
-ETAGS = etags
-CTAGS = ctags
-DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
-  { test ! -d $(distdir) \
-    || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
-         && rm -fr $(distdir); }; }
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
-ACLOCAL = @ACLOCAL@
-ALL_LINGUAS = @ALL_LINGUAS@
-AMDEP_FALSE = @AMDEP_FALSE@
-AMDEP_TRUE = @AMDEP_TRUE@
-AMTAR = @AMTAR@
-ANNOTATE_CFLAGS = @ANNOTATE_CFLAGS@
-ANNOTATE_LIBS = @ANNOTATE_LIBS@
-ANNOTATE_PLUGIN_FALSE = @ANNOTATE_PLUGIN_FALSE@
-ANNOTATE_PLUGIN_TRUE = @ANNOTATE_PLUGIN_TRUE@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CATALOGS = @CATALOGS@
-CATOBJEXT = @CATOBJEXT@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-COMPIZ_CFLAGS = @COMPIZ_CFLAGS@
-COMPIZ_LIBS = @COMPIZ_LIBS@
-COMPIZ_REQUIRES = @COMPIZ_REQUIRES@
-COMPIZ_VERSION_MAJOR = @COMPIZ_VERSION_MAJOR@
-COMPIZ_VERSION_MICRO = @COMPIZ_VERSION_MICRO@
-COMPIZ_VERSION_MINOR = @COMPIZ_VERSION_MINOR@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DATADIRNAME = @DATADIRNAME@
-DBUS_CFLAGS = @DBUS_CFLAGS@
-DBUS_GLIB_CFLAGS = @DBUS_GLIB_CFLAGS@
-DBUS_GLIB_LIBS = @DBUS_GLIB_LIBS@
-DBUS_LIBS = @DBUS_LIBS@
-DBUS_PLUGIN_FALSE = @DBUS_PLUGIN_FALSE@
-DBUS_PLUGIN_TRUE = @DBUS_PLUGIN_TRUE@
-DCOPIDL = @DCOPIDL@
-DCOPIDL2CPP = @DCOPIDL2CPP@
-DECORATION_CFLAGS = @DECORATION_CFLAGS@
-DECORATION_LIBS = @DECORATION_LIBS@
-DECORATION_REQUIRES = @DECORATION_REQUIRES@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-ECHO = @ECHO@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-F77 = @F77@
-FFLAGS = @FFLAGS@
-FUSE_CFLAGS = @FUSE_CFLAGS@
-FUSE_LIBS = @FUSE_LIBS@
-FUSE_PLUGIN_FALSE = @FUSE_PLUGIN_FALSE@
-FUSE_PLUGIN_TRUE = @FUSE_PLUGIN_TRUE@
-GCONFTOOL = @GCONFTOOL@
-GCONF_CFLAGS = @GCONF_CFLAGS@
-GCONF_LIBS = @GCONF_LIBS@
-GCONF_SCHEMAS_INSTALL_FALSE = @GCONF_SCHEMAS_INSTALL_FALSE@
-GCONF_SCHEMAS_INSTALL_TRUE = @GCONF_SCHEMAS_INSTALL_TRUE@
-GCONF_SCHEMA_CONFIG_SOURCE = @GCONF_SCHEMA_CONFIG_SOURCE@
-GCONF_SCHEMA_FILE_DIR = @GCONF_SCHEMA_FILE_DIR@
-GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
-GLIB_CFLAGS = @GLIB_CFLAGS@
-GLIB_LIBS = @GLIB_LIBS@
-GL_CFLAGS = @GL_CFLAGS@
-GL_LIBS = @GL_LIBS@
-GMOFILES = @GMOFILES@
-GMSGFMT = @GMSGFMT@
-GNOME_KEY_BINDINGS_CFLAGS = @GNOME_KEY_BINDINGS_CFLAGS@
-GNOME_KEY_BINDINGS_LIBS = @GNOME_KEY_BINDINGS_LIBS@
-GNOME_WINDOW_SETTINGS_CFLAGS = @GNOME_WINDOW_SETTINGS_CFLAGS@
-GNOME_WINDOW_SETTINGS_LIBS = @GNOME_WINDOW_SETTINGS_LIBS@
-GREP = @GREP@
-GTK_WINDOW_DECORATOR_CFLAGS = @GTK_WINDOW_DECORATOR_CFLAGS@
-GTK_WINDOW_DECORATOR_LIBS = @GTK_WINDOW_DECORATOR_LIBS@
-INOTIFY_PLUGIN_FALSE = @INOTIFY_PLUGIN_FALSE@
-INOTIFY_PLUGIN_TRUE = @INOTIFY_PLUGIN_TRUE@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-INSTOBJEXT = @INSTOBJEXT@
-INTLLIBS = @INTLLIBS@
-INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
-INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
-INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
-INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
-INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
-INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
-INTLTOOL_PERL = @INTLTOOL_PERL@
-INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
-INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
-INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
-INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
-INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
-INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
-INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
-INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
-INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
-INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
-INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
-INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
-INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
-KDE_CFLAGS = @KDE_CFLAGS@
-KDE_LIBS = @KDE_LIBS@
-KDE_WINDOW_DECORATOR_CFLAGS = @KDE_WINDOW_DECORATOR_CFLAGS@
-KDE_WINDOW_DECORATOR_LIBS = @KDE_WINDOW_DECORATOR_LIBS@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBPNG_CFLAGS = @LIBPNG_CFLAGS@
-LIBPNG_LIBS = @LIBPNG_LIBS@
-LIBRSVG_CFLAGS = @LIBRSVG_CFLAGS@
-LIBRSVG_LIBS = @LIBRSVG_LIBS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
-MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
-MAKEINFO = @MAKEINFO@
-METACITY_CFLAGS = @METACITY_CFLAGS@
-METACITY_LIBS = @METACITY_LIBS@
-MKINSTALLDIRS = @MKINSTALLDIRS@
-MSGFMT = @MSGFMT@
-MSGFMT_OPTS = @MSGFMT_OPTS@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PKG_CONFIG = @PKG_CONFIG@
-PLACE_CFLAGS = @PLACE_CFLAGS@
-PLACE_LIBS = @PLACE_LIBS@
-PLACE_PLUGIN_FALSE = @PLACE_PLUGIN_FALSE@
-PLACE_PLUGIN_TRUE = @PLACE_PLUGIN_TRUE@
-POFILES = @POFILES@
-POSUB = @POSUB@
-PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
-PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
-QT_MOC = @QT_MOC@
-RANLIB = @RANLIB@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-USE_GCONF_FALSE = @USE_GCONF_FALSE@
-USE_GCONF_TRUE = @USE_GCONF_TRUE@
-USE_GLIB_FALSE = @USE_GLIB_FALSE@
-USE_GLIB_TRUE = @USE_GLIB_TRUE@
-USE_GNOME_FALSE = @USE_GNOME_FALSE@
-USE_GNOME_KEYBINDINGS_FALSE = @USE_GNOME_KEYBINDINGS_FALSE@
-USE_GNOME_KEYBINDINGS_TRUE = @USE_GNOME_KEYBINDINGS_TRUE@
-USE_GNOME_TRUE = @USE_GNOME_TRUE@
-USE_GTK_FALSE = @USE_GTK_FALSE@
-USE_GTK_TRUE = @USE_GTK_TRUE@
-USE_KDE_FALSE = @USE_KDE_FALSE@
-USE_KDE_TRUE = @USE_KDE_TRUE@
-USE_LIBRSVG_FALSE = @USE_LIBRSVG_FALSE@
-USE_LIBRSVG_TRUE = @USE_LIBRSVG_TRUE@
-USE_METACITY_FALSE = @USE_METACITY_FALSE@
-USE_METACITY_TRUE = @USE_METACITY_TRUE@
-USE_NLS = @USE_NLS@
-VERSION = @VERSION@
-XGETTEXT = @XGETTEXT@
-XSLTPROC = @XSLTPROC@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_F77 = @ac_ct_F77@
-am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
-am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
-am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
-am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-datadir = @datadir@
-datarootdir = @datarootdir@
-default_plugins = @default_plugins@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-imagedir = @imagedir@


Reply to: