debian/rules                     |   57 +-
 debian/xfonts-base.postinst.in   |    6 
 debian/xfonts-base.postrm.in     |   15 
 debian/xfonts-base.preinst.in    |   20 
 debian/xsfbs/xsfbs-autoreconf.mk |  150 ++++++
 debian/xsfbs/xsfbs.mk            |  379 ++++++++++++++++
 debian/xsfbs/xsfbs.sh            |  907 +++++++++++++++++++++++++++++++++++++++
 7 files changed, 1493 insertions(+), 41 deletions(-)

New commits:
commit d7a4b2a880f0332bb4dac0609f146f9388a51a36
Author: Branden Robinson <[EMAIL PROTECTED](none)>
Date:   Wed Apr 18 02:40:50 2007 -0400

    Perform janitorial work.
    
    * Add licensing information to package preinst script.
    * Use more convential Make idiom for creating a target.
    * Add #DEBHELPER# expando to preinst script.
    * Update comments in Debian rules file.
    * Wrap lines at 80 columns.
    * Update Vim modelines.
    * Remove Subversion Id keywords.
    * Update copyright notices where applicable.

diff --git a/debian/rules b/debian/rules
index 03787cd..bbcd9bb 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,20 +1,34 @@
 #!/usr/bin/make -f
-# debian/rules for the Debian xfonts-base package.
+# Debian xfonts-base package building rules
 # Copyright © 2004 Scott James Remnant <[EMAIL PROTECTED]>
 # Copyright © 2005 Daniel Stone <[EMAIL PROTECTED]>
 # Copyright © 2005 David Nusinow <[EMAIL PROTECTED]>
+# Copyright © 2007 Branden Robinson <[EMAIL PROTECTED]>
 
 # Uncomment this to turn on verbose mode.
-#export DH_VERBOSE=1
+#export DH_VERBOSE = 1
 
-# set this to the name of the main shlib's binary package
+# If this is a library package, set this to name of the package containing the
+# shared library.
 PACKAGE = xfonts-base
 
 include debian/xsfbs/xsfbs.mk
 
-# This package contains multiple modules as shipped by upstream. Each module 
is # contained in a subdirectory in the root dir of the package. You must list 
each
-# subdirectory explicitly so that the build system knows what to build
-SUBDIRS="font-arabic-misc-X11R7.0-1.0.0 font-cursor-misc-X11R7.0-1.0.0 
font-daewoo-misc-X11R7.0-1.0.0 font-dec-misc-X11R7.0-1.0.0 
font-isas-misc-X11R7.0-1.0.0 font-jis-misc-X11R7.0-1.0.0 
font-micro-misc-X11R7.0-1.0.0 font-misc-misc-X11R7.0-1.0.0 
font-mutt-misc-X11R7.0-1.0.0 font-schumacher-misc-X11R7.0-1.0.0 
font-sony-misc-X11R7.0-1.0.0 font-sun-misc-X11R7.0-1.0.0"
+# This package contains multiple modules as shipped by upstream.  Each module 
is
+# contained in a subdirectory in the root dir of the package.  You must list
+# each subdirectory explicitly so that the build system knows what to build.
+SUBDIRS="font-arabic-misc-X11R7.0-1.0.0 \
+       font-cursor-misc-X11R7.0-1.0.0 \
+       font-daewoo-misc-X11R7.0-1.0.0 \
+       font-dec-misc-X11R7.0-1.0.0 \
+       font-isas-misc-X11R7.0-1.0.0 \
+       font-jis-misc-X11R7.0-1.0.0 \
+       font-micro-misc-X11R7.0-1.0.0 \
+       font-misc-misc-X11R7.0-1.0.0 \
+       font-mutt-misc-X11R7.0-1.0.0 \
+       font-schumacher-misc-X11R7.0-1.0.0 \
+       font-sony-misc-X11R7.0-1.0.0 \
+       font-sun-misc-X11R7.0-1.0.0"
 
 CFLAGS = -Wall -g
 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
@@ -40,23 +54,22 @@ build: prepare build-stamp
 build-stamp:
        dh_testdir
        for FILE in "$(SUBDIRS)"; do \
-               echo "$$FILE" ; \
+               echo "$$FILE"; \
                mkdir "$$FILE"-obj-$(DEB_BUILD_GNU_TYPE); \
-               (cd "$$FILE"-obj-$(DEB_BUILD_GNU_TYPE) && \
-               ../"$$FILE"/configure --prefix=/usr 
--mandir=\$${prefix}/share/man \
-                            --infodir=\$${prefix}/share/info $(confflags) \
-                            --with-fontdir=\$${prefix}/share/fonts/X11/misc \
-                            CFLAGS="$(CFLAGS)" && \
-               $(MAKE)) || exit 1; \
+               (cd "$$FILE"-obj-$(DEB_BUILD_GNU_TYPE) \
+                       && ../"$$FILE"/configure --prefix=/usr \
+                       --mandir=\$${prefix}/share/man \
+                       --infodir=\$${prefix}/share/info $(confflags) \
+                       --with-fontdir=\$${prefix}/share/fonts/X11/misc \
+                       CFLAGS="$(CFLAGS)" \
+                       && $(MAKE)) || exit 1; \
        done
-
-       touch build-stamp
+       >$@
 
 clean: xsfclean
        dh_testdir
        dh_testroot
        rm -f build-stamp
-
        rm -f config.cache config.log config.status
        rm -f */config.cache */config.log */config.status
        rm -f conftest* */conftest*
@@ -70,9 +83,9 @@ install: build
        dh_testroot
        dh_clean -k
        dh_installdirs
-
        for FILE in "$(SUBDIRS)"; do \
-               cd "$$FILE"-obj-$(DEB_BUILD_GNU_TYPE) && $(MAKE) 
DESTDIR=$(CURDIR)/debian/tmp install ; \
+               cd "$$FILE"-obj-$(DEB_BUILD_GNU_TYPE) \
+                       && $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install; \
                cd ..; \
        done
        install -D -m644 debian/fonts.alias \
