# this script (including "gmake clean" in the src/runtime directory)
# several times in a row without failure.. so we leave the output/
# directory in place.)
-rm -rf obj/* output/* doc/user-manual/ \
- doc/user-manual.junk/ doc/DBTOHTML_OUTPUT_DIR*
-# (The doc/user-manual.junk/ and doc/DBTOHTML_OUTPUT_DIR* directories
-# are created when the Cygnus db2html script when it formats the the
+rm -rf obj/* output/* doc/user-manual \
+ doc/user-manual.junk doc/DBTOHTML_OUTPUT_DIR*
+# (The doc/user-manual.junk and doc/DBTOHTML_OUTPUT_DIR* directories
+# are created by the Cygnus db2html script when it formats the the
# user manual, and since this db2html script is the one which is
# currently used to format the manual for the standard binary
# distribution, we automatically clean up after it here in the
# standard clean.sh file.)
-# Within other directories, remove things which don't look like source
+# Ask some other directories to clean themselves up.
+pwd=`pwd`
+for d in tools-for-build; do
+ cd $d
+ # I hope the -s option is standard. At least GNU make and BSD make
+ # support it. It silences make, since otherwise the output from
+ # this script is just the operations done by these make's, which
+ # is misleading when this script does lotso other operations too.
+ # -- WHN
+ make -s clean
+ cd $pwd
+done
+
+# Within all directories, remove things which don't look like source
# files. Some explanations:
# (symlinks)
# are never in the sources; they must've been created
# *.htm, *.html
# probably machine-generated translation of DocBook (*.sgml) files
# core
-# probably a core dump -- not part of the sources anyway
+# probably a Unix core dump -- not part of the sources anyway
+# *.o, *.lib, *.nm
+# results of C-style linking, assembling, etc.
+# *.core, *.map
+# looks like SBCL SAVE-LISP-AND-DIE or GENESIS output, and
+# certainly not source
# *~, #*#, TAGS
# common names for editor temporary files
+# *.htm, *.html
+# The system doc sources are SGML, any HTML is automatically
+# generated output.
+# depend
+# made by "make depend" (or "gmake depend" or some such thing)
+# *.x86f, *.axpf, *.lbytef, *.fasl
+# typical extensions for fasl files
find . \( \
-type l -or \
-name '*~' -or \
-name '#*#' -or \
-name '?*.x86f' -or \
+ -name '?*.axpf' -or \
-name '?*.lbytef' -or \
+ -name '?*.fasl' -or \
-name 'core' -or \
-name '?*.core' -or \
-name '*.map' -or \