PATCH 21.5
I tracked down the source of the files that "make distclean" is not
removing in the package tree.  Those files are in the wrong place.
Furthermore, only XEmacs 21.5 generates them; 21.4 gets it right.  Try
building packages with current XEmacs 21.5 CVS; you'll get both a
xemacs-packages/hyperbole/auto-autoloads.el and a
xemacs-packages/hyperbole/kotl/auto-autoloads.el, and furthermore you
cannot load them both.  A small fix to an obsolete function in
autoload.el fixes the problem for me.  Our package build system went to
all the trouble of defining generated-autoload-file, and then we ignored
it.
lisp/ChangeLog addition:
2006-05-24  Jerry James  <james(a)xemacs.org>
	* autoload.el (batch-update-autoloads): Only write to
	generated-autoload-file.
xemacs-21.5 source patch:
Diff command:   cvs -q diff -uN
Files affected: lisp/autoload.el
Index: lisp/autoload.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/autoload.el,v
retrieving revision 1.22
diff -d -u -r1.22 autoload.el
--- lisp/autoload.el	2005/02/04 03:57:34	1.22
+++ lisp/autoload.el	2006/05/24 20:10:56
@@ -1154,7 +1154,8 @@
 on the command line."
   (unless noninteractive
     (error "batch-update-autoloads is to be used only with -batch"))
-  (update-autoload-files command-line-args-left autoload-feature-prefix nil t)
+  (update-autoload-files command-line-args-left autoload-feature-prefix
+			 generated-autoload-file t)
   (kill-emacs 0))
 
 ;; Declare obsolescence
-- 
Jerry James, Assistant Professor        james(a)xemacs.org
Computer Science Department             
http://www.cs.usu.edu/~jerry/
Utah State University