@@ -80,15 +93,15 @@ install: build
 
 # Build architecture-dependent files here.
 binary-arch: build install
-# Nothing to do
+# Nothing to do.
 
 # Build architecture-independent files here.
 binary-indep: build install
        dh_testdir
        dh_testroot
-
        dh_installdocs
-       dh_install --sourcedir=debian/tmp --fail-missing --exclude fonts.dir 
--exclude fonts.scale
+       dh_install --sourcedir=debian/tmp --fail-missing --exclude fonts.dir \
+               --exclude fonts.scale
        dh_installxfonts
        dh_installchangelogs
        dh_compress
@@ -100,3 +113,5 @@ binary-indep: build install
 
 binary: binary-indep binary-arch
 .PHONY: build clean binary-indep binary-arch binary install
+
+# vim:set ai noet sw=8 ts=8 tw=80:
diff --git a/debian/xfonts-base.postinst.in b/debian/xfonts-base.postinst.in
index 7c27d6f..3845997 100644
--- a/debian/xfonts-base.postinst.in
+++ b/debian/xfonts-base.postinst.in
@@ -1,12 +1,10 @@
 #!/bin/sh
 # Debian xfonts-base package post-installation script
-# Copyright 1998-2001 Branden Robinson.
+# Copyright © 1998-2001 Branden Robinson
 # Licensed under the GNU General Public License, version 2.  See the file
 # /usr/share/common-licenses/GPL or <http://www.gnu.org/copyleft/gpl.txt>.
 # Acknowledgements to Stephen Early, Mark Eichin, and Manoj Srivastava.
 
-# $Id$
-
 set -e
 
 THIS_PACKAGE=xfonts-base
@@ -20,4 +18,4 @@ remove_conffile_commit 
/etc/X11/fonts/X11R7/misc/xfonts-base.alias
 
 exit 0
 
-# vim:ai:et:sts=2:sw=2:tw=0:
+# vim:set ai et sw=4 ts=4 tw=80:
diff --git a/debian/xfonts-base.postrm.in b/debian/xfonts-base.postrm.in
index 1cb94b2..8fbc4ac 100644
--- a/debian/xfonts-base.postrm.in
+++ b/debian/xfonts-base.postrm.in
@@ -1,12 +1,10 @@
 #!/bin/sh
 # Debian xfonts-base package post-removal script
-# Copyright 1998-2001, 2004 Branden Robinson.
+# Copyright © 1998-2001, 2004 Branden Robinson
 # Licensed under the GNU General Public License, version 2.  See the file
 # /usr/share/common-licenses/GPL or <http://www.gnu.org/copyleft/gpl.txt>.
 # Acknowledgements to Stephen Early, Mark Eichin, and Manoj Srivastava.
 
-# $Id$
-
 set -e
 
 THIS_PACKAGE=xfonts-base
@@ -17,15 +15,16 @@ THIS_SCRIPT=postrm
 #DEBHELPER#
 
 if [ "$1" = "abort-install" ] || [ "$1" = "abort-upgrade" ]; then
-  remove_conffile_rollback /etc/X11/fonts/X11R7/misc/xfonts-base.alias
+    remove_conffile_rollback /etc/X11/fonts/X11R7/misc/xfonts-base.alias
 fi
 
 if [ "$1" = "purge" ]; then
-  for DIR in /etc/X11/fonts/X11R7/misc /etc/X11/fonts/X11R7 
/etc/X11/fonts/misc /etc/X11/fonts /etc/X11; do
-    rmdir $DIR 2> /dev/null || true
-  done
+    for DIR in /etc/X11/fonts/X11R7/misc /etc/X11/fonts/X11R7 \
+        /etc/X11/fonts/misc /etc/X11/fonts /etc/X11; do
+        rmdir $DIR 2>/dev/null || true
+    done
 fi
 
 exit 0
 
-# vim:ai:et:sts=2:sw=2:tw=0:
+# vim:set ai et sw=4 ts=4 tw=80:
diff --git a/debian/xfonts-base.preinst.in b/debian/xfonts-base.preinst.in
index 0cd1c13..3107852 100644
--- a/debian/xfonts-base.preinst.in
+++ b/debian/xfonts-base.preinst.in
@@ -1,7 +1,9 @@
 #!/bin/sh
 # Debian xfonts-base package pre-installation script
-
-# $Id$
+# Copyright © 2006 David Nusinow
+# Licensed under the GNU General Public License, version 2.  See the file
+# /usr/share/common-licenses/GPL or <http://www.gnu.org/copyleft/gpl.txt>.
+# Acknowledgements to Stephen Early, Mark Eichin, and Manoj Srivastava.
 
 set -e
 
@@ -10,13 +12,15 @@ THIS_SCRIPT=preinst
 
 #INCLUDE_SHELL_LIB#
 
+#DEBHELPER#
+
 if [ "$1" = "install" ] || [ "$1" = "upgrade" ]; then
-  if dpkg --compare-versions "$2" lt "1:1.0.0-4"; then
-    remove_conffile_prepare /etc/X11/fonts/X11R7/misc/xfonts-base.alias \
-      a8ec05d528431d4c9703b55a7efd67a8
-  fi
+    if dpkg --compare-versions "$2" lt "1:1.0.0-4"; then
+        remove_conffile_prepare /etc/X11/fonts/X11R7/misc/xfonts-base.alias \
+        a8ec05d528431d4c9703b55a7efd67a8
+    fi
 fi
-      
+
 exit 0
 
-# vim:ai:et:sts=2:sw=2:tw=0:
+# vim:set ai et sw=4 ts=4 tw=80:

commit 271778bd6338575afa3e4ae7f614f38cdff8e2fb
Author: Branden Robinson <[EMAIL PROTECTED](none)>
Date:   Thu Apr 12 23:18:32 2007 -0400

    Test for existence of debian/patches directory before creating a symlink to 
