Author: branden
Date: 2004-07-21 02:52:26 -0500 (Wed, 21 Jul 2004)
New Revision: 1679

Added:
   trunk/debian/patches/095_fontutils_are_not_fonts.diff
Removed:
   trunk/debian/patches/914_debian_donot_build_fonts
   trunk/debian/patches/915_debian_donot_build_specs
Modified:
   trunk/debian/CHANGESETS
   trunk/debian/README
   trunk/debian/changelog
   trunk/debian/patches/003_linux.cf_and_xfree86.cf.diff
   trunk/debian/patches/004_imake_manpage_handling_overhaul.diff
   trunk/debian/patches/099c_support_loadable_external_Xcursor_lib.diff
   trunk/debian/patches/600_amd64_support.diff
   trunk/debian/patches/800_gnu_config.diff
   trunk/debian/patches/820_gnu-freebsd_config.diff
   trunk/debian/patches/842_netbsd_NetBSD.cf_fixes.diff
   trunk/debian/patches/900_debian_config.diff
   trunk/debian/rules
Log:
Support building only the parts of the source tree needed by
architecture-specific packages.
+ Modify Debian Imake configuration to support building with fonts and
  specs docs turned off (patch #003).  Resynchronize GNU/Hurd,
  GNU/FreeBSD, and GNU/NetBSD Imake configurations with Debian
  configuration (patches #800, #820, #842, #900).  Resync diffs in patches
  #004, #099c, #600.
+ Modify Imakefiles to build and install the font utilities even if the
  fonts themselves are not being shipped (patch #095).
+ Make the "build" target a dummy target, replacing it with
  "build-arch-only" and "build-all" targets.  Target-specific variable
  values are used to invoke a "real-build" target, turning off the
  building of fonts and "specs docs" as needed.
+ Add comments to rules file, update $(stampdir_targets) and .PHONY
  target.
+ Split MANIFEST files into arch-specific and arch-independent parts.
  Update the README to explain how these files work now and how to update
  them.
+ Ship the XTerm control sequences document only in the xspecs package.
Consequences:
+ Reduce the disk space required to build the package by ~520MB when the
  "binary-arch" target is used (e.g., by "dpkg-buildpackage -B".)
+ Reduce the build time by 20 to 30 percent when the "binary-arch" target
  is used (ccache users might see even more improvement).
+ Make the buildd admins hate us less.

Add Vim modeline and SVN Id keyword to debian/README, and set svn:keywords
property on file.

Remove old kludge from debian/rules that worked around an ancient bug in
Vim's syntax highlighting.

Send whitespace police through debian/rules.

Stop prefixing stamp files with "stamp-", since they already live in
$(STAMP_DIR).

Drop patches #914 and #915; superseded by rules file changes and patch
#095.


Modified: trunk/debian/CHANGESETS
===================================================================
--- trunk/debian/CHANGESETS     2004-07-21 07:26:15 UTC (rev 1678)
+++ trunk/debian/CHANGESETS     2004-07-21 07:52:26 UTC (rev 1679)
@@ -117,16 +117,32 @@
 (thanks, Su Yong).  (Closes: #255224)
     1655
 
-Split binary-arch and binary-indep targets in debian/rules.
-  + Split MANIFEST files in arch specific and arch independent parts.
-  + Move xterm documentation specifications to xspecs package.
-  + Add debian/patches/914_debian_donot_build_fonts.
-  + Add debian/patches/915_debian_donot_build_specs.
-  + Reduce the disk space required to build the package of approx. 520MB.
-  + Reduce the time to build of approx. 20 to 30%. This is striclty arch
-    dependent.
-  + Make buildd's admins hate us less.
-    1658, 1659, 1661, 1670, 1671
+Support building only the parts of the source tree needed by
+architecture-specific packages.
++ Modify Debian Imake configuration to support building with fonts and
+  specs docs turned off (patch #003).  Resynchronize GNU/Hurd,
+  GNU/FreeBSD, and GNU/NetBSD Imake configurations with Debian
+  configuration (patches #800, #820, #842, #900).  Resync diffs in patches
+  #004, #099c, #600.
++ Modify Imakefiles to build and install the font utilities even if the
+  fonts themselves are not being shipped (patch #095).
++ Make the "build" target a dummy target, replacing it with
+  "build-arch-only" and "build-all" targets.  Target-specific variable
+  values are used to invoke a "real-build" target, turning off the
+  building of fonts and "specs docs" as needed.
++ Add comments to rules file, update $(stampdir_targets) and .PHONY
+  target.
++ Split MANIFEST files into arch-specific and arch-independent parts.
+  Update the README to explain how these files work now and how to update
+  them.
++ Ship the XTerm control sequences document only in the xspecs package.
+Consequences:
++ Reduce the disk space required to build the package by ~520MB when the
+  "binary-arch" target is used (e.g., by "dpkg-buildpackage -B".)
++ Reduce the build time by 20 to 30 percent when the "binary-arch" target
+  is used (ccache users might see even more improvement).
++ Make the buildd admins hate us less.
+    1658, 1659, 1661, 1670, 1671, 1679
 
 Fix missing element of Debian X FAQ conversion to XHTML; correct
 s390-specific version of xfree86-common dh_installdocs file to recognize

Modified: trunk/debian/README
===================================================================
--- trunk/debian/README 2004-07-21 07:26:15 UTC (rev 1678)
+++ trunk/debian/README 2004-07-21 07:52:26 UTC (rev 1679)
@@ -1,3 +1,5 @@
+$Id$
+
 This file attempts to explain some of the oddities of the XFree86 Debian
 source package by describing the files and directories not usually found in
 a (debhelperized) source package.
@@ -76,32 +78,35 @@
   tools for handling fonts.alias and fonts.scale files are here.
 
 MANIFEST.$(ARCH).{in,all} and MANIFEST.all:
-  These files are here to keep track of what the install rules actually
-  install.  The combination of these files creates a MANIFEST.$(ARCH)
-  to reflect what the system expect to be installed after the build.  If this
-  changes, we need to know about it; there may be new files we want to ship,
-  or there may be a build-dependency problem such that files that should be
-  there are not.  This version is compared against one that is generated
-  after the XFree86 install rule is run.
+  These files are here to keep track of what the upstream install rules 
actually
+  install.  Together, these files create a MANIFEST.$(ARCH) file which reflects
+  what the system expects to be installed after the build.  If this changes, we
+  need to know about it; there may be new files we want to ship, or there may 
be
+  a build-dependency problem such that files that should be there are not.  
This
+  version is compared against one that is generated after the XFree86 install
+  rule is run.
 
-  *VERY IMPORTANT*: It doesn't do any good to replace the MANIFEST files
-  without making appropriate changes to the debhelper files.  If you find
-  that a new MANIFEST file for your architecture needs to be generated,
-  contact the package maintainer, [EMAIL PROTECTED]  Obviously there are
-  several ways to just shut the manifest check up and proceed with the
-  build process, but if it has changed, it is important to know why.
+  *VERY IMPORTANT*: It doesn't do any good to replace the MANIFEST files 
without
+  making appropriate changes to the debhelper files.  If you find that a new
+  MANIFEST file for your architecture needs to be generated, contact the 
package
+  maintenance team, the Debian X Strike Force <debian-x@lists.debian.org>.
+  Obviously there are several ways to just shut the manifest check up and
+  proceed with the build process, but if it has changed, it is important to 
know
+  why.
 
   Once you have updated the appropriate debhelper files specific to your
-  architecture (see next section), you will have to clean the new MANIFEST
-  from arch independant files. This can be achieved removing all the files
-  listed in MANIFEST{.$(ARCH),}.all from the new MANIFEST file.  Overwrite
-  then the old MANIFEST.$(ARCH) file with the new one.  Then start the build
-  again.  Be sure to get the new canonical version of MANIFEST.$(ARCH) to
-  the XFree86 package maintainer.  (This applies only if you are doing
-  official porting work for the Debian Project.)
+  architecture (see the next section), architecture-independent files will need
+  to be removed from the list of architecture-specific files listed for your
+  architecture in MANIFEST.$(ARCH).in.  Anything listed in MANIFEST.all should
+  not be listed in MANIFEST.$(ARCH).in.  Next, start the build again.  Repeat
+  this cycle until there are no more MANIFEST mismatches.  Be sure to get the
+  new canonical version of MANIFEST.$(ARCH) to the XFree86 package maintenance
+  team (if you are doing official porting work for the Debian Project).
 
-  NOTE: MANIFEST.$ARCH.all is preferred to MANIFEST.all (actually required
-  only by two architectures.
+  NOTE: If a MANIFEST.$(ARCH).all file exists, it is used in place of
+  MANIFEST.all.  This is a rare circumstance, and if you suspect you need to
+  create a MANIFEST.$(ARCH).all file, please contact the XFree86 package
+  maintenance team.
 
 $(package).*.$(ARCH):
   These exist in cases where the contents of one of the debhelper files is
@@ -111,3 +116,5 @@
 
   If a debhelper file with the .$(ARCH) extension is not present, debhelper
   will fall back to the version of the file without any .$(ARCH) extension.
+
+vim:set ai et sw=2 sts=2 tw=80:


Property changes on: trunk/debian/README
___________________________________________________________________
Name: svn:keywords
   + Id

Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog      2004-07-21 07:26:15 UTC (rev 1678)
+++ trunk/debian/changelog      2004-07-21 07:52:26 UTC (rev 1679)
@@ -108,19 +108,35 @@
     accordingly.  Make xutils declare that it replaces xfonts-base (<<
     4.3.0.dfsg.1-7).
 
-  Changes by Fabio M. Di Nitto:
+  Changes by Fabio M. Di Nitto and Branden Robinson:
 
-  * Split binary-arch and binary-indep targets in debian/rules.
-    + Split MANIFEST files in arch specific and arch independent parts.
-    + Move xterm documentation specifications to xspecs package.
-    + Add debian/patches/914_debian_donot_build_fonts.
-    + Add debian/patches/915_debian_donot_build_specs.
-    + Reduce the disk space required to build the package of approx. 520MB.
-    + Reduce the time to build of approx. 20 to 30%. This is striclty arch
-      dependent.
-    + Make buildd's admins hate us less.
+  * Support building only the parts of the source tree needed by
+    architecture-specific packages.
+    + Modify Debian Imake configuration to support building with fonts and
+      specs docs turned off (patch #003).  Resynchronize GNU/Hurd,
+      GNU/FreeBSD, and GNU/NetBSD Imake configurations with Debian
+      configuration (patches #800, #820, #842, #900).  Resync diffs in patches
+      #004, #099c, #600.
+    + Modify Imakefiles to build and install the font utilities even if the
+      fonts themselves are not being shipped (patch #095).
+    + Make the "build" target a dummy target, replacing it with
+      "build-arch-only" and "build-all" targets.  Target-specific variable
+      values are used to invoke a "real-build" target, turning off the
+      building of fonts and "specs docs" as needed.
+    + Add comments to rules file, update $(stampdir_targets) and .PHONY
+      target.
+    + Split MANIFEST files into arch-specific and arch-independent parts.
+      Update the README to explain how these files work now and how to update
+      them.
+    + Ship the XTerm control sequences document only in the xspecs package.
+    Consequences:
+    + Reduce the disk space required to build the package by ~520MB when the
+      "binary-arch" target is used (e.g., by "dpkg-buildpackage -B".)
+    + Reduce the build time by 20 to 30 percent when the "binary-arch" target
+      is used (ccache users might see even more improvement).
+    + Make the buildd admins hate us less.
 
- -- Branden Robinson <[EMAIL PROTECTED]>  Tue, 20 Jul 2004 19:20:39 -0500
+ -- Branden Robinson <[EMAIL PROTECTED]>  Wed, 21 Jul 2004 02:46:46 -0500
 
 xfree86 (4.3.0.dfsg.1-6) unstable; urgency=low
 

Modified: trunk/debian/patches/003_linux.cf_and_xfree86.cf.diff
===================================================================
--- trunk/debian/patches/003_linux.cf_and_xfree86.cf.diff       2004-07-21 
07:26:15 UTC (rev 1678)
+++ trunk/debian/patches/003_linux.cf_and_xfree86.cf.diff       2004-07-21 
07:52:26 UTC (rev 1679)
@@ -3,6 +3,9 @@
 Various Debian changes to xfree86.cf and linux.cf, including better
 support for GCC flags, including tweakability of optimization level.
 
+Support building with fonts and specs docs turned off (for
+architecture-specific-only package builds).
+
 This patch mostly by Branden Robinson.
 
 FontLibSharedFreeType disabled by ISHIKAWA Mutsumi; this change should be
@@ -15,8 +18,8 @@
 
 Not submitted to XFree86.
 
---- xc/config/cf/linux.cf~     2004-07-13 15:19:08.000000000 -0500
-+++ xc/config/cf/linux.cf      2004-07-13 17:35:34.000000000 -0500
+--- xc/config/cf/linux.cf~     2004-07-21 00:52:07.000000000 -0500
++++ xc/config/cf/linux.cf      2004-07-21 00:54:17.000000000 -0500
 @@ -93,17 +93,23 @@
  #endif
  
@@ -43,11 +46,34 @@
  # define XF86SetupUsesStaticTcl       NO
  /* un-comment this when it is un-broken */
  /* # define JoystickSupport YES */
-@@ -152,33 +158,82 @@
- #  define SpecsDocDirs                        CTEXT GL ICCCM X11 Xext Xv i18n 
xterm
+@@ -142,43 +148,102 @@
+ #   define BuilderEMailAddr           "debian-x@lists.debian.org"
+ #  endif
+ #  define XFree86Devel                        YES
+-#  define BuildAllSpecsDocs           YES
+ #  define InstallXinitConfig          YES
+ #  define InstallXdmConfig            YES
+ #  define InstallFSConfig             YES
+ #  define DebuggableLibraries         YES
+ #  define ForceNormalLib              YES
+-#  define BuildSpecsDocs              YES
+-#  define SpecsDocDirs                        CTEXT GL ICCCM X11 Xext Xv i18n 
xterm
  #  define BuildRman                   NO
  #  define BuildHtmlManPages           NO
 +/*
++ * Debian doesn't use certain parts of the tree when doing
++ * architecture-specific package builds.
++ */
++#  ifndef BuildFonts
++#   define BuildFonts                 YES
++#  endif
++#  ifndef BuildSpecsDocs
++#   define BuildSpecsDocs             YES
++#  endif
++#  if BuildSpecsDocs
++#   define SpecsDocDirs                       CTEXT GL ICCCM X11 Xext Xv i18n 
xterm
++#  endif
++/*
 + * The XFree86 Debian package uses a local patch that defines a
 + * PicLibraryTarget() Imake rule, instead of using upstream's method.
 + */
@@ -141,7 +167,7 @@
  #   endif /* i386Architecture */
  # endif /* DebianMaintainer */
  #endif /* LinuxDebian */
-@@ -649,10 +704,10 @@
+@@ -649,10 +714,10 @@
  # if UseElfFormat
  #  ifdef AlphaArchitecture
  #   define CcCmd              gcc -b alpha-linux
@@ -153,7 +179,7 @@
  #  endif /* AlphaArchitecture */
  #  ifdef HPArchitecture
  #   define CcCmd              gcc
-@@ -664,10 +719,10 @@
+@@ -664,10 +729,10 @@
  #  endif /* HPArchitecture */
  #  ifdef i386Architecture
  #   define CcCmd              gcc -b i486-linux
@@ -165,7 +191,7 @@
  #  endif /* i386Architecture */
  #  ifdef ia64Architecture
  #   define CcCmd              gcc
-@@ -678,29 +733,30 @@
+@@ -678,29 +743,30 @@
  #  endif /* ia64Architecture */
  #  ifdef Mc68020Architecture
  #   define CcCmd              gcc -b m68k-linux
@@ -204,7 +230,7 @@
  #   define DoLoadableServer   NO
  #  else
  #   define DoLoadableServer   YES
-@@ -745,7 +801,7 @@
+@@ -745,7 +811,7 @@
  
  #ifdef AlphaArchitecture
  # ifndef OptimizedCDebugFlags
@@ -213,7 +239,7 @@
  # endif
  # define LinuxMachineDefines  -D__alpha__
  # define ServerOSDefines      XFree86ServerOSDefines -DDDXTIME -DPART_NET
-@@ -758,7 +814,7 @@
+@@ -758,7 +824,7 @@
  #ifdef Arm32Architecture
  # define DefaultCCOptions     -fsigned-char
  # ifndef OptimizedCDebugFlags
@@ -222,7 +248,7 @@
  # endif
  # define LinuxMachineDefines  -D__arm__ -D__arm32__ -U__arm -Uarm
  # define ServerOSDefines      XFree86ServerOSDefines -DDDXTIME -DPART_NET
-@@ -766,7 +822,9 @@
+@@ -766,7 +832,9 @@
  #endif /* Arm32Achitecture */
  
  #ifdef HPArchitecture
@@ -233,7 +259,7 @@
  # define LinuxMachineDefines  -D__hppa__
  # define ServerOSDefines      XFree86ServerOSDefines -DDDXTIME -DPART_NET
  # define ServerExtraDefines   -DGCCUSESGAS XFree86ServerDefines
-@@ -774,7 +832,7 @@
+@@ -774,7 +842,7 @@
  
  #ifdef i386Architecture
  # ifndef OptimizedCDebugFlags
@@ -242,7 +268,7 @@
  # endif
  # define LinuxMachineDefines  -D__i386__
  # define ServerOSDefines      XFree86ServerOSDefines -DDDXTIME -DPART_NET
-@@ -783,7 +841,7 @@
+@@ -783,7 +851,7 @@
  
  #ifdef ia64Architecture
  # ifndef OptimizedCDebugFlags
@@ -251,7 +277,7 @@
  # endif
  # define LinuxMachineDefines  -D__ia64__
  # define ServerOSDefines      XFree86ServerOSDefines -DDDXTIME -DPART_NET
-@@ -792,7 +850,7 @@
+@@ -792,7 +860,7 @@
  
  #ifdef Mc68020Architecture
  # ifndef OptimizedCDebugFlags
@@ -260,7 +286,7 @@
  # endif
  # define LinuxMachineDefines  -D__mc68000__
  # define ServerOSDefines      XFree86ServerOSDefines -DDDXTIME -DPART_NET
-@@ -801,7 +859,7 @@
+@@ -801,7 +869,7 @@
  
  #ifdef MipsArchitecture
  # ifndef OptimizedCDebugFlags
@@ -269,7 +295,7 @@
  # endif
  # define LinuxMachineDefines  -D__mips__
  # define ServerOSDefines      XFree86ServerOSDefines -DDDXTIME -DPART_NET
-@@ -811,7 +869,7 @@
+@@ -811,7 +879,7 @@
  #ifdef PpcArchitecture
  # define DefaultCCOptions     -fsigned-char
  # ifndef OptimizedCDebugFlags
@@ -278,7 +304,7 @@
  # endif
  # define LinuxMachineDefines  -D__powerpc__
  # define ServerOSDefines      XFree86ServerOSDefines -DDDXTIME -DPART_NET
-@@ -820,7 +878,7 @@
+@@ -820,7 +888,7 @@
  
  #ifdef s390Architecture
  # ifndef OptimizedCDebugFlags
@@ -287,7 +313,7 @@
  # endif
  # define LinuxMachineDefines  -D__s390__
  # define ServerOSDefines      XFree86ServerOSDefines -DDDXTIME -DPART_NET
-@@ -828,16 +886,17 @@
+@@ -828,16 +896,17 @@
  #endif /* s390Architecture */
  
  #ifdef s390xArchitecture
@@ -311,7 +337,7 @@
  # endif
  # define LinuxMachineDefines  -D__sparc__
  # define ServerOSDefines      XFree86ServerOSDefines -DDDXTIME -DPART_NET
-@@ -859,7 +918,7 @@
+@@ -859,7 +928,7 @@
  #  else
  #   define SuperHArchOptFlags -m3
  #  endif
@@ -320,7 +346,7 @@
  # ifndef SuperHebArchitecture
  #  ifdef SuperHebArchitecture
  #   define SuperHEndianFlags  -mb
-@@ -868,7 +927,7 @@
+@@ -868,7 +937,7 @@
  #  endif
  # endif
  # ifndef OptimizedCDebugFlags

Modified: trunk/debian/patches/004_imake_manpage_handling_overhaul.diff
===================================================================
--- trunk/debian/patches/004_imake_manpage_handling_overhaul.diff       
2004-07-21 07:26:15 UTC (rev 1678)
+++ trunk/debian/patches/004_imake_manpage_handling_overhaul.diff       
2004-07-21 07:52:26 UTC (rev 1679)
@@ -298,9 +298,9 @@
  #ifndef StaticLibrary
  #define StaticLibrary(libpath,libname) -Wl,-Bstatic Concat(-L,libpath) 
Concat(-l,libname) -Wl,-Bdynamic
  #endif
---- xc/config/cf/linux.cf~     2004-03-17 13:06:13.000000000 -0500
-+++ xc/config/cf/linux.cf      2004-07-13 17:56:22.000000000 -0500
-@@ -164,6 +164,7 @@
+--- xc/config/cf/linux.cf~     2004-07-21 00:56:22.000000000 -0500
++++ xc/config/cf/linux.cf      2004-07-21 00:56:37.000000000 -0500
+@@ -174,6 +174,7 @@
   */
  #  define StaticNeedsPicForShared     NO
  #  define KernelVersionInBanner               YES
@@ -308,7 +308,7 @@
  /* The TT/Meltho fonts are all under non-free licenses. */
  #  define BuildTrueTypeFonts          NO
  #  define BuildBethMarduthoFonts      NO
-@@ -976,26 +977,6 @@
+@@ -986,26 +987,6 @@
  # define ConnectionFlags      -DUNIXCONN -DTCPCONN
  #endif
  

Added: trunk/debian/patches/095_fontutils_are_not_fonts.diff
===================================================================
--- trunk/debian/patches/095_fontutils_are_not_fonts.diff       2004-07-21 
07:26:15 UTC (rev 1678)
+++ trunk/debian/patches/095_fontutils_are_not_fonts.diff       2004-07-21 
07:52:26 UTC (rev 1679)
@@ -0,0 +1,41 @@
+$Id$
+
+Fix Imakefiles so that turning off font building doesn't skip over the font
+utilities directory (which, indeed, does not contain fonts).
+
+This patch by Branden Robinson.
+
+Not submitted to XFree86.
+
+--- xc/Imakefile~      2004-07-16 16:12:44.000000000 -0500
++++ xc/Imakefile       2004-07-16 16:13:12.000000000 -0500
+@@ -19,9 +19,7 @@
+ #endif
+ 
+ #if !BuildServersOnly
+-#if BuildFonts
+         FONTSDIR = fonts
+-#endif
+ #ifndef Win32Architecture
+ #if BuildDocs
+         DOCSDIR = doc
+--- xc/fonts/Imakefile~        2004-07-16 16:13:59.000000000 -0500
++++ xc/fonts/Imakefile 2004-07-16 16:14:52.000000000 -0500
+@@ -18,12 +18,15 @@
+ PEXDIR = PEX
+ #endif
+ 
++#if BuildFonts
+ SUBDIRS = $(ENCODINGDIR) util bdf $(SCALEDDIR) $(PEXDIR)
+-
+-#if MakeLocalFontDir
++# if MakeLocalFontDir
+ MakeDirectories(install,$(FONTDIR)/local)
+       if [ ! -f $(DESTDIR)$(FONTDIR)/local/fonts.dir ]; then \
+         echo "0" > $(DESTDIR)$(FONTDIR)/local/fonts.dir; fi
++# endif
++#else
++SUBDIRS = util
+ #endif
+ 
+ MakeSubdirs($(SUBDIRS))


Property changes on: trunk/debian/patches/095_fontutils_are_not_fonts.diff
___________________________________________________________________
Name: svn:keywords
   + Id

Modified: trunk/debian/patches/099c_support_loadable_external_Xcursor_lib.diff
===================================================================
--- trunk/debian/patches/099c_support_loadable_external_Xcursor_lib.diff        
2004-07-21 07:26:15 UTC (rev 1678)
+++ trunk/debian/patches/099c_support_loadable_external_Xcursor_lib.diff        
2004-07-21 07:52:26 UTC (rev 1679)
@@ -10,9 +10,9 @@
 
 Not submitted upstream.
 
---- xc/config/cf/linux.cf.orig 2004-02-01 14:06:04.000000000 -0500
-+++ xc/config/cf/linux.cf      2004-02-01 14:07:37.000000000 -0500
-@@ -188,6 +188,8 @@
+--- xc/config/cf/linux.cf~     2004-07-21 01:11:34.000000000 -0500
++++ xc/config/cf/linux.cf      2004-07-21 01:11:37.000000000 -0500
+@@ -198,6 +198,8 @@
  #  define HasRenderLibrary            YES
  #  define BuildXcursorLibrary         NO
  #  define HasXcursorLibrary           YES

Modified: trunk/debian/patches/600_amd64_support.diff
===================================================================
--- trunk/debian/patches/600_amd64_support.diff 2004-07-21 07:26:15 UTC (rev 
1678)
+++ trunk/debian/patches/600_amd64_support.diff 2004-07-21 07:52:26 UTC (rev 
1679)
@@ -16,9 +16,9 @@
 
 Not submitted to XFree86.
 
---- xc/config/cf/linux.cf~     2004-07-14 02:22:02.000000000 -0500
-+++ xc/config/cf/linux.cf      2004-07-14 02:23:09.000000000 -0500
-@@ -579,7 +579,7 @@
+--- xc/config/cf/linux.cf~     2004-07-21 01:16:52.000000000 -0500
++++ xc/config/cf/linux.cf      2004-07-21 01:17:03.000000000 -0500
+@@ -589,7 +589,7 @@
  #define MkdirHierCmd          mkdir -p
  
  #ifndef HaveLib64

Modified: trunk/debian/patches/800_gnu_config.diff
===================================================================
--- trunk/debian/patches/800_gnu_config.diff    2004-07-21 07:26:15 UTC (rev 
1678)
+++ trunk/debian/patches/800_gnu_config.diff    2004-07-21 07:52:26 UTC (rev 
1679)
@@ -1,68 +1,57 @@
 $Id$
 
-This patch by Marcus Brinkmann <[EMAIL PROTECTED]>.
+Add Debian-specific configuration to gnu.cf (mostly derived from linux.cf).
 
-Adds Debian specific configuration to gnu.cf (mostly from linux.cf).
+This patch by Marcus Brinkmann <[EMAIL PROTECTED]>, Robert Millan
+<[EMAIL PROTECTED]>, Daniel Stone <[EMAIL PROTECTED]>, and
+Branden Robinson.
 
-Original patch by Marcus Brinkmann <[EMAIL PROTECTED]>, updated by
-Robert Millan <[EMAIL PROTECTED]> and
-Daniel Stone <[EMAIL PROTECTED]>.
+XXX: Examine whether the following defs need to be restored to the file:
 
---- xc/config/cf/gnu.cf.orig   Fri Aug 24 04:16:54 2001
-+++ xc/config/cf/gnu.cf        Sun Apr 13 11:19:47 2003
-@@ -18,6 +18,75 @@
+#define PamLibraries           -lpam -rdynamic -ldl
+#ifndef HasKatmaiSupport
+# define HasKatmaiSupport      NO
+#endif
+
+--- xc/config/cf/gnu.cf~       2004-07-21 01:21:38.000000000 -0500
++++ xc/config/cf/gnu.cf        2004-07-21 01:29:06.000000000 -0500
+@@ -18,6 +18,154 @@
  #endif
  XCOMM operating system:  OSName 
(OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion)
  
++#ifndef DefaultGcc2OptimizeOpt
++# define DefaultGcc2OptimizeOpt       -O2
++#endif
++#define DefaultGcc2AxpOpt     DefaultGcc2OptimizeOpt GccAliasingArgs
++#define DefaultGcc2i386Opt    DefaultGcc2OptimizeOpt GccAliasingArgs
++#define DefaultGcc2PpcOpt     DefaultGcc2OptimizeOpt GccAliasingArgs
++#define SystemManDirectory    /usr/share/man
 +#define HasPam                        YES
-+#define PamLibraries          -lpam -rdynamic -ldl
-+#define XFree86Devel          YES
-+#define SystemManDirectory    /usr/share/man
 +#define HasTk                 YES
 +#define TkLibDir              /usr/lib
 +#define TkIncDir              /usr/include
-+#define TkLibName             tk8.3
++#define TkLibName             tk8.4
 +#define XF86SetupUsesStaticTk NO
 +#define HasTcl                        YES
 +#define TclLibDir             /usr/lib
 +#define TclIncDir             /usr/include
-+#define TclLibName            tcl8.3
++#define TclLibName            tcl8.4
 +#define XF86SetupUsesStaticTcl        NO
-+#define InstallXinitConfig    YES
-+#define InstallXdmConfig      YES
-+#define InstallFSConfig               YES
-+#define HasXdmAuth            YES
-+#define DebuggableLibraries   YES
-+#define ForceNormalLib                YES
-+#define BuildSpecsDocs                YES
-+#define SpecsDocDirs          CTEXT GL ICCCM X11 Xext Xv i18n xterm
-+#define BuildAllSpecsDocs     YES
-+#define HasLatex              YES
-+/* We build-dep on expat, fontconfig, freetype and Xft. */
-+#define BuildFreetype2Library NO
-+#define HasFreetype2          YES
-+#define Freetype2Dir          /usr
-+#define BuildExpatLibrary            NO
-+#define HasExpat                     YES
-+#define ExpatIncDirStandard          YES
-+#define BuildFontconfigLibrary       NO
-+#define HasFontconfig                        YES
-+#define UseFontconfig                        YES
-+#define FontconfigIncDir             /usr/include/fontconfig
-+#define BuildXftLibrary              NO
++/* un-comment this when it is un-broken */
++/* # define JoystickSupport YES */
 +#define XAppLoadDir           EtcX11Directory/app-defaults
 +#define XFileSearchPathDefault        
Concat4(EtcX11Directory/%L/%T/%N%C,%S:EtcX11Directory/%l/%T/%N%C,%S:EtcX11Directory/%T/%N%C,%S:EtcX11Directory/%L/%T/%N%S:EtcX11Directory/%l/%T/%N%S:EtcX11Directory/%T/%N%S):Concat4($(LIBDIR)/%L/%T/%N%C,%S:$(LIBDIR)/%l/%T/%N%C,%S:$(LIBDIR)/%T/%N%C,%S:$(LIBDIR)/%L/%T/%N%S:$(LIBDIR)/%l/%T/%N%S:$(LIBDIR)/%T/%N%S)
++#define InstallAppDefFiles    YES
 +/* the relative symlink created by this rule causes problems for us */
-+#if InstallAppDefFiles
-+# define InstallAppDefaultsLong(file,class)                           @@\
++#ifdef InstallAppDefFiles
++# if InstallAppDefFiles
++#  define InstallAppDefaultsLong(file,class)                          @@\
 +InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
-+#else
-+# define InstallAppDefaultsLong(file,class)                            @@\
++# else
++#  define InstallAppDefaultsLong(file,class)                          @@\
 
+InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
++# endif
 +#endif /* InstallAppDefFiles */
-+#ifndef BuilderEMailAddr
-+# define BuilderEMailAddr     "[EMAIL PROTECTED]"
-+#endif
 +#define SharedLibXdmGreet     NO
 +#define LinkGLToUsrInclude    NO
 +#define LinkGLToUsrLib                NO
@@ -70,19 +59,114 @@
 +#define HasZlib                       YES
 +#define SharedLibGlu          YES
 +#define NormalLibGlu          YES
-+#define BuildRman             NO
-+#define BuildHtmlManPages     NO
 +#define FSUseSyslog           YES
-+#ifndef HasKatmaiSupport
-+# define HasKatmaiSupport     NO
-+#endif
-+#define ProjectManSuffix             x
-+#define IconDir               Concat(ProjectRoot,/lib/X11/icons)
 +
++/*
++ *
++ *
++#define DebianMaintainer      YES
++ *
++ *
++ */
++
++#ifdef DebianMaintainer
++# ifndef XFree86CustomVersion
++#  define XFree86CustomVersion                "Debian"
++# endif
++# ifndef BuilderEMailAddr
++#  define BuilderEMailAddr            "debian-x@lists.debian.org"
++# endif
++# define XFree86Devel                 YES
++# define InstallXinitConfig           YES
++# define InstallXdmConfig             YES
++# define InstallFSConfig              YES
++# define DebuggableLibraries          YES
++# define ForceNormalLib                       YES
++# define BuildRman                    NO
++# define BuildHtmlManPages            NO
++/*
++ * Debian doesn't use certain parts of the tree when doing
++ * architecture-specific package builds.
++ */
++# ifndef BuildFonts
++#  define BuildFonts                  YES
++# endif
++# ifndef BuildSpecsDocs
++#  define BuildSpecsDocs              YES
++# endif
++# if BuildSpecsDocs
++#  define SpecsDocDirs                        CTEXT GL ICCCM X11 Xext Xv i18n 
xterm
++# endif
++/*
++ * The XFree86 Debian package uses a local patch that defines a
++ * PicLibraryTarget() Imake rule, instead of using upstream's method.
++ */
++# define StaticNeedsPicForShared      NO
++# define KernelVersionInBanner                YES
++# define ProjectManSuffix             x
 +/* The TT/Meltho fonts are all under non-free licenses. */
-+#  define BuildTrueTypeFonts           NO
-+#  define BuildBethMarduthoFonts       NO
++# define BuildTrueTypeFonts           NO
++# define BuildBethMarduthoFonts               NO
++/*
++ * The XFree86 Debian package build-depends on external Expat, Fontconfig,
++ * Freetype, Render, Xcursor, and Xft libraries.
++ */
++# define BuildExpatLibrary            NO
++# define HasExpat                     YES
++# define ExpatIncDirStandard          YES
++# define BuildFontconfigLibrary               NO
++# define HasFontconfig                        YES
++# define UseFontconfig                        YES
++# define FontconfigIncDir             /usr/include/fontconfig
++# define BuildFreetype2Library                NO
++# define HasFreetype2                 YES
++# define BuildRenderLibrary           NO
++# define HasRenderLibrary             YES
++# define BuildXcursorLibrary          NO
++# define HasXcursorLibrary            YES
++/* Xlib needs to know the available version of Xcursor. */
++# define SharedXcursorRev             1
++# define IconDir                      Concat(ProjectRoot,/lib/X11/icons)
++# define BuildXftLibrary              NO
++# define HasXftLibrary                        YES
 +
++# ifdef UseInstalled
++#   define RenderLibraryDir           /usr
++#   define XftLibraryDir              /usr
++#   define XcursorLibraryDir          /usr
++# else
++/* The XFree86 Debian package uses a special hack to find these libraries. */
++#   define RenderLibraryDir           $(TOP)/../../imports
++#   define XftLibraryDir              $(TOP)/../../imports
++#   define XcursorLibraryDir          $(TOP)/../../imports
++# endif
++
++/*
++ * We want to be sure that the normal XFree86 X server and the debugging X
++ * server use the same FreeType2 library.  We'd *like* it if we could
++ * achieve this by both packages dynamically linking against the system's
++ * FreeType2 library; however, the normal X server package
++ * (xserver-xfree86) *cannot* be built dynamically linked against the
++ * FreeType2 library when the module loader is enabled because of
++ * code/design issues.  Therefore, we encapsulate XFree86's internal "fork"
++ * of the FreeType2 library into *both* xserver-xfree86 and
++ * xserver-xfree86-dbg.  When it becomes possible to build the
++ * module-loading server against an external FreeType2 shared library, we
++ * can drop this define:
++ */
++#  define FontLibSharedFreeType               NO
++
++#  define HasLinuxInput                       NO
++#  define HasXdmAuth                  YES
++#  define HasLatex                    YES
++#  ifdef i386Architecture
++#   define HasX86Support              YES
++#   define HasMMXSupport              YES
++#   define Has3DNowSupport            YES
++#   define HasSSESupport              YES
++#  endif /* i386Architecture */
++#endif /* DebianMaintainer */
++
  #define GNUSourceDefines      -D_POSIX_C_SOURCE=199309L \
                                -D_POSIX_SOURCE -D_XOPEN_SOURCE \
                                -D_BSD_SOURCE -D_SVID_SOURCE

Modified: trunk/debian/patches/820_gnu-freebsd_config.diff
===================================================================
--- trunk/debian/patches/820_gnu-freebsd_config.diff    2004-07-21 07:26:15 UTC 
(rev 1678)
+++ trunk/debian/patches/820_gnu-freebsd_config.diff    2004-07-21 07:52:26 UTC 
(rev 1679)
@@ -1,19 +1,33 @@
 $Id$
 
-  adds GNU/FreeBSD build defines to xc/config/cf. they're basicaly
-  copied and adapted from the defines for GNU OS.
+Add GNU/FreeBSD build defines to xc/config/cf.  They're basically copied
+and adapted from the defines for GNU OS.
 
-  not for submitting upstream yet, the defines in linux.cf, gnu.cf
-  and gnu-freebsd.cf (specialy the last two) share a large amount
-  of common lines. i want to split these into a gnu-common.cf file
-  so gnu.cf and gnu-freebsd.cf don't get easily outdated.
+Should not be submitted upstream yet; the defines in linux.cf, gnu.cf and
+gnu-freebsd.cf (specialy the last two) share a large amount of common
+lines.  I want to split these into a gnu-common.cf file so gnu.cf and
+gnu-freebsd.cf don't get easily outdated.
 
-  also the debian-specific lines in linux.cf should be moved somewhere
-  else. i suggested using site.def. --Robert Millan <[EMAIL PROTECTED]>
+Also, the debian-specific lines in linux.cf should be moved somewhere
+else.  I suggested using site.def.
 
-diff -Nur xc/config/cf.old/Imake.cf xc/config/cf/Imake.cf
---- xc/config/cf.old/Imake.cf  2003-02-27 07:34:03.000000000 +0100
-+++ xc/config/cf/Imake.cf      2003-05-31 15:00:51.000000000 +0200
+ -- Robert Millan <[EMAIL PROTECTED]>
+
+This patch modified by Branden Robinson to:
+* update it with the current "Debian section" of linux.cf
+* fix ident strings to not lie about the name of the file
+* comment out the definition of "DebianMaintainer" just like linux.cf
+
+XXX: Examine whether the following defs need to be restored to the file:
+
+#define PamLibraries           -lpam -rdynamic -ldl
+#ifndef HasKatmaiSupport
+# define HasKatmaiSupport      NO
+#endif
+
+diff -urN xc/config/cf~/Imake.cf xc/config/cf/Imake.cf
+--- xc/config/cf~/Imake.cf     2004-07-21 00:30:36.000000000 -0500
++++ xc/config/cf/Imake.cf      2004-07-21 01:45:40.000000000 -0500
 @@ -213,6 +213,12 @@
  # endif
  #endif /* NetBSD */
@@ -27,20 +41,19 @@
  #ifdef __FreeBSD__
  # define MacroIncludeFile <FreeBSD.cf>
  # define MacroFile FreeBSD.cf
-diff -Nur xc/config/cf.old/gfbLib.rules xc/config/cf/gfbLib.rules
---- xc/config/cf.old/gfbLib.rules      1970-01-01 01:00:00.000000000 +0100
-+++ xc/config/cf/gfbLib.rules  2003-05-31 15:00:39.000000000 +0200
-@@ -0,0 +1,181 @@
+diff -urN xc/config/cf~/gfbLib.rules xc/config/cf/gfbLib.rules
+--- xc/config/cf~/gfbLib.rules 1969-12-31 19:00:00.000000000 -0500
++++ xc/config/cf/gfbLib.rules  2004-07-21 01:46:23.000000000 -0500
+@@ -0,0 +1,180 @@
 +/*
 + * GNU/Hurd shared library rules
 + *
-+ * $XFree86: xc/config/cf/gnuLib.rules,v 1.5 2002/01/16 00:39:59 keithp Exp $
++ * xc/config/cf/gfbLib.rules
 + */
 +
 +/*
 + * GNU/FreeBSD shared library rules
 + * Cloned from GNU (ELF) shared library rules
-+ *
 + */
 +
 +#ifndef HasSharedLibraries
@@ -212,13 +225,12 @@
 +#ifndef SharedLibraryDataTarget
 +#define SharedLibraryDataTarget(libname,rev,salist)
 +#endif /* SharedLibraryTarget */
-diff -Nur xc/config/cf.old/gfbLib.tmpl xc/config/cf/gfbLib.tmpl
---- xc/config/cf.old/gfbLib.tmpl       1970-01-01 01:00:00.000000000 +0100
-+++ xc/config/cf/gfbLib.tmpl   2003-05-31 15:00:39.000000000 +0200
-@@ -0,0 +1,29 @@
+diff -urN xc/config/cf~/gfbLib.tmpl xc/config/cf/gfbLib.tmpl
+--- xc/config/cf~/gfbLib.tmpl  1969-12-31 19:00:00.000000000 -0500
++++ xc/config/cf/gfbLib.tmpl   2004-07-21 01:46:25.000000000 -0500
+@@ -0,0 +1,28 @@
 +/*
 + * GNU/FreeBSD shared library template
-+ *
 + */
 +
 +#ifndef FixupLibReferences
@@ -245,11 +257,11 @@
 +#define SharedXtstReqs        $(LDPRELIB) $(XLIB)
 +#define SharedXieReqs $(LDPRELIB) $(XLIBONLY)
 +#define SharedSMReqs  $(LDPRELIB) $(ICELIB)
-diff -Nur xc/config/cf.old/gnu-freebsd.cf xc/config/cf/gnu-freebsd.cf
---- xc/config/cf.old/gnu-freebsd.cf    1970-01-01 01:00:00.000000000 +0100
-+++ xc/config/cf/gnu-freebsd.cf        2003-05-31 15:01:56.000000000 +0200
-@@ -0,0 +1,235 @@
-+XCOMM platform:  $XFree86: xc/config/cf/gnu.cf,v 1.11 2001/02/28 18:58:49 
dawes Exp $
+diff -urN xc/config/cf~/gnu-freebsd.cf xc/config/cf/gnu-freebsd.cf
+--- xc/config/cf~/gnu-freebsd.cf       1969-12-31 19:00:00.000000000 -0500
++++ xc/config/cf/gnu-freebsd.cf        2004-07-21 01:48:28.000000000 -0500
+@@ -0,0 +1,314 @@
++XCOMM platform:  xc/config/cf/gnu-freebsd.cf
 +
 +#ifndef OSName
 +#define OSName                        DefaultOSName
@@ -269,55 +281,39 @@
 +#endif
 +XCOMM operating system:  OSName 
(OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion)
 +
++#ifndef DefaultGcc2OptimizeOpt
++# define DefaultGcc2OptimizeOpt       -O2
++#endif
++#define DefaultGcc2AxpOpt     DefaultGcc2OptimizeOpt GccAliasingArgs
++#define DefaultGcc2i386Opt    DefaultGcc2OptimizeOpt GccAliasingArgs
++#define DefaultGcc2PpcOpt     DefaultGcc2OptimizeOpt GccAliasingArgs
++#define SystemManDirectory    /usr/share/man
 +#define HasPam                        YES
-+#define PamLibraries          -lpam -rdynamic -ldl
-+#define XFree86Devel          YES
-+#define SystemManDirectory    /usr/share/man
 +#define HasTk                 YES
 +#define TkLibDir              /usr/lib
 +#define TkIncDir              /usr/include
-+#define TkLibName             tk8.3
++#define TkLibName             tk8.4
 +#define XF86SetupUsesStaticTk NO
 +#define HasTcl                        YES
 +#define TclLibDir             /usr/lib
 +#define TclIncDir             /usr/include
-+#define TclLibName            tcl8.3
++#define TclLibName            tcl8.4
 +#define XF86SetupUsesStaticTcl        NO
-+#define InstallXinitConfig    YES
-+#define InstallXdmConfig      YES
-+#define InstallFSConfig               YES
-+#define HasXdmAuth            YES
-+#define DebuggableLibraries   YES
-+#define ForceNormalLib                YES
-+#define BuildSpecsDocs                YES
-+#define SpecsDocDirs          CTEXT GL ICCCM X11 Xext Xv i18n xterm
-+#define BuildAllSpecsDocs     YES
-+#define HasLatex              YES
-+/* We build-dep on expat, fontconfig, freetype and Xft. */
-+#define BuildFreetype2Library NO
-+#define HasFreetype2          YES
-+#define Freetype2Dir          /usr
-+#define BuildExpatLibrary            NO
-+#define HasExpat                     YES
-+#define ExpatIncDirStandard          YES
-+#define BuildFontconfigLibrary       NO
-+#define HasFontconfig                        YES
-+#define UseFontconfig                        YES
-+#define FontconfigIncDir             /usr/include/fontconfig
-+#define BuildXftLibrary              NO
++/* un-comment this when it is un-broken */
++/* # define JoystickSupport YES */
 +#define XAppLoadDir           EtcX11Directory/app-defaults
 +#define XFileSearchPathDefault        
Concat4(EtcX11Directory/%L/%T/%N%C,%S:EtcX11Directory/%l/%T/%N%C,%S:EtcX11Directory/%T/%N%C,%S:EtcX11Directory/%L/%T/%N%S:EtcX11Directory/%l/%T/%N%S:EtcX11Directory/%T/%N%S):Concat4($(LIBDIR)/%L/%T/%N%C,%S:$(LIBDIR)/%l/%T/%N%C,%S:$(LIBDIR)/%T/%N%C,%S:$(LIBDIR)/%L/%T/%N%S:$(LIBDIR)/%l/%T/%N%S:$(LIBDIR)/%T/%N%S)
++#define InstallAppDefFiles    YES
 +/* the relative symlink created by this rule causes problems for us */
-+#if InstallAppDefFiles
-+# define InstallAppDefaultsLong(file,class)                           @@\
++#ifdef InstallAppDefFiles
++# if InstallAppDefFiles
++#  define InstallAppDefaultsLong(file,class)                          @@\
 +InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
-+#else
-+# define InstallAppDefaultsLong(file,class)                            @@\
++# else
++#  define InstallAppDefaultsLong(file,class)                          @@\
 
+InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
++# endif
 +#endif /* InstallAppDefFiles */
-+#ifndef BuilderEMailAddr
-+# define BuilderEMailAddr     "[EMAIL PROTECTED]"
-+#endif
 +#define SharedLibXdmGreet     NO
 +#define LinkGLToUsrInclude    NO
 +#define LinkGLToUsrLib                NO
@@ -325,19 +321,114 @@
 +#define HasZlib                       YES
 +#define SharedLibGlu          YES
 +#define NormalLibGlu          YES
-+#define BuildRman             NO
-+#define BuildHtmlManPages     NO
 +#define FSUseSyslog           YES
-+#ifndef HasKatmaiSupport
-+# define HasKatmaiSupport     NO
-+#endif
-+#define ProjectManSuffix             x
-+#define IconDir               Concat(ProjectRoot,/lib/X11/icons)
 +
++/*
++ *
++ *
++#define DebianMaintainer      YES
++ *
++ *
++ */
++
++#ifdef DebianMaintainer
++# ifndef XFree86CustomVersion
++#  define XFree86CustomVersion                "Debian"
++# endif
++# ifndef BuilderEMailAddr
++#  define BuilderEMailAddr            "debian-x@lists.debian.org"
++# endif
++# define XFree86Devel                 YES
++# define InstallXinitConfig           YES
++# define InstallXdmConfig             YES
++# define InstallFSConfig              YES
++# define DebuggableLibraries          YES
++# define ForceNormalLib                       YES
++# define BuildRman                    NO
++# define BuildHtmlManPages            NO
++/*
++ * Debian doesn't use certain parts of the tree when doing
++ * architecture-specific package builds.
++ */
++# ifndef BuildFonts
++#  define BuildFonts                  YES
++# endif
++# ifndef BuildSpecsDocs
++#  define BuildSpecsDocs              YES
++# endif
++# if BuildSpecsDocs
++#  define SpecsDocDirs                        CTEXT GL ICCCM X11 Xext Xv i18n 
xterm
++# endif
++/*
++ * The XFree86 Debian package uses a local patch that defines a
++ * PicLibraryTarget() Imake rule, instead of using upstream's method.
++ */
++# define StaticNeedsPicForShared      NO
++# define KernelVersionInBanner                YES
++# define ProjectManSuffix             x
 +/* The TT/Meltho fonts are all under non-free licenses. */
-+#  define BuildTrueTypeFonts           NO
-+#  define BuildBethMarduthoFonts       NO
++# define BuildTrueTypeFonts           NO
++# define BuildBethMarduthoFonts               NO
++/*
++ * The XFree86 Debian package build-depends on external Expat, Fontconfig,
++ * Freetype, Render, Xcursor, and Xft libraries.
++ */
++# define BuildExpatLibrary            NO
++# define HasExpat                     YES
++# define ExpatIncDirStandard          YES
++# define BuildFontconfigLibrary               NO
++# define HasFontconfig                        YES
++# define UseFontconfig                        YES
++# define FontconfigIncDir             /usr/include/fontconfig
++# define BuildFreetype2Library                NO
++# define HasFreetype2                 YES
++# define BuildRenderLibrary           NO
++# define HasRenderLibrary             YES
++# define BuildXcursorLibrary          NO
++# define HasXcursorLibrary            YES
++/* Xlib needs to know the available version of Xcursor. */
++# define SharedXcursorRev             1
++# define IconDir                      Concat(ProjectRoot,/lib/X11/icons)
++# define BuildXftLibrary              NO
++# define HasXftLibrary                        YES
 +
++# ifdef UseInstalled
++#   define RenderLibraryDir           /usr
++#   define XftLibraryDir              /usr
++#   define XcursorLibraryDir          /usr
++# else
++/* The XFree86 Debian package uses a special hack to find these libraries. */
++#   define RenderLibraryDir           $(TOP)/../../imports
++#   define XftLibraryDir              $(TOP)/../../imports
++#   define XcursorLibraryDir          $(TOP)/../../imports
++# endif
++
++/*
++ * We want to be sure that the normal XFree86 X server and the debugging X
++ * server use the same FreeType2 library.  We'd *like* it if we could
++ * achieve this by both packages dynamically linking against the system's
++ * FreeType2 library; however, the normal X server package
++ * (xserver-xfree86) *cannot* be built dynamically linked against the
++ * FreeType2 library when the module loader is enabled because of
++ * code/design issues.  Therefore, we encapsulate XFree86's internal "fork"
++ * of the FreeType2 library into *both* xserver-xfree86 and
++ * xserver-xfree86-dbg.  When it becomes possible to build the
++ * module-loading server against an external FreeType2 shared library, we
++ * can drop this define:
++ */
++#  define FontLibSharedFreeType               NO
++
++#  define HasLinuxInput                       NO
++#  define HasXdmAuth                  YES
++#  define HasLatex                    YES
++#  ifdef i386Architecture
++#   define HasX86Support              YES
++#   define HasMMXSupport              YES
++#   define Has3DNowSupport            YES
++#   define HasSSESupport              YES
++#  endif /* i386Architecture */
++#endif /* DebianMaintainer */
++
 +#define GNUSourceDefines      -D_POSIX_C_SOURCE=199309L \
 +                              -D_POSIX_SOURCE -D_XOPEN_SOURCE \
 +                              -D_BSD_SOURCE -D_SVID_SOURCE

Modified: trunk/debian/patches/842_netbsd_NetBSD.cf_fixes.diff
===================================================================
--- trunk/debian/patches/842_netbsd_NetBSD.cf_fixes.diff        2004-07-21 
07:26:15 UTC (rev 1678)
+++ trunk/debian/patches/842_netbsd_NetBSD.cf_fixes.diff        2004-07-21 
07:52:26 UTC (rev 1679)
@@ -7,9 +7,9 @@
 
 Originally written by Joel Baker <[EMAIL PROTECTED]>.
 
---- xc/config/cf/NetBSD.cf~    2002-10-16 00:52:50.000000000 -0500
-+++ xc/config/cf/NetBSD.cf     2002-10-16 01:00:33.000000000 -0500
-@@ -18,12 +18,109 @@
+--- xc/config/cf/NetBSD.cf~    2004-07-21 02:11:39.000000000 -0500
++++ xc/config/cf/NetBSD.cf     2004-07-21 02:12:30.000000000 -0500
+@@ -18,12 +18,185 @@
  #define OSTeenyVersion                DefaultOSTeenyVersion
  #endif
  
@@ -32,11 +32,11 @@
  #ifndef OSVendor
 -#define       OSVendor                The NetBSD Foundation, Inc.
 +#define OSVendor              The NetBSD Foundation, Inc.
- #endif
++#endif
 +
 +#ifndef NetBSDBinUtilsMajorVersion
 +# define NetBSDBinUtilsMajorVersion   DefaultNetBSDBinUtilsMajorVersion
-+#endif
+ #endif
 +
  XCOMM operating system:  OSName 
(OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion)
  
@@ -46,32 +46,36 @@
 +# ifndef DefaultGcc2OptimizeOpt
 +#  define DefaultGcc2OptimizeOpt      -O2
 +# endif
-+# define DefaultGcc2AxpOpt    DefaultGcc2OptimizeOpt
-+# define DefaultGcc2i386Opt   DefaultGcc2OptimizeOpt
-+# define DefaultGcc2PpcOpt    DefaultGcc2OptimizeOpt
++# define DefaultGcc2AxpOpt    DefaultGcc2OptimizeOpt GccAliasingArgs
++# define DefaultGcc2i386Opt   DefaultGcc2OptimizeOpt GccAliasingArgs
++# define DefaultGcc2PpcOpt    DefaultGcc2OptimizeOpt GccAliasingArgs
 +# define SystemManDirectory   /usr/share/man
 +# define HasPam                       YES
 +# define HasTk                        YES
 +# define TkLibDir             /usr/lib
 +# define TkIncDir             /usr/include
-+# define TkLibName            tk8.3
++# define TkLibName            tk8.4
 +# define XF86SetupUsesStaticTk        NO
 +# define HasTcl                       YES
 +# define TclLibDir            /usr/lib
 +# define TclIncDir            /usr/include
-+# define TclLibName           tcl8.3
++# define TclLibName           tcl8.4
 +# define XF86SetupUsesStaticTcl       NO
++/* un-comment this when it is un-broken */
++/* # define JoystickSupport YES */
 +# define XAppLoadDir          EtcX11Directory/app-defaults
 +# define XFileSearchPathDefault       
Concat4(EtcX11Directory/%L/%T/%N%C,%S:EtcX11Directory/%l/%T/%N%C,%S:EtcX11Directory/%T/%N%C,%S:EtcX11Directory/%L/%T/%N%S:EtcX11Directory/%l/%T/%N%S:EtcX11Directory/%T/%N%S):Concat4($(LIBDIR)/%L/%T/%N%C,%S:$(LIBDIR)/%l/%T/%N%C,%S:$(LIBDIR)/%T/%N%C,%S:$(LIBDIR)/%L/%T/%N%S:$(LIBDIR)/%l/%T/%N%S:$(LIBDIR)/%T/%N%S)
++# define InstallAppDefFiles   YES
 +/* the relative symlink created by this rule causes problems for us */
-+# if InstallAppDefFiles
-+#  define InstallAppDefaultsLong(file,class)                          @@\
++# ifdef InstallAppDefFiles
++#  if InstallAppDefFiles
++#   define InstallAppDefaultsLong(file,class)                         @@\
 +InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
-+# else
-+#  define InstallAppDefaultsLong(file,class)                          @@\
++#  else
++#   define InstallAppDefaultsLong(file,class)                         @@\
 
+InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
++#  endif
 +# endif /* InstallAppDefFiles */
-+
 +# define SharedLibXdmGreet    NO
 +# define LinkGLToUsrInclude   NO
 +# define LinkGLToUsrLib               NO
@@ -94,33 +98,105 @@
 +#    define XFree86CustomVersion      "Debian"
 +#  endif
 +#  ifndef BuilderEMailAddr
-+#    define BuilderEMailAddr  "debian-x@lists.debian.org"
++#    define BuilderEMailAddr          "debian-x@lists.debian.org"
 +#  endif
-+#  define XFree86Devel                YES
-+#  define BuildAllSpecsDocs   YES
-+#  define InstallXinitConfig  YES
-+#  define InstallXdmConfig    YES
-+#  define InstallFSConfig     YES
-+#  define DebuggableLibraries YES
-+#  define ForceNormalLib      YES
-+#  define BuildSpecsDocs      YES
-+#  define SpecsDocDirs                CTEXT GL ICCCM X11 Xext Xv i18n xterm
-+#  define BuildRman           NO
-+#  define BuildHtmlManPages   NO
-+#  define ProjectManSuffix    x
++#  define XFree86Devel                        YES
++#  define InstallXinitConfig          YES
++#  define InstallXdmConfig            YES
++#  define InstallFSConfig             YES
++#  define DebuggableLibraries         YES
++#  define ForceNormalLib              YES
++#  define BuildRman                   NO
++#  define BuildHtmlManPages           NO
++/*
++ * Debian doesn't use certain parts of the tree when doing
++ * architecture-specific package builds.
++ */
++#  ifndef BuildFonts
++#   define BuildFonts                 YES
++#  endif
++#  ifndef BuildSpecsDocs
++#   define BuildSpecsDocs             YES
++#  endif
++#  if BuildSpecsDocs
++#   define SpecsDocDirs                       CTEXT GL ICCCM X11 Xext Xv i18n 
xterm
++#  endif
++/*
++ * The XFree86 Debian package uses a local patch that defines a
++ * PicLibraryTarget() Imake rule, instead of using upstream's method.
++ */
++#  define StaticNeedsPicForShared     NO
++#  define KernelVersionInBanner               YES
++#  define ProjectManSuffix            x
++/* The TT/Meltho fonts are all under non-free licenses. */
++#  define BuildTrueTypeFonts          NO
++#  define BuildBethMarduthoFonts      NO
++/*
++ * The XFree86 Debian package build-depends on external Expat, Fontconfig,
++ * Freetype, Render, Xcursor, and Xft libraries.
++ */
++#  define BuildExpatLibrary           NO
++#  define HasExpat                    YES
++#  define ExpatIncDirStandard         YES
++#  define BuildFontconfigLibrary      NO
++#  define HasFontconfig                       YES
++#  define UseFontconfig                       YES
++#  define FontconfigIncDir            /usr/include/fontconfig
++#  define BuildFreetype2Library               NO
++#  define HasFreetype2                        YES
++#  define BuildRenderLibrary          NO
++#  define HasRenderLibrary            YES
++#  define BuildXcursorLibrary         NO
++#  define HasXcursorLibrary           YES
++/* Xlib needs to know the available version of Xcursor. */
++#  define SharedXcursorRev            1
++#  define IconDir                     Concat(ProjectRoot,/lib/X11/icons)
++#  define BuildXftLibrary             NO
++#  define HasXftLibrary                       YES
 +
-+/* we build-depend on libfreetype6-dev (FreeType 2.x) */
-+#  define BuildFreetype2Library       NO
-+#  define HasFreetype2                YES
-+#  define HasXdmAuth          YES
-+#  define HasLatex            YES
++#  ifdef UseInstalled
++#    define RenderLibraryDir          /usr
++#    define XftLibraryDir             /usr
++#    define XcursorLibraryDir         /usr
++#  else
++/* The XFree86 Debian package uses a special hack to find these libraries. */
++#    define RenderLibraryDir          $(TOP)/../../imports
++#    define XftLibraryDir             $(TOP)/../../imports
++#    define XcursorLibraryDir         $(TOP)/../../imports
++#  endif
++
++/*
++ * We want to be sure that the normal XFree86 X server and the debugging X
++ * server use the same FreeType2 library.  We'd *like* it if we could
++ * achieve this by both packages dynamically linking against the system's
++ * FreeType2 library; however, the normal X server package
++ * (xserver-xfree86) *cannot* be built dynamically linked against the
++ * FreeType2 library when the module loader is enabled because of
++ * code/design issues.  Therefore, we encapsulate XFree86's internal "fork"
++ * of the FreeType2 library into *both* xserver-xfree86 and
++ * xserver-xfree86-dbg.  When it becomes possible to build the
++ * module-loading server against an external FreeType2 shared library, we
++ * can drop this define:
++ */
++#   define FontLibSharedFreeType      NO
++
++#   define HasLinuxInput              YES
++#   define HasXdmAuth                 YES
++#   define HasLatex                   YES
++/* Enable extended instruction set support. */
++#   ifdef i386Architecture
++#    define HasX86Support             YES
++#    define HasMMXSupport             YES
++#    define Has3DNowSupport           YES
++#    define HasSSESupport             YES
++#   endif /* i386Architecture */
 +# endif /* DebianMaintainer */
 +#endif /* NetBSDDebian */
 +
  /*
   * C library features
   */
-@@ -87,8 +184,12 @@
+@@ -87,8 +260,12 @@
  
  #define HasUsableFileMmap     YES
  
@@ -134,7 +210,7 @@
  
  #define HasShadowPasswd               NO
  
-@@ -194,6 +296,8 @@
+@@ -194,6 +371,8 @@
  
  #if UseElfFormat
  #define DlLibrary             -rdynamic /* no -ldl yet */
@@ -143,7 +219,7 @@
  #else
  #define DlLibrary             /**/
  #endif
-@@ -318,7 +422,11 @@
+@@ -318,7 +497,11 @@
  /* NetBSD doesn't have gperf in the base install */
  #define DontRebuildGperfOutput        YES
  
@@ -156,7 +232,7 @@
   * NetBSD doesn't have perl in default system
   * you may override this in host.def if you installed perl from the packages
   */
-@@ -337,7 +445,13 @@
+@@ -337,7 +520,13 @@
  /*
   * Make & install Features
   */
@@ -170,7 +246,7 @@
  #define CompressAllFonts      YES
  #define GzipFontCompression   YES
  #define DefaultUserPath               
/bin:/usr/bin:/usr/pkg/bin:/usr/local/bin:$(BINDIR)
-@@ -441,6 +555,8 @@
+@@ -441,6 +630,8 @@
                                                                        @@\
  .EXEC:
  
@@ -179,7 +255,7 @@
  /*
   * Man pages need to be formatted when installed, so override the default
   * imake rules.
-@@ -532,6 +648,8 @@
+@@ -532,6 +723,8 @@
                                                                        @@\
  InstallManPageAliasesBase(file,destdir,aliases)
  

Modified: trunk/debian/patches/900_debian_config.diff
===================================================================
--- trunk/debian/patches/900_debian_config.diff 2004-07-21 07:26:15 UTC (rev 
1678)
+++ trunk/debian/patches/900_debian_config.diff 2004-07-21 07:52:26 UTC (rev 
1679)
@@ -1,5 +1,57 @@
 $Id$
 
+Enable various official-Debian-package-specific settings.
+
+This patch by Branden Robinson.
+
+--- xc/config/cf/NetBSD.cf~    2004-07-21 02:08:24.000000000 -0500
++++ xc/config/cf/NetBSD.cf     2004-07-21 02:08:36.000000000 -0500
+@@ -89,13 +89,7 @@
+ # define NormalLibGlu         YES
+ # define FSUseSyslog          YES
+ 
+-/*
+- *
+- *
+ # define DebianMaintainer     YES
+- *
+- *
+- */
+ 
+ # ifdef DebianMaintainer
+ #  ifndef XFree86CustomVersion
+--- xc/config/cf/gnu.cf~       2004-07-21 01:41:03.000000000 -0500
++++ xc/config/cf/gnu.cf        2004-07-21 01:41:50.000000000 -0500
+@@ -60,13 +60,7 @@
+ #define NormalLibGlu          YES
+ #define FSUseSyslog           YES
+ 
+-/*
+- *
+- *
+ #define DebianMaintainer      YES
+- *
+- *
+- */
+ 
+ #ifdef DebianMaintainer
+ # ifndef XFree86CustomVersion
+--- xc/config/cf/gnu-freebsd.cf~       2004-07-21 01:53:20.000000000 -0500
++++ xc/config/cf/gnu-freebsd.cf        2004-07-21 01:53:32.000000000 -0500
+@@ -60,13 +60,7 @@
+ #define NormalLibGlu          YES
+ #define FSUseSyslog           YES
+ 
+-/*
+- *
+- *
+ #define DebianMaintainer      YES
+- *
+- *
+- */
+ 
+ #ifdef DebianMaintainer
+ # ifndef XFree86CustomVersion
 --- xc/config/cf/linux.cf~     2003-09-18 12:11:37.000000000 -0500
 +++ xc/config/cf/linux.cf      2003-09-18 12:11:43.000000000 -0500
 @@ -135,13 +135,7 @@

Deleted: trunk/debian/patches/914_debian_donot_build_fonts
===================================================================
--- trunk/debian/patches/914_debian_donot_build_fonts   2004-07-21 07:26:15 UTC 
(rev 1678)
+++ trunk/debian/patches/914_debian_donot_build_fonts   2004-07-21 07:52:26 UTC 
(rev 1679)
@@ -1,23 +0,0 @@
-diff -Nur xc.orig/Makefile xc/Makefile
---- xc.orig/Makefile   2003-02-27 06:33:58.000000000 +0000
-+++ xc/Makefile        2004-04-27 06:12:39.000000000 +0000
-@@ -63,14 +63,13 @@
-       @if [ ! -f $(IRULESRC)/host.def ]; then \
-           if [ ! -f $(TOP)/lib/Xt/Imakefile ]; then \
-               echo "#define BuildServersOnly YES" > $(IRULESRC)/host.def; \
--          else \
--              if [ ! -f $(TOP)/fonts/Imakefile ]; then \
--                  echo "#define BuildFonts NO" > $(IRULESRC)/host.def; \
--              else \
--                  echo "" > $(IRULESRC)/host.def; \
--              fi; \
-           fi; \
-       fi
-+      if [ ! -f $(TOP)/fonts/Imakefile ]; then \
-+          echo "#define BuildFonts NO" >> $(IRULESRC)/host.def; \
-+      else \
-+          echo "" >> $(IRULESRC)/host.def; \
-+      fi
-       @if [ ! -f $(IRULESRC)/version.def ]; then \
-           echo "" > $(IRULESRC)/version.def; \
-       fi

Deleted: trunk/debian/patches/915_debian_donot_build_specs
===================================================================
--- trunk/debian/patches/915_debian_donot_build_specs   2004-07-21 07:26:15 UTC 
(rev 1678)
+++ trunk/debian/patches/915_debian_donot_build_specs   2004-07-21 07:52:26 UTC 
(rev 1679)
@@ -1,26 +0,0 @@
-diff -Naurd xc.orig/Makefile xc/Makefile
---- xc.orig/Makefile   2004-07-12 21:19:21.000000000 +0000
-+++ xc/Makefile        2004-07-12 21:25:14.000000000 +0000
-@@ -70,6 +70,11 @@
-       else \
-           echo "" >> $(IRULESRC)/host.def; \
-       fi
-+      if [ ! -f $(TOP)/doc/specs/Imakefile ]; then \
-+          echo "#define BuildSpecsDocs NO" >> $(IRULESRC)/host.def; \
-+      else \
-+          echo "#define BuildSpecsDocs YES" >> $(IRULESRC)/host.def; \
-+      fi
-       @if [ ! -f $(IRULESRC)/version.def ]; then \
-           echo "" > $(IRULESRC)/version.def; \
-       fi
-diff -Naurd xc.orig/config/cf/linux.cf xc/config/cf/linux.cf
---- xc.orig/config/cf/linux.cf 2004-07-12 21:19:20.000000000 +0000
-+++ xc/config/cf/linux.cf      2004-07-12 21:25:55.000000000 +0000
-@@ -151,7 +151,6 @@
- #  define InstallFSConfig             YES
- #  define DebuggableLibraries         YES
- #  define ForceNormalLib              YES
--#  define BuildSpecsDocs              YES
- #  define SpecsDocDirs                        CTEXT GL ICCCM X11 Xext Xv i18n 
xterm
- #  define BuildRman                   NO
- #  define BuildHtmlManPages           NO

Modified: trunk/debian/rules
===================================================================
--- trunk/debian/rules  2004-07-21 07:26:15 UTC (rev 1678)
+++ trunk/debian/rules  2004-07-21 07:52:26 UTC (rev 1679)
@@ -29,8 +29,6 @@
   include $(SCRIPT_DIR)/dpkg-arch.mk
 endif
 
-# oh my God, this is a gross hack
-ELSE:=else
 M4:=m4
 
 # This is a horrendous kludge to ensure that some scripts we need are 
executable.
@@ -66,6 +64,9 @@
 
 # Set some Imake variables for the regular and server-debugging builds.
 TIMESTAMP:=$(shell env TZ=UTC date +%Y%m%d%H%M%S)
+# NOTE: IMAKE_DEFINES is used later to control whether the specs docs and fonts
+# are built (they are not built for architecture-dependent-packages-only
+# builds).
 IMAKE_DEFINES:=-DXFree86CustomVersion='\"Debian $(SOURCE_VERSION) $(TIMESTAMP) 
$(BUILDER)\"'
 # XXX: replace -DDefaultGcc2OptimizeOpt=-O0 with $(DEBUGFLAGS) when the time
 # comes (see above)
@@ -116,10 +117,9 @@
 # over, you would have to remove the stamp manually.  Now, just do
 # 'debian/rules <target> <target> ... FORCE=1', and the stamp files
 # that match the given targets will be removed automagically.
-stampdir_targets=build install binary-arch binary-indep
-stampdir_targets+=source.make patchapply
-stampdir_targets+=source.build source.unpack fix.source.patch source.patch
-stampdir_targets+=unfix.source.patch
+stampdir_targets=genscripts configure patch-audit check-manifest
+stampdir_targets+=build install binary-arch binary-indep
+stampdir_targets+=build-server install-server binary-server
 ifdef FORCE
  DUMMY:=$(shell rm -f $(patsubst %,$(STAMP_DIR)/%,$(filter 
$(stampdir_targets),$(MAKECMDGOALS))))
 endif
@@ -138,10 +138,10 @@
        dh_testdir
        rm -rf $(STAMP_DIR) $(SOURCE_DIR)
        perl $(SCRIPT_DIR)/dbs_split clean
-       rm -rf imports debian/local/xlibmesa-drm-source/modules debian/build-all
+       rm -rf imports debian/local/xlibmesa-drm-source/modules
        dh_clean debian/local/xserver-wrapper debian/local/FAQ.gz \
                 debian/local/xterm.faq.gz debian/shlibs.local \
-                debian/MANIFEST.$(ARCH) debian/MANIFEST.$(ARCH).new
+                debian/MANIFEST.$(ARCH) debian/MANIFEST.$(ARCH).new
 
 # All 'important' targets have 2 lines.  The one that is run by
 # dpkg-buildpackage or the user, and the one that does the actual work.  This
@@ -168,10 +168,10 @@
        done
        # generate xserver-xfree86-dbg maintainer scripts from the scripts for 
xserver-xfree86
        for FILE in debian/xserver-xfree86.config \
-                   debian/xserver-xfree86.postinst \
-                   debian/xserver-xfree86.postrm \
-                   debian/xserver-xfree86.preinst \
-                   debian/xserver-xfree86.prerm; do \
+                   debian/xserver-xfree86.postinst \
+                   debian/xserver-xfree86.postrm \
+                   debian/xserver-xfree86.preinst \
+                   debian/xserver-xfree86.prerm; do \
          if [ -e "$$FILE" ]; then \
            MAINTSCRIPT=$$(echo $$FILE | sed 's/xserver-xfree86/&-dbg/'); \
            sed -e 's/^# Debian xserver-xfree86/&-dbg/' \
@@ -189,8 +189,8 @@
 debian/shlibs.local:
        cat debian/*.shlibs > $@
 
-configure: $(STAMP_DIR)/stamp-configure
-$(STAMP_DIR)/stamp-configure: $(patched)
+configure: $(STAMP_DIR)/configure
+$(STAMP_DIR)/configure: $(patched)
        dh_testdir
 
 # I am more anal than the dbs package maintainer about diffs, it seems.
@@ -202,15 +202,17 @@
        fi
        touch $@
 
+build:
+       @echo "This target does nothing.  Please specify \"build-arch-only\" or 
\"build-all\""
+       @echo "instead.  Note that it is also acceptable to use the 
\"binary-arch\" or"
+       @echo "\"binary-indep\" targets."
+       @echo
+       @echo "If you are using dpkg-buildpackage, you can safely ignore this 
message."
+
 # DO NOT CHANGE THIS RULE WITHOUT CHECKING FOR SYNCHRONICITY WITH THE 
build-server RULE BELOW
-real-build: $(STAMP_DIR)/stamp-build
-$(STAMP_DIR)/stamp-build: $(STAMP_DIR)/patch-audit $(STAMP_DIR)/genscripts
+real-build: $(STAMP_DIR)/build
+$(STAMP_DIR)/build: $(STAMP_DIR)/patch-audit $(STAMP_DIR)/genscripts
        dh_testdir
-       # check if we need to build fonts
-       if [ ! -e debian/build-all ]; then \
-               mv -f $(SOURCE_TREE)/fonts/Imakefile 
$(SOURCE_TREE)/fonts/Imakefile.removed; \
-               mv -f $(SOURCE_TREE)/doc/specs/Imakefile 
$(SOURCE_TREE)/doc/specs/Imakefile.removed; \
-       fi
        # Symlink some of the libraries on which we build-depend into
        # imports/{lib,include} so we don't have to pull in -L/usr/include and
        # other, similarly ugly, stuff (including, but not limited to,
@@ -246,35 +248,21 @@
  ifndef NOT_BUILDING_XFREE86_X_SERVER
        $(MAKE) -C $(SOURCE_TREE)-xserver-xfree86-dbg WORLDOPTS="" 
IMAKE_DEFINES="$(SERVERDEBUG_IMAKE_DEFINES)" World
  endif
-       if [ ! -e debian/build-all ]; then \
-               cd $(SOURCE_TREE)/fonts/util && \
-               ../../config/imake/imake -I../../config/cf && \
-               $(MAKE) IMAKE_DEFINES="$(IMAKE_DEFINES)"; \
-       fi
 else
        # skipping build rule because test_rules was defined
 endif
        touch $@
 
-# At present we don't support invoking the build in different ways based on
-# whether or not we'll actually need to ship binary-indep packages.
-#
-# When we do, we'll probably add "-DBuildAllSpecsDocs=NO -DBuildFonts=NO" to
-# $(IMAKE_DEFINES).
+# When creating archiciture-dependent packages only, turn off the building of
+# the specs docs and fonts.  There are also Imake symbols called BuildMiscDocs
+# and InstallHardcopyDocs, but they are not defined by default.
+build-arch-only: IMAKE_DEFINES+= -DBuildSpecsDocs=NO -DBuildFonts=NO
+build-arch-only: real-build
+build-all: real-build
 
-build:
-       # do nothing. build-indep and build-arch will be called by binary-* 
targets.
-       # Policy allows us to do so.
-
-build-all:
-       touch debian/build-all
-
-build-arch: real-build
-build-indep: build-all real-build
-
 # DO NOT CHANGE THIS RULE WITHOUT CHECKING FOR SYNCHRONICITY WITH THE 
install-server RULE BELOW
 install: $(STAMP_DIR)/install
-$(STAMP_DIR)/install: $(STAMP_DIR)/stamp-build
+$(STAMP_DIR)/install: $(STAMP_DIR)/build
        dh_testdir
        dh_testroot
 ifndef test_rules
@@ -288,24 +276,18 @@
          install -m 755 debian/local/update-fonts-$$FOO 
$(DEBTREEDIR)/usr/sbin; \
          install -m 644 debian/local/update-fonts-$$FOO.8 
$(DEBTREEDIR)/usr/share/man/man8; \
        done
-       if [ ! -e debian/build-all ]; then \
-               install -m 755 $(SOURCE_TREE)/fonts/util/ucs2any.pl 
$(DEBTREEDIR)/usr/X11R6/bin/ucs2any && \
-               install -m 644 $(SOURCE_TREE)/fonts/util/ucs2any._man 
$(DEBTREEDIR)/usr/X11R6/man/man1/ucs2any.1x && \
-               install -m 755 $(SOURCE_TREE)/fonts/util/bdftruncate.pl 
$(DEBTREEDIR)/usr/X11R6/bin/bdftruncate && \
-               install -m 644 $(SOURCE_TREE)/fonts/util/bdftruncate._man 
$(DEBTREEDIR)/usr/X11R6/man/man1/bdftruncate.1x; \
-       fi
  ifdef NOT_BUILDING_XFREE86_X_SERVER
        # these files need to be installed with the upstream Imakefiles
        install -m 644 $(SOURCE_TREE)/programs/Xserver/hw/xfree86/doc/README \
-                      
$(SOURCE_TREE)/programs/Xserver/hw/xfree86/doc/README.fonts \
-                      debian/tmp/usr/X11R6/lib/X11/doc
+                      
$(SOURCE_TREE)/programs/Xserver/hw/xfree86/doc/README.fonts \
+                      debian/tmp/usr/X11R6/lib/X11/doc
  else
        # rename the XF86Config manpage to XF86Config-4
        mv $(DEBTREEDIR)/usr/X11R6/man/man5/XF86Config.5x \
           $(DEBTREEDIR)/usr/X11R6/man/man5/XF86Config-4.5x
        # copy the static, debuggable XFree86 server
        install -m 755 
$(SOURCE_TREE)-xserver-xfree86-dbg/programs/Xserver/XFree86 \
-                      debian/tmp/usr/X11R6/bin/XFree86-debug
+                      debian/tmp/usr/X11R6/bin/XFree86-debug
        mkdir -p $(DEBTREEDIR)/etc/X11/cursors
        install -m 644 debian/local/cursors/*.theme 
$(DEBTREEDIR)/etc/X11/cursors
  endif
@@ -346,16 +328,24 @@
        install -m 644 debian/local/xfs.options.5 
$(DEBTREEDIR)/usr/share/man/man5
        install -m 755 debian/local/xvfb-run $(DEBTREEDIR)/usr/bin
        install -m 644 debian/local/xvfb-run.1 $(DEBTREEDIR)/usr/share/man/man1
+else
+       # skipping install rule because test_rules was defined
+endif
+       touch $@
+
+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
-       # create proper MANIFEST from our well known sources
-       if [ ! -e debian/build-all ]; then \
-         sort -u debian/MANIFEST.$(ARCH).in > debian/MANIFEST.$(ARCH); \
-       $(ELSE) \
+       (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 \
+         sort -u debian/MANIFEST.$(ARCH).in >debian/MANIFEST.$(ARCH); \
+       else \
          if [ -e debian/MANIFEST.$(ARCH).all ]; then \
-           sort -u debian/MANIFEST.$(ARCH).in debian/MANIFEST.$(ARCH).all > 
debian/MANIFEST.$(ARCH); \
-         $(ELSE) \
-           sort -u debian/MANIFEST.$(ARCH).in debian/MANIFEST.all > 
debian/MANIFEST.$(ARCH); \
+           sort -u debian/MANIFEST.$(ARCH).in debian/MANIFEST.$(ARCH).all 
>debian/MANIFEST.$(ARCH); \
+         else \
+           sort -u debian/MANIFEST.$(ARCH).in debian/MANIFEST.all 
>debian/MANIFEST.$(ARCH); \
          fi; \
        fi
        # confirm that the installed file list has not changed
@@ -368,7 +358,7 @@
                   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) file.' >&2; \
-                $(ELSE) \
+                else \
                   echo 'MANIFEST check failed; please see debian/README' >&2; \
                   exit 1; \
                 fi; \
@@ -378,15 +368,17 @@
                 ;; \
            esac; \
          fi; \
-       fi;
-else
-       # skipping install rule because test_rules was defined
-endif
+       fi
        touch $@
 
-binary-indep: $(STAMP_DIR)/binary-indep
+# See the build-arch-only target above.
+check-manifest-arch: IMAKE_DEFINES+= -DBuildSpecsDocs=NO -DBuildFonts=NO
+check-manifest-arch: check-manifest
+check-manifest-indep: check-manifest
+
+binary-indep: check-manifest-indep $(STAMP_DIR)/binary-indep
 $(STAMP_DIR)/binary-indep: DH_OPTIONS=-i
-$(STAMP_DIR)/binary-indep: build-indep $(STAMP_DIR)/install
+$(STAMP_DIR)/binary-indep: $(STAMP_DIR)/build $(STAMP_DIR)/install 
$(STAMP_DIR)/check-manifest
        dh_testdir
        dh_testroot
        dh_install --sourcedir=debian/tmp
@@ -416,9 +408,11 @@
        touch $@
 
 # DO NOT CHANGE THIS RULE WITHOUT CHECKING FOR SYNCHRONICITY WITH THE 
binary-server RULE BELOW
-binary-arch: $(STAMP_DIR)/binary-arch
+# See the build-arch-only target above.
+binary-arch: check-manifest-arch $(STAMP_DIR)/binary-arch
 $(STAMP_DIR)/binary-arch: DH_OPTIONS=-s
-$(STAMP_DIR)/binary-arch: build-arch $(STAMP_DIR)/install debian/shlibs.local
+$(STAMP_DIR)/binary-arch: IMAKE_DEFINES+= -DBuildSpecsDocs=NO -DBuildFonts=NO
+$(STAMP_DIR)/binary-arch: $(STAMP_DIR)/build $(STAMP_DIR)/install 
debian/shlibs.local $(STAMP_DIR)/check-manifest
        dh_testdir
        dh_testroot
        dh_install --sourcedir=debian/tmp
@@ -555,7 +549,7 @@
        $(MAKE) -C $(SOURCE_TREE) SHELL="/bin/sh -e" DESTDIR=$(DEBTREEDIR) 
install install.man
        # copy the static, debuggable XFree86 server
        install -m 755 
$(SOURCE_TREE)-xserver-xfree86-dbg/programs/Xserver/XFree86 \
-                      debian/tmp/usr/X11R6/bin/XFree86-debug
+                      debian/tmp/usr/X11R6/bin/XFree86-debug
 else
        # skipping install rule because test_rules was defined
 endif
@@ -598,9 +592,14 @@
        dh_builddeb
        touch $@
 
-.PHONY: build build-arch build-install install clean binary-arch binary-indep 
binary
-.PHONY: default environment
+.PHONY: default
+.PHONY: genscripts cleanscripts
+.PHONY: patch-audit
+.PHONY: clean configure install
+.PHONY: build build-arch-only build-all real-build
+.PHONY: binary binary-arch binary-indep
+.PHONY: check-manifest check-manifest-arch check-manifest-indep
+.PHONY: environment
 .PHONY: build-server install-server binary-server
-.PHONY: cleanscripts patch-audit
 
 # vim:set noet ai sts=8 sw=8 tw=0:

Reply via email to