it.
    
    This prevents packages that apply no patches from ending up with a broken
    symlink in them.
    
    Remove SVN keyword.
    
    Update copyright notice.

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index d88c6db..63dde45 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -1,11 +1,10 @@
 #!/usr/bin/make -f
-# $Id$
 
-# Debian rules file for xorg-x11 source package
+# Debian X Strike Force Build System (XSFBS): Make portion
 
 # Copyright 1996 Stephen Early
 # Copyright 1997 Mark Eichin
-# Copyright 1998-2005 Branden Robinson
+# Copyright 1998-2005, 2007 Branden Robinson
 # Copyright 2005 David Nusinow
 #
 # Licensed under the GNU General Public License, version 2.  See the file
@@ -127,7 +126,7 @@ $(STAMP_DIR)/prepare: $(STAMP_DIR)/stampdir
        if [ ! -e $(STAMP_DIR)/log ]; then \
                mkdir $(STAMP_DIR)/log; \
        fi; \
-       if [ ! -e patches ]; then \
+       if [ -e debian/patches ] && [ ! -e patches ]; then \
                ln -s debian/patches patches; \
        fi; \
        >$@

commit 72811b4cede7275a35d36b44bcb5f431a8aa0133
Author: Julien Cristau <[EMAIL PROTECTED]>
Date:   Fri Mar 2 20:28:15 2007 +0100

    Fix copy/paste typo in the input driver provides.

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index 0343aec..d88c6db 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -359,7 +359,7 @@ VIDEOABI = $(shell cat /usr/share/xserver-xorg/videoabiver 
2>/dev/null)
 INPUTABI = $(shell cat /usr/share/xserver-xorg/inputabiver 2>/dev/null)
 SERVER_DEPENDS = xserver-xorg-core (>= $(SERVERMINVERS))
 VIDDRIVER_PROVIDES = xserver-xorg-video-$(VIDEOABI)
-INPDRIVER_PROVIDES = xserver-xorg-video-$(INPUTABI)
+INPDRIVER_PROVIDES = xserver-xorg-input-$(INPUTABI)
 ifeq ($(PACKAGE),)
 PACKAGE=$(shell awk '/^Package:/ { print $$2; exit }' < debian/control)
 endif

commit 4a943db2564c4f573ce2f5f676a841267e961f16
Author: David Nusinow <[EMAIL PROTECTED]>
Date:   Thu Mar 1 22:06:04 2007 -0500

    Fix one missed bit from the serverabiver -> serverminver rename

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index cfc5496..0343aec 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -366,7 +366,7 @@ endif
 
 .PHONY: serverabi
 serverabi:
-ifeq ($(SERVERABI),)
+ifeq ($(SERVERMINVERS),)
        @echo error: xserver-xorg-dev needs to be installed
        @exit 1
 else

commit 1344bb9deda5ba54215d0ec5b164706999236b0b
Author: David Nusinow <[EMAIL PROTECTED]>
Date:   Wed Feb 28 23:08:17 2007 -0500

    Fix typo that prevented the input abi versioning from working.
    Good catch Julien

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index 5e8cf41..cfc5496 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -356,7 +356,7 @@ debian/shlibs.local:
 
 SERVERMINVERS = $(shell cat /usr/share/xserver-xorg/serverminver 2>/dev/null)
 VIDEOABI = $(shell cat /usr/share/xserver-xorg/videoabiver 2>/dev/null)
-INPUTABI = $(shell cat /usr/share/xserver-xorg/driverabiver 2>/dev/null)
+INPUTABI = $(shell cat /usr/share/xserver-xorg/inputabiver 2>/dev/null)
 SERVER_DEPENDS = xserver-xorg-core (>= $(SERVERMINVERS))
 VIDDRIVER_PROVIDES = xserver-xorg-video-$(VIDEOABI)
 INPDRIVER_PROVIDES = xserver-xorg-video-$(INPUTABI)

commit a0c9602f38e9d47d7a76b7b345e7e8bbb29b752f
Author: David Nusinow <[EMAIL PROTECTED]>
Date:   Tue Feb 27 21:50:20 2007 -0500

    Add support for X server input ABI versioning

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index d54ffd3..5e8cf41 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -355,9 +355,11 @@ debian/shlibs.local:
        cat debian/*.shlibs >$@
 
 SERVERMINVERS = $(shell cat /usr/share/xserver-xorg/serverminver 2>/dev/null)
-SERVERABI = $(shell cat /usr/share/xserver-xorg/serverabiver 2>/dev/null)
+VIDEOABI = $(shell cat /usr/share/xserver-xorg/videoabiver 2>/dev/null)
+INPUTABI = $(shell cat /usr/share/xserver-xorg/driverabiver 2>/dev/null)
 SERVER_DEPENDS = xserver-xorg-core (>= $(SERVERMINVERS))
-DRIVER_PROVIDES = xserver-xorg-video-$(SERVERABI)
+VIDDRIVER_PROVIDES = xserver-xorg-video-$(VIDEOABI)
+INPDRIVER_PROVIDES = xserver-xorg-video-$(INPUTABI)
 ifeq ($(PACKAGE),)
 PACKAGE=$(shell awk '/^Package:/ { print $$2; exit }' < debian/control)
 endif
@@ -369,7 +371,8 @@ ifeq ($(SERVERABI),)
        @exit 1
 else
        echo "xserver:Depends=$(SERVER_DEPENDS)" >> debian/$(PACKAGE).substvars
-       echo "xviddriver:Provides=$(DRIVER_PROVIDES)" >> 
debian/$(PACKAGE).substvars
+       echo "xviddriver:Provides=$(VIDDRIVER_PROVIDES)" >> 
debian/$(PACKAGE).substvars
+       echo "xinpdriver:Provides=$(INPDRIVER_PROVIDES)" >> 
debian/$(PACKAGE).substvars
 endif
 
 include debian/xsfbs/xsfbs-autoreconf.mk

commit 00fc799ec3107c0c29286b75e780bef82c1fa137
Author: David Nusinow <[EMAIL PROTECTED]>
Date:   Wed Feb 21 22:47:30 2007 -0500

    Fix name of serverminver

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index ae767b1..d54ffd3 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -354,7 +354,7 @@ $(STAMP_DIR)/genscripts: $(STAMP_DIR)/stampdir
 debian/shlibs.local:
        cat debian/*.shlibs >$@
 
-SERVERMINVERS = $(shell cat /usr/share/xserver-xorg/serverminvers 2>/dev/null)
+SERVERMINVERS = $(shell cat /usr/share/xserver-xorg/serverminver 2>/dev/null)
 SERVERABI = $(shell cat /usr/share/xserver-xorg/serverabiver 2>/dev/null)
 SERVER_DEPENDS = xserver-xorg-core (>= $(SERVERMINVERS))
 DRIVER_PROVIDES = xserver-xorg-video-$(SERVERABI)

commit dacefd5a6bb9f786c78f35358273e3214c7492e9
Author: David Nusinow <[EMAIL PROTECTED]>
Date:   Wed Feb 21 21:37:52 2007 -0500

    Update serverabi generation to also account for driver Provides
    
    * Have the drivers use the file serverminver instead of serverabiver in 
order
      to generate the versioned dependency on the server. This is clearer
      naming.
    * Use serverabiver to actually store the server's video ABI version. This
      is used to generate the Provides: line for drivers so the server can
      depend on them properly. This goes in to the substvar
      xviddriver:Provides.

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index dbb2872..ae767b1 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -354,8 +354,10 @@ $(STAMP_DIR)/genscripts: $(STAMP_DIR)/stampdir
 debian/shlibs.local:
        cat debian/*.shlibs >$@
 
+SERVERMINVERS = $(shell cat /usr/share/xserver-xorg/serverminvers 2>/dev/null)
 SERVERABI = $(shell cat /usr/share/xserver-xorg/serverabiver 2>/dev/null)
-SERVER_DEPENDS = xserver-xorg-core (>= $(SERVERABI))
+SERVER_DEPENDS = xserver-xorg-core (>= $(SERVERMINVERS))
+DRIVER_PROVIDES = xserver-xorg-video-$(SERVERABI)
 ifeq ($(PACKAGE),)
 PACKAGE=$(shell awk '/^Package:/ { print $$2; exit }' < debian/control)
 endif
@@ -367,6 +369,7 @@ ifeq ($(SERVERABI),)
        @exit 1
 else
        echo "xserver:Depends=$(SERVER_DEPENDS)" >> debian/$(PACKAGE).substvars
+       echo "xviddriver:Provides=$(DRIVER_PROVIDES)" >> 
debian/$(PACKAGE).substvars
 endif
 
 include debian/xsfbs/xsfbs-autoreconf.mk

commit 9ed8b0c26438b90f187ef7c165d5a76cf8f340eb
Author: Julien Cristau <[EMAIL PROTECTED]>
Date:   Sat Feb 17 16:01:41 2007 +0100

    Add new "serverabi" rule to generate drivers dependency on the server.

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index 7b8206e..dbb2872 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -354,6 +354,21 @@ $(STAMP_DIR)/genscripts: $(STAMP_DIR)/stampdir
 debian/shlibs.local:
        cat debian/*.shlibs >$@
 
+SERVERABI = $(shell cat /usr/share/xserver-xorg/serverabiver 2>/dev/null)
+SERVER_DEPENDS = xserver-xorg-core (>= $(SERVERABI))
+ifeq ($(PACKAGE),)
+PACKAGE=$(shell awk '/^Package:/ { print $$2; exit }' < debian/control)
+endif
+
+.PHONY: serverabi
+serverabi:
+ifeq ($(SERVERABI),)
+       @echo error: xserver-xorg-dev needs to be installed
+       @exit 1
+else
+       echo "xserver:Depends=$(SERVER_DEPENDS)" >> debian/$(PACKAGE).substvars
+endif
+
 include debian/xsfbs/xsfbs-autoreconf.mk
 
 # vim:set noet ai sts=8 sw=8 tw=0:

commit 502f9412dcaa6abd23b94372d86824c895cea3b8
Author: David Nusinow <[EMAIL PROTECTED]>
Date:   Sun Feb 4 20:43:28 2007 -0500

    Move the files so they'll be put in debian/xsfbs automatically when pulled
    in to our git repos

diff --git a/debian/xsfbs/xsfbs-autoreconf.mk b/debian/xsfbs/xsfbs-autoreconf.mk
new file mode 100644
index 0000000..dce8fc8
--- /dev/null
+++ b/debian/xsfbs/xsfbs-autoreconf.mk
@@ -0,0 +1,150 @@
+#!/usr/bin/make -f
+# $Id$
+
+# Automagical conversion of autoreconf results into quilt patches.
+
+# Copyright 2006 Eugene Konev
+#
+# Licensed under the GNU General Public License, version 2.  See the file
+# /usr/share/common-licenses/GPL or <http://www.gnu.org/copyleft/gpl.txt>.
+
+# The idea behind this is storing changes produced by autoreconf as a 
+# separate patch on quilt stack (on top of stack actually).
+# The only usable target here is 'autoreconf`. Other targets are not
+# supposed to be called directly. DO NOT invoke them, unless you know what
+# you are doing.
+# The autoreconf target will check if files with names in $(RECONF_CHECKFILES)
+# were changed during patching (from upstream version or from previously
+# autoreconfed version) and call actual autoreconfing if they were.
+# The actual autoreconfing target (doautoreconf) WILL FAIL after 
+# calling autoreconf and pushing changes into quilt stack by design. It
+# should never be invoked by automatic build process.
+# The proposed use is adding autoreconf into clean's prerequisites before
+# xsfclean like:
+# - clean: xsfclean
+# + clean: autoreconf xsfclean
+# This will ensure it is called when you build package with dpkg-buildpackage.
+
+# This dir will be used for producing diff of autoreconfed tree
+RECONF_DIR := xsfautoreconf
+
+# This files will be checked for changes
+RECONF_CHECKFILES += configure.ac Makefile.am
+
+# This files will not be hardlinked but copied
+RECONF_NOLINKFILES += aclocal.m4
+
+# This files/dirs will be pruned after autoreconf run
+RECONF_PRUNEFILES += autom4te.cache config.h.in~ aclocal.m4~
+
+# Internal target. Never invoke directly.
+stampdir_target+=check.md5sum
+$(STAMP_DIR)/check.md5sum:
+       dh_testdir
+       $(MAKE) -f debian/rules prepare
+       for F in $(RECONF_CHECKFILES); do \
+         find . -wholename ./$(STAMP_DIR) -prune -o -name $$F -print | \
+           LC_ALL=C sort | xargs --no-run-if-empty md5sum >>$@; \
+       done
+
+# Internal target. Never invoke directly.
+$(STAMP_DIR)/clean.md5sum:
+       dh_testdir
+       $(MAKE) -f debian/rules unpatch
+       rm -f $(STAMP_DIR)/check.md5sum
+       $(MAKE) -f debian/rules $(STAMP_DIR)/check.md5sum
+       mv $(STAMP_DIR)/check.md5sum $@
+
+# Internal target. Never invoke directly.
+debian/patches/patched.md5sum:
+       dh_testdir
+       [ -f $(STAMP_DIR)/clean.md5sum ] || \
+         $(MAKE) -f debian/rules $(STAMP_DIR)/clean.md5sum
+
+       $(MAKE) -f debian/rules patch
+       rm -f $(STAMP_DIR)/check.md5sum
+       $(MAKE) -f debian/rules $(STAMP_DIR)/check.md5sum
+       if ! diff $(STAMP_DIR)/clean.md5sum \
+                 $(STAMP_DIR)/check.md5sum > /dev/null; then \
+         $(MAKE) -f debian/rules doautoreconf; \
+       else \
+         mv $(STAMP_DIR)/check.md5sum $@; \
+       fi
+
+# Internal target. Never invoke directly.
+,PHONY: doautoreconf
+doautoreconf: patch
+       quilt push -a >>$(STAMP_DIR)/log/autoreconf 2>&1 || true
+       if quilt applied | grep ^autoreconf.diff$$ > /dev/null; then \
+         quilt pop -a >>$(STAMP_DIR)/log/autoreconf 2>&1; \
+         quilt rename -p autoreconf.diff autoreconf-old.diff \
+              >>$(STAMP_DIR)/log/autoreconf 2>&1; \
+         quilt delete autoreconf-old.diff >>$(STAMP_DIR)/log/autoreconf 2>&1; \
+         quilt push -a >>$(STAMP_DIR)/log/autoreconf 2>&1; \
+       fi
+
+       if [ -e $(RECONF_DIR) ]; then \
+         echo "ERROR: $(RECONF_DIR) already exists. Cleanup by hand"; \
+         exit 1; \
+       fi
+
+       mkdir -p $(RECONF_DIR)/before
+       find . -maxdepth 1 -mindepth 1 ! -wholename ./$(RECONF_DIR) \
+            -a ! -wholename ./debian -a ! -wholename ./patches \
+            -a ! -wholename ./.pc -a ! -wholename ./$(STAMP_DIR) | \
+         xargs -i{} cp -al {} $(RECONF_DIR)/before/
+
+       for F in $(RECONF_PRUNEFILES); do \
+         find $(RECONF_DIR)/before -name $$F -print | \
+           xargs --no-run-if-empty rm -r; \
+       done
+
+       cp -al $(RECONF_DIR)/before $(RECONF_DIR)/after
+
+       for F in $(RECONF_NOLINKFILES); do \
+         find . -wholename ./$(RECONF_DIR) -prune -o -wholename ./debian \
+              -prune -o -wholename ./$(STAMP_DIR) -prune -o -name $$F \
+              -print | \
+           xargs --no-run-if-empty -i{} cp --remove-destination {} \
+             $(RECONF_DIR)/after/{}; \
+       done
+
+       cd $(RECONF_DIR)/after && autoreconf -v --install && \
+         for F in $(RECONF_PRUNEFILES); do \
+           find . -name $$F -print | \
+             xargs --no-run-if-empty rm -r; \
+         done
+
+       cd $(RECONF_DIR) && diff -Nru before after > autoreconf.diff || true
+
+       quilt import $(RECONF_DIR)/autoreconf.diff \
+             >>$(STAMP_DIR)/log/autoreconf 2>&1
+
+       mv $(STAMP_DIR)/check.md5sum debian/patches/patched.md5sum
+
+       rm -r $(RECONF_DIR) && rm -f patches/autoreconf-old.diff
+
+       @echo 
+       @echo "****************************************************************"
+       @echo "  This target is made to fail INTENTIONALLY. It should NEVER    "
+       @echo "  be invoked during automatic builds.                           "
+       @echo 
+       @echo "  This target was invoked because you added/removed/changed     "
+       @echo "  patches which modify either configure.ac or Makefile.am and,  "
+       @echo "  thus, require autoreconf run. And all autoreconfing should    "
+       @echo "  happen before uploading.                                      "
+       @echo 
+       @echo "  (See also debian/xsfbs/xsfbs-autoreconf.mk)                   "
+       @echo 
+       @echo "  If you see this message, autoreconfing actually SUCCEEDED,    "
+       @echo "  and your build should finish successfully, when rerun.        "
+       @echo "****************************************************************"
+       @echo 
+       exit 1;
+
+.PHONY: autoreconf
+autoreconf: debian/patches/patched.md5sum patch $(STAMP_DIR)/check.md5sum
+       if ! diff $(STAMP_DIR)/check.md5sum \
+                 debian/patches/patched.md5sum > /dev/null; then \
+         $(MAKE) -f debian/rules doautoreconf; \
+       fi
diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
new file mode 100755
index 0000000..7b8206e
--- /dev/null
+++ b/debian/xsfbs/xsfbs.mk
@@ -0,0 +1,359 @@
+#!/usr/bin/make -f
+# $Id$
+
+# Debian rules file for xorg-x11 source package
+
+# Copyright 1996 Stephen Early
+# Copyright 1997 Mark Eichin
+# Copyright 1998-2005 Branden Robinson
+# Copyright 2005 David Nusinow
+#
+# Licensed under the GNU General Public License, version 2.  See the file
+# /usr/share/common-licenses/GPL or <http://www.gnu.org/copyleft/gpl.txt>.
+
+# Originally by Stephen Early <[EMAIL PROTECTED]>
+# Modified by Mark W. Eichin <[EMAIL PROTECTED]>
+# Modified by Adam Heath <[EMAIL PROTECTED]>
+# Modified by Branden Robinson <[EMAIL PROTECTED]>
+# Modified by Fabio Massimo Di Nitto <[EMAIL PROTECTED]>
+# Modified by David Nusinow <[EMAIL PROTECTED]>
+# Acknowledgements to Manoj Srivastava.
+
+# Pass $(DH_OPTIONS) into the environment for debhelper's benefit.
+export DH_OPTIONS
+
+# Set up parameters for the upstream build environment.
+
+# Determine (source) package name from Debian changelog.
+SOURCE_NAME:=$(shell dpkg-parsechangelog -ldebian/changelog \
+                        | grep '^Source:' | awk '{print $$2}')
+
+# Determine package version from Debian changelog.
+SOURCE_VERSION:=$(shell dpkg-parsechangelog -ldebian/changelog \
+                        | grep '^Version:' | awk '{print $$2}')
+
+# Determine upstream version number.
+UPSTREAM_VERSION:=$(shell echo $(SOURCE_VERSION) | sed 's/-.*//')
+
+# Determine the source version without the epoch for make-orig-tar-gz
+NO_EPOCH_VER:=$(shell echo $(UPSTREAM_VERSION) | sed 's/^.://')
+
+# Figure out who's building this package.
+BUILDER:=$(shell echo $${DEBEMAIL:-$${EMAIL:-$$(echo [EMAIL PROTECTED](cat 
/etc/mailname 2>/dev/null))}})
+
+# Find out if this is an official build; an official build has nothing but
+# digits, dots, and/or the strings "woody" or "sarge" in the Debian part of the
+# version number.  Anything else indicates an unofficial build.
+OFFICIAL_BUILD:=$(shell VERSION=$(SOURCE_VERSION); if ! expr "$$(echo 
$${VERSION\#\#*-} | sed 's/\(woody\|sarge\)//g')" : ".*[^0-9.].*" >/dev/null 
2>&1; then echo yes; fi)
+
+# Set up parameters for the Debian build environment.
+
+# Determine our architecture.
+BUILD_ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
+# Work around some old-time dpkg braindamage.
+BUILD_ARCH:=$(subst i486,i386,$(BUILD_ARCH))
+# The DEB_HOST_ARCH variable may be set per the Debian cross-compilation 
policy.
+ifdef DEB_HOST_ARCH
+ ARCH:=$(DEB_HOST_ARCH)
+else
+ # dpkg-cross sets the ARCH environment variable; if set, use it.
+ ifdef ARCH
+  ARCH:=$(ARCH)
+ else
+  ARCH:=$(BUILD_ARCH)
+ endif
+endif
+
+# $(STAMP_DIR) houses stamp files for complex targets.
+STAMP_DIR:=stampdir
+
+# $(SOURCE_DIR) houses one or more source trees.
+SOURCE_DIR:=build-tree
+
+# $(SOURCE_TREE) is the location of the source tree to be compiled.  If there
+# is more than one, others are found using this name plus a suffix to indicate
+# the purpose of the additional tree (e.g., $(SOURCE_TREE)-custom).  The
+# "setup" target is responsible for creating such trees.
+#SOURCE_TREE:=$(SOURCE_DIR)/xc
+#FIXME We need to define this in our debian/rules file
+
+# $(DEBTREEDIR) is where all install rules are told (via $(DESTDIR)) to place
+# their files.
+DEBTREEDIR:=$(CURDIR)/debian/tmp
+
+# All "important" targets have four lines:
+#   1) A target name that is invoked by a package-building tool or the user.
+#      This consists of a dependency on a "$(STAMP_DIR)/"-prefixed counterpart.
+#   2) A line delcaring 1) as a phony target (".PHONY:").
+#   3) A "$(STAMP_DIR)/"-prefixed target which does the actual work, and may
+#   depend on other targets.
+#   4) A line declaring 3) as a member of the $(stampdir_targets) variable; the
+#   "$(STAMP_DIR)/" prefix is omitted.
+#
+# This indirection is needed so that the "stamp" files that signify when a rule
+# is done can be located in a separate "stampdir".  Recall that make has no way
+# to know when a goal has been met for a phony target (like "build" or
+# "install").
+#
+# At the end of each "$(STAMP_DIR)/" target, be sure to run the command ">$@"
+# so that the target will not be run again.  Removing the file will make Make
+# run the target over.
+
+# All phony targets should be declared as dependencies of .PHONY, even if they
+# do not have "($STAMP_DIR)/"-prefixed counterparts.
+
+# Define a harmless default rule to keep things from going nuts by accident.
+.PHONY: default
+default:
+
+# Set up the $(STAMP_DIR) directory.
+.PHONY: stampdir
+stampdir_targets+=stampdir
+stampdir: $(STAMP_DIR)/stampdir
+$(STAMP_DIR)/stampdir:
+       mkdir $(STAMP_DIR)
+       >$@
+
+# Set up the package build directory as quilt expects to find it.
+.PHONY: prepare
+stampdir_targets+=prepare
+prepare: $(STAMP_DIR)/genscripts $(STAMP_DIR)/prepare $(STAMP_DIR)/patches 
$(STAMP_DIR)/log
+$(STAMP_DIR)/prepare: $(STAMP_DIR)/stampdir
+       if [ ! -e $(STAMP_DIR)/patches ]; then \
+               mkdir $(STAMP_DIR)/patches; \
+               ln -s $(STAMP_DIR)/patches .pc; \
+               echo 2 >$(STAMP_DIR)/patches/.version; \
+       fi; \
+       if [ ! -e $(STAMP_DIR)/log ]; then \
+               mkdir $(STAMP_DIR)/log; \
+       fi; \
+       if [ ! -e patches ]; then \
+               ln -s debian/patches patches; \
+       fi; \
+       >$@
+
+# Apply all patches to the upstream source.
+.PHONY: patch
+stampdir_targets+=patch
+patch: $(STAMP_DIR)/patch
+$(STAMP_DIR)/patch: $(STAMP_DIR)/prepare
+       if ! [ `which quilt` ]; then \
+               echo "Couldn't find quilt. Please install it or add it to the 
build-depends for this package."; \
+               exit 1; \
+       fi; \
+       if quilt next; then \
+         echo -n "Applying patches..."; \
+         if quilt push -a -v >$(STAMP_DIR)/log/patch 2>&1; then \
+           echo "successful."; \
+         else \
+           echo "failed! (check $(STAMP_DIR)/log/patch for details)"; \
+           exit 1; \
+         fi; \
+       else \
+         echo "No patches to apply"; \
+       fi; \
+       >$@
+
+# Revert all patches to the upstream source.
+.PHONY: unpatch
+unpatch:
+       rm -f $(STAMP_DIR)/patch
+       @echo -n "Unapplying patches..."; \
+       if [ -e $(STAMP_DIR)/patches/applied-patches ]; then \
+         if quilt pop -a -v >$(STAMP_DIR)/log/unpatch 2>&1; then \
+           echo "successful."; \
+         else \
+           echo "failed! (check $(STAMP_DIR)/log/unpatch for details)"; \
+           exit 1; \
+         fi; \
+       else \
+         echo "nothing to do."; \
+       fi
+
+# Clean the generated maintainer scripts.
+.PHONY: cleanscripts
+cleanscripts:
+       rm -f $(STAMP_DIR)/genscripts
+       rm -f debian/*.config \
+             debian/*.postinst \
+             debian/*.postrm \
+             debian/*.preinst \
+             debian/*.prerm
+
+# Clean the package build tree.
+.PHONY: xsfclean
+xsfclean: cleanscripts unpatch
+       dh_testdir
+       rm -f .pc patches
+       rm -rf $(STAMP_DIR) $(SOURCE_DIR)
+       rm -rf imports
+       dh_clean debian/shlibs.local \
+                debian/MANIFEST.$(ARCH) debian/MANIFEST.$(ARCH).new \
+                debian/po/pothead
+
+# Generate the debconf templates POT file header.
+debian/po/pothead: debian/po/pothead.in
+       sed -e 's/SOURCE_VERSION/$(SOURCE_VERSION)/' \
+         -e 's/DATE/$(shell date "+%F %X%z"/)' <$< >$@
+
+# Update POT and PO files.
+.PHONY: updatepo
+updatepo: debian/po/pothead
+       debian/scripts/debconf-updatepo --pot-header=pothead --verbose
+
+# Use the MANIFEST files to determine whether we're shipping everything we
+# expect to ship, and not shipping anything we don't expect to ship.
+.PHONY: check-manifest
+stampdir_targets+=check-manifest
+check-manifest: $(STAMP_DIR)/check-manifest
+$(STAMP_DIR)/check-manifest: $(STAMP_DIR)/install
+       # Compare manifests.
+       (cd debian/tmp && find -type f | LC_ALL=C sort | cut -c3-) \
+         >debian/MANIFEST.$(ARCH).new
+       # Construct MANIFEST files from MANIFEST.$(ARCH).in and
+       # MANIFEST.$(ARCH).all or MANIFEST.all.
+       if expr "$(findstring -DBuildFonts=NO,$(IMAKE_DEFINES))" \
+         : "-DBuildFonts=NO" >/dev/null 2>&1; then \
+         LC_ALL=C sort -u debian/MANIFEST.$(ARCH).in >debian/MANIFEST.$(ARCH); 
\
+       else \
+         if [ -e debian/MANIFEST.$(ARCH).all ]; then \
+           LC_ALL=C sort -u debian/MANIFEST.$(ARCH).in 
debian/MANIFEST.$(ARCH).all >debian/MANIFEST.$(ARCH); \
+         else \
+           LC_ALL=C sort -u debian/MANIFEST.$(ARCH).in debian/MANIFEST.all 
>debian/MANIFEST.$(ARCH); \
+         fi; \
+       fi
+       # Confirm that the installed file list has not changed.
+       if [ -e debian/MANIFEST.$(ARCH) ]; then \
+         if ! cmp -s debian/MANIFEST.$(ARCH) debian/MANIFEST.$(ARCH).new; then 
\
+           diff -U 0 debian/MANIFEST.$(ARCH) debian/MANIFEST.$(ARCH).new || 
DIFFSTATUS=$$?; \
+           case $${DIFFSTATUS:-0} in \
+             0) ;; \
+             1) if [ -n "$$IGNORE_MANIFEST_CHANGES" ]; then \
+                  echo 'MANIFEST check failed; ignoring problem because 
\$$IGNORE_MANIFEST_CHANGES set' >&2; \
+                  echo 'Please ensure that the package maintainer has an 
up-to-date version of the' >&2; \
+                  echo 'MANIFEST.$(ARCH).in file.' >&2; \
+                else \
+                  echo 'MANIFEST check failed; please see debian/README' >&2; \
+                  exit 1; \
+                fi; \
+                ;; \
+             *) echo "diff reported unexpected exit status $$DIFFSTATUS when 
performing MANIFEST check" >&2; \
+                exit 1; \
+                ;; \
+           esac; \
+         fi; \
+       fi
+       >$@
+
+# Because we build (and install) different files depending on whether or not
+# any architecture-independent packages are being created, the list of files we
+# expect to see will differ; see the discussion of the "build" target above.
+.PHONY: check-manifest-arch check-manifest-indep
+check-manifest-arch: IMAKE_DEFINES+= -DBuildSpecsDocs=NO -DBuildFonts=NO 
-DInstallHardcopyDocs=NO
+check-manifest-arch: check-manifest
+check-manifest-indep: check-manifest
+
+# Remove files from the upstream source tree that we don't need, or which have
+# licensing problems.  It must be run before creating the .orig.tar.gz.
+#
+# Note: This rule is for Debian package maintainers' convenience, and is not
+# needed for conventional build scenarios.
+.PHONY: prune-upstream-tree
+prune-upstream-tree:
+       # Ensure we're in the correct directory.
+       dh_testdir
+       grep -rvh '^#' debian/prune/ | xargs --no-run-if-empty rm -rf
+
+# Change to what should be the correct directory, ensure it is, and if
+# so, create the .orig.tar.gz file.  Exclude the debian directory and its
+# contents, and any .svn directories and their contents (so that we can safely
+# build an .orig.tar.gz from SVN checkout, not just an export).
+#
+# Note: This rule is for Debian package maintainers' convenience, and is not
+# needed for conventional build scenarios.
+#
+# This rule *IS* the recommended method for creating a new .orig.tar.gz file,
+# for the rare situations when one is needed.
+.PHONY: make-orig-tar-gz
+make-orig-tar-gz: clean prune-upstream-tree
+       ( cd .. \
+         && if [ $(shell basename $(CURDIR)) != $(SOURCE_NAME)-$(NO_EPOCH_VER) 
]; then \
+           echo "Our current working directory has the wrong name. 
Renaming..." >&2; \
+               mv $(CURDIR) $(SOURCE_NAME)-$(NO_EPOCH_VER); \
+         fi; \
+           tar --exclude=debian --exclude=debian/* \
+               --exclude=.svn --exclude=.svn/* \
+               -cf - $(SOURCE_NAME)-$(NO_EPOCH_VER) \
+           | gzip -9 >$(SOURCE_NAME)_$(NO_EPOCH_VER).orig.tar.gz; \
+          )
+
+# Verify that there are no offsets or fuzz in the patches we apply.
+#
+# Note: This rule is for Debian package maintainers' convenience, and is not
+# needed for conventional build scenarios.
+.PHONY: patch-audit
+patch-audit: prepare unpatch
+       @echo -n "Auditing patches..."; \
+       >$(STAMP_DIR)/log/patch; \
+       FUZZY=; \
+       while [ -n "$$(quilt next)" ]; do \
+         RESULT=$$(quilt push -v | tee -a $(STAMP_DIR)/log/patch | grep ^Hunk 
| sed 's/^Hunk.*\(succeeded\|FAILED\).*/\1/');\
+         case "$$RESULT" in \
+           succeeded) \
+             echo "fuzzy patch: $$(quilt top)" \
+               | tee -a $(STAMP_DIR)/log/$$(quilt top); \
+             FUZZY=yes; \
+             ;; \
+           FAILED) \
+             echo "broken patch: $$(quilt next)" \
+               | tee -a $(STAMP_DIR)/log/$$(quilt next); \
+             exit 1; \
+             ;; \
+         esac; \
+       done; \
+       if [ -n "$$FUZZY" ]; then \
+         echo "there were fuzzy patches; please fix."; \
+         exit 1; \
+       else \
+         echo "done."; \
+       fi
+
+# Generate the maintainer scripts.
+.PHONY: genscripts
+stampdir_targets+=genscripts
+genscripts: $(STAMP_DIR)/genscripts
+$(STAMP_DIR)/genscripts: $(STAMP_DIR)/stampdir
+       for FILE in debian/*.config.in \
+                   debian/*.postinst.in \
+                   debian/*.postrm.in \
+                   debian/*.preinst.in \
+                   debian/*.prerm.in; do \
+         if [ -e "$$FILE" ]; then \
+           MAINTSCRIPT=$$(echo $$FILE | sed 's/.in$$//'); \
+           sed -n '1,/^#INCLUDE_SHELL_LIB#$$/p' <$$FILE \
+             | sed -e '/^#INCLUDE_SHELL_LIB#$$/d' >$$MAINTSCRIPT.tmp; \
+           cat debian/xsfbs/xsfbs.sh >>$$MAINTSCRIPT.tmp; \
+           sed -n '/^#INCLUDE_SHELL_LIB#$$/,$$p' <$$FILE \
+             | sed -e '/^#INCLUDE_SHELL_LIB#$$/d' >>$$MAINTSCRIPT.tmp; \
+           sed -e 's/@SOURCE_VERSION@/$(SOURCE_VERSION)/' \
+               -e 's/@OFFICIAL_BUILD@/$(OFFICIAL_BUILD)/' \
+               -e 's/@DEFAULT_DCRESOLUTIONS@/$(DEFAULT_DCRESOLUTIONS)/' \
+             <$$MAINTSCRIPT.tmp >$$MAINTSCRIPT; \
+           rm $$MAINTSCRIPT.tmp; \
+         fi; \
+       done
+       # Validate syntax of generated shell scripts.
+       #sh debian/scripts/validate-posix-sh debian/*.config \
+       #                                    debian/*.postinst \
+       #                                    debian/*.postrm \
+       #                                    debian/*.preinst \
+       #                                    debian/*.prerm
+       >$@
+
+# Generate the shlibs.local file.
+debian/shlibs.local:
+       cat debian/*.shlibs >$@
+
+include debian/xsfbs/xsfbs-autoreconf.mk
+
+# vim:set noet ai sts=8 sw=8 tw=0:


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to